Skip to contentSkip to conversation

2.6.x-rc net driver updates

PATCH New Jeff Garzik 1 participant 1 message Sep 20, 2004

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 2.6.x-rc net driver updates

Please do a

bk pull bk://gkernel.bkbits.net/net-drivers-2.6

This will update the following files:

 drivers/ieee1394/eth1394.c  |    2 
 drivers/net/Kconfig         |    4 -
 drivers/net/r8169.c         |   16 ++++-
 drivers/net/wireless/airo.c |  139 +++++++++++++++++++++++++-------------------
 4 files changed, 97 insertions(+), 64 deletions(-)

through these ChangeSets:

<[email protected]> (04/09/20 1.1928)
[PATCH] Compatibility fixes for different card versions

<[email protected]> (04/09/20 1.1927)
[PATCH] r8169: default on disabling PCIDAC

Default to disabling PCI DAC as this option appears unsafe on amd64 (original suggestion by Hans-Frieder Vogt <[email protected]>).

The driver will typically report PCI System error when something goes wrong. The relevant interrupt is not masked any more and the driver can thus be disabled.

<[email protected]> (04/09/17 1.1926)
[PATCH] fix driver name in eth1394 as returned by ETHTOOL_GDRVINFO

From: Thierry Vignaud <[email protected]>

The GDRVINFO command of the ETHTOOL ioctl returns a bogus driver name.

<[email protected]> (04/09/16 1.1925)
[PATCH] mark mace and bmac as ppc32 only

mace and bmac are only used in "oldworld" PowerMacs. Mark them as ppc32 only.

drivers/ieee1394/eth1394.c +1 -1
diff -Nru a/drivers/ieee1394/eth1394.c b/drivers/ieee1394/eth1394.c
@@ -132,7 +132,7 @@
 };
 
 /* Our ieee1394 highlevel driver */
-#define ETH1394_DRIVER_NAME "ip1394"
+#define ETH1394_DRIVER_NAME "eth1394"
 static const char driver_name[] = ETH1394_DRIVER_NAME;
 
 static kmem_cache_t *packet_task_cache;
drivers/net/Kconfig +2 -2
diff -Nru a/drivers/net/Kconfig b/drivers/net/Kconfig
@@ -200,7 +200,7 @@
 
 config MACE
 	tristate "MACE (Power Mac ethernet) support"
-	depends on NET_ETHERNET && PPC_PMAC
+	depends on NET_ETHERNET && PPC_PMAC && PPC32
 	select CRC32
 	help
 	  Power Macintoshes and clones with Ethernet built-in on the
@@ -223,7 +223,7 @@
 
 config BMAC
 	tristate "BMAC (G3 ethernet) support"
-	depends on NET_ETHERNET && PPC_PMAC
+	depends on NET_ETHERNET && PPC_PMAC && PPC32
 	select CRC32
 	help
 	  Say Y for support of BMAC Ethernet interfaces. These are used on G3
drivers/net/r8169.c +14 -2
diff -Nru a/drivers/net/r8169.c b/drivers/net/r8169.c
@@ -156,6 +156,7 @@
 MODULE_DEVICE_TABLE(pci, rtl8169_pci_tbl);
 
 static int rx_copybreak = 200;
+static int use_dac;
 
 enum RTL8169_registers {
 	MAC0 = 0,		/* Ethernet hardware address. */
@@ -358,6 +359,8 @@
 MODULE_DESCRIPTION("RealTek RTL-8169 Gigabit Ethernet driver");
 MODULE_PARM(media, "1-" __MODULE_STRING(MAX_UNITS) "i");
 MODULE_PARM(rx_copybreak, "i");
+MODULE_PARM(use_dac, "i");
+MODULE_PARM_DESC(use_dac, "Enable PCI DAC. Unsafe on 32 bit PCI slot.");
 MODULE_LICENSE("GPL");
 
 static int rtl8169_open(struct net_device *dev);
@@ -375,7 +378,7 @@
 #endif
 
 static const u16 rtl8169_intr_mask =
-	LinkChg | RxOverflow | RxFIFOOver | TxErr | TxOK | RxErr | RxOK;
+	SYSErr | LinkChg | RxOverflow | RxFIFOOver | TxErr | TxOK | RxErr | RxOK;
 static const u16 rtl8169_napi_event =
 	RxOK | RxOverflow | RxFIFOOver | TxOK | TxErr;
 static const unsigned int rtl8169_rx_config =
@@ -984,7 +987,7 @@
 	tp->cp_cmd = PCIMulRW | RxChkSum;
 
 	if ((sizeof(dma_addr_t) > 4) &&
-	    !pci_set_dma_mask(pdev, DMA_64BIT_MASK))
+	    !pci_set_dma_mask(pdev, DMA_64BIT_MASK) && use_dac)
 		tp->cp_cmd |= PCIDAC;
 	else {
 		rc = pci_set_dma_mask(pdev, DMA_32BIT_MASK);
@@ -1760,6 +1763,15 @@
 
 		if (!(status & rtl8169_intr_mask))
 			break;
+
+		if (unlikely(status & SYSErr)) {
+			printk(KERN_ERR PFX "%s: PCI error (status: 0x%04x)."
+			       " Device disabled.\n", dev->name, status);
+			RTL_W8(ChipCmd, 0x00);
+			RTL_W16(IntrMask, 0x0000);
+			RTL_R16(IntrMask);
+			break;
+		}
 
 		if (status & LinkChg)
 			rtl8169_check_link_status(dev, tp, ioaddr);
drivers/net/wireless/airo.c +80 -59

300 lines not on this page · raw message