diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-12-17 19:29:41 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-12-17 19:29:41 -0800 |
| commit | c63a1190368771b8207d86c4217ae4afdf1cbd5e (patch) | |
| tree | b92409d027dbb1fdef33242b964d0105fc4ef4ad /drivers/net/sky2.c | |
| parent | ededa4d396b15c282aa60d6aacddfc07f0142dbf (diff) | |
| parent | 8085106a58366fb2c6c14d89e3d4395d2702d4a1 (diff) | |
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (23 commits)
iwlwifi: fix rf_kill state inconsistent during suspend and resume
b43: Fix rfkill radio LED
bcm43xx_debugfs sscanf fix
libertas: select WIRELESS_EXT
iwlwifi3945/4965: fix rate control algo reference leak
ieee80211_rate: missed unlock
wireless/ipw2200.c: add __dev{init,exit} annotations
zd1211rw: Fix alignment problems
libertas: add Dan Williams as maintainer
sis190 endianness
ucc_geth: really fix section mismatch
pcnet_cs: add new id
ixgb: make sure jumbos stay enabled after reset
Net: ibm_newemac, remove SPIN_LOCK_UNLOCKED
net: smc911x: shut up compiler warnings
ucc_geth: minor whitespace fix
drivers/net/s2io.c section fixes
drivers/net/sis190.c section fix
hamachi endianness fixes
e100: free IRQ to remove warningwhenrebooting
...
Diffstat (limited to 'drivers/net/sky2.c')
| -rw-r--r-- | drivers/net/sky2.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 6197afb3ed8..a74fc11a648 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c @@ -822,8 +822,13 @@ static void sky2_mac_init(struct sky2_hw *hw, unsigned port) 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); + if (hw->chip_id == CHIP_ID_YUKON_XL) { + /* Hardware errata - clear flush mask */ + sky2_write16(hw, SK_REG(port, RX_GMF_FL_MSK), 0); + } else { + /* Flush Rx MAC FIFO on any flow control or error */ + sky2_write16(hw, SK_REG(port, RX_GMF_FL_MSK), GMR_FS_ANY_ERR); + } /* Set threshold to 0xa (64 bytes) + 1 to workaround pause bug */ reg = RX_GMF_FL_THR_DEF + 1; |
