diff options
author | Ezequiel Garcia | 2014-07-23 21:47:31 +0200 |
---|---|---|
committer | David S. Miller | 2014-07-25 03:09:52 +0200 |
commit | a71e3c37960ce5f9c6a519bc1215e3ba9fa83e75 (patch) | |
tree | be6b693a78170b2e6465eb9a8d66e10c53fcfed4 /drivers/net/phy/mdio_bus.c | |
parent | bnx2x: fix set_setting for some PHYs (diff) | |
download | kernel-qcow2-linux-a71e3c37960ce5f9c6a519bc1215e3ba9fa83e75.tar.gz kernel-qcow2-linux-a71e3c37960ce5f9c6a519bc1215e3ba9fa83e75.tar.xz kernel-qcow2-linux-a71e3c37960ce5f9c6a519bc1215e3ba9fa83e75.zip |
net: phy: Set the driver when registering an MDIO bus device
mdiobus_register() registers a device which is already bound to a driver.
Hence, the driver pointer should be set properly in order to track down
the driver associated to the MDIO bus.
This will be used to allow ethernet driver to pin down a MDIO bus driver,
preventing it from being unloaded while the PHY device is running.
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy/mdio_bus.c')
-rw-r--r-- | drivers/net/phy/mdio_bus.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c index 4eaadcfcb0fe..203651ebccb0 100644 --- a/drivers/net/phy/mdio_bus.c +++ b/drivers/net/phy/mdio_bus.c @@ -255,6 +255,7 @@ int mdiobus_register(struct mii_bus *bus) bus->dev.parent = bus->parent; bus->dev.class = &mdio_bus_class; + bus->dev.driver = bus->parent->driver; bus->dev.groups = NULL; dev_set_name(&bus->dev, "%s", bus->id); |