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