diff --git a/common/board_r.c b/common/board_r.c index a4facf8845..a412bb7554 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -544,11 +544,14 @@ static int initr_kgdb(void) } #endif -#if defined(CONFIG_STATUS_LED) && defined(STATUS_LED_BOOT) +#if defined(CONFIG_STATUS_LED) static int initr_status_led(void) { +#if defined(STATUS_LED_BOOT) status_led_set(STATUS_LED_BOOT, STATUS_LED_BLINKING); - +#else + status_led_init(); +#endif return 0; } #endif @@ -835,7 +838,7 @@ init_fnc_t init_sequence_r[] = { || defined(CONFIG_M68K) timer_init, /* initialize timer */ #endif -#if defined(CONFIG_STATUS_LED) && defined(STATUS_LED_BOOT) +#if defined(CONFIG_STATUS_LED) initr_status_led, #endif /* PPC has a udelay(20) here dating from 2002. Why? */ diff --git a/drivers/misc/pca9551_led.c b/drivers/misc/pca9551_led.c index d4034f6735..4da031985f 100644 --- a/drivers/misc/pca9551_led.c +++ b/drivers/misc/pca9551_led.c @@ -116,8 +116,12 @@ static int pca9551_led_set_blink_rate(int idx, struct pca9551_blink_rate rate) } /* - * Functions referenced by cmd_led.c + * Functions referenced by cmd_led.c or status_led.c */ +void __led_init(led_id_t id, int state) +{ +} + void __led_set(led_id_t mask, int state) { if (state == STATUS_LED_OFF) diff --git a/drivers/misc/status_led.c b/drivers/misc/status_led.c index 9869d98c10..31e88319d1 100644 --- a/drivers/misc/status_led.c +++ b/drivers/misc/status_led.c @@ -73,7 +73,7 @@ led_dev_t led_dev[] = { static int status_led_init_done = 0; -static void status_led_init (void) +void status_led_init(void) { led_dev_t *ld; int i; diff --git a/include/status_led.h b/include/status_led.h index f6be18146b..396ea882ea 100644 --- a/include/status_led.h +++ b/include/status_led.h @@ -23,6 +23,7 @@ #define STATUS_LED_BLINKING 1 #define STATUS_LED_ON 2 +void status_led_init(void); void status_led_tick (unsigned long timestamp); void status_led_set (int led, int state);