]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
riscv: acpi: avoid errors caused by probing DT devices when ACPI is used
authorHan Gao <rabenda.cn@gmail.com>
Wed, 10 Sep 2025 11:24:01 +0000 (19:24 +0800)
committerPaul Walmsley <pjw@kernel.org>
Fri, 10 Oct 2025 01:36:45 +0000 (19:36 -0600)
Similar to the ARM64 commit 3505f30fb6a9s ("ARM64 / ACPI: If we chose
to boot from acpi then disable FDT"), let's not do DT hardware probing
if ACPI is enabled in early boot.  This avoids errors caused by
repeated driver probing.

Signed-off-by: Han Gao <rabenda.cn@gmail.com>
Link: https://lore.kernel.org/r/20250910112401.552987-1-rabenda.cn@gmail.com
[pjw@kernel.org: cleaned up patch description and subject]
Signed-off-by: Paul Walmsley <pjw@kernel.org>
arch/riscv/kernel/setup.c

index 14235e58c539cde7565810112e13965500cf5781..b5bc5fc65cea65bbc5a487416ec4f29e5fa5a04b 100644 (file)
@@ -331,11 +331,14 @@ void __init setup_arch(char **cmdline_p)
        /* Parse the ACPI tables for possible boot-time configuration */
        acpi_boot_table_init();
 
+       if (acpi_disabled) {
 #if IS_ENABLED(CONFIG_BUILTIN_DTB)
-       unflatten_and_copy_device_tree();
+               unflatten_and_copy_device_tree();
 #else
-       unflatten_device_tree();
+               unflatten_device_tree();
 #endif
+       }
+
        misc_mem_init();
 
        init_resources();