]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
LoongArch: Fix reserving screen info memory for above-4G firmware
authorHuacai Chen <chenhuacai@loongson.cn>
Mon, 2 Dec 2024 08:42:07 +0000 (16:42 +0800)
committerHuacai Chen <chenhuacai@loongson.cn>
Mon, 2 Dec 2024 08:42:07 +0000 (16:42 +0800)
Since screen_info.lfb_base is a __u32 type, an above-4G address need an
ext_lfb_base to present its higher 32bits. In init_screen_info() we can
use __screen_info_lfb_base() to handle this case for reserving screen
info memory.

Signed-off-by: Xuefeng Zhao <zhaoxuefeng@loongson.cn>
Signed-off-by: Jianmin Lv <lvjianmin@loongson.cn>
Signed-off-by: Tianyang Zhang <zhangtianyang@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/kernel/efi.c

index 2bf86aeda874c79f58ad6d6ba79477a4eda1811b..de21e72759eebcc126dae6f6739a0e7495cb380d 100644 (file)
@@ -95,7 +95,7 @@ static void __init init_screen_info(void)
        memset(si, 0, sizeof(*si));
        early_memunmap(si, sizeof(*si));
 
-       memblock_reserve(screen_info.lfb_base, screen_info.lfb_size);
+       memblock_reserve(__screen_info_lfb_base(&screen_info), screen_info.lfb_size);
 }
 
 void __init efi_init(void)