Blame view

doc/README.LED 2.2 KB
65fd21c80   Tom Rix   LED Add documenta...
1
2
3
4
5
6
7
8
9
10
11
  Status LED
  ========================================
  
  This README describes the status LED API.
  
  The API is defined by the include file include/status_led.h
  
  The first step is to define CONFIG_STATUS_LED in the board config file.
  
  If the LED support is only for a single board, define CONFIG_BOARD_SPECIFIC_LED
  in the board config file.
8e5e9b940   Wolfgang Denk   Coding style clea...
12
  At a minimum, these macros must be defined at
65fd21c80   Tom Rix   LED Add documenta...
13
14
15
16
17
18
19
20
  STATUS_LED_BIT
  STATUS_LED_STATE
  STATUS_LED_PERIOD
  
  If there are multiple status LED's define
  STATUS_LED_BIT<n>
  STATUS_LED_STATE<n>
  STATUS_LED_PERIOD<n>
8e5e9b940   Wolfgang Denk   Coding style clea...
21
  Where <n> can a integer 1 through 3.
65fd21c80   Tom Rix   LED Add documenta...
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  
  STATUS_LED_BIT is passed into the __led_* functions to identify which LED is
  being acted on.  As such, the value choose must be unique with with respect to
  the other STATUS_LED_BIT's.  Mapping the value to a physical LED is the
  reponsiblity of the __led_* function.
  
  STATUS_LED_STATE is the initial state of the LED. It should be set to one of
  these values: STATUS_LED_OFF or STATUS_LED_ON.
  
  STATUS_LED_PERIOD is how long is the LED blink period.  This usually set to
  (CONFIG_SYS_HZ / <N>) where <N> is the frequency of the blink. Typical values
  range from 2 to 10.
  
  Some other LED macros
  
  STATUS_LED_BOOT is the LED to light when the board is booting.  This must be a
8e5e9b940   Wolfgang Denk   Coding style clea...
38
  valid STATUS_LED_BIT value.
65fd21c80   Tom Rix   LED Add documenta...
39
40
41
  
  STATUS_LED_RED is the red LED.  It is used signal errors. This must be a valid
  STATUS_LED_BIT value. Other similar color LED's are STATUS_LED_YELLOW and
8e5e9b940   Wolfgang Denk   Coding style clea...
42
  STATUS_LED_BLUE.
65fd21c80   Tom Rix   LED Add documenta...
43
44
45
46
47
  
  These board must define these functions
  
  __led_init is called once to initialize the LED to STATUS_LED_STATE. One time
  start up code should be placed here.
8e5e9b940   Wolfgang Denk   Coding style clea...
48
  __led_set is called to change the state of the LED.
65fd21c80   Tom Rix   LED Add documenta...
49
50
51
52
53
  
  __led_toggle is called to toggle the current state of the LED.
  
  Colour LED
  ========================================
8e5e9b940   Wolfgang Denk   Coding style clea...
54
  Colour LED's are at present only used by ARM.
65fd21c80   Tom Rix   LED Add documenta...
55
56
57
58
59
60
61
62
63
64
65
66
  
  The functions names explain their purpose.
  
  coloured_LED_init
  red_LED_on
  red_LED_off
  green_LED_on
  green_LED_off
  yellow_LED_on
  yellow_LED_off
  blue_LED_on
  blue_LED_off
ea0364f1b   Peter Tyser   Move lib_$ARCH di...
67
  These are weakly defined in arch/arm/lib/board.c to noops. Where applicable, define
65fd21c80   Tom Rix   LED Add documenta...
68
69
70
71
72
73
  these functions in the board specific source.
  
  TBD : Describe older board dependent macros similar to what is done for
  CONFIG_TQM8xxL.
  
  TBD : Describe general support via asm/status_led.h