"Fossies" - the Fresh Open Source Software Archive

Member "syslinux-6.03/gpxe/src/drivers/net/3c529.c" (6 Oct 2014, 1621 Bytes) of package /linux/misc/syslinux-6.03.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /*
    2  * Split out from 3c509.c to make build process more sane
    3  *
    4  */
    5 
    6 FILE_LICENCE ( BSD2 );
    7 
    8 #include "etherboot.h"
    9 #include <gpxe/mca.h>
   10 #include <gpxe/isa.h> /* for ISA_ROM */
   11 #include "nic.h"
   12 #include "3c509.h"
   13 
   14 /*
   15  * Several other pieces of the MCA support code were shamelessly
   16  * borrowed from the Linux kernel source.
   17  *
   18  * MCA support added by Adam Fritzler (mid@auk.cx)
   19  *
   20  * Generalised out of the 3c529 driver and into a bus type by Michael
   21  * Brown <mbrown@fensystems.co.uk>
   22  *
   23  */
   24 
   25 static int t529_probe ( struct nic *nic, struct mca_device *mca ) {
   26 
   27     /* Retrieve NIC parameters from MCA device parameters */
   28     nic->ioaddr = ( ( mca->pos[4] & 0xfc ) | 0x02 ) << 8;
   29     nic->irqno = mca->pos[5] & 0x0f;
   30     printf ( "3c529 board found on MCA at %#hx IRQ %d -",
   31          nic->ioaddr, nic->irqno );
   32 
   33     /* Hand off to generic t5x9 probe routine */
   34     return t5x9_probe ( nic, MCA_ID ( mca ), 0xffff );
   35 }
   36 
   37 static void t529_disable ( struct nic *nic, struct mca_device *mca __unused ) {
   38     t5x9_disable ( nic );
   39 }
   40 
   41 static struct mca_device_id el3_mca_adapters[] = {
   42         { "3Com 3c529 EtherLink III (10base2)", 0x627c },
   43         { "3Com 3c529 EtherLink III (10baseT)", 0x627d },
   44         { "3Com 3c529 EtherLink III (test mode)", 0x62db },
   45         { "3Com 3c529 EtherLink III (TP or coax)", 0x62f6 },
   46         { "3Com 3c529 EtherLink III (TP)", 0x62f7 },
   47 };
   48 
   49 MCA_DRIVER ( t529_driver, el3_mca_adapters );
   50 
   51 DRIVER ( "3c529", nic_driver, mca_driver, t529_driver,
   52      t529_probe, t529_disable );
   53 
   54 ISA_ROM( "3c529", "3c529 == MCA 3c509" );
   55 
   56 /*
   57  * Local variables:
   58  *  c-basic-offset: 8
   59  *  c-indent-level: 8
   60  *  tab-width: 8
   61  * End:
   62  */