Refactor of_mdiobus_register_phy() to use fwnode_mdiobus_register_phy().

Signed-off-by: Calvin Johnson <calvin.john...@oss.nxp.com>
---

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 drivers/net/mdio/of_mdio.c | 40 +-------------------------------------
 1 file changed, 1 insertion(+), 39 deletions(-)

diff --git a/drivers/net/mdio/of_mdio.c b/drivers/net/mdio/of_mdio.c
index d3f7f104f1ed..a0d804cfc1f0 100644
--- a/drivers/net/mdio/of_mdio.c
+++ b/drivers/net/mdio/of_mdio.c
@@ -98,45 +98,7 @@ EXPORT_SYMBOL(of_mdiobus_phy_device_register);
 static int of_mdiobus_register_phy(struct mii_bus *mdio,
                                    struct device_node *child, u32 addr)
 {
-       struct mii_timestamper *mii_ts;
-       struct phy_device *phy;
-       bool is_c45;
-       int rc;
-       u32 phy_id;
-
-       mii_ts = of_find_mii_timestamper(child);
-       if (IS_ERR(mii_ts))
-               return PTR_ERR(mii_ts);
-
-       is_c45 = of_device_is_compatible(child,
-                                        "ethernet-phy-ieee802.3-c45");
-
-       if (!is_c45 && !of_get_phy_id(child, &phy_id))
-               phy = phy_device_create(mdio, addr, phy_id, 0, NULL);
-       else
-               phy = get_phy_device(mdio, addr, is_c45);
-       if (IS_ERR(phy)) {
-               if (mii_ts)
-                       unregister_mii_timestamper(mii_ts);
-               return PTR_ERR(phy);
-       }
-
-       rc = of_mdiobus_phy_device_register(mdio, phy, child, addr);
-       if (rc) {
-               if (mii_ts)
-                       unregister_mii_timestamper(mii_ts);
-               phy_device_free(phy);
-               return rc;
-       }
-
-       /* phy->mii_ts may already be defined by the PHY driver. A
-        * mii_timestamper probed via the device tree will still have
-        * precedence.
-        */
-       if (mii_ts)
-               phy->mii_ts = mii_ts;
-
-       return 0;
+       return fwnode_mdiobus_register_phy(mdio, of_fwnode_handle(child), addr);
 }
 
 static int of_mdiobus_register_device(struct mii_bus *mdio,
-- 
2.17.1

Reply via email to