source: bootcd/isolinux/syslinux-6.03/gpxe/src/drivers/net/3c529.c @ e16e8f2

Last change on this file since e16e8f2 was e16e8f2, checked in by Edwin Eefting <edwin@datux.nl>, 3 years ago

bootstuff

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * Split out from 3c509.c to make build process more sane
3 *
4 */
5
6FILE_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
25static 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
37static void t529_disable ( struct nic *nic, struct mca_device *mca __unused ) {
38        t5x9_disable ( nic );
39}
40
41static 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
49MCA_DRIVER ( t529_driver, el3_mca_adapters );
50
51DRIVER ( "3c529", nic_driver, mca_driver, t529_driver,
52         t529_probe, t529_disable );
53
54ISA_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 */
Note: See TracBrowser for help on using the repository browser.