aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-05-08 18:11:28 -0400
committerStephen Hemminger <shemminger@osdl.org>2006-05-08 19:00:25 -0400
commitf55925d7eb04f936ab4c001f10e3e9c74c1297ae (patch)
treeeeb9c38a4a99f92ec1f69c92eba89ea133a779cf
parent1e5f1283a2aed429f4457e2eb875b1928a6643df (diff)
sky2: tx ring index mask fix
Mask for transmit ring status was picking up bits from the unused sync ring. They were always zero, so far... Also, make sure to remind self not to make tx ring too big. Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
-rw-r--r--drivers/net/sky2.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 552aca76b283..4bb6ea13efdd 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -1927,7 +1927,8 @@ static int sky2_status_intr(struct sky2_hw *hw, int to_do)
1927 1927
1928 case OP_TXINDEXLE: 1928 case OP_TXINDEXLE:
1929 /* TX index reports status for both ports */ 1929 /* TX index reports status for both ports */
1930 sky2_tx_done(hw->dev[0], status & 0xffff); 1930 BUILD_BUG_ON(TX_RING_SIZE > 0x1000);
1931 sky2_tx_done(hw->dev[0], status & 0xfff);
1931 if (hw->dev[1]) 1932 if (hw->dev[1])
1932 sky2_tx_done(hw->dev[1], 1933 sky2_tx_done(hw->dev[1],
1933 ((status >> 24) & 0xff) 1934 ((status >> 24) & 0xff)