diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2013-12-11 10:53:22 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-12-11 10:53:22 +0100 |
commit | 664694d9f72ae8782f9d923e8813e2f51df2a2b7 (patch) | |
tree | 0357f2c28b60b7d3ec9ec7e129966987b75288ad /drivers/net/phy/phy.c | |
parent | 58f9167a04e5c780f07a0488a1cd9c71d28ffc08 (diff) | |
download | barebox-664694d9f72ae8782f9d923e8813e2f51df2a2b7.tar.gz barebox-664694d9f72ae8782f9d923e8813e2f51df2a2b7.tar.xz |
net: phy: move duplicated code out of if/else
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/net/phy/phy.c')
-rw-r--r-- | drivers/net/phy/phy.c | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index a83b35c141..fb4cb118bc 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@ -269,13 +269,6 @@ int phy_device_connect(struct eth_device *edev, struct mii_bus *bus, int addr, ret = -EIO; goto fail; } - - dev->interface = interface; - dev->dev_flags = flags; - - ret = phy_register_device(dev); - if (ret) - goto fail; } else { for (i = 0; i < PHY_MAX_ADDR && !edev->phydev; i++) { /* skip masked out PHY addresses */ @@ -283,20 +276,18 @@ int phy_device_connect(struct eth_device *edev, struct mii_bus *bus, int addr, continue; dev = mdiobus_scan(bus, i); - if (IS_ERR(dev) || dev->attached_dev) - continue; - - dev->interface = interface; - dev->dev_flags = flags; - - ret = phy_register_device(dev); - if (ret) - goto fail; - - break; + if (!IS_ERR(dev) && !dev->attached_dev) + break; } } + dev->interface = interface; + dev->dev_flags = flags; + + ret = phy_register_device(dev); + if (ret) + goto fail; + edev->phydev = dev; dev->attached_dev = edev; phy_config_aneg(edev->phydev); |