blob: cc87fbf395b61ccf4bb2fcb86017e333e82b7647 [file] [log] [blame]
Masahiro Yamada0b11dbf2015-07-26 02:46:26 +09001menu "LED Support"
2
Simon Glass59171122015-06-23 15:38:45 -06003config LED
4 bool "Enable LED support"
5 depends on DM
6 help
7 Many boards have LEDs which can be used to signal status or alerts.
8 U-Boot provides a uclass API to implement this feature. LED drivers
9 can provide access to board-specific LEDs. Use of the device tree
10 for configuration is encouraged.
11
Álvaro Fernández Rojas28300dc2017-05-07 20:10:24 +020012config LED_BCM6328
13 bool "LED Support for BCM6328"
14 depends on LED && ARCH_BMIPS
15 help
16 This option enables support for LEDs connected to the BCM6328
17 LED HW controller accessed via MMIO registers.
18 HW blinking is supported and up to 24 LEDs can be controlled.
19 All LEDs can blink at the same time but the delay is shared, which
20 means that if one LED is set to blink at 100ms and then a different
21 LED is set to blink at 200ms, both will blink at 200ms.
22
Álvaro Fernández Rojas632889c2017-05-07 20:11:30 +020023config LED_BCM6358
24 bool "LED Support for BCM6358"
25 depends on LED && ARCH_BMIPS
26 help
27 This option enables support for LEDs connected to the BCM6358
28 LED HW controller accessed via MMIO registers.
29 HW has no blinking capabilities and up to 32 LEDs can be controlled.
30
Philippe Reynesd00c6a22019-03-22 17:02:01 +010031config LED_BCM6858
32 bool "LED Support for BCM6858"
Philippe Reynes5602e212020-01-07 20:14:14 +010033 depends on LED && (ARCH_BCM68360 || ARCH_BCM6858 || ARCH_BCM63158)
Philippe Reynesd00c6a22019-03-22 17:02:01 +010034 help
35 This option enables support for LEDs connected to the BCM6858
36 HW has blinking capabilities and up to 32 LEDs can be controlled.
37
Jway Lin047e31e2020-06-30 21:08:06 -070038config LED_CORTINA
39 bool "LED Support for Cortina Access CAxxxx SoCs"
40 depends on LED && (CORTINA_PLATFORM)
41 help
42 This option enables support for LEDs connected to the Cortina
43 Access CAxxxx SOCs.
44
45
Simon Glass53378da2017-04-10 11:34:57 -060046config LED_BLINK
47 bool "Support LED blinking"
48 depends on LED
49 help
50 Some drivers can support automatic blinking of LEDs with a given
51 period, without needing timers or extra code to handle the timing.
52 This option enables support for this which adds slightly to the
53 code size.
54
Masahiro Yamadaf0cd2452015-08-12 07:31:50 +090055config SPL_LED
Simon Glass59171122015-06-23 15:38:45 -060056 bool "Enable LED support in SPL"
Simon Glass6a436c92015-08-30 16:55:14 -060057 depends on SPL && SPL_DM
Simon Glass59171122015-06-23 15:38:45 -060058 help
59 The LED subsystem adds a small amount of overhead to the image.
60 If this is acceptable and you have a need to use LEDs in SPL,
61 enable this option. You will need to enable device tree in SPL
62 for this to work.
Simon Glass9b36f742017-04-10 11:34:52 -060063
Simon Glass5ac76ba2015-06-23 15:38:46 -060064config LED_GPIO
65 bool "LED support for GPIO-connected LEDs"
66 depends on LED && DM_GPIO
67 help
68 Enable support for LEDs which are connected to GPIO lines. These
69 GPIOs may be on the SoC or some other device which provides GPIOs.
70 The GPIO driver must used driver model. LEDs are configured using
71 the device tree.
Masahiro Yamada0b11dbf2015-07-26 02:46:26 +090072
Simon Glass6a436c92015-08-30 16:55:14 -060073config SPL_LED_GPIO
74 bool "LED support for GPIO-connected LEDs in SPL"
75 depends on SPL_LED && DM_GPIO
76 help
77 This option is an SPL-variant of the LED_GPIO option.
78 See the help of LED_GPIO for details.
79
Uri Mashiach79267ed2017-01-19 10:51:05 +020080config LED_STATUS
81 bool "Enable status LED API"
82 help
83 Allows common u-boot commands to use a board's leds to
84 provide status for activities like booting and downloading files.
85
86if LED_STATUS
87
88# Hidden constants
89
90config LED_STATUS_OFF
91 int
92 default 0
93
94config LED_STATUS_BLINKING
95 int
96 default 1
97
98config LED_STATUS_ON
99 int
100 default 2
101
102# Hidden constants end
103
104config LED_STATUS_GPIO
105 bool "GPIO status LED implementation"
106 help
107 The status LED can be connected to a GPIO pin. In such cases, the
108 gpio_led driver can be used as a status LED backend implementation.
109
110config LED_STATUS_BOARD_SPECIFIC
111 bool "Specific board"
112 default y
113 help
114 LED support is only for a specific board.
115
116comment "LEDs parameters"
117
118config LED_STATUS0
119 bool "Enable status LED 0"
120
121if LED_STATUS0
122
123config LED_STATUS_BIT
124 int "identification"
125 help
126 CONFIG_LED_STATUS_BIT is passed into the __led_* functions to identify
127 which LED is being acted on. As such, the chosen value must be unique
128 with respect to the other CONFIG_LED_STATUS_BIT's. Mapping the value
129 to a physical LED is the responsibility of the __led_* function.
130
131config LED_STATUS_STATE
132 int "initial state"
133 range LED_STATUS_OFF LED_STATUS_ON
134 default LED_STATUS_OFF
135 help
136 Should be set one of the following:
137 0 - off
138 1 - blinking
139 2 - on
140
141config LED_STATUS_FREQ
142 int "blink frequency"
143 range 2 10
144 default 2
145 help
146 The LED blink period calculated from LED_STATUS_FREQ:
147 LED_STATUS_PERIOD = CONFIG_SYS_HZ/LED_STATUS_FREQ
148 Values range: 2 - 10
149
150endif # LED_STATUS0
151
152config LED_STATUS1
153 bool "Enable status LED 1"
154
155if LED_STATUS1
156
157config LED_STATUS_BIT1
158 int "identification"
159 help
160 CONFIG_LED_STATUS_BIT1 is passed into the __led_* functions to
161 identify which LED is being acted on. As such, the chosen value must
162 be unique with respect to the other CONFIG_LED_STATUS_BIT's. Mapping
163 the value to a physical LED is the responsibility of the __led_*
164 function.
165
166config LED_STATUS_STATE1
167 int "initial state"
168 range LED_STATUS_OFF LED_STATUS_ON
169 default LED_STATUS_OFF
170 help
171 Should be set one of the following:
172 0 - off
173 1 - blinking
174 2 - on
175
176config LED_STATUS_FREQ1
177 int "blink frequency"
178 range 2 10
179 default 2
180 help
181 The LED blink period calculated from LED_STATUS_FREQ1:
182 LED_STATUS_PERIOD1 = CONFIG_SYS_HZ/LED_STATUS_FREQ1
183 Values range: 2 - 10
184
185endif # LED_STATUS1
186
187config LED_STATUS2
188 bool "Enable status LED 2"
189
190if LED_STATUS2
191
192config LED_STATUS_BIT2
193 int "identification"
194 help
195 CONFIG_LED_STATUS_BIT2 is passed into the __led_* functions to
196 identify which LED is being acted on. As such, the chosen value must
197 be unique with respect to the other CONFIG_LED_STATUS_BIT's. Mapping
198 the value to a physical LED is the responsibility of the __led_*
199 function.
200
201config LED_STATUS_STATE2
202 int "initial state"
203 range LED_STATUS_OFF LED_STATUS_ON
204 default LED_STATUS_OFF
205 help
206 Should be set one of the following:
207 0 - off
208 1 - blinking
209 2 - on
210
211config LED_STATUS_FREQ2
212 int "blink frequency"
213 range 2 10
214 default 2
215 help
216 The LED blink period calculated from LED_STATUS_FREQ2:
217 LED_STATUS_PERIOD2 = CONFIG_SYS_HZ/LED_STATUS_FREQ2
218 Values range: 2 - 10
219
220endif # LED_STATUS2
221
222config LED_STATUS3
223 bool "Enable status LED 3"
224
225if LED_STATUS3
226
227config LED_STATUS_BIT3
228 int "identification"
229 help
230 CONFIG_LED_STATUS_BIT3 is passed into the __led_* functions to
231 identify which LED is being acted on. As such, the chosen value must
232 be unique with respect to the other CONFIG_LED_STATUS_BIT's. Mapping
233 the value to a physical LED is the responsibility of the __led_*
234 function.
235
236config LED_STATUS_STATE3
237 int "initial state"
238 range LED_STATUS_OFF LED_STATUS_ON
239 default LED_STATUS_OFF
240 help
241 Should be set one of the following:
242 0 - off
243 1 - blinking
244 2 - on
245
246config LED_STATUS_FREQ3
247 int "blink frequency"
248 range 2 10
249 default 2
250 help
251 The LED blink period calculated from LED_STATUS_FREQ3:
252 LED_STATUS_PERIOD3 = CONFIG_SYS_HZ/LED_STATUS_FREQ3
253 Values range: 2 - 10
254
255endif # LED_STATUS3
256
257config LED_STATUS4
258 bool "Enable status LED 4"
259
260if LED_STATUS4
261
262config LED_STATUS_BIT4
263 int "identification"
264 help
265 CONFIG_LED_STATUS_BIT4 is passed into the __led_* functions to
266 identify which LED is being acted on. As such, the chosen value must
267 be unique with respect to the other CONFIG_LED_STATUS_BIT's. Mapping
268 the value to a physical LED is the responsibility of the __led_*
269 function.
270
271config LED_STATUS_STATE4
272 int "initial state"
273 range LED_STATUS_OFF LED_STATUS_ON
274 default LED_STATUS_OFF
275 help
276 Should be set one of the following:
277 0 - off
278 1 - blinking
279 2 - on
280
281config LED_STATUS_FREQ4
282 int "blink frequency"
283 range 2 10
284 default 2
285 help
286 The LED blink period calculated from LED_STATUS_FREQ4:
287 LED_STATUS_PERIOD4 = CONFIG_SYS_HZ/LED_STATUS_FREQ4
288 Values range: 2 - 10
289
290endif # LED_STATUS4
291
292config LED_STATUS5
293 bool "Enable status LED 5"
294
295if LED_STATUS5
296
297config LED_STATUS_BIT5
298 int "identification"
299 help
300 CONFIG_LED_STATUS_BIT5 is passed into the __led_* functions to
301 identify which LED is being acted on. As such, the chosen value must
302 be unique with respect to the other CONFIG_LED_STATUS_BIT's. Mapping
303 the value to a physical LED is the responsibility of the __led_*
304 function.
305
306config LED_STATUS_STATE5
307 int "initial state"
308 range LED_STATUS_OFF LED_STATUS_ON
309 default LED_STATUS_OFF
310 help
311 Should be set one of the following:
312 0 - off
313 1 - blinking
314 2 - on
315
316config LED_STATUS_FREQ5
317 int "blink frequency"
318 range 2 10
319 default 2
320 help
321 The LED blink period calculated from LED_STATUS_FREQ5:
322 LED_STATUS_PERIOD5 = CONFIG_SYS_HZ/LED_STATUS_FREQ5
323 Values range: 2 - 10
324
325endif # LED_STATUS5
326
327config LED_STATUS_BOOT_ENABLE
328 bool "Enable BOOT LED"
329 help
330 Enable to turn an LED on when the board is booting.
331
332if LED_STATUS_BOOT_ENABLE
333
334config LED_STATUS_BOOT
335 int "LED to light when the board is booting"
336 help
337 Valid enabled LED device number.
338
339endif # LED_STATUS_BOOT_ENABLE
340
341config LED_STATUS_RED_ENABLE
342 bool "Enable red LED"
343 help
344 Enable red status LED.
345
346if LED_STATUS_RED_ENABLE
347
348config LED_STATUS_RED
349 int "Red LED identification"
350 help
351 Valid enabled LED device number.
352
353endif # LED_STATUS_RED_ENABLE
354
355config LED_STATUS_YELLOW_ENABLE
356 bool "Enable yellow LED"
357 help
358 Enable yellow status LED.
359
360if LED_STATUS_YELLOW_ENABLE
361
362config LED_STATUS_YELLOW
363 int "Yellow LED identification"
364 help
365 Valid enabled LED device number.
366
367endif # LED_STATUS_YELLOW_ENABLE
368
369config LED_STATUS_BLUE_ENABLE
370 bool "Enable blue LED"
371 help
372 Enable blue status LED.
373
374if LED_STATUS_BLUE_ENABLE
375
376config LED_STATUS_BLUE
377 int "Blue LED identification"
378 help
379 Valid enabled LED device number.
380
381endif # LED_STATUS_BLUE_ENABLE
382
383config LED_STATUS_GREEN_ENABLE
384 bool "Enable green LED"
385 help
386 Enable green status LED.
387
388if LED_STATUS_GREEN_ENABLE
389
390config LED_STATUS_GREEN
391 int "Green LED identification"
392 help
393 Valid enabled LED device number (0-5).
394
395endif # LED_STATUS_GREEN_ENABLE
396
397config LED_STATUS_CMD
398 bool "Enable status LED commands"
399
400endif # LED_STATUS
401
Masahiro Yamada0b11dbf2015-07-26 02:46:26 +0900402endmenu