xref: /openbmc/linux/drivers/leds/Kconfig (revision 6dfcd296)
1config LEDS_GPIO_REGISTER
2	bool
3	help
4	  This option provides the function gpio_led_register_device.
5	  As this function is used by arch code it must not be compiled as a
6	  module.
7
8menuconfig NEW_LEDS
9	bool "LED Support"
10	help
11	  Say Y to enable Linux LED support.  This allows control of supported
12	  LEDs from both userspace and optionally, by kernel events (triggers).
13
14if NEW_LEDS
15
16config LEDS_CLASS
17	tristate "LED Class Support"
18	help
19	  This option enables the led sysfs class in /sys/class/leds.  You'll
20	  need this to do anything useful with LEDs.  If unsure, say N.
21
22config LEDS_CLASS_FLASH
23	tristate "LED Flash Class Support"
24	depends on LEDS_CLASS
25	help
26	  This option enables the flash led sysfs class in /sys/class/leds.
27	  It wrapps LED Class and adds flash LEDs specific sysfs attributes
28	  and kernel internal API to it. You'll need this to provide support
29	  for the flash related features of a LED device. It can be built
30	  as a module.
31
32comment "LED drivers"
33
34config LEDS_88PM860X
35	tristate "LED Support for Marvell 88PM860x PMIC"
36	depends on LEDS_CLASS
37	depends on MFD_88PM860X
38	help
39	  This option enables support for on-chip LED drivers found on Marvell
40	  Semiconductor 88PM8606 PMIC.
41
42config LEDS_AAT1290
43	tristate "LED support for the AAT1290"
44	depends on LEDS_CLASS_FLASH
45	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
46	depends on GPIOLIB || COMPILE_TEST
47	depends on OF
48	depends on PINCTRL
49	help
50	 This option enables support for the LEDs on the AAT1290.
51
52config LEDS_BCM6328
53	tristate "LED Support for Broadcom BCM6328"
54	depends on LEDS_CLASS
55	depends on HAS_IOMEM
56	depends on OF
57	help
58	  This option enables support for LEDs connected to the BCM6328
59	  LED HW controller accessed via MMIO registers.
60
61config LEDS_BCM6358
62	tristate "LED Support for Broadcom BCM6358"
63	depends on LEDS_CLASS
64	depends on HAS_IOMEM
65	depends on OF
66	help
67	  This option enables support for LEDs connected to the BCM6358
68	  LED HW controller accessed via MMIO registers.
69
70config LEDS_LM3530
71	tristate "LCD Backlight driver for LM3530"
72	depends on LEDS_CLASS
73	depends on I2C
74	help
75	  This option enables support for the LCD backlight using
76	  LM3530 ambient light sensor chip. This ALS chip can be
77	  controlled manually or using PWM input or using ambient
78	  light automatically.
79
80config LEDS_LM3533
81	tristate "LED support for LM3533"
82	depends on LEDS_CLASS
83	depends on MFD_LM3533
84	help
85	  This option enables support for the LEDs on National Semiconductor /
86	  TI LM3533 Lighting Power chips.
87
88	  The LEDs can be controlled directly, through PWM input, or by the
89	  ambient-light-sensor interface. The chip supports
90	  hardware-accelerated blinking with maximum on and off periods of 9.8
91	  and 77 seconds respectively.
92
93config LEDS_LM3642
94	tristate "LED support for LM3642 Chip"
95	depends on LEDS_CLASS && I2C
96	select REGMAP_I2C
97	help
98	  This option enables support for LEDs connected to LM3642.
99	  The LM3642 is a 4MHz fixed-frequency synchronous boost
100	  converter plus 1.5A constant current driver for a high-current
101	  white LED.
102
103
104config LEDS_LOCOMO
105	tristate "LED Support for Locomo device"
106	depends on LEDS_CLASS
107	depends on SHARP_LOCOMO
108	help
109	  This option enables support for the LEDs on Sharp Locomo.
110	  Zaurus models SL-5500 and SL-5600.
111
112config LEDS_MIKROTIK_RB532
113	tristate "LED Support for Mikrotik Routerboard 532"
114	depends on LEDS_CLASS
115	depends on MIKROTIK_RB532
116	help
117	  This option enables support for the so called "User LED" of
118	  Mikrotik's Routerboard 532.
119
120config LEDS_S3C24XX
121	tristate "LED Support for Samsung S3C24XX GPIO LEDs"
122	depends on LEDS_CLASS
123	depends on ARCH_S3C24XX
124	help
125	  This option enables support for LEDs connected to GPIO lines
126	  on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
127
128config LEDS_NET48XX
129	tristate "LED Support for Soekris net48xx series Error LED"
130	depends on LEDS_CLASS
131	depends on SCx200_GPIO
132	help
133	  This option enables support for the Soekris net4801 and net4826 error
134	  LED.
135
136config LEDS_FSG
137	tristate "LED Support for the Freecom FSG-3"
138	depends on LEDS_CLASS
139	depends on MACH_FSG
140	help
141	  This option enables support for the LEDs on the Freecom FSG-3.
142
143config LEDS_WRAP
144	tristate "LED Support for the WRAP series LEDs"
145	depends on LEDS_CLASS
146	depends on SCx200_GPIO
147	help
148	  This option enables support for the PCEngines WRAP programmable LEDs.
149
150config LEDS_COBALT_QUBE
151	tristate "LED Support for the Cobalt Qube series front LED"
152	depends on LEDS_CLASS
153	depends on MIPS_COBALT
154	help
155	  This option enables support for the front LED on Cobalt Qube series
156
157config LEDS_COBALT_RAQ
158	bool "LED Support for the Cobalt Raq series"
159	depends on LEDS_CLASS=y && MIPS_COBALT
160	select LEDS_TRIGGERS
161	help
162	  This option enables support for the Cobalt Raq series LEDs.
163
164config LEDS_SUNFIRE
165	tristate "LED support for SunFire servers."
166	depends on LEDS_CLASS
167	depends on SPARC64
168	select LEDS_TRIGGERS
169	help
170	  This option enables support for the Left, Middle, and Right
171	  LEDs on the I/O and CPU boards of SunFire UltraSPARC servers.
172
173config LEDS_IPAQ_MICRO
174	tristate "LED Support for the Compaq iPAQ h3xxx"
175	depends on LEDS_CLASS
176	depends on MFD_IPAQ_MICRO
177	help
178	  Choose this option if you want to use the notification LED on
179	  Compaq/HP iPAQ h3100 and h3600.
180
181config LEDS_HP6XX
182	tristate "LED Support for the HP Jornada 6xx"
183	depends on LEDS_CLASS
184	depends on SH_HP6XX
185	help
186	  This option enables LED support for the handheld
187	  HP Jornada 620/660/680/690.
188
189config LEDS_PCA9532
190	tristate "LED driver for PCA9532 dimmer"
191	depends on LEDS_CLASS
192	depends on I2C && INPUT
193	help
194	  This option enables support for NXP pca9532
195	  LED controller. It is generally only useful
196	  as a platform driver
197
198config LEDS_PCA9532_GPIO
199	bool "Enable GPIO support for PCA9532"
200	depends on LEDS_PCA9532
201	depends on GPIOLIB
202	help
203	  Allow unused pins on PCA9532 to be used as gpio.
204
205	  To use a pin as gpio pca9532_type in pca9532_platform data needs to
206	  set to PCA9532_TYPE_GPIO.
207
208config LEDS_GPIO
209	tristate "LED Support for GPIO connected LEDs"
210	depends on LEDS_CLASS
211	depends on GPIOLIB || COMPILE_TEST
212	help
213	  This option enables support for the LEDs connected to GPIO
214	  outputs. To be useful the particular board must have LEDs
215	  and they must be connected to the GPIO lines.  The LEDs must be
216	  defined as platform devices and/or OpenFirmware platform devices.
217	  The code to use these bindings can be selected below.
218
219config LEDS_LP3944
220	tristate "LED Support for N.S. LP3944 (Fun Light) I2C chip"
221	depends on LEDS_CLASS
222	depends on I2C
223	help
224	  This option enables support for LEDs connected to the National
225	  Semiconductor LP3944 Lighting Management Unit (LMU) also known as
226	  Fun Light Chip.
227
228	  To compile this driver as a module, choose M here: the
229	  module will be called leds-lp3944.
230
231config LEDS_LP3952
232	tristate "LED Support for TI LP3952 2 channel LED driver"
233	depends on LEDS_CLASS
234	depends on I2C
235	depends on ACPI
236	depends on GPIOLIB
237	select REGMAP_I2C
238	help
239	  This option enables support for LEDs connected to the Texas
240	  Instruments LP3952 LED driver.
241
242	  To compile this driver as a module, choose M here: the
243	  module will be called leds-lp3952.
244
245config LEDS_LP55XX_COMMON
246	tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
247	depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
248	select FW_LOADER
249	select FW_LOADER_USER_HELPER
250	help
251	  This option supports common operations for LP5521/5523/55231/5562/8501
252	  devices.
253
254config LEDS_LP5521
255	tristate "LED Support for N.S. LP5521 LED driver chip"
256	depends on LEDS_CLASS && I2C
257	select LEDS_LP55XX_COMMON
258	help
259	  If you say yes here you get support for the National Semiconductor
260	  LP5521 LED driver. It is 3 channel chip with programmable engines.
261	  Driver provides direct control via LED class and interface for
262	  programming the engines.
263
264config LEDS_LP5523
265	tristate "LED Support for TI/National LP5523/55231 LED driver chip"
266	depends on LEDS_CLASS && I2C
267	select LEDS_LP55XX_COMMON
268	help
269	  If you say yes here you get support for TI/National Semiconductor
270	  LP5523/55231 LED driver.
271	  It is 9 channel chip with programmable engines.
272	  Driver provides direct control via LED class and interface for
273	  programming the engines.
274
275config LEDS_LP5562
276	tristate "LED Support for TI LP5562 LED driver chip"
277	depends on LEDS_CLASS && I2C
278	select LEDS_LP55XX_COMMON
279	help
280	  If you say yes here you get support for TI LP5562 LED driver.
281	  It is 4 channels chip with programmable engines.
282	  Driver provides direct control via LED class and interface for
283	  programming the engines.
284
285config LEDS_LP8501
286	tristate "LED Support for TI LP8501 LED driver chip"
287	depends on LEDS_CLASS && I2C
288	select LEDS_LP55XX_COMMON
289	help
290	  If you say yes here you get support for TI LP8501 LED driver.
291	  It is 9 channel chip with programmable engines.
292	  Driver provides direct control via LED class and interface for
293	  programming the engines.
294	  It is similar as LP5523, but output power selection is available.
295	  And register layout and engine program schemes are different.
296
297config LEDS_LP8788
298	tristate "LED support for the TI LP8788 PMIC"
299	depends on LEDS_CLASS
300	depends on MFD_LP8788
301	help
302	  This option enables support for the Keyboard LEDs on the LP8788 PMIC.
303
304config LEDS_LP8860
305	tristate "LED support for the TI LP8860 4 channel LED driver"
306	depends on LEDS_CLASS && I2C
307	select REGMAP_I2C
308	help
309	  If you say yes here you get support for the TI LP8860 4 channel
310	  LED driver.
311	  This option enables support for the display cluster LEDs
312	  on the LP8860 4 channel LED driver using the I2C communication
313	  bus.
314
315config LEDS_CLEVO_MAIL
316	tristate "Mail LED on Clevo notebook"
317	depends on LEDS_CLASS
318	depends on X86 && SERIO_I8042 && DMI
319	help
320	  This driver makes the mail LED accessible from userspace
321	  programs through the leds subsystem. This LED have three
322	  known mode: off, blink at 0.5Hz and blink at 1Hz.
323
324	  The driver supports two kinds of interface: using ledtrig-timer
325	  or through /sys/class/leds/clevo::mail/brightness. As this LED
326	  cannot change it's brightness it blinks instead. The brightness
327	  value 0 means off, 1..127 means blink at 0.5Hz and 128..255 means
328	  blink at 1Hz.
329
330	  This module can drive the mail LED for the following notebooks:
331
332	  	Clevo D400P
333	  	Clevo D410J
334	  	Clevo D410V
335	  	Clevo D400V/D470V (not tested, but might work)
336	  	Clevo M540N
337	  	Clevo M5x0N (not tested, but might work)
338	  	Positivo Mobile (Clevo M5x0V)
339
340	  If your model is not listed here you can try the "nodetect"
341	  module parameter.
342
343	  To compile this driver as a module, choose M here: the
344	  module will be called leds-clevo-mail.
345
346config LEDS_PCA955X
347	tristate "LED Support for PCA955x I2C chips"
348	depends on LEDS_CLASS
349	depends on I2C
350	help
351	  This option enables support for LEDs connected to PCA955x
352	  LED driver chips accessed via the I2C bus.  Supported
353	  devices include PCA9550, PCA9551, PCA9552, and PCA9553.
354
355config LEDS_PCA963X
356	tristate "LED support for PCA963x I2C chip"
357	depends on LEDS_CLASS
358	depends on I2C
359	help
360	  This option enables support for LEDs connected to the PCA963x
361	  LED driver chip accessed via the I2C bus. Supported
362	  devices include PCA9633 and PCA9634
363
364config LEDS_WM831X_STATUS
365	tristate "LED support for status LEDs on WM831x PMICs"
366	depends on LEDS_CLASS
367	depends on MFD_WM831X
368	help
369	  This option enables support for the status LEDs of the WM831x
370          series of PMICs.
371
372config LEDS_WM8350
373	tristate "LED Support for WM8350 AudioPlus PMIC"
374	depends on LEDS_CLASS
375	depends on MFD_WM8350
376	help
377	  This option enables support for LEDs driven by the Wolfson
378	  Microelectronics WM8350 AudioPlus PMIC.
379
380config LEDS_DA903X
381	tristate "LED Support for DA9030/DA9034 PMIC"
382	depends on LEDS_CLASS
383	depends on PMIC_DA903X
384	help
385	  This option enables support for on-chip LED drivers found
386	  on Dialog Semiconductor DA9030/DA9034 PMICs.
387
388config LEDS_DA9052
389	tristate "Dialog DA9052/DA9053 LEDS"
390	depends on LEDS_CLASS
391	depends on PMIC_DA9052
392	help
393	  This option enables support for on-chip LED drivers found
394	  on Dialog Semiconductor DA9052-BC and DA9053-AA/Bx PMICs.
395
396config LEDS_DAC124S085
397	tristate "LED Support for DAC124S085 SPI DAC"
398	depends on LEDS_CLASS
399	depends on SPI
400	help
401	  This option enables support for DAC124S085 SPI DAC from NatSemi,
402	  which can be used to control up to four LEDs.
403
404config LEDS_PWM
405	tristate "PWM driven LED Support"
406	depends on LEDS_CLASS
407	depends on PWM
408	help
409	  This option enables support for pwm driven LEDs
410
411config LEDS_REGULATOR
412	tristate "REGULATOR driven LED support"
413	depends on LEDS_CLASS
414	depends on REGULATOR
415	help
416	  This option enables support for regulator driven LEDs.
417
418config LEDS_BD2802
419	tristate "LED driver for BD2802 RGB LED"
420	depends on LEDS_CLASS
421	depends on I2C
422	help
423	  This option enables support for BD2802GU RGB LED driver chips
424	  accessed via the I2C bus.
425
426config LEDS_INTEL_SS4200
427	tristate "LED driver for Intel NAS SS4200 series"
428	depends on LEDS_CLASS
429	depends on PCI && DMI
430	depends on X86
431	help
432	  This option enables support for the Intel SS4200 series of
433	  Network Attached Storage servers. You may control the hard
434	  drive or power LEDs on the front panel. Using this driver
435	  can stop the front LED from blinking after startup.
436
437config LEDS_LT3593
438	tristate "LED driver for LT3593 controllers"
439	depends on LEDS_CLASS
440	depends on GPIOLIB || COMPILE_TEST
441	help
442	  This option enables support for LEDs driven by a Linear Technology
443	  LT3593 controller. This controller uses a special one-wire pulse
444	  coding protocol to set the brightness.
445
446config LEDS_ADP5520
447	tristate "LED Support for ADP5520/ADP5501 PMIC"
448	depends on LEDS_CLASS
449	depends on PMIC_ADP5520
450	help
451	  This option enables support for on-chip LED drivers found
452	  on Analog Devices ADP5520/ADP5501 PMICs.
453
454	  To compile this driver as a module, choose M here: the module will
455	  be called leds-adp5520.
456
457config LEDS_DELL_NETBOOKS
458	tristate "External LED on Dell Business Netbooks"
459	depends on LEDS_CLASS
460	depends on X86 && ACPI_WMI
461	depends on DELL_SMBIOS
462	help
463	  This adds support for the Latitude 2100 and similar
464	  notebooks that have an external LED.
465
466config LEDS_MC13783
467	tristate "LED Support for MC13XXX PMIC"
468	depends on LEDS_CLASS
469	depends on MFD_MC13XXX
470	help
471	  This option enable support for on-chip LED drivers found
472	  on Freescale Semiconductor MC13783/MC13892/MC34708 PMIC.
473
474config LEDS_NS2
475	tristate "LED support for Network Space v2 GPIO LEDs"
476	depends on LEDS_CLASS
477	depends on MACH_KIRKWOOD || MACH_ARMADA_370
478	default y
479	help
480	  This option enables support for the dual-GPIO LEDs found on the
481	  following LaCie/Seagate boards:
482
483		Network Space v2 (and parents: Max, Mini)
484		Internet Space v2
485		d2 Network v2
486		n090401 (Seagate NAS 4-Bay)
487
488config LEDS_NETXBIG
489	tristate "LED support for Big Network series LEDs"
490	depends on LEDS_CLASS
491	depends on MACH_KIRKWOOD
492	default y
493	help
494	  This option enable support for LEDs found on the LaCie 2Big
495	  and 5Big Network v2 boards. The LEDs are wired to a CPLD and are
496	  controlled through a GPIO extension bus.
497
498config LEDS_ASIC3
499	bool "LED support for the HTC ASIC3"
500	depends on LEDS_CLASS=y
501	depends on MFD_ASIC3
502	default y
503	help
504	  This option enables support for the LEDs on the HTC ASIC3. The HTC
505	  ASIC3 LED GPIOs are inputs, not outputs, thus the leds-gpio driver
506	  cannot be used. This driver supports hardware blinking with an on+off
507	  period from 62ms to 125s. Say Y to enable LEDs on the HP iPAQ hx4700.
508
509config LEDS_TCA6507
510	tristate "LED Support for TCA6507 I2C chip"
511	depends on LEDS_CLASS && I2C
512	help
513	  This option enables support for LEDs connected to TC6507
514	  LED driver chips accessed via the I2C bus.
515	  Driver support brightness control and hardware-assisted blinking.
516
517config LEDS_TLC591XX
518	tristate "LED driver for TLC59108 and TLC59116 controllers"
519	depends on LEDS_CLASS && I2C
520	select REGMAP_I2C
521	help
522	  This option enables support for Texas Instruments TLC59108
523	  and TLC59116 LED controllers.
524
525config LEDS_MAX77693
526	tristate "LED support for MAX77693 Flash"
527	depends on LEDS_CLASS_FLASH
528	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
529	depends on MFD_MAX77693
530	depends on OF
531	help
532	  This option enables support for the flash part of the MAX77693
533	  multifunction device. It has build in control for two leds in flash
534	  and torch mode.
535
536config LEDS_MAX8997
537	tristate "LED support for MAX8997 PMIC"
538	depends on LEDS_CLASS && MFD_MAX8997
539	help
540	  This option enables support for on-chip LED drivers on
541	  MAXIM MAX8997 PMIC.
542
543config LEDS_LM355x
544	tristate "LED support for LM355x Chips, LM3554 and LM3556"
545	depends on LEDS_CLASS && I2C
546	select REGMAP_I2C
547	help
548	  This option enables support for LEDs connected to LM355x.
549	  LM355x includes Torch, Flash and Indicator functions.
550
551config LEDS_OT200
552	tristate "LED support for the Bachmann OT200"
553	depends on LEDS_CLASS && HAS_IOMEM && (X86_32 || COMPILE_TEST)
554	help
555	  This option enables support for the LEDs on the Bachmann OT200.
556	  Say Y to enable LEDs on the Bachmann OT200.
557
558config LEDS_MENF21BMC
559	tristate "LED support for the MEN 14F021P00 BMC"
560	depends on LEDS_CLASS && MFD_MENF21BMC
561	help
562	  Say Y here to include support for the MEN 14F021P00 BMC LEDs.
563
564	  This driver can also be built as a module. If so the module
565	  will be called leds-menf21bmc.
566
567config LEDS_KTD2692
568	tristate "LED support for KTD2692 flash LED controller"
569	depends on LEDS_CLASS_FLASH && OF
570	depends on GPIOLIB || COMPILE_TEST
571	help
572	  This option enables support for KTD2692 LED flash connected
573	  through ExpressWire interface.
574
575	  Say Y to enable this driver.
576
577config LEDS_SEAD3
578	tristate "LED support for the MIPS SEAD 3 board"
579	depends on LEDS_CLASS && MIPS_SEAD3
580	help
581	  Say Y here to include support for the FLED and PLED LEDs on SEAD3 eval
582	  boards.
583
584	  This driver can also be built as a module. If so the module
585	  will be called leds-sead3.
586
587config LEDS_IS31FL319X
588	tristate "LED Support for ISSI IS31FL319x I2C LED controller family"
589	depends on LEDS_CLASS && I2C && OF
590	select REGMAP_I2C
591	help
592	  This option enables support for LEDs connected to ISSI IS31FL319x
593	  fancy LED driver chips accessed via the I2C bus.
594	  Driver supports individual PWM brightness control for each channel.
595
596	  This driver can also be built as a module. If so the module will be
597	  called leds-is31fl319x.
598
599config LEDS_IS31FL32XX
600	tristate "LED support for ISSI IS31FL32XX I2C LED controller family"
601	depends on LEDS_CLASS && I2C && OF
602	help
603	  Say Y here to include support for ISSI IS31FL32XX and Si-En SN32xx
604	  LED controllers. They are I2C devices with multiple constant-current
605	  channels, each with independent 256-level PWM control.
606
607comment "LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)"
608
609config LEDS_BLINKM
610	tristate "LED support for the BlinkM I2C RGB LED"
611	depends on LEDS_CLASS
612	depends on I2C
613	help
614	  This option enables support for the BlinkM RGB LED connected
615	  through I2C. Say Y to enable support for the BlinkM LED.
616
617config LEDS_POWERNV
618	tristate "LED support for PowerNV Platform"
619	depends on LEDS_CLASS
620	depends on PPC_POWERNV
621	depends on OF
622	help
623	  This option enables support for the system LEDs present on
624	  PowerNV platforms. Say 'y' to enable this support in kernel.
625	  To compile this driver as a module, choose 'm' here: the module
626	  will be called leds-powernv.
627
628config LEDS_SYSCON
629	bool "LED support for LEDs on system controllers"
630	depends on LEDS_CLASS=y
631	depends on MFD_SYSCON
632	depends on OF
633	help
634	  This option enabled support for the LEDs on syscon type
635	  devices. This will only work with device tree enabled
636	  devices.
637
638config LEDS_VERSATILE
639	tristate "LED support for the ARM Versatile and RealView"
640	depends on ARCH_REALVIEW || ARCH_VERSATILE
641	depends on LEDS_CLASS
642	help
643	  This option enabled support for the LEDs on the ARM Versatile
644	  and RealView boards. Say Y to enabled these.
645
646config LEDS_PM8058
647	tristate "LED Support for the Qualcomm PM8058 PMIC"
648	depends on MFD_PM8921_CORE
649	depends on LEDS_CLASS
650	help
651	  Choose this option if you want to use the LED drivers in
652	  the Qualcomm PM8058 PMIC.
653
654config LEDS_MLXCPLD
655	tristate "LED support for the Mellanox boards"
656	depends on X86_64 && DMI
657	depends on LEDS_CLASS
658	help
659	  This option enabled support for the LEDs on the Mellanox
660	  boards. Say Y to enabled these.
661
662comment "LED Triggers"
663source "drivers/leds/trigger/Kconfig"
664
665endif # NEW_LEDS
666