On Fri, Oct 04, 2024 at 12:10:05AM +0200, Christian Marangi wrote: > It might happen that a PHY driver fails to probe or is not present in > the system as it's a kmod. In such case the Device Tree might have LED > entry but the Generic PHY is probed instead. > > In this scenario, PHY LEDs OF registration should be skipped as > controlling the PHY LEDs is not possible. > > Tested-by: Daniel Golle <daniel@xxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 01e5b728e9e4 ("net: phy: Add a binding for PHY LEDs") > Signed-off-by: Christian Marangi <ansuelsmth@xxxxxxxxx> > --- > drivers/net/phy/phy_device.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c > index 499797646580..af088bf00bae 100644 > --- a/drivers/net/phy/phy_device.c > +++ b/drivers/net/phy/phy_device.c > @@ -3411,6 +3411,11 @@ static int of_phy_leds(struct phy_device *phydev) > struct device_node *leds; > int err; > > + /* Skip LED registration if we are Generic PHY */ > + if (phy_driver_is_genphy(phydev) || > + phy_driver_is_genphy_10g(phydev)) > + return 0; Why fix it link this, when what you propose for net-next, that the drv ops must also exist, would fix it. I don't see any need to special case genphy. Andrew