diff options
Diffstat (limited to 'drivers/net/ethernet/i825xx/eexpress.c')
-rw-r--r-- | drivers/net/ethernet/i825xx/eexpress.c | 60 |
1 files changed, 1 insertions, 59 deletions
diff --git a/drivers/net/ethernet/i825xx/eexpress.c b/drivers/net/ethernet/i825xx/eexpress.c index cc2e66ad443..7a6a2f04c5b 100644 --- a/drivers/net/ethernet/i825xx/eexpress.c +++ b/drivers/net/ethernet/i825xx/eexpress.c | |||
@@ -9,7 +9,7 @@ | |||
9 | * Many modifications, and currently maintained, by | 9 | * Many modifications, and currently maintained, by |
10 | * Philip Blundell <philb@gnu.org> | 10 | * Philip Blundell <philb@gnu.org> |
11 | * Added the Compaq LTE Alan Cox <alan@lxorguk.ukuu.org.uk> | 11 | * Added the Compaq LTE Alan Cox <alan@lxorguk.ukuu.org.uk> |
12 | * Added MCA support Adam Fritzler | 12 | * Added MCA support Adam Fritzler (now deleted) |
13 | * | 13 | * |
14 | * Note - this driver is experimental still - it has problems on faster | 14 | * Note - this driver is experimental still - it has problems on faster |
15 | * machines. Someone needs to sit down and go through it line by line with | 15 | * machines. Someone needs to sit down and go through it line by line with |
@@ -111,7 +111,6 @@ | |||
111 | #include <linux/netdevice.h> | 111 | #include <linux/netdevice.h> |
112 | #include <linux/etherdevice.h> | 112 | #include <linux/etherdevice.h> |
113 | #include <linux/skbuff.h> | 113 | #include <linux/skbuff.h> |
114 | #include <linux/mca-legacy.h> | ||
115 | #include <linux/spinlock.h> | 114 | #include <linux/spinlock.h> |
116 | #include <linux/bitops.h> | 115 | #include <linux/bitops.h> |
117 | #include <linux/jiffies.h> | 116 | #include <linux/jiffies.h> |
@@ -227,16 +226,6 @@ static unsigned short start_code[] = { | |||
227 | /* maps irq number to EtherExpress magic value */ | 226 | /* maps irq number to EtherExpress magic value */ |
228 | static char irqrmap[] = { 0,0,1,2,3,4,0,0,0,1,5,6,0,0,0,0 }; | 227 | static char irqrmap[] = { 0,0,1,2,3,4,0,0,0,1,5,6,0,0,0,0 }; |
229 | 228 | ||
230 | #ifdef CONFIG_MCA_LEGACY | ||
231 | /* mapping of the first four bits of the second POS register */ | ||
232 | static unsigned short mca_iomap[] = { | ||
233 | 0x270, 0x260, 0x250, 0x240, 0x230, 0x220, 0x210, 0x200, | ||
234 | 0x370, 0x360, 0x350, 0x340, 0x330, 0x320, 0x310, 0x300 | ||
235 | }; | ||
236 | /* bits 5-7 of the second POS register */ | ||
237 | static char mca_irqmap[] = { 12, 9, 3, 4, 5, 10, 11, 15 }; | ||
238 | #endif | ||
239 | |||
240 | /* | 229 | /* |
241 | * Prototypes for Linux interface | 230 | * Prototypes for Linux interface |
242 | */ | 231 | */ |
@@ -340,53 +329,6 @@ static int __init do_express_probe(struct net_device *dev) | |||
340 | 329 | ||
341 | dev->if_port = 0xff; /* not set */ | 330 | dev->if_port = 0xff; /* not set */ |
342 | 331 | ||
343 | #ifdef CONFIG_MCA_LEGACY | ||
344 | if (MCA_bus) { | ||
345 | int slot = 0; | ||
346 | |||
347 | /* | ||
348 | * Only find one card at a time. Subsequent calls | ||
349 | * will find others, however, proper multicard MCA | ||
350 | * probing and setup can't be done with the | ||
351 | * old-style Space.c init routines. -- ASF | ||
352 | */ | ||
353 | while (slot != MCA_NOTFOUND) { | ||
354 | int pos0, pos1; | ||
355 | |||
356 | slot = mca_find_unused_adapter(0x628B, slot); | ||
357 | if (slot == MCA_NOTFOUND) | ||
358 | break; | ||
359 | |||
360 | pos0 = mca_read_stored_pos(slot, 2); | ||
361 | pos1 = mca_read_stored_pos(slot, 3); | ||
362 | ioaddr = mca_iomap[pos1&0xf]; | ||
363 | |||
364 | dev->irq = mca_irqmap[(pos1>>4)&0x7]; | ||
365 | |||
366 | /* | ||
367 | * XXX: Transceiver selection is done | ||
368 | * differently on the MCA version. | ||
369 | * How to get it to select something | ||
370 | * other than external/AUI is currently | ||
371 | * unknown. This code is just for looks. -- ASF | ||
372 | */ | ||
373 | if ((pos0 & 0x7) == 0x1) | ||
374 | dev->if_port = AUI; | ||
375 | else if ((pos0 & 0x7) == 0x5) { | ||
376 | if (pos1 & 0x80) | ||
377 | dev->if_port = BNC; | ||
378 | else | ||
379 | dev->if_port = TPE; | ||
380 | } | ||
381 | |||
382 | mca_set_adapter_name(slot, "Intel EtherExpress 16 MCA"); | ||
383 | mca_set_adapter_procfn(slot, NULL, dev); | ||
384 | mca_mark_as_used(slot); | ||
385 | |||
386 | break; | ||
387 | } | ||
388 | } | ||
389 | #endif | ||
390 | if (ioaddr&0xfe00) { | 332 | if (ioaddr&0xfe00) { |
391 | if (!request_region(ioaddr, EEXP_IO_EXTENT, "EtherExpress")) | 333 | if (!request_region(ioaddr, EEXP_IO_EXTENT, "EtherExpress")) |
392 | return -EBUSY; | 334 | return -EBUSY; |