#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#

menu "LED Support"

config USERLED
	bool "LED driver"
	default n
	---help---
		Enable standard user LED upper half driver.

if USERLED

config USERLED_LOWER
	bool "Generic Lower Half LED Driver"
	default n
	depends on ARCH_HAVE_LEDS
	---help---
		If the board supports the standard LED interfaces as
		defined in include/nuttx/board.h header file, then this
		standard LED lower half driver might be usable.

		In order for this generic driver to be usable:

		1. The board implementation must provide the LED
		   interfaces as defined in include/nuttx/board.h

		If your board does not meet these requirements, then the
		userled_lower.c file can still be copied to your your
		board src/ directory and modified for your specific board
		requirements.

endif # USERLED

config LEDS_APA102
	bool "APA102 LED Strip"
	default n
	select SPI
	---help---
		Enable support for the APA102 LED Strip driver.

config LEDS_MAX7219
	bool "MAX7219 Numeric Display"
	default n
	select SPI
	---help---
		Enable support for the MAX7219 to control 7-segment displays.

config RGBLED
	bool "RGB LED Driver Support"
	default n
	---help---
		This selection enables building of the "upper-half" RGB LED driver.
		See include/nuttx/rgbled.h for further PWM driver information.

config RGBLED_INVERT
	bool "Invert RGB LED Output"
	depends on RGBLED
	default n
	---help---
		If the board has a common anode RGB LED (a LOW output turns ON
		each LED), this selection inverts the outputs so that the
		colors are displayed correctly.

config RGBLED_LIGHTNESS_CORRECTION
	bool "Apply Lightness Correction"
	depends on RGBLED
	default n
	---help---
		This selection enables an approximate CIE 1931 lightness
		correction which helps the RGB LED visually fade and blend
		in a more linear, smooth, and visually appealing fashion.

config PCA9635PW
	bool "PCA9635PW I2C LED Driver"
	default n
	select I2C
	---help---
		Enable support for the NXP PCA9635PW LED driver which can be
		utilized to drive up to 16 LED's.

config NCP5623C
	bool "NCP5623C I2C LED Driver"
	default n
	select I2C
	---help---
		Enable support for the onsemi NCP5623C LED driver which can be
		utilized to drive up to 3 LED's.

config WS2812
	bool "WS2812 LED Driver"
	default n
	select SPI
	---help---
		Enable support for the Worldsemi WS2812 LED driver which commonly
		found in LED strips.
		NOTE: This device is a one wire device and has no CS or RESET
		line it must have exclusive use of the bus!

config WS2812_FREQUENCY
	int "WS2812 LED Driver SPI Frequency"
	default 8000000
	depends on WS2812

endmenu # LED Support