diff options
author | Jiri Kosina <jkosina@suse.cz> | 2018-06-08 11:22:26 +0300 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2018-06-08 11:22:26 +0300 |
commit | 37acd687269f8cb8366598e292f96eb5605d3e3a (patch) | |
tree | e49cc91bef34755b9a279b60ed8d10ea01eec725 /drivers/net/phy/phy_device.c | |
parent | 79b83b05b07a40c67ac7196555d2b0293cdf26e7 (diff) | |
parent | 4b64487fa63a71bbed883b55268ea275da6f8a7a (diff) | |
download | linux-37acd687269f8cb8366598e292f96eb5605d3e3a.tar.xz |
Merge branch 'for-4.18/hid-steam' into for-linus
Valve Steam Controller support from Rodrigo Rivas Costa
Diffstat (limited to 'drivers/net/phy/phy_device.c')
-rw-r--r-- | drivers/net/phy/phy_device.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c index ac23322a32e1..9e4ba8e80a18 100644 --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c @@ -535,8 +535,17 @@ static int get_phy_id(struct mii_bus *bus, int addr, u32 *phy_id, /* Grab the bits from PHYIR1, and put them in the upper half */ phy_reg = mdiobus_read(bus, addr, MII_PHYSID1); - if (phy_reg < 0) + if (phy_reg < 0) { + /* if there is no device, return without an error so scanning + * the bus works properly + */ + if (phy_reg == -EIO || phy_reg == -ENODEV) { + *phy_id = 0xffffffff; + return 0; + } + return -EIO; + } *phy_id = (phy_reg & 0xffff) << 16; |