# --------------------------------------------
# 02/10/02	manfred@colorfullife.com	1.725
# drivers/net/natsemi.c: lengthen EEPROM timeout, and always warn about all timeouts
# --------------------------------------------
#
diff -Nru a/drivers/net/natsemi.c b/drivers/net/natsemi.c
--- a/drivers/net/natsemi.c	Wed Oct  9 15:41:00 2002
+++ b/drivers/net/natsemi.c	Wed Oct  9 15:41:00 2002
@@ -127,6 +127,8 @@
 		* hands_off instead of playing with netif_device_{de,a}ttach
 		  (Manfred Spraul)
 		* be sure to write the MAC back to the chip (Manfred Spraul)
+		* lengthen EEPROM timeout, and always warn about timeouts
+		  (Manfred Spraul)
 
 	TODO:
 	* big endian support with CFG:BEM instead of cpu_to_le32
@@ -1001,7 +1003,7 @@
 			break;
 		udelay(5);
 	}
-	if (i==NATSEMI_HW_TIMEOUT && netif_msg_hw(np)) {
+	if (i==NATSEMI_HW_TIMEOUT) {
 		printk(KERN_INFO "%s: reset did not complete in %d usec.\n",
 		   dev->name, i*5);
 	} else if (netif_msg_hw(np)) {
@@ -1038,16 +1040,16 @@
 
 	writel(EepromReload, dev->base_addr + PCIBusCfg);
 	for (i=0;i<NATSEMI_HW_TIMEOUT;i++) {
+		udelay(50);
 		if (!(readl(dev->base_addr + PCIBusCfg) & EepromReload))
 			break;
-		udelay(5);
 	}
-	if (i==NATSEMI_HW_TIMEOUT && netif_msg_hw(np)) {
+	if (i==NATSEMI_HW_TIMEOUT) {
 		printk(KERN_INFO "%s: EEPROM did not reload in %d usec.\n",
-		   dev->name, i*5);
+		   dev->name, i*50);
 	} else if (netif_msg_hw(np)) {
 		printk(KERN_DEBUG "%s: EEPROM reloaded in %d usec.\n",
-		   dev->name, i*5);
+		   dev->name, i*50);
 	}
 }
 
@@ -1063,7 +1065,7 @@
 			break;
 		udelay(5);
 	}
-	if (i==NATSEMI_HW_TIMEOUT && netif_msg_hw(np)) {
+	if (i==NATSEMI_HW_TIMEOUT) {
 		printk(KERN_INFO "%s: Tx/Rx process did not stop in %d usec.\n",
 				dev->name, i*5);
 	} else if (netif_msg_hw(np)) {
