Commit 25409de1 authored by Alan Cox's avatar Alan Cox Committed by Linus Torvalds

[PATCH] use longer delays on 3c509

Som boards dont seem to be in spec
parent 57075741
...@@ -51,11 +51,13 @@ ...@@ -51,11 +51,13 @@
- Full duplex support - Full duplex support
v1.19 16Oct2002 Zwane Mwaikambo <zwane@linuxpower.ca> v1.19 16Oct2002 Zwane Mwaikambo <zwane@linuxpower.ca>
- Additional ethtool features - Additional ethtool features
v1.19a 28Oct2002 Davud Ruggiero <jdr@farfalle.com>
- Increase *read_eeprom udelay to workaround oops with 2 cards.
*/ */
#define DRV_NAME "3c509" #define DRV_NAME "3c509"
#define DRV_VERSION "1.19" #define DRV_VERSION "1.19a"
#define DRV_RELDATE "16Oct2002" #define DRV_RELDATE "28Oct2002"
/* A few values that may be tweaked. */ /* A few values that may be tweaked. */
...@@ -570,8 +572,9 @@ int __init el3_probe(struct net_device *dev, int card_idx) ...@@ -570,8 +572,9 @@ int __init el3_probe(struct net_device *dev, int card_idx)
static ushort read_eeprom(int ioaddr, int index) static ushort read_eeprom(int ioaddr, int index)
{ {
outw(EEPROM_READ + index, ioaddr + 10); outw(EEPROM_READ + index, ioaddr + 10);
/* Pause for at least 162 us. for the read to take place. */ /* Pause for at least 162 us. for the read to take place.
udelay (500); Some chips seem to require much longer */
mdelay(2);
return inw(ioaddr + 12); return inw(ioaddr + 12);
} }
...@@ -585,7 +588,8 @@ static ushort __init id_read_eeprom(int index) ...@@ -585,7 +588,8 @@ static ushort __init id_read_eeprom(int index)
outb(EEPROM_READ + index, id_port); outb(EEPROM_READ + index, id_port);
/* Pause for at least 162 us. for the read to take place. */ /* Pause for at least 162 us. for the read to take place. */
udelay (500); /* Some chips seem to require much longer */
mdelay(4);
for (bit = 15; bit >= 0; bit--) for (bit = 15; bit >= 0; bit--)
word = (word << 1) + (inb(id_port) & 0x01); word = (word << 1) + (inb(id_port) & 0x01);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment