diff options
author | Stephen Hemminger <shemminger@linux-foundation.org> | 2007-11-27 14:02:07 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-12-01 16:32:31 -0500 |
commit | e970d1f8106514ea619d7a9005b1dc92c6049b32 (patch) | |
tree | 4f9f71d4237ba6678774c3495c8f9c3bf87099ce /drivers/net/sky2.c | |
parent | 7782c8c4d764dfe1b96e02e73d4d5f622fb4a389 (diff) |
sky2: turn of dynamic Tx watermark workaround (FE+ only)
Add workaround for issues FE+ (A0) transmit watermark.
This is copied verbatim from vendor driver sk98lin (10.22.4.3).
Don't have that chip version and no more information seems to be available.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/sky2.c')
-rw-r--r-- | drivers/net/sky2.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index a42f1c7ac18f..3d1dfc948405 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -845,6 +845,13 @@ static void sky2_mac_init(struct sky2_hw *hw, unsigned port) | |||
845 | sky2_set_tx_stfwd(hw, port); | 845 | sky2_set_tx_stfwd(hw, port); |
846 | } | 846 | } |
847 | 847 | ||
848 | if (hw->chip_id == CHIP_ID_YUKON_FE_P && | ||
849 | hw->chip_rev == CHIP_REV_YU_FE2_A0) { | ||
850 | /* disable dynamic watermark */ | ||
851 | reg = sky2_read16(hw, SK_REG(port, TX_GMF_EA)); | ||
852 | reg &= ~TX_DYN_WM_ENA; | ||
853 | sky2_write16(hw, SK_REG(port, TX_GMF_EA), reg); | ||
854 | } | ||
848 | } | 855 | } |
849 | 856 | ||
850 | /* Assign Ram Buffer allocation to queue */ | 857 | /* Assign Ram Buffer allocation to queue */ |