net: arc_emac: Make use of the helper function dev_err_probe()
authorCai Huoqing <caihuoqing@baidu.com>
Wed, 15 Sep 2021 14:57:41 +0000 (22:57 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 Sep 2021 12:35:35 +0000 (13:35 +0100)
When possible use dev_err_probe help to properly deal with the
PROBE_DEFER error, the benefit is that DEFER issue will be logged
in the devices_deferred debugfs file.
And using dev_err_probe() can reduce code size, and simplify the code.

Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/arc/emac_mdio.c

index 54cdafd..9acf589 100644 (file)
@@ -151,10 +151,9 @@ int arc_mdio_probe(struct arc_emac_priv *priv)
        data->reset_gpio = devm_gpiod_get_optional(priv->dev, "phy-reset",
                                                   GPIOD_OUT_LOW);
        if (IS_ERR(data->reset_gpio)) {
-               error = PTR_ERR(data->reset_gpio);
-               dev_err(priv->dev, "Failed to request gpio: %d\n", error);
                mdiobus_free(bus);
-               return error;
+               return dev_err_probe(priv->dev, PTR_ERR(data->reset_gpio),
+                                    "Failed to request gpio\n");
        }
 
        of_property_read_u32(np, "phy-reset-duration", &data->msec);
@@ -166,9 +165,9 @@ int arc_mdio_probe(struct arc_emac_priv *priv)
 
        error = of_mdiobus_register(bus, priv->dev->of_node);
        if (error) {
-               dev_err(priv->dev, "cannot register MDIO bus %s\n", bus->name);
                mdiobus_free(bus);
-               return error;
+               return dev_err_probe(priv->dev, error,
+                                    "cannot register MDIO bus %s\n", bus->name);
        }
 
        return 0;