[PATCH 1/2] board: sunxi: enable status LED early

Andre Przywara andre.przywara at arm.com
Tue Sep 7 01:46:44 CEST 2021


On Mon,  6 Sep 2021 22:57:52 +0200
Arnaud Ferraris <arnaud.ferraris at collabora.com> wrote:

Hi Arnaud,

> For some systems, such as the PinePhone, there is no way for the end
> user to make sure the system is indeed booting before the boot script is
> executed, which takes several seconds. Therefore, it can be useful to
> provide early visual feedback as soon as possible.
> 
> In order achieve this goal, this patch initializes the status LED (if
> configured) in the SPL.

Thanks for sending this, it looks much better than the previous
attempt on the list from earlier this year.


> Signed-off-by: Arnaud Ferraris <arnaud.ferraris at collabora.com>
> ---
>  board/sunxi/board.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/board/sunxi/board.c b/board/sunxi/board.c
> index 1a46100e40..6e0bf5fbf9 100644
> --- a/board/sunxi/board.c
> +++ b/board/sunxi/board.c
> @@ -46,6 +46,9 @@
>  #include <spl.h>
>  #include <sy8106a.h>
>  #include <asm/setup.h>
> +#if defined(CONFIG_LED_STATUS) && defined(CONFIG_SPL_DRIVERS_MISC)
> +#include <status_led.h>

status_led.h already guards for CONFIG_LED_STATUS, so you can just
unconditionally include this here, no #ifdefs needed.

> +#endif
>  
>  #if defined CONFIG_VIDEO_LCD_PANEL_I2C && !(defined CONFIG_SPL_BUILD)
>  /* So that we can use pin names in Kconfig and sunxi_name_to_gpio() */
> @@ -672,6 +675,10 @@ void sunxi_board_init(void)
>  {
>  	int power_failed = 0;
>  
> +#if defined(CONFIG_LED_STATUS) && defined(CONFIG_SPL_DRIVERS_MISC)

Unfortunately status_led.h doesn't define a dummy prototype for this,
so we need the #ifdef CONFIG_LED_STATUS. But I don't think you need
CONFIG_SPL_DRIVERS_MISC here. If that should only trigger in the SPL, use:

	if (IS_ENABLED(CONFIG_SPL_BUILD))
		status_led_init();

Cheers,
Andre

> +	status_led_init();
> +#endif
> +
>  #ifdef CONFIG_SY8106A_POWER
>  	power_failed = sy8106a_set_vout1(CONFIG_SY8106A_VOUT1_VOLT);
>  #endif


More information about the U-Boot mailing list