xref: /openbmc/linux/drivers/leds/Kconfig (revision 3b64b188)
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
14	  This is not related to standard keyboard LEDs which are controlled
15	  via the input system.
16
17if NEW_LEDS
18
19config LEDS_CLASS
20	tristate "LED Class Support"
21	help
22	  This option enables the led sysfs class in /sys/class/leds.  You'll
23	  need this to do anything useful with LEDs.  If unsure, say N.
24
25comment "LED drivers"
26
27config LEDS_88PM860X
28	tristate "LED Support for Marvell 88PM860x PMIC"
29	depends on LEDS_CLASS
30	depends on MFD_88PM860X
31	help
32	  This option enables support for on-chip LED drivers found on Marvell
33	  Semiconductor 88PM8606 PMIC.
34
35config LEDS_ATMEL_PWM
36	tristate "LED Support using Atmel PWM outputs"
37	depends on LEDS_CLASS
38	depends on ATMEL_PWM
39	help
40	  This option enables support for LEDs driven using outputs
41	  of the dedicated PWM controller found on newer Atmel SOCs.
42
43config LEDS_LM3530
44	tristate "LCD Backlight driver for LM3530"
45	depends on LEDS_CLASS
46	depends on I2C
47	help
48	  This option enables support for the LCD backlight using
49	  LM3530 ambient light sensor chip. This ALS chip can be
50	  controlled manually or using PWM input or using ambient
51	  light automatically.
52
53config LEDS_LM3533
54	tristate "LED support for LM3533"
55	depends on LEDS_CLASS
56	depends on MFD_LM3533
57	help
58	  This option enables support for the LEDs on National Semiconductor /
59	  TI LM3533 Lighting Power chips.
60
61	  The LEDs can be controlled directly, through PWM input, or by the
62	  ambient-light-sensor interface. The chip supports
63	  hardware-accelerated blinking with maximum on and off periods of 9.8
64	  and 77 seconds respectively.
65
66config LEDS_LOCOMO
67	tristate "LED Support for Locomo device"
68	depends on LEDS_CLASS
69	depends on SHARP_LOCOMO
70	help
71	  This option enables support for the LEDs on Sharp Locomo.
72	  Zaurus models SL-5500 and SL-5600.
73
74config LEDS_MIKROTIK_RB532
75	tristate "LED Support for Mikrotik Routerboard 532"
76	depends on LEDS_CLASS
77	depends on MIKROTIK_RB532
78	help
79	  This option enables support for the so called "User LED" of
80	  Mikrotik's Routerboard 532.
81
82config LEDS_S3C24XX
83	tristate "LED Support for Samsung S3C24XX GPIO LEDs"
84	depends on LEDS_CLASS
85	depends on ARCH_S3C24XX
86	help
87	  This option enables support for LEDs connected to GPIO lines
88	  on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
89
90config LEDS_NET48XX
91	tristate "LED Support for Soekris net48xx series Error LED"
92	depends on LEDS_CLASS
93	depends on SCx200_GPIO
94	help
95	  This option enables support for the Soekris net4801 and net4826 error
96	  LED.
97
98config LEDS_FSG
99	tristate "LED Support for the Freecom FSG-3"
100	depends on LEDS_CLASS
101	depends on MACH_FSG
102	help
103	  This option enables support for the LEDs on the Freecom FSG-3.
104
105config LEDS_WRAP
106	tristate "LED Support for the WRAP series LEDs"
107	depends on LEDS_CLASS
108	depends on SCx200_GPIO
109	help
110	  This option enables support for the PCEngines WRAP programmable LEDs.
111
112config LEDS_COBALT_QUBE
113	tristate "LED Support for the Cobalt Qube series front LED"
114	depends on LEDS_CLASS
115	depends on MIPS_COBALT
116	help
117	  This option enables support for the front LED on Cobalt Qube series
118
119config LEDS_COBALT_RAQ
120	bool "LED Support for the Cobalt Raq series"
121	depends on LEDS_CLASS=y && MIPS_COBALT
122	select LEDS_TRIGGERS
123	help
124	  This option enables support for the Cobalt Raq series LEDs.
125
126config LEDS_SUNFIRE
127	tristate "LED support for SunFire servers."
128	depends on LEDS_CLASS
129	depends on SPARC64
130	select LEDS_TRIGGERS
131	help
132	  This option enables support for the Left, Middle, and Right
133	  LEDs on the I/O and CPU boards of SunFire UltraSPARC servers.
134
135config LEDS_HP6XX
136	tristate "LED Support for the HP Jornada 6xx"
137	depends on LEDS_CLASS
138	depends on SH_HP6XX
139	help
140	  This option enables LED support for the handheld
141	  HP Jornada 620/660/680/690.
142
143config LEDS_PCA9532
144	tristate "LED driver for PCA9532 dimmer"
145	depends on LEDS_CLASS
146	depends on I2C && INPUT && EXPERIMENTAL
147	help
148	  This option enables support for NXP pca9532
149	  LED controller. It is generally only useful
150	  as a platform driver
151
152config LEDS_PCA9532_GPIO
153	bool "Enable GPIO support for PCA9532"
154	depends on LEDS_PCA9532
155	depends on GPIOLIB
156	help
157	  Allow unused pins on PCA9532 to be used as gpio.
158
159	  To use a pin as gpio pca9532_type in pca9532_platform data needs to
160	  set to PCA9532_TYPE_GPIO.
161
162config LEDS_GPIO
163	tristate "LED Support for GPIO connected LEDs"
164	depends on LEDS_CLASS
165	depends on GENERIC_GPIO
166	help
167	  This option enables support for the LEDs connected to GPIO
168	  outputs. To be useful the particular board must have LEDs
169	  and they must be connected to the GPIO lines.  The LEDs must be
170	  defined as platform devices and/or OpenFirmware platform devices.
171	  The code to use these bindings can be selected below.
172
173config LEDS_LP3944
174	tristate "LED Support for N.S. LP3944 (Fun Light) I2C chip"
175	depends on LEDS_CLASS
176	depends on I2C
177	help
178	  This option enables support for LEDs connected to the National
179	  Semiconductor LP3944 Lighting Management Unit (LMU) also known as
180	  Fun Light Chip.
181
182	  To compile this driver as a module, choose M here: the
183	  module will be called leds-lp3944.
184
185config LEDS_LP5521
186	tristate "LED Support for N.S. LP5521 LED driver chip"
187	depends on LEDS_CLASS && I2C
188	help
189	  If you say yes here you get support for the National Semiconductor
190	  LP5521 LED driver. It is 3 channel chip with programmable engines.
191	  Driver provides direct control via LED class and interface for
192	  programming the engines.
193
194config LEDS_LP5523
195	tristate "LED Support for N.S. LP5523 LED driver chip"
196	depends on LEDS_CLASS && I2C
197	help
198	  If you say yes here you get support for the National Semiconductor
199	  LP5523 LED driver. It is 9 channel chip with programmable engines.
200	  Driver provides direct control via LED class and interface for
201	  programming the engines.
202
203config LEDS_LP8788
204	tristate "LED support for the TI LP8788 PMIC"
205	depends on LEDS_CLASS
206	depends on MFD_LP8788
207	help
208	  This option enables support for the Keyboard LEDs on the LP8788 PMIC.
209
210config LEDS_CLEVO_MAIL
211	tristate "Mail LED on Clevo notebook"
212	depends on LEDS_CLASS
213	depends on X86 && SERIO_I8042 && DMI
214	help
215	  This driver makes the mail LED accessible from userspace
216	  programs through the leds subsystem. This LED have three
217	  known mode: off, blink at 0.5Hz and blink at 1Hz.
218
219	  The driver supports two kinds of interface: using ledtrig-timer
220	  or through /sys/class/leds/clevo::mail/brightness. As this LED
221	  cannot change it's brightness it blinks instead. The brightness
222	  value 0 means off, 1..127 means blink at 0.5Hz and 128..255 means
223	  blink at 1Hz.
224
225	  This module can drive the mail LED for the following notebooks:
226
227	  	Clevo D400P
228	  	Clevo D410J
229	  	Clevo D410V
230	  	Clevo D400V/D470V (not tested, but might work)
231	  	Clevo M540N
232	  	Clevo M5x0N (not tested, but might work)
233	  	Positivo Mobile (Clevo M5x0V)
234
235	  If your model is not listed here you can try the "nodetect"
236	  module parameter.
237
238	  To compile this driver as a module, choose M here: the
239	  module will be called leds-clevo-mail.
240
241config LEDS_PCA955X
242	tristate "LED Support for PCA955x I2C chips"
243	depends on LEDS_CLASS
244	depends on I2C
245	help
246	  This option enables support for LEDs connected to PCA955x
247	  LED driver chips accessed via the I2C bus.  Supported
248	  devices include PCA9550, PCA9551, PCA9552, and PCA9553.
249
250config LEDS_PCA9633
251	tristate "LED support for PCA9633 I2C chip"
252	depends on LEDS_CLASS
253	depends on I2C
254	help
255	  This option enables support for LEDs connected to the PCA9633
256	  LED driver chip accessed via the I2C bus.
257
258config LEDS_WM831X_STATUS
259	tristate "LED support for status LEDs on WM831x PMICs"
260	depends on LEDS_CLASS
261	depends on MFD_WM831X
262	help
263	  This option enables support for the status LEDs of the WM831x
264          series of PMICs.
265
266config LEDS_WM8350
267	tristate "LED Support for WM8350 AudioPlus PMIC"
268	depends on LEDS_CLASS
269	depends on MFD_WM8350
270	help
271	  This option enables support for LEDs driven by the Wolfson
272	  Microelectronics WM8350 AudioPlus PMIC.
273
274config LEDS_DA903X
275	tristate "LED Support for DA9030/DA9034 PMIC"
276	depends on LEDS_CLASS
277	depends on PMIC_DA903X
278	help
279	  This option enables support for on-chip LED drivers found
280	  on Dialog Semiconductor DA9030/DA9034 PMICs.
281
282config LEDS_DA9052
283	tristate "Dialog DA9052/DA9053 LEDS"
284	depends on LEDS_CLASS
285	depends on PMIC_DA9052
286	help
287	  This option enables support for on-chip LED drivers found
288	  on Dialog Semiconductor DA9052-BC and DA9053-AA/Bx PMICs.
289
290config LEDS_DAC124S085
291	tristate "LED Support for DAC124S085 SPI DAC"
292	depends on LEDS_CLASS
293	depends on SPI
294	help
295	  This option enables support for DAC124S085 SPI DAC from NatSemi,
296	  which can be used to control up to four LEDs.
297
298config LEDS_PWM
299	tristate "PWM driven LED Support"
300	depends on LEDS_CLASS
301	depends on HAVE_PWM
302	help
303	  This option enables support for pwm driven LEDs
304
305config LEDS_REGULATOR
306	tristate "REGULATOR driven LED support"
307	depends on LEDS_CLASS
308	depends on REGULATOR
309	help
310	  This option enables support for regulator driven LEDs.
311
312config LEDS_BD2802
313	tristate "LED driver for BD2802 RGB LED"
314	depends on LEDS_CLASS
315	depends on I2C
316	help
317	  This option enables support for BD2802GU RGB LED driver chips
318	  accessed via the I2C bus.
319
320config LEDS_INTEL_SS4200
321	tristate "LED driver for Intel NAS SS4200 series"
322	depends on LEDS_CLASS
323	depends on PCI && DMI
324	help
325	  This option enables support for the Intel SS4200 series of
326	  Network Attached Storage servers.  You may control the hard
327	  drive or power LEDs on the front panel.  Using this driver
328	  can stop the front LED from blinking after startup.
329
330config LEDS_LT3593
331	tristate "LED driver for LT3593 controllers"
332	depends on LEDS_CLASS
333	depends on GENERIC_GPIO
334	help
335	  This option enables support for LEDs driven by a Linear Technology
336	  LT3593 controller. This controller uses a special one-wire pulse
337	  coding protocol to set the brightness.
338
339config LEDS_ADP5520
340	tristate "LED Support for ADP5520/ADP5501 PMIC"
341	depends on LEDS_CLASS
342	depends on PMIC_ADP5520
343	help
344	  This option enables support for on-chip LED drivers found
345	  on Analog Devices ADP5520/ADP5501 PMICs.
346
347	  To compile this driver as a module, choose M here: the module will
348	  be called leds-adp5520.
349
350config LEDS_DELL_NETBOOKS
351	tristate "External LED on Dell Business Netbooks"
352	depends on LEDS_CLASS
353	depends on X86 && ACPI_WMI
354	help
355	  This adds support for the Latitude 2100 and similar
356	  notebooks that have an external LED.
357
358config LEDS_MC13783
359	tristate "LED Support for MC13783 PMIC"
360	depends on LEDS_CLASS
361	depends on MFD_MC13783
362	help
363	  This option enable support for on-chip LED drivers found
364	  on Freescale Semiconductor MC13783 PMIC.
365
366config LEDS_NS2
367	tristate "LED support for Network Space v2 GPIO LEDs"
368	depends on LEDS_CLASS
369	depends on MACH_NETSPACE_V2 || MACH_INETSPACE_V2 || \
370		   MACH_NETSPACE_MAX_V2 || MACH_D2NET_V2
371	default y
372	help
373	  This option enable support for the dual-GPIO LED found on the
374	  Network Space v2 board (and parents). This include Internet Space v2,
375	  Network Space (Max) v2 and d2 Network v2 boards.
376
377config LEDS_NETXBIG
378	tristate "LED support for Big Network series LEDs"
379	depends on MACH_NET2BIG_V2 || MACH_NET5BIG_V2
380	depends on LEDS_CLASS
381	default y
382	help
383	  This option enable support for LEDs found on the LaCie 2Big
384	  and 5Big Network v2 boards. The LEDs are wired to a CPLD and are
385	  controlled through a GPIO extension bus.
386
387config LEDS_ASIC3
388	bool "LED support for the HTC ASIC3"
389	depends on LEDS_CLASS=y
390	depends on MFD_ASIC3
391	default y
392	help
393	  This option enables support for the LEDs on the HTC ASIC3. The HTC
394	  ASIC3 LED GPIOs are inputs, not outputs, thus the leds-gpio driver
395	  cannot be used. This driver supports hardware blinking with an on+off
396	  period from 62ms to 125s. Say Y to enable LEDs on the HP iPAQ hx4700.
397
398config LEDS_RENESAS_TPU
399	bool "LED support for Renesas TPU"
400	depends on LEDS_CLASS=y && HAVE_CLK && GENERIC_GPIO
401	help
402	  This option enables build of the LED TPU platform driver,
403	  suitable to drive any TPU channel on newer Renesas SoCs.
404	  The driver controls the GPIO pin connected to the LED via
405	  the GPIO framework and expects the LED to be connected to
406	  a pin that can be driven in both GPIO mode and using TPU
407	  pin function. The latter to support brightness control.
408	  Brightness control is supported but hardware blinking is not.
409
410config LEDS_TCA6507
411	tristate "LED Support for TCA6507 I2C chip"
412	depends on LEDS_CLASS && I2C
413	help
414	  This option enables support for LEDs connected to TC6507
415	  LED driver chips accessed via the I2C bus.
416	  Driver support brightness control and hardware-assisted blinking.
417
418config LEDS_MAX8997
419	tristate "LED support for MAX8997 PMIC"
420	depends on LEDS_CLASS && MFD_MAX8997
421	help
422	  This option enables support for on-chip LED drivers on
423	  MAXIM MAX8997 PMIC.
424
425config LEDS_LM3556
426	tristate "LED support for LM3556 Chip"
427	depends on LEDS_CLASS && I2C
428	select REGMAP_I2C
429	help
430	  This option enables support for LEDs connected to LM3556.
431	  LM3556 includes Torch, Flash and Indicator functions.
432
433config LEDS_OT200
434	tristate "LED support for the Bachmann OT200"
435	depends on LEDS_CLASS && HAS_IOMEM
436	help
437	  This option enables support for the LEDs on the Bachmann OT200.
438	  Say Y to enable LEDs on the Bachmann OT200.
439
440config LEDS_BLINKM
441	tristate "LED support for the BlinkM I2C RGB LED"
442	depends on LEDS_CLASS
443	depends on I2C
444	help
445	  This option enables support for the BlinkM RGB LED connected
446	  through I2C. Say Y to enable support for the BlinkM LED.
447
448config LEDS_TRIGGERS
449	bool "LED Trigger support"
450	depends on LEDS_CLASS
451	help
452	  This option enables trigger support for the leds class.
453	  These triggers allow kernel events to drive the LEDs and can
454	  be configured via sysfs. If unsure, say Y.
455
456comment "LED Triggers"
457
458config LEDS_TRIGGER_TIMER
459	tristate "LED Timer Trigger"
460	depends on LEDS_TRIGGERS
461	help
462	  This allows LEDs to be controlled by a programmable timer
463	  via sysfs. Some LED hardware can be programmed to start
464	  blinking the LED without any further software interaction.
465	  For more details read Documentation/leds/leds-class.txt.
466
467	  If unsure, say Y.
468
469config LEDS_TRIGGER_ONESHOT
470	tristate "LED One-shot Trigger"
471	depends on LEDS_TRIGGERS
472	help
473	  This allows LEDs to blink in one-shot pulses with parameters
474	  controlled via sysfs.  It's useful to notify the user on
475	  sporadic events, when there are no clear begin and end trap points,
476	  or on dense events, where this blinks the LED at constant rate if
477	  rearmed continuously.
478
479	  It also shows how to use the led_blink_set_oneshot() function.
480
481	  If unsure, say Y.
482
483config LEDS_TRIGGER_IDE_DISK
484	bool "LED IDE Disk Trigger"
485	depends on IDE_GD_ATA
486	depends on LEDS_TRIGGERS
487	help
488	  This allows LEDs to be controlled by IDE disk activity.
489	  If unsure, say Y.
490
491config LEDS_TRIGGER_HEARTBEAT
492	tristate "LED Heartbeat Trigger"
493	depends on LEDS_TRIGGERS
494	help
495	  This allows LEDs to be controlled by a CPU load average.
496	  The flash frequency is a hyperbolic function of the 1-minute
497	  load average.
498	  If unsure, say Y.
499
500config LEDS_TRIGGER_BACKLIGHT
501	tristate "LED backlight Trigger"
502	depends on LEDS_TRIGGERS
503	help
504	  This allows LEDs to be controlled as a backlight device: they
505	  turn off and on when the display is blanked and unblanked.
506
507	  If unsure, say N.
508
509config LEDS_TRIGGER_CPU
510	bool "LED CPU Trigger"
511	depends on LEDS_TRIGGERS
512	help
513	  This allows LEDs to be controlled by active CPUs. This shows
514	  the active CPUs across an array of LEDs so you can see which
515	  CPUs are active on the system at any given moment.
516
517	  If unsure, say N.
518
519config LEDS_TRIGGER_GPIO
520	tristate "LED GPIO Trigger"
521	depends on LEDS_TRIGGERS
522	depends on GPIOLIB
523	help
524	  This allows LEDs to be controlled by gpio events. It's good
525	  when using gpios as switches and triggering the needed LEDs
526	  from there. One use case is n810's keypad LEDs that could
527	  be triggered by this trigger when user slides up to show
528	  keypad.
529
530	  If unsure, say N.
531
532config LEDS_TRIGGER_DEFAULT_ON
533	tristate "LED Default ON Trigger"
534	depends on LEDS_TRIGGERS
535	help
536	  This allows LEDs to be initialised in the ON state.
537	  If unsure, say Y.
538
539comment "iptables trigger is under Netfilter config (LED target)"
540	depends on LEDS_TRIGGERS
541
542config LEDS_TRIGGER_TRANSIENT
543	tristate "LED Transient Trigger"
544	depends on LEDS_TRIGGERS
545	help
546	  This allows one time activation of a transient state on
547	  GPIO/PWM based hardware.
548	  If unsure, say Y.
549
550endif # NEW_LEDS
551