[PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED

Tom Rini trini at konsulko.com
Mon Apr 6 17:30:00 CEST 2026


On Sun, Apr 05, 2026 at 10:49:04AM +0000, Ferass El Hafidi wrote:

> The autoboot prompt used to only be customizable in Kconfig when
> AUTOBOOT_KEYED was enabled. For a usecase such as having a nicer
> autoboot prompt alongside a splash screen, there is no reason for
> AUTOBOOT_KEYED to be required for this.
> 
> Remove the dependency to AUTOBOOT_KEYED, and use AUTOBOOT_PROMPT in
> print_boot_delay() instead of a hardcoded string.
> 
> Signed-off-by: Ferass El Hafidi <funderscore at postmarketos.org>
> ---
>  boot/Kconfig      | 31 ++++++++++++++++---------------
>  common/autoboot.c |  4 +++-
>  2 files changed, 19 insertions(+), 16 deletions(-)
> 
> diff --git a/boot/Kconfig b/boot/Kconfig
> index bfed452d77e..6c8ec356996 100644
> --- a/boot/Kconfig
> +++ b/boot/Kconfig
> @@ -1560,6 +1560,22 @@ config AUTOBOOT
>  	help
>  	  This enables the autoboot.  See doc/README.autoboot for detail.
>  
> +config AUTOBOOT_PROMPT
> +	string "Autoboot stop prompt"
> +	default "Autoboot in %d seconds\\n" if AUTOBOOT_KEYED
> +	default "\\rHit any key to stop autoboot: %d"
> +	help
> +	  This string is displayed before the boot delay selected by
> +	  CONFIG_BOOTDELAY starts. If it is not defined	there is no
> +	  output indicating that autoboot is in progress.
> +
> +	  Note that this define is used as the (only) argument to a
> +	  printf() call, so it may contain '%' format specifications,
> +	  provided that it also includes, separated by commas exactly
> +	  like in a printf statement, the required arguments. It is
> +	  the responsibility of the user to select only such arguments
> +	  that are valid in the given context.
> +
>  if AUTOBOOT
>  
>  config BOOTDELAY
> @@ -1597,21 +1613,6 @@ config AUTOBOOT_FLUSH_STDIN
>  	  This can't be enabled for the sandbox as flushing stdin would
>  	  break the autoboot unit tests.
>  
> -config AUTOBOOT_PROMPT
> -	string "Autoboot stop prompt"
> -	default "Autoboot in %d seconds\\n"
> -	help
> -	  This string is displayed before the boot delay selected by
> -	  CONFIG_BOOTDELAY starts. If it is not defined	there is no
> -	  output indicating that autoboot is in progress.
> -
> -	  Note that this define is used as the (only) argument to a
> -	  printf() call, so it may contain '%' format specifications,
> -	  provided that it also includes, separated by commas exactly
> -	  like in a printf statement, the required arguments. It is
> -	  the responsibility of the user to select only such arguments
> -	  that are valid in the given context.
> -
>  config AUTOBOOT_ENCRYPTION
>  	bool "Enable encryption in autoboot stopping"
>  	help
> diff --git a/common/autoboot.c b/common/autoboot.c
> index 1783ef92c94..d12d618fea3 100644
> --- a/common/autoboot.c
> +++ b/common/autoboot.c
> @@ -379,7 +379,9 @@ static int abortboot_key_sequence(int bootdelay)
>  
>  static void print_boot_delay(int bootdelay)
>  {
> -	printf(ANSI_CLEAR_LINE "\rHit any key to stop autoboot: %d", bootdelay);
> +#ifdef CONFIG_AUTOBOOT_PROMPT
> +	printf(ANSI_CLEAR_LINE CONFIG_AUTOBOOT_PROMPT, bootdelay);
> +#endif
>  }
>  
>  static int abortboot_single_key(int bootdelay)

We shouldn't need to guard this, as it's always prompted for now during
configuration, yes?

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20260406/4b87e061/attachment.sig>


More information about the U-Boot mailing list