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