summaryrefslogtreecommitdiffstats
path: root/drivers/net/sky2.c
diff options
context:
space:
mode:
authorAl Viro <viro@ftp.linux.org.uk>2007-07-20 17:07:33 +0200
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-20 17:24:49 +0200
commit25cccecce8e29f92eb5a0445bc97ee01ef2da379 (patch)
treeaed1b449d35fd1000cad05cbaf802f45a487551c /drivers/net/sky2.c
parentFix buggered kmalloc() call argument order (diff)
downloadlinux-25cccecce8e29f92eb5a0445bc97ee01ef2da379.tar.xz
linux-25cccecce8e29f92eb5a0445bc97ee01ef2da379.zip
Fix up sky2 breakage
Doing |= 1 << 19 to 16bit unsigned is not particulary useful; that register is 32bit, unlike the ones dealt with in the rest of function, so we need u32 variable here. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r--drivers/net/sky2.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index a2f32151559e..13f08a390e1f 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -692,6 +692,7 @@ static void sky2_mac_init(struct sky2_hw *hw, unsigned port)
{
struct sky2_port *sky2 = netdev_priv(hw->dev[port]);
u16 reg;
+ u32 rx_reg;
int i;
const u8 *addr = hw->dev[port]->dev_addr;
@@ -768,11 +769,11 @@ static void sky2_mac_init(struct sky2_hw *hw, unsigned port)
/* Configure Rx MAC FIFO */
sky2_write8(hw, SK_REG(port, RX_GMF_CTRL_T), GMF_RST_CLR);
- reg = GMF_OPER_ON | GMF_RX_F_FL_ON;
+ rx_reg = GMF_OPER_ON | GMF_RX_F_FL_ON;
if (hw->chip_id == CHIP_ID_YUKON_EX)
- reg |= GMF_RX_OVER_ON;
+ rx_reg |= GMF_RX_OVER_ON;
- sky2_write32(hw, SK_REG(port, RX_GMF_CTRL_T), reg);
+ sky2_write32(hw, SK_REG(port, RX_GMF_CTRL_T), rx_reg);
/* Flush Rx MAC FIFO on any flow control or error */
sky2_write16(hw, SK_REG(port, RX_GMF_FL_MSK), GMR_FS_ANY_ERR);