net: phy: remove calls to genphy_config_init
authorHeiner Kallweit <hkallweit1@gmail.com>
Sat, 17 Aug 2019 10:29:25 +0000 (12:29 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 17 Aug 2019 19:34:50 +0000 (12:34 -0700)
Supported PHY features are either auto-detected or explicitly set.
In both cases calling genphy_config_init isn't needed. All that
genphy_config_init does is removing features that are set as
supported but can't be auto-detected. Basically it duplicates the
code in genphy_read_abilities. Therefore remove such calls from
all PHY drivers.

v2:
- remove call also from new adin PHY driver
v3:
- pass NULL as config_init function pointer for dp83848

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/adin.c
drivers/net/phy/at803x.c
drivers/net/phy/dp83822.c
drivers/net/phy/dp83848.c
drivers/net/phy/dp83tc811.c
drivers/net/phy/meson-gxl.c
drivers/net/phy/microchip.c
drivers/net/phy/microchip_t1.c
drivers/net/phy/mscc.c
drivers/net/phy/vitesse.c

index ac79e16..4dec83d 100644 (file)
@@ -356,10 +356,6 @@ static int adin_config_init(struct phy_device *phydev)
 
        phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
 
-       rc = genphy_config_init(phydev);
-       if (rc < 0)
-               return rc;
-
        rc = adin_config_rgmii_mode(phydev);
        if (rc < 0)
                return rc;
index 222ccd9..d98aa56 100644 (file)
@@ -249,10 +249,6 @@ static int at803x_config_init(struct phy_device *phydev)
 {
        int ret;
 
-       ret = genphy_config_init(phydev);
-       if (ret < 0)
-               return ret;
-
        /* The RX and TX delay default is:
         *   after HW reset: RX delay enabled and TX delay disabled
         *   after SW reset: RX delay enabled, while TX delay retains the
index 7ed4760..8a4b1d1 100644 (file)
@@ -254,13 +254,8 @@ static int dp83822_config_intr(struct phy_device *phydev)
 
 static int dp83822_config_init(struct phy_device *phydev)
 {
-       int err;
        int value;
 
-       err = genphy_config_init(phydev);
-       if (err < 0)
-               return err;
-
        value = DP83822_WOL_MAGIC_EN | DP83822_WOL_SECURE_ON | DP83822_WOL_EN;
 
        return phy_write_mmd(phydev, DP83822_DEVADDR, MII_DP83822_WOL_CFG,
index 6f9bc7d..54c7c1b 100644 (file)
@@ -68,13 +68,8 @@ static int dp83848_config_intr(struct phy_device *phydev)
 
 static int dp83848_config_init(struct phy_device *phydev)
 {
-       int err;
        int val;
 
-       err = genphy_config_init(phydev);
-       if (err < 0)
-               return err;
-
        /* DP83620 always reports Auto Negotiation Ability on BMSR. Instead,
         * we check initial value of BMCR Auto negotiation enable bit
         */
@@ -113,13 +108,13 @@ MODULE_DEVICE_TABLE(mdio, dp83848_tbl);
 
 static struct phy_driver dp83848_driver[] = {
        DP83848_PHY_DRIVER(TI_DP83848C_PHY_ID, "TI DP83848C 10/100 Mbps PHY",
-                          genphy_config_init),
+                          NULL),
        DP83848_PHY_DRIVER(NS_DP83848C_PHY_ID, "NS DP83848C 10/100 Mbps PHY",
-                          genphy_config_init),
+                          NULL),
        DP83848_PHY_DRIVER(TI_DP83620_PHY_ID, "TI DP83620 10/100 Mbps PHY",
                           dp83848_config_init),
        DP83848_PHY_DRIVER(TLK10X_PHY_ID, "TI TLK10X 10/100 Mbps PHY",
-                          genphy_config_init),
+                          NULL),
 };
 module_phy_driver(dp83848_driver);
 
index ac27da1..06f0883 100644 (file)
@@ -277,10 +277,6 @@ static int dp83811_config_init(struct phy_device *phydev)
 {
        int value, err;
 
-       err = genphy_config_init(phydev);
-       if (err < 0)
-               return err;
-
        value = phy_read(phydev, MII_DP83811_SGMII_CTRL);
        if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
                err = phy_write(phydev, MII_DP83811_SGMII_CTRL,
index fa80d6d..e8f2ca6 100644 (file)
@@ -136,7 +136,7 @@ static int meson_gxl_config_init(struct phy_device *phydev)
        if (ret)
                return ret;
 
-       return genphy_config_init(phydev);
+       return 0;
 }
 
 /* This function is provided to cope with the possible failures of this phy
index eb1b328..a644e8e 100644 (file)
@@ -305,7 +305,6 @@ static int lan88xx_config_init(struct phy_device *phydev)
 {
        int val;
 
-       genphy_config_init(phydev);
        /*Zerodetect delay enable */
        val = phy_read_mmd(phydev, MDIO_MMD_PCS,
                           PHY_ARDENNES_MMD_DEV_3_PHY_CFG);
index 3d09b47..001def4 100644 (file)
@@ -48,7 +48,6 @@ static struct phy_driver microchip_t1_phy_driver[] = {
 
                .features       = PHY_BASIC_T1_FEATURES,
 
-               .config_init    = genphy_config_init,
                .config_aneg    = genphy_config_aneg,
 
                .ack_interrupt  = lan87xx_phy_ack_interrupt,
index 645d354..7ada1fd 100644 (file)
@@ -1725,7 +1725,7 @@ static int vsc8584_config_init(struct phy_device *phydev)
                        return ret;
        }
 
-       return genphy_config_init(phydev);
+       return 0;
 
 err:
        mutex_unlock(&phydev->mdio.bus->mdio_lock);
@@ -1767,7 +1767,7 @@ static int vsc85xx_config_init(struct phy_device *phydev)
                        return rc;
        }
 
-       return genphy_config_init(phydev);
+       return 0;
 }
 
 static int vsc8584_did_interrupt(struct phy_device *phydev)
index 43691b1..bb68035 100644 (file)
@@ -197,7 +197,7 @@ static int vsc738x_config_init(struct phy_device *phydev)
 
        vsc73xx_config_init(phydev);
 
-       return genphy_config_init(phydev);
+       return 0;
 }
 
 static int vsc739x_config_init(struct phy_device *phydev)
@@ -229,7 +229,7 @@ static int vsc739x_config_init(struct phy_device *phydev)
 
        vsc73xx_config_init(phydev);
 
-       return genphy_config_init(phydev);
+       return 0;
 }
 
 static int vsc73xx_config_aneg(struct phy_device *phydev)
@@ -267,7 +267,7 @@ static int vsc8601_config_init(struct phy_device *phydev)
        if (ret < 0)
                return ret;
 
-       return genphy_config_init(phydev);
+       return 0;
 }
 
 static int vsc824x_ack_interrupt(struct phy_device *phydev)