Commit f55925d7 authored by Stephen Hemminger's avatar Stephen Hemminger

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: default avatarStephen Hemminger <shemminger@osdl.org>
parent 1e5f1283
...@@ -1927,7 +1927,8 @@ static int sky2_status_intr(struct sky2_hw *hw, int to_do) ...@@ -1927,7 +1927,8 @@ static int sky2_status_intr(struct sky2_hw *hw, int to_do)
case OP_TXINDEXLE: case OP_TXINDEXLE:
/* TX index reports status for both ports */ /* TX index reports status for both ports */
sky2_tx_done(hw->dev[0], status & 0xffff); BUILD_BUG_ON(TX_RING_SIZE > 0x1000);
sky2_tx_done(hw->dev[0], status & 0xfff);
if (hw->dev[1]) if (hw->dev[1])
sky2_tx_done(hw->dev[1], sky2_tx_done(hw->dev[1],
((status >> 24) & 0xff) ((status >> 24) & 0xff)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment