|
|
1.1 root 1: /*
2: * Split out from 3c509.c, since EISA cards are relatively rare, and
3: * ROM space in 3c509s is very limited.
4: *
5: */
6:
7: #include <ipxe/eisa.h>
8: #include <ipxe/isa.h>
9: #include <ipxe/console.h>
10: #include "3c509.h"
11:
12: /*
13: * The EISA probe function
14: *
15: */
16: static int el3_eisa_probe ( struct nic *nic, struct eisa_device *eisa ) {
17:
18:
19: nic->ioaddr = eisa->ioaddr;
20: nic->irqno = 0;
21: enable_eisa_device ( eisa );
22:
23: /* Hand off to generic t5x9 probe routine */
24: return t5x9_probe ( nic, ISA_PROD_ID ( PROD_ID ), ISA_PROD_ID_MASK );
25: }
26:
27: static void el3_eisa_disable ( struct nic *nic, struct eisa_device *eisa ) {
28: t5x9_disable ( nic );
29: disable_eisa_device ( eisa );
30: }
31:
32: static struct eisa_device_id el3_eisa_adapters[] = {
33: { "3Com 3c509 EtherLink III (EISA)", MFG_ID, PROD_ID },
34: };
35:
36: EISA_DRIVER ( el3_eisa_driver, el3_eisa_adapters );
37:
38: DRIVER ( "3c509 (EISA)", nic_driver, eisa_driver, el3_eisa_driver,
39: el3_eisa_probe, el3_eisa_disable );
40:
41: ISA_ROM ( "3c509-eisa","3c509 (EISA)" );
42:
43: /*
44: * Local variables:
45: * c-basic-offset: 8
46: * c-indent-level: 8
47: * tab-width: 8
48: * End:
49: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.