net: phy: fix circular LEDS_CLASS dependencies
authorArnd Bergmann <arnd@arndb.de>
Thu, 20 Apr 2023 08:45:51 +0000 (10:45 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 21 Apr 2023 02:07:34 +0000 (19:07 -0700)
commit4bb7aac70b5d8a4bddf4ee0791b834f9f56883d2
treea704a0afd24483a6f4174ce6e4ddebdb7cb2f0c2
parent681c5b51dc6b8ff1ec05555243eccf64a08cb2fd
net: phy: fix circular LEDS_CLASS dependencies

The CONFIG_PHYLIB symbol is selected by a number of device drivers that
need PHY support, but it now has a dependency on CONFIG_LEDS_CLASS,
which may not be enabled, causing build failures.

Avoid the risk of missing and circular dependencies by guarding the
phylib LED support itself in another Kconfig symbol that can only be
enabled if the dependency is met.

This could be made a hidden symbol and always enabled when both CONFIG_OF
and CONFIG_LEDS_CLASS are reachable from the phylib, but there may be an
advantage in having users see this option when they have a misconfigured
kernel without built-in LED support.

Fixes: 01e5b728e9e4 ("net: phy: Add a binding for PHY LEDs")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20230420084624.3005701-1-arnd@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/Kconfig
drivers/net/phy/phy_device.c