net: phy: use of_mdio_parse_addr
authorJon Mason <jon.mason@broadcom.com>
Wed, 31 May 2017 19:43:30 +0000 (15:43 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 2 Jun 2017 18:22:31 +0000 (14:22 -0400)
use of_mdio_parse_addr() in place of an OF read of reg and a bounds
check (which is litterally the exact same thing that
of_mdio_parse_addr() does)

Signed-off-by: Jon Mason <jon.mason@broadcom.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/mdio_bus.c

index 8e73f5f36e7120a5aa28b6e0dfb992eca3330e3e..d4782e902e2ee7a53c738865468432dd50257ab5 100644 (file)
@@ -263,21 +263,10 @@ static void of_mdiobus_link_mdiodev(struct mii_bus *bus,
 
        for_each_available_child_of_node(bus->dev.of_node, child) {
                int addr;
-               int ret;
 
-               ret = of_property_read_u32(child, "reg", &addr);
-               if (ret < 0) {
-                       dev_err(dev, "%s has invalid MDIO address\n",
-                               child->full_name);
+               addr = of_mdio_parse_addr(dev, child);
+               if (addr < 0)
                        continue;
-               }
-
-               /* A MDIO device must have a reg property in the range [0-31] */
-               if (addr >= PHY_MAX_ADDR) {
-                       dev_err(dev, "%s MDIO address %i is too large\n",
-                               child->full_name, addr);
-                       continue;
-               }
 
                if (addr == mdiodev->addr) {
                        dev->of_node = child;