The MDIO reset GPIO is really a classical optional GPIO property case,
so devm_gpiod_get_optional() should have been used, not devm_gpiod_get().
Doing this  saves several LoCs...

Signed-off-by: Sergei Shtylyov <sergei.shtyl...@cogentembedded.com>

---
 drivers/net/phy/mdio_bus.c |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

Index: net-next/drivers/net/phy/mdio_bus.c
===================================================================
--- net-next.orig/drivers/net/phy/mdio_bus.c
+++ net-next/drivers/net/phy/mdio_bus.c
@@ -354,16 +354,12 @@ int __mdiobus_register(struct mii_bus *b
        mutex_init(&bus->mdio_lock);
 
        /* de-assert bus level PHY GPIO reset */
-       gpiod = devm_gpiod_get(&bus->dev, "reset", GPIOD_OUT_LOW);
+       gpiod = devm_gpiod_get_optional(&bus->dev, "reset", GPIOD_OUT_LOW);
        if (IS_ERR(gpiod)) {
-               err = PTR_ERR(gpiod);
-               if (err != -ENOENT) {
-                       dev_err(&bus->dev,
-                               "mii_bus %s couldn't get reset GPIO\n",
-                               bus->id);
-                       return err;
-               }
-       } else  {
+               dev_err(&bus->dev, "mii_bus %s couldn't get reset GPIO\n",
+                       bus->id);
+               return PTR_ERR(gpiod);
+       } else  if (gpiod) {
                bus->reset_gpiod = gpiod;
 
                gpiod_set_value_cansleep(gpiod, 1);

Reply via email to