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.ma...@broadcom.com>
---
 drivers/net/phy/mdio_bus.c | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c
index 8e73f5f36e71..d4782e902e2e 100644
--- a/drivers/net/phy/mdio_bus.c
+++ b/drivers/net/phy/mdio_bus.c
@@ -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;
-- 
2.7.4

Reply via email to