#
# Copyright (c) 2017 Linaro Limited
#
# SPDX-License-Identifier: Apache-2.0
#

# Top-level configuration file for LED strip drivers.

menuconfig LED_STRIP
	bool "LED strip drivers"
	default n
	help
		Include LED strip drivers in the system configuration.

if LED_STRIP

config SYS_LOG_LED_STRIP_LEVEL
	int "LED strip system log level"
	depends on SYS_LOG
	default 0
	range 0 4
	help
		Sets the log level for LED strip drivers. You must have
		system logging enabled.
		Levels are:
		0 OFF, do not write
		1 ERROR, only write SYS_LOG_ERR
		2 WARNING, write SYS_LOG_WRN in addition to previous level
		3 INFO, write SYS_LOG_INF in addition to previous levels
		4 DEBUG, write SYS_LOG_DBG in addition to previous levels

config LED_STRIP_INIT_PRIORITY
	int "LED strip initialization priority"
	default 90
	help
	  System initialization priority for LED strip drivers.

# Hidden option. The extra byte enables efficient serialization and transmission
# for drivers which require 4 B on wire for every 3 B of color, e.g. APA102, but
# is not normally needed.
config LED_STRIP_RGB_SCRATCH
	bool
	default n

source "drivers/led_strip/Kconfig.lpd880x"

source "drivers/led_strip/Kconfig.ws2812"

endif # LED_STRIP
