summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMichal Simek <[email protected]>2026-03-18 15:24:52 +0100
committerHeinrich Schuchardt <[email protected]>2026-04-17 08:04:43 +0200
commit0c3eb097d9e827e21fdde7e6379f1a396db41da6 (patch)
tree475e15a20550c93435d12fd0a48f30c8e539f988 /lib
parent353166279c32216697025b80df83fc260155251d (diff)
efi_loader: Allow disabling ANSI console queries via Kconfig
Commit 4cb724364030 ("efi_loader: Disable ANSI output for tests") introduced efi_console_set_ansi() to suppress ANSI escape sequences during unit tests. Extend this mechanism to be configurable via a new Kconfig option CONFIG_EFI_CONSOLE_DISABLE_ANSI. When CONFIG_EFI_CONSOLE_DISABLE_ANSI is enabled, efi_console_set_ansi(false) is called at the start of efi_setup_console_size(). This prevents query_console_serial() from sending ANSI escape sequences to the terminal, using default 25x80 dimensions instead. This is useful for platforms where the serial console cannot handle ANSI queries. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
Diffstat (limited to 'lib')
-rw-r--r--lib/efi_loader/Kconfig11
-rw-r--r--lib/efi_loader/efi_console.c3
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig
index b5f81e0ff53..bae98e07d23 100644
--- a/lib/efi_loader/Kconfig
+++ b/lib/efi_loader/Kconfig
@@ -576,6 +576,17 @@ config EFI_EBBR_2_1_CONFORMANCE
help
Enabling this option adds the EBBRv2.1 conformance entry to the ECPT UEFI table.
+config EFI_CONSOLE_DISABLE_ANSI
+ bool "Disable ANSI escape sequence queries for console size"
+ help
+ Select this option to disable ANSI escape sequence queries for
+ detecting serial console size. When enabled,
+ efi_setup_console_size() will not send ANSI escape sequences to
+ the terminal and will use default 25x80 dimensions instead.
+ This is useful for platforms where the serial console cannot
+ properly handle ANSI queries, causing boot delays or garbled
+ output.
+
config EFI_SCROLL_ON_CLEAR_SCREEN
bool "Avoid overwriting previous output on clear screen"
help
diff --git a/lib/efi_loader/efi_console.c b/lib/efi_loader/efi_console.c
index 068d1a0a7b7..a798d5604a3 100644
--- a/lib/efi_loader/efi_console.c
+++ b/lib/efi_loader/efi_console.c
@@ -365,6 +365,9 @@ void efi_setup_console_size(void)
int rows = 25, cols = 80;
int ret = -ENODEV;
+ if (IS_ENABLED(CONFIG_EFI_CONSOLE_DISABLE_ANSI))
+ efi_console_set_ansi(false);
+
if (IS_ENABLED(CONFIG_VIDEO))
ret = query_vidconsole(&rows, &cols);
if (ret) {