• Ahmad Fatoum's avatar
    net: macb: Fix regression breaking non-MDIO fixed-link PHYs · ab5f1105
    Ahmad Fatoum authored
    commit 739de9a1 ("net: macb: Reorganize macb_mii bringup") broke
    initializing macb on the EVB-KSZ9477 eval board.
    There, of_mdiobus_register was called even for the fixed-link representing
    the RGMII-link to the switch with the result that the driver attempts to
    enumerate PHYs on a non-existent MDIO bus:
    
    	libphy: MACB_mii_bus: probed
    	mdio_bus f0028000.ethernet-ffffffff: fixed-link has invalid PHY address
    	mdio_bus f0028000.ethernet-ffffffff: scan phy fixed-link at address 0
            [snip]
    	mdio_bus f0028000.ethernet-ffffffff: scan phy fixed-link at address 31
    
    The "MDIO" bus registration succeeds regardless, having claimed the reset GPIO,
    and calling of_phy_register_fixed_link later on fails because it tries
    to claim the same GPIO:
    
    	macb f0028000.ethernet: broken fixed-link specification
    
    Fix this by registering the fixed-link before calling mdiobus_register.
    
    Fixes: 739de9a1 ("net: macb: Reorganize macb_mii bringup")
    Signed-off-by: default avatarAhmad Fatoum <a.fatoum@pengutronix.de>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    ab5f1105
macb_main.c 107 KB