# --------------------------------------------
# 02/10/02	thockin@freakshow.cobalt.com	1.718
# drivers/net/natsemi.c: sync with 2.5.x
# --------------------------------------------
#
diff -Nru a/drivers/net/natsemi.c b/drivers/net/natsemi.c
--- a/drivers/net/natsemi.c	Wed Oct  9 15:41:14 2002
+++ b/drivers/net/natsemi.c	Wed Oct  9 15:41:14 2002
@@ -100,18 +100,25 @@
 		* ETHTOOL_* further support (Tim Hockin)
 
 	version 1.0.13:
-		* ETHTOOL_GEEPROM support (Tim Hockin)
-
-	version 1.0.14:
-		* Cleanup some messages and autoneg in ethtool (Tim Hockin)
+		* ETHTOOL_[G]EEPROM support (Tim Hockin)
 
 	version 1.0.13:
 		* crc cleanup (Matt Domsch <Matt_Domsch@dell.com>)
 
+	version 1.0.14:
+		* Cleanup some messages and autoneg in ethtool (Tim Hockin)
+
 	version 1.0.15:
 		* Get rid of cable_magic flag
 		* use new (National provided) solution for cable magic issue
 
+	version 1.0.16:
+		* call netdev_rx() for RxErrors (Manfred Spraul)
+		* formatting and cleanups
+		* change options and full_duplex arrays to be zero
+		  initialized
+		* enable only the WoL and PHY interrupts in wol mode
+
 	TODO:
 	* big endian support with CFG:BEM instead of cpu_to_le32
 	* support for an external PHY
@@ -150,8 +157,8 @@
 #include <asm/uaccess.h>
 
 #define DRV_NAME	"natsemi"
-#define DRV_VERSION	"1.07+LK1.0.15"
-#define DRV_RELDATE	"Jul 23, 2002"
+#define DRV_VERSION	"1.07+LK1.0.16"
+#define DRV_RELDATE	"Aug 28, 2002"
 
 /* Updated to recommendations in pci-skeleton v2.03. */
 
@@ -244,7 +251,7 @@
 MODULE_PARM(full_duplex, "1-" __MODULE_STRING(MAX_UNITS) "i");
 MODULE_PARM_DESC(max_interrupt_work, "DP8381x maximum events handled per interrupt");
 MODULE_PARM_DESC(mtu, "DP8381x MTU (all boards)");
-MODULE_PARM_DESC(debug, "DP8381x debug bitmask");
+MODULE_PARM_DESC(debug, "DP8381x default debug bitmask");
 MODULE_PARM_DESC(rx_copybreak, "DP8381x copy breakpoint for copy-only-tiny-frames");
 MODULE_PARM_DESC(options, "DP8381x: Bits 0-3: media type, bit 17: full duplex");
 MODULE_PARM_DESC(full_duplex, "DP8381x full duplex setting(s) (1)");
@@ -1598,7 +1605,8 @@
 			netdev_rx(dev);
 		}
 
-		if (intr_status & (IntrTxDone | IntrTxIntr | IntrTxIdle | IntrTxErr) ) {
+		if (intr_status &
+		   (IntrTxDone | IntrTxIntr | IntrTxIdle | IntrTxErr)) {
 			spin_lock(&np->lock);
 			netdev_tx_done(dev);
 			spin_unlock(&np->lock);
@@ -1618,8 +1626,7 @@
 	} while (1);
 
 	if (netif_msg_intr(np))
-		printk(KERN_DEBUG "%s: exiting interrupt.\n",
-			   dev->name);
+		printk(KERN_DEBUG "%s: exiting interrupt.\n", dev->name);
 }
 
 /* This routine is logically part of the interrupt handler, but separated
@@ -1750,7 +1757,7 @@
 		if ((np->tx_config & TxDrthMask) < 62)
 			np->tx_config += 2;
 		if (netif_msg_tx_err(np))
-			printk(KERN_NOTICE 
+			printk(KERN_NOTICE
 				"%s: increased Tx threshold, txcfg %#08x.\n",
 				dev->name, np->tx_config);
 		writel(np->tx_config, ioaddr + TxConfig);
@@ -1762,7 +1769,7 @@
 	}
 	if (intr_status & RxStatusFIFOOver) {
 		if (netif_msg_rx_err(np) && netif_msg_intr(np)) {
-			printk(KERN_NOTICE "%s: Rx status FIFO overrun\n", 
+			printk(KERN_NOTICE "%s: Rx status FIFO overrun\n",
 				dev->name);
 		}
 		np->stats.rx_fifo_errors++;
@@ -2031,7 +2038,7 @@
 		
 		if (eeprom.offset > eeprom.offset+eeprom.len)
 			return -EINVAL;
-			
+
 		if ((eeprom.offset+eeprom.len) > NATSEMI_EEPROM_SIZE) {
 			eeprom.len = NATSEMI_EEPROM_SIZE-eeprom.offset;
 		}
@@ -2586,13 +2593,13 @@
 #endif /* CONFIG_PM */
 
 static struct pci_driver natsemi_driver = {
-	name:		DRV_NAME,
-	id_table:	natsemi_pci_tbl,
-	probe:		natsemi_probe1,
-	remove:		__devexit_p(natsemi_remove1),
+	.name		= DRV_NAME,
+	.id_table	= natsemi_pci_tbl,
+	.probe		= natsemi_probe1,
+	.remove		= __devexit_p(natsemi_remove1),
 #ifdef CONFIG_PM
-	suspend:	natsemi_suspend,
-	resume:		natsemi_resume,
+	.suspend	= natsemi_suspend,
+	.resume		= natsemi_resume,
 #endif
 };
 
