public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [PATCH 0/2] Autoboot prompt customization and bootmenu cosmetics
@ 2026-04-05 10:49 Ferass El Hafidi
  2026-04-05 10:49 ` [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED Ferass El Hafidi
  2026-04-05 10:49 ` [PATCH 2/2] cmd: bootmenu: ANSI_CLEAR_LINE before entry name Ferass El Hafidi
  0 siblings, 2 replies; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-05 10:49 UTC (permalink / raw)
  To: u-boot
  Cc: Tom Rini, Quentin Schulz, Kory Maincent (TI.com), Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi,
	Ferass El Hafidi

This is a small patch series to make the autoboot prompt configurable
regardless of if CONFIG_AUTOBOOT_KEYED is enabled, which is very useful
with a splash screen. My usecase is, with some ANSI magic, moving the
autoboot prompt to the very bottom of the screen and highlighted, with a
splash screen shown.
Something like this: https://ircb.dersco.re/uploads/funderscore/efa2a27132e56891
It feels wrong to require AUTOBOOT_KEYED only for that usecase.

Also, the bootmenu now prints ANSI_CLEAR_LINE before each entry, which
has the effect of highlighting the entire line entry on vidconsole, just
like eficonfig. I can drop that one if it's not very useful, just
thought it would look nice.

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
---
Ferass El Hafidi (2):
      autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
      cmd: bootmenu: ANSI_CLEAR_LINE before entry name

 boot/Kconfig      | 31 ++++++++++++++++---------------
 cmd/bootmenu.c    |  2 +-
 common/autoboot.c |  4 +++-
 3 files changed, 20 insertions(+), 17 deletions(-)
---
base-commit: 0da1866a8fdd4d4bc4837ef2af281dbe010ae16b
change-id: 20260331-ui-cosmetics-aae207abed6b

Best regards,
-- 
Ferass El Hafidi <funderscore@postmarketos.org>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-05 10:49 [PATCH 0/2] Autoboot prompt customization and bootmenu cosmetics Ferass El Hafidi
@ 2026-04-05 10:49 ` Ferass El Hafidi
  2026-04-06 15:30   ` Tom Rini
  2026-04-05 10:49 ` [PATCH 2/2] cmd: bootmenu: ANSI_CLEAR_LINE before entry name Ferass El Hafidi
  1 sibling, 1 reply; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-05 10:49 UTC (permalink / raw)
  To: u-boot
  Cc: Tom Rini, Quentin Schulz, Kory Maincent (TI.com), Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi,
	Ferass El Hafidi

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@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)

-- 
2.53.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/2] cmd: bootmenu: ANSI_CLEAR_LINE before entry name
  2026-04-05 10:49 [PATCH 0/2] Autoboot prompt customization and bootmenu cosmetics Ferass El Hafidi
  2026-04-05 10:49 ` [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED Ferass El Hafidi
@ 2026-04-05 10:49 ` Ferass El Hafidi
  1 sibling, 0 replies; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-05 10:49 UTC (permalink / raw)
  To: u-boot
  Cc: Tom Rini, Quentin Schulz, Kory Maincent (TI.com), Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi,
	Ferass El Hafidi

This has the effect of highlighting the whole entry when it is selected
(on vidconsole), which makes it consistent with eficonfig too.

Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
---
 cmd/bootmenu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cmd/bootmenu.c b/cmd/bootmenu.c
index d3108778c6f..a07fea49322 100644
--- a/cmd/bootmenu.c
+++ b/cmd/bootmenu.c
@@ -76,7 +76,7 @@ static void bootmenu_print_entry(void *data)
 	if (reverse)
 		puts(ANSI_COLOR_REVERSE);
 
-	printf("%s", entry->title);
+	printf(ANSI_CLEAR_LINE "%s", entry->title);
 
 	if (reverse)
 		puts(ANSI_COLOR_RESET);

-- 
2.53.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-05 10:49 ` [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED Ferass El Hafidi
@ 2026-04-06 15:30   ` Tom Rini
  2026-04-06 15:39     ` Ferass El Hafidi
  0 siblings, 1 reply; 8+ messages in thread
From: Tom Rini @ 2026-04-06 15:30 UTC (permalink / raw)
  To: Ferass El Hafidi
  Cc: u-boot, Quentin Schulz, Kory Maincent (TI.com), Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi

[-- Attachment #1: Type: text/plain, Size: 3305 bytes --]

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@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

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-06 15:30   ` Tom Rini
@ 2026-04-06 15:39     ` Ferass El Hafidi
  2026-04-06 16:10       ` Tom Rini
  0 siblings, 1 reply; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-06 15:39 UTC (permalink / raw)
  To: Tom Rini
  Cc: u-boot, Quentin Schulz, Kory Maincent, Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi

On Mon, 06 Apr 2026 15:30, Tom Rini <trini@konsulko.com> wrote:
>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@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?
>

I did this in case it happened to be unset, and also to provide a way to
silence the prompt entirely.

Best regards,
Ferass

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-06 15:39     ` Ferass El Hafidi
@ 2026-04-06 16:10       ` Tom Rini
  2026-04-06 17:41         ` Ferass El Hafidi
  0 siblings, 1 reply; 8+ messages in thread
From: Tom Rini @ 2026-04-06 16:10 UTC (permalink / raw)
  To: Ferass El Hafidi
  Cc: u-boot, Quentin Schulz, Kory Maincent, Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi

[-- Attachment #1: Type: text/plain, Size: 4195 bytes --]

On Mon, Apr 06, 2026 at 03:39:38PM +0000, Ferass El Hafidi wrote:
> On Mon, 06 Apr 2026 15:30, Tom Rini <trini@konsulko.com> wrote:
> > 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@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?
> > 
> 
> I did this in case it happened to be unset, and also to provide a way to
> silence the prompt entirely.

I believe it must be set (there may or may not be some fun around
CMDLINE=n), but this doesn't allow for the prompt to be unset, if I'm
recalling some of the fun around Kconfig -> defines works (defined to ""
is not the same as undefined, we would need to add a new bool Kconfig
option, that's why there's USE_PREBOOT and PREBOOT for example).

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-06 16:10       ` Tom Rini
@ 2026-04-06 17:41         ` Ferass El Hafidi
  2026-04-08 16:35           ` Ferass El Hafidi
  0 siblings, 1 reply; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-06 17:41 UTC (permalink / raw)
  To: Tom Rini
  Cc: u-boot, Quentin Schulz, Kory Maincent, Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi

On Mon, 06 Apr 2026 16:10, Tom Rini <trini@konsulko.com> wrote:
>On Mon, Apr 06, 2026 at 03:39:38PM +0000, Ferass El Hafidi wrote:
>> On Mon, 06 Apr 2026 15:30, Tom Rini <trini@konsulko.com> wrote:
>> > 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@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?
>> > 
>> 
>> I did this in case it happened to be unset, and also to provide a way to
>> silence the prompt entirely.
>
>I believe it must be set (there may or may not be some fun around
>CMDLINE=n), but this doesn't allow for the prompt to be unset, if I'm
>recalling some of the fun around Kconfig -> defines works (defined to ""
>is not the same as undefined, we would need to add a new bool Kconfig
>option, that's why there's USE_PREBOOT and PREBOOT for example).
>

Ah right, then the #ifdef/#endif are completely useless. Will modify the
Kconfig help message as well. I don't intend to have this unset in my
usecase anyway.

Thanks for the review!

Best regards,
Ferass

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED
  2026-04-06 17:41         ` Ferass El Hafidi
@ 2026-04-08 16:35           ` Ferass El Hafidi
  0 siblings, 0 replies; 8+ messages in thread
From: Ferass El Hafidi @ 2026-04-08 16:35 UTC (permalink / raw)
  To: Tom Rini
  Cc: u-boot, Quentin Schulz, Kory Maincent, Simon Glass,
	Mattijs Korpershoek, Anshul Dalal, Heinrich Schuchardt,
	Martin Schwan, David Zang, Sam Protsenko, Christian Marangi

Hi Tom,

On Mon, 06 Apr 2026 17:41, Ferass El Hafidi <funderscore@postmarketos.org> wrote:
>On Mon, 06 Apr 2026 16:10, Tom Rini <trini@konsulko.com> wrote:
>>On Mon, Apr 06, 2026 at 03:39:38PM +0000, Ferass El Hafidi wrote:
>>> On Mon, 06 Apr 2026 15:30, Tom Rini <trini@konsulko.com> wrote:
>>> > 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@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?
>>> > 
>>> 
>>> I did this in case it happened to be unset, and also to provide a way to
>>> silence the prompt entirely.
>>
>>I believe it must be set (there may or may not be some fun around
>>CMDLINE=n), but this doesn't allow for the prompt to be unset, if I'm
>>recalling some of the fun around Kconfig -> defines works (defined to ""
>>is not the same as undefined, we would need to add a new bool Kconfig
>>option, that's why there's USE_PREBOOT and PREBOOT for example).
>>

Thanks, I sent a v2 removing these.

Best regards,
Ferass

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-04-08 16:36 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-05 10:49 [PATCH 0/2] Autoboot prompt customization and bootmenu cosmetics Ferass El Hafidi
2026-04-05 10:49 ` [PATCH 1/2] autoboot: allow custom prompt without requiring AUTOBOOT_KEYED Ferass El Hafidi
2026-04-06 15:30   ` Tom Rini
2026-04-06 15:39     ` Ferass El Hafidi
2026-04-06 16:10       ` Tom Rini
2026-04-06 17:41         ` Ferass El Hafidi
2026-04-08 16:35           ` Ferass El Hafidi
2026-04-05 10:49 ` [PATCH 2/2] cmd: bootmenu: ANSI_CLEAR_LINE before entry name Ferass El Hafidi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox