diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c index 74664a6..38cc18a 100644 --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c @@ -944,7 +944,10 @@ EXPORT_SYMBOL(phy_attached_print); int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, u32 flags, phy_interface_t interface) { +#if 0 + /* 'driver' has not been set yet on Genode */ struct module *ndev_owner = dev->dev.parent->driver->owner; +#endif struct mii_bus *bus = phydev->mdio.bus; struct device *d = &phydev->mdio.dev; bool using_genphy = false; @@ -955,7 +958,7 @@ int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, * our own module->refcnt here, otherwise we would not be able to * unload later on. */ - if (ndev_owner != bus->owner && !try_module_get(bus->owner)) { + if (/*ndev_owner != bus->owner &&*/ !try_module_get(bus->owner)) { dev_err(&dev->dev, "failed to get the bus module\n"); return -EIO; } @@ -1060,7 +1063,9 @@ error_module_put: module_put(d->driver->owner); error_put_device: put_device(d); +#if 0 if (ndev_owner != bus->owner) +#endif module_put(bus->owner); return err; }