]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
x86/PVH: Use boot params to pass RSDP address in start_info page
authorHou Wenlong <houwenlong.hwl@antgroup.com>
Sun, 1 Mar 2026 05:04:52 +0000 (13:04 +0800)
committerJuergen Gross <jgross@suse.com>
Tue, 3 Mar 2026 14:06:19 +0000 (15:06 +0100)
After commit e6e094e053af75 ("x86/acpi, x86/boot: Take RSDP address from
boot params if available"), the RSDP address can be passed in boot
params. Therefore, store the RSDP address in start_info page into boot
params in the PVH entry instead of registering a different callback.
This removes an absolute reference during the PVH entry and is more
standardized.

Signed-off-by: Hou Wenlong <houwenlong.hwl@antgroup.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
Message-ID: <76675c4d49d3a8f72252076812ef8f22276230c2.1772282441.git.houwenlong.hwl@antgroup.com>

arch/x86/platform/pvh/enlighten.c

index 2263885d16badd18eaf1788d6d0b9e5af49bf632..f2053cbe9b0ce3d2178938269607c652ae8f528e 100644 (file)
@@ -25,11 +25,6 @@ struct hvm_start_info __initdata pvh_start_info;
 
 const unsigned int __initconst pvh_start_info_sz = sizeof(pvh_start_info);
 
-static u64 __init pvh_get_root_pointer(void)
-{
-       return pvh_start_info.rsdp_paddr;
-}
-
 /*
  * Xen guests are able to obtain the memory map from the hypervisor via the
  * HYPERVISOR_memory_op hypercall.
@@ -95,7 +90,7 @@ static void __init init_pvh_bootparams(bool xen_guest)
        pvh_bootparams.hdr.version = (2 << 8) | 12;
        pvh_bootparams.hdr.type_of_loader = ((xen_guest ? 0x9 : 0xb) << 4) | 0;
 
-       x86_init.acpi.get_root_pointer = pvh_get_root_pointer;
+       pvh_bootparams.acpi_rsdp_addr = pvh_start_info.rsdp_paddr;
 }
 
 /*