Home | History | Annotate | Download | only in net
      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 <gpxe/eisa.h>
      8 #include <gpxe/isa.h>
      9 #include "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  */
     50