diff --git a/drivers/led_strip/Kconfig.apa102 b/drivers/led_strip/Kconfig.apa102 index 17e76021b33..27ac4b23391 100644 --- a/drivers/led_strip/Kconfig.apa102 +++ b/drivers/led_strip/Kconfig.apa102 @@ -6,6 +6,8 @@ config APA102_STRIP bool "APA102 SPI LED strip driver" + default y + depends on DT_HAS_APA_APA102_ENABLED select SPI if $(dt_compat_on_bus,$(DT_COMPAT_APA_APA102),spi) select LED_STRIP_RGB_SCRATCH help diff --git a/drivers/led_strip/Kconfig.lpd880x b/drivers/led_strip/Kconfig.lpd880x index db066194436..eaf79924361 100644 --- a/drivers/led_strip/Kconfig.lpd880x +++ b/drivers/led_strip/Kconfig.lpd880x @@ -3,6 +3,8 @@ config LPD880X_STRIP bool "LPD880x SPI LED strip driver" + default y + depends on DT_HAS_GREELED_LPD8803_ENABLED || DT_HAS_GREELED_LPD8806_ENABLED select SPI if $(dt_compat_on_bus,$(DT_COMPAT_GREELED_LPD8803),spi) \ || $(dt_compat_on_bus,$(DT_COMPAT_GREELED_LPD8806),spi) help diff --git a/drivers/led_strip/Kconfig.ws2812 b/drivers/led_strip/Kconfig.ws2812 index 791923f135d..5040515e8bc 100644 --- a/drivers/led_strip/Kconfig.ws2812 +++ b/drivers/led_strip/Kconfig.ws2812 @@ -8,27 +8,36 @@ # https://wp.josh.com/2014/05/13/ws2812-neopixels-are-not-so-finicky-once-you-get-to-know-them/ config WS2812_STRIP_SPI - bool "SPI driver" + bool "WS2812 LED strip SPI driver" + default y + depends on DT_HAS_WORLDSEMI_WS2812_SPI_ENABLED select SPI if $(dt_compat_on_bus,$(DT_COMPAT_WORLDSEMI_WS2812_SPI),spi) help + Enable driver for WS2812 (and compatibles) LED strip using SPI. The SPI driver is portable, but requires significantly more memory (1 byte of overhead per bit of pixel data). config WS2812_STRIP_I2S - bool "I2S driver" + bool "WS2812 LED strip I2S driver" + default y + depends on DT_HAS_WORLDSEMI_WS2812_I2S_ENABLED select I2S if $(dt_compat_on_bus,$(DT_COMPAT_WORLDSEMI_WS2812_I2S),i2s) help + Enable driver for WS2812 (and compatibles) LED strip using I2S. Uses the I2S peripheral, memory usage is 4 bytes per color, times the number of pixels. A few more for the start and end delay. The reset delay has a coarse resolution of ~20us. config WS2812_STRIP_GPIO - bool "GPIO driver" + bool "WS2812 LED strip GPIO driver" # Only an Cortex-M0 inline assembly implementation for the nRF51 # is supported currently. + default y + depends on DT_HAS_WORLDSEMI_WS2812_GPIO_ENABLED depends on SOC_SERIES_NRF51X select LED_STRIP_RGB_SCRATCH help + Enable driver for WS2812 (and compatibles) LED strip directly controlling with GPIO. The GPIO driver does bit-banging with inline assembly, and is not available on all SoCs. @@ -36,8 +45,10 @@ config WS2812_STRIP_GPIO controller. config WS2812_STRIP_RPI_PICO_PIO - bool "Raspberry Pi Pico PIO" + bool "WS2812 LED strip Raspberry Pi Pico PIO driver" + default y depends on DT_HAS_WORLDSEMI_WS2812_RPI_PICO_PIO_ENABLED select PICOSDK_USE_PIO help - Use the PIO feature available on RaspberryPi Pico devices. + Enable driver for WS2812 (and compatibles) LED strip using + the RaspberryPi Pico's PIO. diff --git a/samples/drivers/led_apa102/prj.conf b/samples/drivers/led_apa102/prj.conf index bf12bcb81dc..70d3f24081d 100644 --- a/samples/drivers/led_apa102/prj.conf +++ b/samples/drivers/led_apa102/prj.conf @@ -2,5 +2,4 @@ CONFIG_LOG=y CONFIG_LED_STRIP=y -CONFIG_APA102_STRIP=y CONFIG_POLL=y diff --git a/samples/drivers/led_lpd8806/prj.conf b/samples/drivers/led_lpd8806/prj.conf index 38a88bf206f..704a6a00049 100644 --- a/samples/drivers/led_lpd8806/prj.conf +++ b/samples/drivers/led_lpd8806/prj.conf @@ -5,4 +5,3 @@ CONFIG_BOOT_BANNER=y CONFIG_POLL=y CONFIG_LED_STRIP=y -CONFIG_LPD880X_STRIP=y diff --git a/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160.conf b/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160_ns.conf b/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160_ns.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/actinius_icarus_som_dk_nrf9160_ns.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/adafruit_kb2040.conf b/samples/drivers/led_ws2812/boards/adafruit_kb2040.conf deleted file mode 100644 index 9ccb06fb7bc..00000000000 --- a/samples/drivers/led_ws2812/boards/adafruit_kb2040.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_RPI_PICO_PIO=y diff --git a/samples/drivers/led_ws2812/boards/adafruit_qt_py_rp2040.conf b/samples/drivers/led_ws2812/boards/adafruit_qt_py_rp2040.conf index 6805516207c..8230eb9896b 100644 --- a/samples/drivers/led_ws2812/boards/adafruit_qt_py_rp2040.conf +++ b/samples/drivers/led_ws2812/boards/adafruit_qt_py_rp2040.conf @@ -1,3 +1,2 @@ -CONFIG_WS2812_STRIP_RPI_PICO_PIO=y CONFIG_GPIO=y CONFIG_GPIO_HOGS=y diff --git a/samples/drivers/led_ws2812/boards/bbc_microbit.conf b/samples/drivers/led_ws2812/boards/bbc_microbit.conf deleted file mode 100644 index 0f98dd85562..00000000000 --- a/samples/drivers/led_ws2812/boards/bbc_microbit.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_GPIO=y diff --git a/samples/drivers/led_ws2812/boards/esp32c3_devkitm.conf b/samples/drivers/led_ws2812/boards/esp32c3_devkitm.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/esp32c3_devkitm.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/esp32s2_saola.conf b/samples/drivers/led_ws2812/boards/esp32s2_saola.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/esp32s2_saola.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/esp32s3_devkitm_esp32s3_procpu.conf b/samples/drivers/led_ws2812/boards/esp32s3_devkitm_esp32s3_procpu.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/esp32s3_devkitm_esp32s3_procpu.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/legend.conf b/samples/drivers/led_ws2812/boards/legend.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/legend.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/m5stack_atoms3_lite_esp32s3_procpu.conf b/samples/drivers/led_ws2812/boards/m5stack_atoms3_lite_esp32s3_procpu.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/m5stack_atoms3_lite_esp32s3_procpu.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/m5stack_stamps3_esp32s3_procpu.conf b/samples/drivers/led_ws2812/boards/m5stack_stamps3_esp32s3_procpu.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/m5stack_stamps3_esp32s3_procpu.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/mimxrt1050_evk.conf b/samples/drivers/led_ws2812/boards/mimxrt1050_evk.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/mimxrt1050_evk.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/mimxrt1050_evk_qspi.conf b/samples/drivers/led_ws2812/boards/mimxrt1050_evk_qspi.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/mimxrt1050_evk_qspi.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/nrf51dk_nrf51822.conf b/samples/drivers/led_ws2812/boards/nrf51dk_nrf51822.conf deleted file mode 100644 index 0f98dd85562..00000000000 --- a/samples/drivers/led_ws2812/boards/nrf51dk_nrf51822.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_GPIO=y diff --git a/samples/drivers/led_ws2812/boards/nrf5340dk_nrf5340_cpuapp.conf b/samples/drivers/led_ws2812/boards/nrf5340dk_nrf5340_cpuapp.conf deleted file mode 100644 index d43d48dc8c1..00000000000 --- a/samples/drivers/led_ws2812/boards/nrf5340dk_nrf5340_cpuapp.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_I2S=y diff --git a/samples/drivers/led_ws2812/boards/nucleo_g071rb.conf b/samples/drivers/led_ws2812/boards/nucleo_g071rb.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/nucleo_g071rb.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/nucleo_h743zi.conf b/samples/drivers/led_ws2812/boards/nucleo_h743zi.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/nucleo_h743zi.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/nucleo_l476rg.conf b/samples/drivers/led_ws2812/boards/nucleo_l476rg.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/nucleo_l476rg.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y diff --git a/samples/drivers/led_ws2812/boards/thingy52_nrf52832.conf b/samples/drivers/led_ws2812/boards/thingy52_nrf52832.conf deleted file mode 100644 index d43d48dc8c1..00000000000 --- a/samples/drivers/led_ws2812/boards/thingy52_nrf52832.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_I2S=y diff --git a/samples/drivers/led_ws2812/boards/yd_esp32_esp32_procpu.conf b/samples/drivers/led_ws2812/boards/yd_esp32_esp32_procpu.conf deleted file mode 100644 index 0c82ac5d228..00000000000 --- a/samples/drivers/led_ws2812/boards/yd_esp32_esp32_procpu.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_WS2812_STRIP_SPI=y