xref: /openbmc/linux/drivers/leds/Kconfig (revision 23c2b932)
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_LP55XX_COMMON
232	tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
233	depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
234	select FW_LOADER
235	select FW_LOADER_USER_HELPER
236	help
237	  This option supports common operations for LP5521/5523/55231/5562/8501
238	  devices.
239
240config LEDS_LP5521
241	tristate "LED Support for N.S. LP5521 LED driver chip"
242	depends on LEDS_CLASS && I2C
243	select LEDS_LP55XX_COMMON
244	help
245	  If you say yes here you get support for the National Semiconductor
246	  LP5521 LED driver. It is 3 channel chip with programmable engines.
247	  Driver provides direct control via LED class and interface for
248	  programming the engines.
249
250config LEDS_LP5523
251	tristate "LED Support for TI/National LP5523/55231 LED driver chip"
252	depends on LEDS_CLASS && I2C
253	select LEDS_LP55XX_COMMON
254	help
255	  If you say yes here you get support for TI/National Semiconductor
256	  LP5523/55231 LED driver.
257	  It is 9 channel chip with programmable engines.
258	  Driver provides direct control via LED class and interface for
259	  programming the engines.
260
261config LEDS_LP5562
262	tristate "LED Support for TI LP5562 LED driver chip"
263	depends on LEDS_CLASS && I2C
264	select LEDS_LP55XX_COMMON
265	help
266	  If you say yes here you get support for TI LP5562 LED driver.
267	  It is 4 channels chip with programmable engines.
268	  Driver provides direct control via LED class and interface for
269	  programming the engines.
270
271config LEDS_LP8501
272	tristate "LED Support for TI LP8501 LED driver chip"
273	depends on LEDS_CLASS && I2C
274	select LEDS_LP55XX_COMMON
275	help
276	  If you say yes here you get support for TI LP8501 LED driver.
277	  It is 9 channel chip with programmable engines.
278	  Driver provides direct control via LED class and interface for
279	  programming the engines.
280	  It is similar as LP5523, but output power selection is available.
281	  And register layout and engine program schemes are different.
282
283config LEDS_LP8788
284	tristate "LED support for the TI LP8788 PMIC"
285	depends on LEDS_CLASS
286	depends on MFD_LP8788
287	help
288	  This option enables support for the Keyboard LEDs on the LP8788 PMIC.
289
290config LEDS_LP8860
291	tristate "LED support for the TI LP8860 4 channel LED driver"
292	depends on LEDS_CLASS && I2C
293	select REGMAP_I2C
294	help
295	  If you say yes here you get support for the TI LP8860 4 channel
296	  LED driver.
297	  This option enables support for the display cluster LEDs
298	  on the LP8860 4 channel LED driver using the I2C communication
299	  bus.
300
301config LEDS_CLEVO_MAIL
302	tristate "Mail LED on Clevo notebook"
303	depends on LEDS_CLASS
304	depends on X86 && SERIO_I8042 && DMI
305	help
306	  This driver makes the mail LED accessible from userspace
307	  programs through the leds subsystem. This LED have three
308	  known mode: off, blink at 0.5Hz and blink at 1Hz.
309
310	  The driver supports two kinds of interface: using ledtrig-timer
311	  or through /sys/class/leds/clevo::mail/brightness. As this LED
312	  cannot change it's brightness it blinks instead. The brightness
313	  value 0 means off, 1..127 means blink at 0.5Hz and 128..255 means
314	  blink at 1Hz.
315
316	  This module can drive the mail LED for the following notebooks:
317
318	  	Clevo D400P
319	  	Clevo D410J
320	  	Clevo D410V
321	  	Clevo D400V/D470V (not tested, but might work)
322	  	Clevo M540N
323	  	Clevo M5x0N (not tested, but might work)
324	  	Positivo Mobile (Clevo M5x0V)
325
326	  If your model is not listed here you can try the "nodetect"
327	  module parameter.
328
329	  To compile this driver as a module, choose M here: the
330	  module will be called leds-clevo-mail.
331
332config LEDS_PCA955X
333	tristate "LED Support for PCA955x I2C chips"
334	depends on LEDS_CLASS
335	depends on I2C
336	help
337	  This option enables support for LEDs connected to PCA955x
338	  LED driver chips accessed via the I2C bus.  Supported
339	  devices include PCA9550, PCA9551, PCA9552, and PCA9553.
340
341config LEDS_PCA963X
342	tristate "LED support for PCA963x I2C chip"
343	depends on LEDS_CLASS
344	depends on I2C
345	help
346	  This option enables support for LEDs connected to the PCA963x
347	  LED driver chip accessed via the I2C bus. Supported
348	  devices include PCA9633 and PCA9634
349
350config LEDS_WM831X_STATUS
351	tristate "LED support for status LEDs on WM831x PMICs"
352	depends on LEDS_CLASS
353	depends on MFD_WM831X
354	help
355	  This option enables support for the status LEDs of the WM831x
356          series of PMICs.
357
358config LEDS_WM8350
359	tristate "LED Support for WM8350 AudioPlus PMIC"
360	depends on LEDS_CLASS
361	depends on MFD_WM8350
362	help
363	  This option enables support for LEDs driven by the Wolfson
364	  Microelectronics WM8350 AudioPlus PMIC.
365
366config LEDS_DA903X
367	tristate "LED Support for DA9030/DA9034 PMIC"
368	depends on LEDS_CLASS
369	depends on PMIC_DA903X
370	help
371	  This option enables support for on-chip LED drivers found
372	  on Dialog Semiconductor DA9030/DA9034 PMICs.
373
374config LEDS_DA9052
375	tristate "Dialog DA9052/DA9053 LEDS"
376	depends on LEDS_CLASS
377	depends on PMIC_DA9052
378	help
379	  This option enables support for on-chip LED drivers found
380	  on Dialog Semiconductor DA9052-BC and DA9053-AA/Bx PMICs.
381
382config LEDS_DAC124S085
383	tristate "LED Support for DAC124S085 SPI DAC"
384	depends on LEDS_CLASS
385	depends on SPI
386	help
387	  This option enables support for DAC124S085 SPI DAC from NatSemi,
388	  which can be used to control up to four LEDs.
389
390config LEDS_PWM
391	tristate "PWM driven LED Support"
392	depends on LEDS_CLASS
393	depends on PWM
394	help
395	  This option enables support for pwm driven LEDs
396
397config LEDS_REGULATOR
398	tristate "REGULATOR driven LED support"
399	depends on LEDS_CLASS
400	depends on REGULATOR
401	help
402	  This option enables support for regulator driven LEDs.
403
404config LEDS_BD2802
405	tristate "LED driver for BD2802 RGB LED"
406	depends on LEDS_CLASS
407	depends on I2C
408	help
409	  This option enables support for BD2802GU RGB LED driver chips
410	  accessed via the I2C bus.
411
412config LEDS_INTEL_SS4200
413	tristate "LED driver for Intel NAS SS4200 series"
414	depends on LEDS_CLASS
415	depends on PCI && DMI
416	depends on X86
417	help
418	  This option enables support for the Intel SS4200 series of
419	  Network Attached Storage servers. You may control the hard
420	  drive or power LEDs on the front panel. Using this driver
421	  can stop the front LED from blinking after startup.
422
423config LEDS_LT3593
424	tristate "LED driver for LT3593 controllers"
425	depends on LEDS_CLASS
426	depends on GPIOLIB || COMPILE_TEST
427	help
428	  This option enables support for LEDs driven by a Linear Technology
429	  LT3593 controller. This controller uses a special one-wire pulse
430	  coding protocol to set the brightness.
431
432config LEDS_ADP5520
433	tristate "LED Support for ADP5520/ADP5501 PMIC"
434	depends on LEDS_CLASS
435	depends on PMIC_ADP5520
436	help
437	  This option enables support for on-chip LED drivers found
438	  on Analog Devices ADP5520/ADP5501 PMICs.
439
440	  To compile this driver as a module, choose M here: the module will
441	  be called leds-adp5520.
442
443config LEDS_DELL_NETBOOKS
444	tristate "External LED on Dell Business Netbooks"
445	depends on LEDS_CLASS
446	depends on X86 && ACPI_WMI
447	depends on DELL_SMBIOS
448	help
449	  This adds support for the Latitude 2100 and similar
450	  notebooks that have an external LED.
451
452config LEDS_MC13783
453	tristate "LED Support for MC13XXX PMIC"
454	depends on LEDS_CLASS
455	depends on MFD_MC13XXX
456	help
457	  This option enable support for on-chip LED drivers found
458	  on Freescale Semiconductor MC13783/MC13892/MC34708 PMIC.
459
460config LEDS_NS2
461	tristate "LED support for Network Space v2 GPIO LEDs"
462	depends on LEDS_CLASS
463	depends on MACH_KIRKWOOD || MACH_ARMADA_370
464	default y
465	help
466	  This option enables support for the dual-GPIO LEDs found on the
467	  following LaCie/Seagate boards:
468
469		Network Space v2 (and parents: Max, Mini)
470		Internet Space v2
471		d2 Network v2
472		n090401 (Seagate NAS 4-Bay)
473
474config LEDS_NETXBIG
475	tristate "LED support for Big Network series LEDs"
476	depends on LEDS_CLASS
477	depends on MACH_KIRKWOOD
478	default y
479	help
480	  This option enable support for LEDs found on the LaCie 2Big
481	  and 5Big Network v2 boards. The LEDs are wired to a CPLD and are
482	  controlled through a GPIO extension bus.
483
484config LEDS_ASIC3
485	bool "LED support for the HTC ASIC3"
486	depends on LEDS_CLASS=y
487	depends on MFD_ASIC3
488	default y
489	help
490	  This option enables support for the LEDs on the HTC ASIC3. The HTC
491	  ASIC3 LED GPIOs are inputs, not outputs, thus the leds-gpio driver
492	  cannot be used. This driver supports hardware blinking with an on+off
493	  period from 62ms to 125s. Say Y to enable LEDs on the HP iPAQ hx4700.
494
495config LEDS_TCA6507
496	tristate "LED Support for TCA6507 I2C chip"
497	depends on LEDS_CLASS && I2C
498	help
499	  This option enables support for LEDs connected to TC6507
500	  LED driver chips accessed via the I2C bus.
501	  Driver support brightness control and hardware-assisted blinking.
502
503config LEDS_TLC591XX
504	tristate "LED driver for TLC59108 and TLC59116 controllers"
505	depends on LEDS_CLASS && I2C
506	select REGMAP_I2C
507	help
508	  This option enables support for Texas Instruments TLC59108
509	  and TLC59116 LED controllers.
510
511config LEDS_MAX77693
512	tristate "LED support for MAX77693 Flash"
513	depends on LEDS_CLASS_FLASH
514	depends on V4L2_FLASH_LED_CLASS || !V4L2_FLASH_LED_CLASS
515	depends on MFD_MAX77693
516	depends on OF
517	help
518	  This option enables support for the flash part of the MAX77693
519	  multifunction device. It has build in control for two leds in flash
520	  and torch mode.
521
522config LEDS_MAX8997
523	tristate "LED support for MAX8997 PMIC"
524	depends on LEDS_CLASS && MFD_MAX8997
525	help
526	  This option enables support for on-chip LED drivers on
527	  MAXIM MAX8997 PMIC.
528
529config LEDS_LM355x
530	tristate "LED support for LM355x Chips, LM3554 and LM3556"
531	depends on LEDS_CLASS && I2C
532	select REGMAP_I2C
533	help
534	  This option enables support for LEDs connected to LM355x.
535	  LM355x includes Torch, Flash and Indicator functions.
536
537config LEDS_OT200
538	tristate "LED support for the Bachmann OT200"
539	depends on LEDS_CLASS && HAS_IOMEM && (X86_32 || COMPILE_TEST)
540	help
541	  This option enables support for the LEDs on the Bachmann OT200.
542	  Say Y to enable LEDs on the Bachmann OT200.
543
544config LEDS_MENF21BMC
545	tristate "LED support for the MEN 14F021P00 BMC"
546	depends on LEDS_CLASS && MFD_MENF21BMC
547	help
548	  Say Y here to include support for the MEN 14F021P00 BMC LEDs.
549
550	  This driver can also be built as a module. If so the module
551	  will be called leds-menf21bmc.
552
553config LEDS_KTD2692
554	tristate "LED support for KTD2692 flash LED controller"
555	depends on LEDS_CLASS_FLASH && OF
556	depends on GPIOLIB || COMPILE_TEST
557	help
558	  This option enables support for KTD2692 LED flash connected
559	  through ExpressWire interface.
560
561	  Say Y to enable this driver.
562
563config LEDS_SEAD3
564	tristate "LED support for the MIPS SEAD 3 board"
565	depends on LEDS_CLASS && MIPS_SEAD3
566	help
567	  Say Y here to include support for the FLED and PLED LEDs on SEAD3 eval
568	  boards.
569
570	  This driver can also be built as a module. If so the module
571	  will be called leds-sead3.
572
573config LEDS_IS31FL32XX
574	tristate "LED support for ISSI IS31FL32XX I2C LED controller family"
575	depends on LEDS_CLASS && I2C && OF
576	help
577	  Say Y here to include support for ISSI IS31FL32XX and Si-En SN32xx
578	  LED controllers. They are I2C devices with multiple constant-current
579	  channels, each with independent 256-level PWM control.
580
581comment "LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)"
582
583config LEDS_BLINKM
584	tristate "LED support for the BlinkM I2C RGB LED"
585	depends on LEDS_CLASS
586	depends on I2C
587	help
588	  This option enables support for the BlinkM RGB LED connected
589	  through I2C. Say Y to enable support for the BlinkM LED.
590
591config LEDS_POWERNV
592	tristate "LED support for PowerNV Platform"
593	depends on LEDS_CLASS
594	depends on PPC_POWERNV
595	depends on OF
596	help
597	  This option enables support for the system LEDs present on
598	  PowerNV platforms. Say 'y' to enable this support in kernel.
599	  To compile this driver as a module, choose 'm' here: the module
600	  will be called leds-powernv.
601
602config LEDS_SYSCON
603	bool "LED support for LEDs on system controllers"
604	depends on LEDS_CLASS=y
605	depends on MFD_SYSCON
606	depends on OF
607	help
608	  This option enabled support for the LEDs on syscon type
609	  devices. This will only work with device tree enabled
610	  devices.
611
612config LEDS_VERSATILE
613	tristate "LED support for the ARM Versatile and RealView"
614	depends on ARCH_REALVIEW || ARCH_VERSATILE
615	depends on LEDS_CLASS
616	help
617	  This option enabled support for the LEDs on the ARM Versatile
618	  and RealView boards. Say Y to enabled these.
619
620comment "LED Triggers"
621source "drivers/leds/trigger/Kconfig"
622
623endif # NEW_LEDS
624