From: Randy Dunlap <[email protected]>

With these kernel configs:
CONFIG_LEDS_CLASS=m
# CONFIG_LEDS_CLASS_MULTICOLOR is not set
CONFIG_LEDS_LP55XX_COMMON=y
CONFIG_LEDS_LP5521=m
CONFIG_LEDS_LP5562=m

leds-lp55xx-common.c has a build error because it is builtin and
calls an interface that is built as a loadable module (due to
LEDS_CLASS=m). By making LEDS_LP55XX_COMMON depend on LEDS_CLASS,
this config combination cannot happen, thus preventing the build error.

ld: drivers/leds/leds-lp55xx-common.o: in function `lp55xx_register_leds':
leds-lp55xx-common.c:(.text+0xc5f): undefined reference to 
`devm_led_classdev_register_ext'

Fixes: 33b3a561f417 ("leds: support new LP8501 device - another LP55xx common")
Signed-off-by: Randy Dunlap <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: Dan Murphy <[email protected]>
Cc: Milo Kim <[email protected]>
Cc: [email protected]
---
The Fixes: tag might be incorrect...  I also considered:
92a81562e695 ("leds: lp55xx: Add multicolor framework support to lp55xx")

 drivers/leds/Kconfig |    1 +
 1 file changed, 1 insertion(+)

--- linux-next-20200817.orig/drivers/leds/Kconfig
+++ linux-next-20200817/drivers/leds/Kconfig
@@ -397,6 +397,7 @@ config LEDS_LP3952
 
 config LEDS_LP55XX_COMMON
        tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
+       depends on LEDS_CLASS
        depends on LEDS_CLASS_MULTICOLOR || !LEDS_CLASS_MULTICOLOR
        depends on OF
        depends on I2C

Reply via email to