diff mbox series

[2/2] ACPI: Suppress misleading SPCR console message when SPCR table is absent

Message ID 20250606072802.191580-3-me@linux.beauty
State New
Headers show
Series ACPI: Improve SPCR handling and messaging on SPCR-less systems | expand

Commit Message

Li Chen June 6, 2025, 7:27 a.m. UTC
From: Li Chen <chenl311@chinatelecom.cn>

The kernel currently prints:
"Use ACPI SPCR as default console: No/Yes "

even on systems that lack an SPCR table. This can
mislead users into thinking the SPCR table exists
on the machines without SPCR.

With this change, the message is only printed if
acpi_parse_spcr() succeeds (i.e., if the SPCR table
is present and parsed). This avoids user confusion
on SPCR-less systems.

Signed-off-by: Li Chen <chenl311@chinatelecom.cn>
---
 arch/arm64/kernel/acpi.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/arch/arm64/kernel/acpi.c b/arch/arm64/kernel/acpi.c
index b9a66fc146c9f..bf29e7b668f1d 100644
--- a/arch/arm64/kernel/acpi.c
+++ b/arch/arm64/kernel/acpi.c
@@ -197,6 +197,8 @@  static int __init acpi_fadt_sanity_check(void)
  */
 void __init acpi_boot_table_init(void)
 {
+	int ret;
+
 	/*
 	 * Enable ACPI instead of device tree unless
 	 * - ACPI has been disabled explicitly (acpi=off), or
@@ -250,10 +252,11 @@  void __init acpi_boot_table_init(void)
 		 * behaviour, use acpi=nospcr to disable console in ACPI SPCR
 		 * table as default serial console.
 		 */
-		acpi_parse_spcr(earlycon_acpi_spcr_enable,
+		ret = acpi_parse_spcr(earlycon_acpi_spcr_enable,
 			!param_acpi_nospcr);
-		pr_info("Use ACPI SPCR as default console: %s\n",
-				param_acpi_nospcr ? "No" : "Yes");
+		if (!ret)
+			pr_info("Use ACPI SPCR as default console: %s\n",
+					param_acpi_nospcr ? "No" : "Yes");
 
 		if (IS_ENABLED(CONFIG_ACPI_BGRT))
 			acpi_table_parse(ACPI_SIG_BGRT, acpi_parse_bgrt);