From 3ed52022663e09f42f0713f4f24089fe0416936b Mon Sep 17 00:00:00 2001 From: Giuseppe CAVALLARO Date: Wed, 6 Feb 2013 20:47:52 +0000 Subject: [PATCH] --- yaml --- r: 349737 b: refs/heads/master c: 3955b22b9798ae8694ac053614694695991f0a91 h: refs/heads/master i: 349735: 1f7befb35b4a9082149b7a0df450ff81a5672944 v: v3 --- [refs] | 2 +- .../drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 9fbccacc5ae1..5ae4e9acc066 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: de53d55798f44c6c95442ab839004b7272ab61dd +refs/heads/master: 3955b22b9798ae8694ac053614694695991f0a91 diff --git a/trunk/drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c b/trunk/drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c index 0376a5e6b2bf..0b9829fe3eea 100644 --- a/trunk/drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c +++ b/trunk/drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c @@ -188,8 +188,6 @@ int stmmac_mdio_register(struct net_device *ndev) goto bus_register_fail; } - priv->mii = new_bus; - found = 0; for (addr = 0; addr < PHY_MAX_ADDR; addr++) { struct phy_device *phydev = new_bus->phy_map[addr]; @@ -237,8 +235,14 @@ int stmmac_mdio_register(struct net_device *ndev) } } - if (!found) + if (!found) { pr_warning("%s: No PHY found\n", ndev->name); + mdiobus_unregister(new_bus); + mdiobus_free(new_bus); + return -ENODEV; + } + + priv->mii = new_bus; return 0;