tg3: Push phylib definitions to phylib
Matt Carlson [Wed, 17 Feb 2010 15:17:04 +0000 (15:17 +0000)]
This patch pushes phylib definitions out to phylib headers.  For phy
IDs, this removes some code duplication.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/phy/broadcom.c
drivers/net/tg3.c
drivers/net/tg3.h
include/linux/brcmphy.h

index 33c4b12..f482fc4 100644 (file)
@@ -18,9 +18,6 @@
 #include <linux/phy.h>
 #include <linux/brcmphy.h>
 
-#define PHY_ID_BCM50610                0x0143bd60
-#define PHY_ID_BCM50610M       0x0143bd70
-#define PHY_ID_BCM57780                0x03625d90
 
 #define BRCM_PHY_MODEL(phydev) \
        ((phydev)->drv->phy_id & (phydev)->drv->phy_id_mask)
@@ -823,7 +820,7 @@ static struct phy_driver bcm57780_driver = {
 };
 
 static struct phy_driver bcmac131_driver = {
-       .phy_id         = 0x0143bc70,
+       .phy_id         = PHY_ID_BCMAC131,
        .phy_id_mask    = 0xfffffff0,
        .name           = "Broadcom BCMAC131",
        .features       = PHY_BASIC_FEATURES |
index 965efa9..994bac0 100644 (file)
@@ -955,17 +955,17 @@ static void tg3_mdio_config_5785(struct tg3 *tp)
 
        phydev = tp->mdio_bus->phy_map[TG3_PHY_MII_ADDR];
        switch (phydev->drv->phy_id & phydev->drv->phy_id_mask) {
-       case TG3_PHY_ID_BCM50610:
-       case TG3_PHY_ID_BCM50610M:
+       case PHY_ID_BCM50610:
+       case PHY_ID_BCM50610M:
                val = MAC_PHYCFG2_50610_LED_MODES;
                break;
-       case TG3_PHY_ID_BCMAC131:
+       case PHY_ID_BCMAC131:
                val = MAC_PHYCFG2_AC131_LED_MODES;
                break;
-       case TG3_PHY_ID_RTL8211C:
+       case PHY_ID_RTL8211C:
                val = MAC_PHYCFG2_RTL8211C_LED_MODES;
                break;
-       case TG3_PHY_ID_RTL8201E:
+       case PHY_ID_RTL8201E:
                val = MAC_PHYCFG2_RTL8201E_LED_MODES;
                break;
        default:
@@ -1115,12 +1115,12 @@ static int tg3_mdio_init(struct tg3 *tp)
        }
 
        switch (phydev->drv->phy_id & phydev->drv->phy_id_mask) {
-       case TG3_PHY_ID_BCM57780:
+       case PHY_ID_BCM57780:
                phydev->interface = PHY_INTERFACE_MODE_GMII;
                phydev->dev_flags |= PHY_BRCM_AUTO_PWRDWN_ENABLE;
                break;
-       case TG3_PHY_ID_BCM50610:
-       case TG3_PHY_ID_BCM50610M:
+       case PHY_ID_BCM50610:
+       case PHY_ID_BCM50610M:
                phydev->dev_flags |= PHY_BRCM_CLEAR_RGMII_MODE |
                                     PHY_BRCM_RX_REFCLK_UNUSED |
                                     PHY_BRCM_DIS_TXCRXC_NOENRGY |
@@ -1132,11 +1132,11 @@ static int tg3_mdio_init(struct tg3 *tp)
                if (tp->tg3_flags3 & TG3_FLG3_RGMII_EXT_IBND_TX_EN)
                        phydev->dev_flags |= PHY_BRCM_EXT_IBND_TX_ENABLE;
                /* fallthru */
-       case TG3_PHY_ID_RTL8211C:
+       case PHY_ID_RTL8211C:
                phydev->interface = PHY_INTERFACE_MODE_RGMII;
                break;
-       case TG3_PHY_ID_RTL8201E:
-       case TG3_PHY_ID_BCMAC131:
+       case PHY_ID_RTL8201E:
+       case PHY_ID_BCMAC131:
                phydev->interface = PHY_INTERFACE_MODE_MII;
                phydev->dev_flags |= PHY_BRCM_AUTO_PWRDWN_ENABLE;
                tp->tg3_flags3 |= TG3_FLG3_PHY_IS_FET;
@@ -2563,11 +2563,11 @@ static int tg3_set_power_state(struct tg3 *tp, pci_power_t state)
                        phy_start_aneg(phydev);
 
                        phyid = phydev->drv->phy_id & phydev->drv->phy_id_mask;
-                       if (phyid != TG3_PHY_ID_BCMAC131) {
-                               phyid &= TG3_PHY_OUI_MASK;
-                               if (phyid == TG3_PHY_OUI_1 ||
-                                   phyid == TG3_PHY_OUI_2 ||
-                                   phyid == TG3_PHY_OUI_3)
+                       if (phyid != PHY_ID_BCMAC131) {
+                               phyid &= PHY_BCM_OUI_MASK;
+                               if (phyid == PHY_BCM_OUI_1 ||
+                                   phyid == PHY_BCM_OUI_2 ||
+                                   phyid == PHY_BCM_OUI_3)
                                        do_low_power = true;
                        }
                }
index 800dec4..574a1cc 100644 (file)
@@ -2943,22 +2943,14 @@ struct tg3 {
 #define TG3_PHY_ID_BCM57765            0x5c0d8a40
 #define TG3_PHY_ID_BCM5906             0xdc00ac40
 #define TG3_PHY_ID_BCM8002             0x60010140
-#define TG3_PHY_ID_BCM50610            0x0143bd60
-#define TG3_PHY_ID_BCM50610M           0x0143bd70
-#define TG3_PHY_ID_BCMAC131            0x0143bc70
-#define TG3_PHY_ID_RTL8211C            0x001cc910
-#define TG3_PHY_ID_RTL8201E            0x00008200
-#define TG3_PHY_ID_BCM57780            0x03625d90
 #define TG3_PHY_ID_INVALID             0xffffffff
 
+#define PHY_ID_RTL8211C                        0x001cc910
+#define PHY_ID_RTL8201E                        0x00008200
+
 #define TG3_PHY_ID_REV_MASK            0x0000000f
 #define TG3_PHY_REV_BCM5401_B0         0x1
 
-#define TG3_PHY_OUI_MASK               0xfffffc00
-#define TG3_PHY_OUI_1                  0x00206000
-#define TG3_PHY_OUI_2                  0x0143bc00
-#define TG3_PHY_OUI_3                  0x03625c00
-
        /* This macro assumes the passed PHY ID is
         * already masked with TG3_PHY_ID_MASK.
         */
index 2b31b91..7f437ca 100644 (file)
@@ -1,3 +1,14 @@
+#define PHY_ID_BCM50610                        0x0143bd60
+#define PHY_ID_BCM50610M               0x0143bd70
+#define PHY_ID_BCMAC131                        0x0143bc70
+#define PHY_ID_BCM57780                        0x03625d90
+
+#define PHY_BCM_OUI_MASK               0xfffffc00
+#define PHY_BCM_OUI_1                  0x00206000
+#define PHY_BCM_OUI_2                  0x0143bc00
+#define PHY_BCM_OUI_3                  0x03625c00
+
+
 #define PHY_BCM_FLAGS_MODE_COPPER      0x00000001
 #define PHY_BCM_FLAGS_MODE_1000BX      0x00000002
 #define PHY_BCM_FLAGS_INTF_SGMII       0x00000010