From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> 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 <rdunlap@xxxxxxxxxxxxx> Cc: Pavel Machek <pavel@xxxxxx> Cc: Dan Murphy <dmurphy@xxxxxx> Cc: Milo Kim <milo.kim@xxxxxx> Cc: linux-leds@xxxxxxxxxxxxxxx --- 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