summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/amd/au1000_eth.c
diff options
context:
space:
mode:
authorAndrew Lunn2016-01-06 20:11:18 +0100
committerDavid S. Miller2016-01-07 20:31:26 +0100
commit7f854420fbfe9d49afe2ffb1df052cfe8e215541 (patch)
tree1f3c8d932976b597cdb6db3e53b06b4a95c5d303 /drivers/net/ethernet/amd/au1000_eth.c
parentof: phy: Only register a phy device for phys (diff)
downloadkernel-qcow2-linux-7f854420fbfe9d49afe2ffb1df052cfe8e215541.tar.gz
kernel-qcow2-linux-7f854420fbfe9d49afe2ffb1df052cfe8e215541.tar.xz
kernel-qcow2-linux-7f854420fbfe9d49afe2ffb1df052cfe8e215541.zip
phy: Add API for {un}registering an mdio device to a bus.
Rather than have drivers directly manipulate the mii_bus structure, provide and API for registering and unregistering devices on an MDIO bus, and performing lookups. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/amd/au1000_eth.c')
-rw-r--r--drivers/net/ethernet/amd/au1000_eth.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/ethernet/amd/au1000_eth.c b/drivers/net/ethernet/amd/au1000_eth.c
index 982b581d3484..c8640418fc37 100644
--- a/drivers/net/ethernet/amd/au1000_eth.c
+++ b/drivers/net/ethernet/amd/au1000_eth.c
@@ -502,7 +502,7 @@ static int au1000_mii_probe(struct net_device *dev)
BUG_ON(aup->mac_id < 0 || aup->mac_id > 1);
if (aup->phy_addr)
- phydev = aup->mii_bus->phy_map[aup->phy_addr];
+ phydev = mdiobus_get_phy(aup->mii_bus, aup->phy_addr);
else
netdev_info(dev, "using PHY-less setup\n");
return 0;
@@ -512,8 +512,8 @@ static int au1000_mii_probe(struct net_device *dev)
* on the current MAC's MII bus
*/
for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++)
- if (aup->mii_bus->phy_map[phy_addr]) {
- phydev = aup->mii_bus->phy_map[phy_addr];
+ if (mdiobus_get_phy(aup->mii_bus, aup->phy_addr)) {
+ phydev = mdiobus_get_phy(aup->mii_bus, aup->phy_addr);
if (!aup->phy_search_highest_addr)
/* break out with first one found */
break;
@@ -531,7 +531,8 @@ static int au1000_mii_probe(struct net_device *dev)
*/
for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) {
struct phy_device *const tmp_phydev =
- aup->mii_bus->phy_map[phy_addr];
+ mdiobus_get_phy(aup->mii_bus,
+ phy_addr);
if (aup->mac_id == 1)
break;