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@makrotopia.org Cc: stable@vger.kernel.org Fixes: 01e5b728e9e4 ("net: phy: Add a binding for PHY LEDs") Signed-off-by: Christian Marangi ansuelsmth@gmail.com
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