diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2015-04-28 12:40:45 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-04-28 12:40:49 +0200 |
commit | efe0fa9e927a699d1d0e09ad56e8ba9eb08a61e2 (patch) | |
tree | d761cb56698120a7b95f5ec22f21c38225cbbdc4 /drivers/net | |
parent | e8388cbb37e6aecb3e111169bc79e0e0eef2bfeb (diff) | |
download | barebox-efe0fa9e927a699d1d0e09ad56e8ba9eb08a61e2.tar.gz barebox-efe0fa9e927a699d1d0e09ad56e8ba9eb08a61e2.tar.xz |
net: phy: Add missing phy_unregister_device
The counterpart of phy_register_device is missing. Add it.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/phy/phy.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index f3dffca46e..edf5d03d94 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@ -272,6 +272,17 @@ int phy_register_device(struct phy_device *phydev) return ret; } +void phy_unregister_device(struct phy_device *phydev) +{ + if (!phydev->registered) + return; + + phydev->bus->phy_map[phydev->addr] = NULL; + + unregister_device(&phydev->dev); + phydev->registered = 0; +} + static struct phy_device *of_mdio_find_phy(struct eth_device *edev) { struct device_d *dev; |