]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
riscv: Fix wrong usage of __pa() on a fixmap address
authorAlexandre Ghiti <alexghiti@rivosinc.com>
Mon, 9 Dec 2024 07:45:08 +0000 (08:45 +0100)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 11 Dec 2024 19:43:44 +0000 (11:43 -0800)
riscv uses fixmap addresses to map the dtb so we can't use __pa() which
is reserved for linear mapping addresses.

Fixes: b2473a359763 ("of/fdt: add dt_phys arg to early_init_dt_scan and early_init_dt_verify")
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Link: https://lore.kernel.org/r/20241209074508.53037-1-alexghiti@rivosinc.com
Cc: stable@vger.kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/kernel/setup.c

index 016b48fcd6f27ec6c129ad2bc51507ff148a0e13..45010e71df86ce40f99fabf03103a49ad1041f3d 100644 (file)
@@ -227,7 +227,7 @@ static void __init init_resources(void)
 static void __init parse_dtb(void)
 {
        /* Early scan of device tree from init memory */
-       if (early_init_dt_scan(dtb_early_va, __pa(dtb_early_va))) {
+       if (early_init_dt_scan(dtb_early_va, dtb_early_pa)) {
                const char *name = of_flat_dt_get_machine_name();
 
                if (name) {