[PATCH] Command register initialization and Tx Threshold in the 8139cp driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



	Hi,

	This patch correctly puts the enabling of the transmit/receive function
AFTER putting the board into C+ mode.

	It also converts the Early Tx Threshold magic number to a #define.

	Consider pulling it from:

http://cscience.org/~coqueiro/linux/patches-fwd/2.5/8139cp-Cmd-ETTh.patch

	Please apply.

Felipe

--- ./drivers/net/8139cp.c.orig	Fri Aug  2 09:34:42 2002
+++ ./drivers/net/8139cp.c	Fri Aug  2 10:43:08 2002
@@ -137,6 +137,9 @@
 #define CP_MIN_MTU		60	/* TODO: allow lower, but pad */
 #define CP_MAX_MTU		4096
 
+/* Specifies the threshold level in the Tx FIFO to begin the transmission. */
+#define ETTh                    0x06
+
 enum {
 	/* NIC register offsets */
 	MAC0		= 0x00,	/* Ethernet hardware address. */
@@ -976,11 +979,11 @@
 
 static inline void cp_start_hw (struct cp_private *cp)
 {
-	cpw8(Cmd, RxOn | TxOn);
 	if (cp->board_type == RTL8169)
 		cpw16(CpCmd, PCIMulRW | RxChkSum);
 	else
 		cpw16(CpCmd, PCIMulRW | RxChkSum | CpRxOn | CpTxOn);
+	cpw8(Cmd, RxOn | TxOn);
 }
 
 static void cp_init_hw (struct cp_private *cp)
@@ -996,7 +999,7 @@
 	cpw32_f (MAC0 + 4, cpu_to_le32 (*(u32 *) (dev->dev_addr + 4)));
 
 	cp_start_hw(cp);
-	cpw8(TxThresh, 0x06); /* XXX convert magic num to a constant */
+	cpw8(TxThresh, ETTh);
 
 	__cp_set_rx_mode(dev);
 	cpw32_f (TxConfig, IFG | (TX_DMA_BURST << TxDMAShift));
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux