sky2: phy setup changes
authorStephen Hemminger <shemminger@vyatta.com>
Tue, 17 Jun 2008 16:04:24 +0000 (09:04 -0700)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 18 Jun 2008 03:59:38 +0000 (23:59 -0400)
Change the setup of the PHY registers on some chip ids. These changes
make the latest sky2 driver follow the vendor driver.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/sky2.c

index 7f1cfc4..af7ea88 100644 (file)
@@ -658,8 +658,7 @@ static void sky2_phy_init(struct sky2_hw *hw, unsigned port)
                ledover |= PHY_M_LED_MO_RX(MO_LED_OFF);
        }
 
-       if (hw->chip_id == CHIP_ID_YUKON_EC_U &&
-           hw->chip_rev == CHIP_REV_YU_EC_U_A1) {
+       if (hw->chip_id == CHIP_ID_YUKON_EC_U) {
                /* apply fixes in PHY AFE */
                gm_phy_write(hw, port, PHY_MARV_EXT_ADR, 255);
 
@@ -678,7 +677,8 @@ static void sky2_phy_init(struct sky2_hw *hw, unsigned port)
                /* apply workaround for integrated resistors calibration */
                gm_phy_write(hw, port, PHY_MARV_PAGE_ADDR, 17);
                gm_phy_write(hw, port, PHY_MARV_PAGE_DATA, 0x3f60);
-       } else if (hw->chip_id != CHIP_ID_YUKON_EX) {
+       } else if (hw->chip_id != CHIP_ID_YUKON_EX &&
+                  hw->chip_id < CHIP_ID_YUKON_SUPR) {
                /* no effect on Yukon-XL */
                gm_phy_write(hw, port, PHY_MARV_LED_CTRL, ledctrl);