Carl-Daniel Hailfinger wrote:
Could you all please test the attached patch against 2.6.16-rc4?
It is a straight forward-port of my sky2 version that worked for you.
Regards,
Carl-Daniel
------------------------------------------------------------------------
diff -urN linux-2.6.16-rc4/drivers/net/sky2.c
linux-2.6.16-rc4-sky2fix/drivers/net/sky2.c
--- linux-2.6.16-rc4/drivers/net/sky2.c 2006-02-21 01:31:18.000000000 +0100
+++ linux-2.6.16-rc4-sky2fix/drivers/net/sky2.c 2006-02-21 01:27:42.000000000
+0100
@@ -1863,6 +1863,17 @@
sky2_write32(hw, STAT_CTRL, SC_STAT_CLR_IRQ);
+ /*
+ * Kick the STAT_LEV_TIMER_CTRL timer.
+ * This fixes my hangs on Yukon-EC (0xb6) rev 1.
+ * The if clause is there to start the timer only if it has been
+ * configured correctly and not been disabled via ethtool.
+ */
+ if (sky2_read8(hw, STAT_LEV_TIMER_CTRL) == TIM_START) {
+ sky2_write8(hw, STAT_LEV_TIMER_CTRL, TIM_STOP);
+ sky2_write8(hw, STAT_LEV_TIMER_CTRL, TIM_START);
+ }
+
hwidx = sky2_read16(hw, STAT_PUT_IDX);
BUG_ON(hwidx >= STATUS_RING_SIZE);
rmb();
Btw, this works for me, 5 days without hang
(i had one hung per day previously)
sky2 v0.15 addr 0xcfffc000 irq 18 Yukon-EC (0xb6) rev 2
RX bytes:13953719624 (13307.3 Mb) TX bytes:32935199721 (31409.4 Mb)
--
Pavel
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html