diff options
Diffstat (limited to 'arch/x86/boot/compressed/acpi.c')
-rw-r--r-- | arch/x86/boot/compressed/acpi.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/x86/boot/compressed/acpi.c b/arch/x86/boot/compressed/acpi.c index 66bda1b5cf94..b2b50ad5299a 100644 --- a/arch/x86/boot/compressed/acpi.c +++ b/arch/x86/boot/compressed/acpi.c @@ -184,3 +184,22 @@ static acpi_physical_address bios_get_rsdp_addr(void) return 0; } + +/* Return RSDP address on success, otherwise 0. */ +acpi_physical_address get_rsdp_addr(void) +{ + acpi_physical_address pa; + + pa = get_acpi_rsdp(); + + if (!pa) + pa = boot_params->acpi_rsdp_addr; + + if (!pa) + pa = efi_get_rsdp_addr(); + + if (!pa) + pa = bios_get_rsdp_addr(); + + return pa; +} |