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