Commit 65fd21c80fcaca2bbfe3ab06ab6ac68207408078
Committed by
Wolfgang Denk
1 parent
7cdf804f34
Exists in
master
and in
54 other branches
LED Add documentation describing the status_led and colour led API.
This document describes the u-boot status LED API. This allows common u-boot commands to use a board's leds to provide status for activities like booting and downloading files. Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
Showing 1 changed file with 78 additions and 0 deletions Side-by-side Diff
doc/README.LED
1 | +Status LED | |
2 | +======================================== | |
3 | + | |
4 | +This README describes the status LED API. | |
5 | + | |
6 | +The API is defined by the include file include/status_led.h | |
7 | + | |
8 | +The first step is to define CONFIG_STATUS_LED in the board config file. | |
9 | + | |
10 | +If the LED support is only for a single board, define CONFIG_BOARD_SPECIFIC_LED | |
11 | +in the board config file. | |
12 | + | |
13 | +At a minimum, these macros must be defined at | |
14 | +STATUS_LED_BIT | |
15 | +STATUS_LED_STATE | |
16 | +STATUS_LED_PERIOD | |
17 | + | |
18 | +If there are multiple status LED's define | |
19 | +STATUS_LED_BIT<n> | |
20 | +STATUS_LED_STATE<n> | |
21 | +STATUS_LED_PERIOD<n> | |
22 | + | |
23 | +Where <n> can a integer 1 through 3. | |
24 | + | |
25 | +STATUS_LED_BIT is passed into the __led_* functions to identify which LED is | |
26 | +being acted on. As such, the value choose must be unique with with respect to | |
27 | +the other STATUS_LED_BIT's. Mapping the value to a physical LED is the | |
28 | +reponsiblity of the __led_* function. | |
29 | + | |
30 | +STATUS_LED_STATE is the initial state of the LED. It should be set to one of | |
31 | +these values: STATUS_LED_OFF or STATUS_LED_ON. | |
32 | + | |
33 | +STATUS_LED_PERIOD is how long is the LED blink period. This usually set to | |
34 | +(CONFIG_SYS_HZ / <N>) where <N> is the frequency of the blink. Typical values | |
35 | +range from 2 to 10. | |
36 | + | |
37 | +Some other LED macros | |
38 | + | |
39 | +STATUS_LED_BOOT is the LED to light when the board is booting. This must be a | |
40 | +valid STATUS_LED_BIT value. | |
41 | + | |
42 | +STATUS_LED_RED is the red LED. It is used signal errors. This must be a valid | |
43 | +STATUS_LED_BIT value. Other similar color LED's are STATUS_LED_YELLOW and | |
44 | +STATUS_LED_BLUE. | |
45 | + | |
46 | +These board must define these functions | |
47 | + | |
48 | +__led_init is called once to initialize the LED to STATUS_LED_STATE. One time | |
49 | +start up code should be placed here. | |
50 | + | |
51 | +__led_set is called to change the state of the LED. | |
52 | + | |
53 | +__led_toggle is called to toggle the current state of the LED. | |
54 | + | |
55 | +Colour LED | |
56 | +======================================== | |
57 | + | |
58 | +Colour LED's are at present only used by ARM. | |
59 | + | |
60 | +The functions names explain their purpose. | |
61 | + | |
62 | +coloured_LED_init | |
63 | +red_LED_on | |
64 | +red_LED_off | |
65 | +green_LED_on | |
66 | +green_LED_off | |
67 | +yellow_LED_on | |
68 | +yellow_LED_off | |
69 | +blue_LED_on | |
70 | +blue_LED_off | |
71 | + | |
72 | +These are weakly defined in lib_arm/board.c to noops. Where applicable, define | |
73 | +these functions in the board specific source. | |
74 | + | |
75 | +TBD : Describe older board dependent macros similar to what is done for | |
76 | +CONFIG_TQM8xxL. | |
77 | + | |
78 | +TBD : Describe general support via asm/status_led.h |