This fixes a problem introduced in this commit: commit 87aa9f9c61ad56d505641681812e92ad976f8608 Author: Florian Fainelli Date: Fri Dec 6 13:01:34 2013 -0800 net: phy: consolidate PHY reset in phy_init_hw() The fixups are not executed before the switch gets registered but after the kernel searches for the right switch driver. When the search is executed it searches for the phy_id 0x00, because it was not fixed. --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c @@ -353,6 +353,7 @@ int phy_device_register(struct phy_devic phydev->bus->phy_map[phydev->addr] = phydev; /* Run all of the fixups for this PHY */ + phy_scan_fixups(phydev); err = phy_init_hw(phydev); if (err) { pr_err("PHY %d failed to initialize\n", phydev->addr);