From faf3efca6749dd531590805f94231025c40fe0e8 Mon Sep 17 00:00:00 2001 From: "kirjanov@gmail.com" Date: Tue, 16 Feb 2010 21:54:58 +0000 Subject: [PATCH] --- yaml --- r: 184306 b: refs/heads/master c: e4a474f82ddaaef65433b0b4f5169f2f6cd8ddb0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/smsc911x.c | 24 ++++++++++-------------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/[refs] b/[refs] index 4f9d4cc9ca11..66af7e618372 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e76b69cc0133952c98aa1ad6330cacacd269fd64 +refs/heads/master: e4a474f82ddaaef65433b0b4f5169f2f6cd8ddb0 diff --git a/trunk/drivers/net/smsc911x.c b/trunk/drivers/net/smsc911x.c index 3c1f9aa84cf5..13c0b76dec41 100644 --- a/trunk/drivers/net/smsc911x.c +++ b/trunk/drivers/net/smsc911x.c @@ -770,29 +770,25 @@ static int smsc911x_mii_probe(struct net_device *dev) { struct smsc911x_data *pdata = netdev_priv(dev); struct phy_device *phydev = NULL; - int phy_addr; + int ret; /* find the first phy */ - for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) { - if (pdata->mii_bus->phy_map[phy_addr]) { - phydev = pdata->mii_bus->phy_map[phy_addr]; - SMSC_TRACE(PROBE, "PHY %d: addr %d, phy_id 0x%08X", - phy_addr, phydev->addr, phydev->phy_id); - break; - } - } - + phydev = phy_find_first(pdata->mii_bus); if (!phydev) { pr_err("%s: no PHY found\n", dev->name); return -ENODEV; } - phydev = phy_connect(dev, dev_name(&phydev->dev), - &smsc911x_phy_adjust_link, 0, pdata->config.phy_interface); + SMSC_TRACE(PROBE, "PHY %d: addr %d, phy_id 0x%08X", + phy_addr, phydev->addr, phydev->phy_id); + + ret = phy_connect_direct(dev, phydev, + &smsc911x_phy_adjust_link, 0, + pdata->config.phy_interface); - if (IS_ERR(phydev)) { + if (ret) { pr_err("%s: Could not attach to PHY\n", dev->name); - return PTR_ERR(phydev); + return ret; } pr_info("%s: attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n",