Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / drivers / net / 3c509-eisa.c
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 "3c509.h"
10
11 /*
12  * The EISA probe function
13  *
14  */
15 static int el3_eisa_probe ( struct nic *nic, struct eisa_device *eisa ) {
16         
17
18         nic->ioaddr = eisa->ioaddr;
19         nic->irqno = 0;
20         enable_eisa_device ( eisa );
21         
22         /* Hand off to generic t5x9 probe routine */
23         return t5x9_probe ( nic, ISA_PROD_ID ( PROD_ID ), ISA_PROD_ID_MASK );
24 }
25
26 static void el3_eisa_disable ( struct nic *nic, struct eisa_device *eisa ) {
27         t5x9_disable ( nic );
28         disable_eisa_device ( eisa );
29 }
30
31 static struct eisa_device_id el3_eisa_adapters[] = {
32         { "3Com 3c509 EtherLink III (EISA)", MFG_ID, PROD_ID },
33 };
34
35 EISA_DRIVER ( el3_eisa_driver, el3_eisa_adapters );
36
37 DRIVER ( "3c509 (EISA)", nic_driver, eisa_driver, el3_eisa_driver,
38          el3_eisa_probe, el3_eisa_disable );
39
40 ISA_ROM ( "3c509-eisa","3c509 (EISA)" );
41
42 /*
43  * Local variables:
44  *  c-basic-offset: 8
45  *  c-indent-level: 8
46  *  tab-width: 8
47  * End:
48  */