# Copyright (c) 2017 Linaro Limited
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0

# The following blog post is an excellent resource about pulse timing:
#
# https://wp.josh.com/2014/05/13/ws2812-neopixels-are-not-so-finicky-once-you-get-to-know-them/

menuconfig WS2812_STRIP
	bool "Enable WS2812 (and compatible) LED strip driver"
	select LED_STRIP_RGB_SCRATCH
	help
	  Enable LED strip driver for daisy chains of WS2812-ish
	  (or WS2812B, WS2813, SK6812, or compatible) devices.

choice WS2812_STRIP_DRIVER
	prompt "Driver backend"
	default WS2812_STRIP_SPI
	depends on WS2812_STRIP

config WS2812_STRIP_SPI
	bool "Enable the SPI driver"
	depends on SPI
	help
	  The SPI driver is portable, but requires significantly more
	  memory (1 byte of overhead per bit of pixel data).

config WS2812_STRIP_GPIO
	bool "Enable the GPIO driver"
	# Only an Cortex-M0 inline assembly implementation for the nRF51
	# is supported currently.
	depends on SOC_SERIES_NRF51X
	help
	  The GPIO driver does bit-banging with inline assembly,
	  and is not available on all SoCs.

endchoice
