Merge remote-tracking branch 'omap/for-next'
[deliverable/linux.git] / drivers / net / phy / phy_device.c
index e551f3a89cfd0212e381ec274c59f558eb07d2b0..e977ba931878e77cb149fd5a66c5618f723500a3 100644 (file)
@@ -529,7 +529,7 @@ struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45)
 
        /* If the phy_id is mostly Fs, there is no device there */
        if ((phy_id & 0x1fffffff) == 0x1fffffff)
-               return NULL;
+               return ERR_PTR(-ENODEV);
 
        return phy_device_create(bus, addr, phy_id, is_c45, &c45_ids);
 }
@@ -1123,8 +1123,9 @@ static int genphy_config_advert(struct phy_device *phydev)
  */
 int genphy_setup_forced(struct phy_device *phydev)
 {
-       int ctl = 0;
+       int ctl = phy_read(phydev, MII_BMCR);
 
+       ctl &= BMCR_LOOPBACK | BMCR_ISOLATE | BMCR_PDOWN;
        phydev->pause = 0;
        phydev->asym_pause = 0;
 
This page took 0.0445179999999999 seconds and 5 git commands to generate.