diff options
author | Stephen Hemminger <shemminger@linux-foundation.org> | 2007-04-07 19:02:28 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-04-11 11:54:43 -0400 |
commit | 9467a8fc89844ff2ea9c6d13460dddb3b674cc37 (patch) | |
tree | ad4ca3254b99e90e4c3c6eafe2428b03b57b95f6 /drivers/net | |
parent | 1ad5b4a5c224c5f98f9745adbcf99899624c8138 (diff) |
sky2: phy workarounds for Yukon EC-U A1
The workaround Yukon EC-U wasn't comparing with correct
version and wasn't doing correct setup. Without it, 88e8056
throws all sorts of errors.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/sky2.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index b636b8a55ffb..4a009b7b1777 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -510,9 +510,9 @@ static void sky2_phy_init(struct sky2_hw *hw, unsigned port) | |||
510 | ledover &= ~PHY_M_LED_MO_RX; | 510 | ledover &= ~PHY_M_LED_MO_RX; |
511 | } | 511 | } |
512 | 512 | ||
513 | if (hw->chip_id == CHIP_ID_YUKON_EC_U && hw->chip_rev == CHIP_REV_YU_EC_A1) { | 513 | if (hw->chip_id == CHIP_ID_YUKON_EC_U && |
514 | hw->chip_rev == CHIP_REV_YU_EC_U_A1) { | ||
514 | /* apply fixes in PHY AFE */ | 515 | /* apply fixes in PHY AFE */ |
515 | pg = gm_phy_read(hw, port, PHY_MARV_EXT_ADR); | ||
516 | gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 255); | 516 | gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 255); |
517 | 517 | ||
518 | /* increase differential signal amplitude in 10BASE-T */ | 518 | /* increase differential signal amplitude in 10BASE-T */ |
@@ -524,7 +524,7 @@ static void sky2_phy_init(struct sky2_hw *hw, unsigned port) | |||
524 | gm_phy_write(hw, port, 0x17, 0x2002); | 524 | gm_phy_write(hw, port, 0x17, 0x2002); |
525 | 525 | ||
526 | /* set page register to 0 */ | 526 | /* set page register to 0 */ |
527 | gm_phy_write(hw, port, PHY_MARV_EXT_ADR, pg); | 527 | gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 0); |
528 | } else if (hw->chip_id != CHIP_ID_YUKON_EX) { | 528 | } else if (hw->chip_id != CHIP_ID_YUKON_EX) { |
529 | gm_phy_write(hw, port, PHY_MARV_LED_CTRL, ledctrl); | 529 | gm_phy_write(hw, port, PHY_MARV_LED_CTRL, ledctrl); |
530 | 530 | ||