mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-11-03 18:01:41 +01:00 
			
		
		
		
	Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk This change is intended to clean up the top-level directory structure and more closely mimic Linux's directory organization. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
		
			
				
	
	
		
			79 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
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.
 | 
						|
 | 
						|
At a minimum, these macros must be defined at
 | 
						|
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>
 | 
						|
 | 
						|
Where <n> can a integer 1 through 3.
 | 
						|
 | 
						|
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
 | 
						|
valid STATUS_LED_BIT value.
 | 
						|
 | 
						|
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
 | 
						|
STATUS_LED_BLUE.
 | 
						|
 | 
						|
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.
 | 
						|
 | 
						|
__led_set is called to change the state of the LED.
 | 
						|
 | 
						|
__led_toggle is called to toggle the current state of the LED.
 | 
						|
 | 
						|
Colour LED
 | 
						|
========================================
 | 
						|
 | 
						|
Colour LED's are at present only used by ARM.
 | 
						|
 | 
						|
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
 | 
						|
 | 
						|
These are weakly defined in arch/arm/lib/board.c to noops. Where applicable, define
 | 
						|
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
 |