net/cadence/macb: fix invalid 0 return if no phy is discovered on mii init
authorBoris BREZILLON <b.brezillon@overkiz.com>
Tue, 27 Aug 2013 12:36:14 +0000 (14:36 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 29 Aug 2013 19:21:45 +0000 (15:21 -0400)
Replace misleading -1 (-EPERM) by a more appropriate return code (-ENXIO)
in macb_mii_probe function.
Save macb_mii_probe return before branching to err_out_unregister to avoid
erronous 0 return.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cadence/macb.c

index fe06ab0f73755ce2cca23f22a8e61620eb59eb98..7660c45a2eb99cdda5a5899077e30e68a65277a1 100644 (file)
@@ -276,7 +276,7 @@ static int macb_mii_probe(struct net_device *dev)
        phydev = phy_find_first(bp->mii_bus);
        if (!phydev) {
                netdev_err(dev, "no PHY found\n");
-               return -1;
+               return -ENXIO;
        }
 
        pdata = dev_get_platdata(&bp->pdev->dev);
@@ -379,9 +379,9 @@ int macb_mii_init(struct macb *bp)
        if (err)
                goto err_out_free_mdio_irq;
 
-       if (macb_mii_probe(bp->dev) != 0) {
+       err = macb_mii_probe(bp->dev);
+       if (err)
                goto err_out_unregister_bus;
-       }
 
        return 0;