OSDN Git Service

net: ethernet: davinci_emac: Deduplicate bus_find_device() by name matching
authorLukas Wunner <lukas@wunner.de>
Sat, 25 Nov 2017 11:18:19 +0000 (12:18 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 30 Nov 2017 14:24:08 +0000 (09:24 -0500)
No need to reinvent the wheel, we have bus_find_device_by_name().

Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/davinci_emac.c

index 4bb5618..f58c0c6 100644 (file)
@@ -1385,11 +1385,6 @@ static int emac_devioctl(struct net_device *ndev, struct ifreq *ifrq, int cmd)
                return -EOPNOTSUPP;
 }
 
-static int match_first_device(struct device *dev, void *data)
-{
-       return !strncmp(dev_name(dev), "davinci_mdio", 12);
-}
-
 /**
  * emac_dev_open - EMAC device open
  * @ndev: The DaVinci EMAC network adapter
@@ -1489,8 +1484,8 @@ static int emac_dev_open(struct net_device *ndev)
 
        /* use the first phy on the bus if pdata did not give us a phy id */
        if (!phydev && !priv->phy_id) {
-               phy = bus_find_device(&mdio_bus_type, NULL, NULL,
-                                     match_first_device);
+               phy = bus_find_device_by_name(&mdio_bus_type, NULL,
+                                             "davinci_mdio");
                if (phy) {
                        priv->phy_id = dev_name(phy);
                        if (!priv->phy_id || !*priv->phy_id)