]> git.ipfire.org Git - thirdparty/kernel/stable.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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Nov 2025 09:35:46 +0000 (10:35 +0100)
[ Upstream commit 69a8b62a7aa1e54ff7623064f6507fa29c1d0d4e ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/riscv/kernel/setup.c

index 194bda6d74ce72a83f67687dd4bab86e9393aebc..4c430c9f017d8ce993ffb2391f74c24a0cbc2b77 100644 (file)
@@ -298,11 +298,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();