xref: /linux/drivers/leds/trigger/Kconfig (revision 811f35ff59b6f99ae272d6f5b96bc9e974f88196)
1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig LEDS_TRIGGERS
3	bool "LED Trigger support"
4	depends on LEDS_CLASS
5	help
6	  This option enables trigger support for the leds class.
7	  These triggers allow kernel events to drive the LEDs and can
8	  be configured via sysfs. If unsure, say Y.
9
10if LEDS_TRIGGERS
11
12config LEDS_TRIGGER_TIMER
13	tristate "LED Timer Trigger"
14	help
15	  This allows LEDs to be controlled by a programmable timer
16	  via sysfs. Some LED hardware can be programmed to start
17	  blinking the LED without any further software interaction.
18	  For more details read Documentation/leds/leds-class.rst.
19
20	  If unsure, say Y.
21
22config LEDS_TRIGGER_ONESHOT
23	tristate "LED One-shot Trigger"
24	help
25	  This allows LEDs to blink in one-shot pulses with parameters
26	  controlled via sysfs.  It's useful to notify the user on
27	  sporadic events, when there are no clear begin and end trap points,
28	  or on dense events, where this blinks the LED at constant rate if
29	  rearmed continuously.
30
31	  It also shows how to use the led_blink_set_oneshot() function.
32
33	  If unsure, say Y.
34
35config LEDS_TRIGGER_DISK
36	bool "LED Disk Trigger"
37	depends on ATA
38	help
39	  This allows LEDs to be controlled by disk activity.
40	  If unsure, say Y.
41
42config LEDS_TRIGGER_MTD
43	bool "LED MTD (NAND/NOR) Trigger"
44	depends on MTD
45	help
46	  This allows LEDs to be controlled by MTD activity.
47	  If unsure, say N.
48
49config LEDS_TRIGGER_HEARTBEAT
50	tristate "LED Heartbeat Trigger"
51	help
52	  This allows LEDs to be controlled by a CPU load average.
53	  The flash frequency is a hyperbolic function of the 1-minute
54	  load average.
55	  If unsure, say Y.
56
57config LEDS_TRIGGER_BACKLIGHT
58	tristate "LED backlight Trigger"
59	help
60	  This allows LEDs to be controlled as a backlight device: they
61	  turn off and on when the display is blanked and unblanked.
62
63	  If unsure, say N.
64
65config LEDS_TRIGGER_CPU
66	bool "LED CPU Trigger"
67	depends on !PREEMPT_RT
68	help
69	  This allows LEDs to be controlled by active CPUs. This shows
70	  the active CPUs across an array of LEDs so you can see which
71	  CPUs are active on the system at any given moment.
72
73	  If unsure, say N.
74
75config LEDS_TRIGGER_ACTIVITY
76	tristate "LED activity Trigger"
77	help
78	  This allows LEDs to be controlled by an immediate CPU usage.
79	  The flash frequency and duty cycle varies from faint flashes to
80	  intense brightness depending on the instant CPU load.
81	  If unsure, say N.
82
83config LEDS_TRIGGER_GPIO
84	tristate "LED GPIO Trigger"
85	depends on GPIOLIB || COMPILE_TEST
86	help
87	  This allows LEDs to be controlled by gpio events. It's good
88	  when using gpios as switches and triggering the needed LEDs
89	  from there. One use case is n810's keypad LEDs that could
90	  be triggered by this trigger when user slides up to show
91	  keypad.
92
93	  If unsure, say N.
94
95config LEDS_TRIGGER_DEFAULT_ON
96	tristate "LED Default ON Trigger"
97	help
98	  This allows LEDs to be initialised in the ON state.
99	  If unsure, say Y.
100
101comment "iptables trigger is under Netfilter config (LED target)"
102	depends on LEDS_TRIGGERS
103
104config LEDS_TRIGGER_TRANSIENT
105	tristate "LED Transient Trigger"
106	help
107	  This allows one time activation of a transient state on
108	  GPIO/PWM based hardware.
109	  If unsure, say Y.
110
111config LEDS_TRIGGER_CAMERA
112	tristate "LED Camera Flash/Torch Trigger"
113	help
114	  This allows LEDs to be controlled as a camera flash/torch device.
115	  This enables direct flash/torch on/off by the driver, kernel space.
116	  If unsure, say Y.
117
118config LEDS_TRIGGER_PANIC
119	bool "LED Panic Trigger"
120	help
121	  This allows LEDs to be configured to blink on a kernel panic.
122	  Enabling this option will allow to mark certain LEDs as panic indicators,
123	  allowing to blink them on a kernel panic, even if they are set to
124	  a different trigger.
125	  If unsure, say Y.
126
127config LEDS_TRIGGER_NETDEV
128	tristate "LED Netdev Trigger"
129	depends on NET
130	help
131	  This allows LEDs to be controlled by network device activity.
132	  If unsure, say Y.
133
134config LEDS_TRIGGER_PATTERN
135	tristate "LED Pattern Trigger"
136	help
137	  This allows LEDs to be controlled by a software or hardware pattern
138	  which is a series of tuples, of brightness and duration (ms).
139	  If unsure, say N
140
141config LEDS_TRIGGER_AUDIO
142	tristate "Audio Mute LED Trigger"
143	help
144	  This allows LEDs to be controlled by audio drivers for following
145	  the audio mute and mic-mute changes.
146	  If unsure, say N
147
148config LEDS_TRIGGER_TTY
149	tristate "LED Trigger for TTY devices"
150	depends on TTY
151	help
152	  This allows LEDs to be controlled by activity on ttys which includes
153	  serial devices like /dev/ttyS0.
154
155	  When build as a module this driver will be called ledtrig-tty.
156
157endif # LEDS_TRIGGERS
158