HV: Add acpi_fixup api to override acpi on needs

Add acpi_fixup() api in bsp that can override platform ACPI info when
do init_bsp(), this is useful when platform bootloader is not lock
down before production.

In current code only the wake vector addresses would be parsed after
boot and then override to host_acpi_info, we can add more in furture
based on our needs.

Tracked-On: #1264

Signed-off-by: Victor Sun <victor.sun@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Victor Sun
2018-09-17 11:28:41 +08:00
committed by lijinxia
parent 0d5ad8a522
commit 2197f4306a
4 changed files with 25 additions and 0 deletions

View File

@@ -364,4 +364,19 @@ static void *get_facs_table(void)
return facs_addr;
}
/* put all ACPI fix up code here */
void acpi_fixup(void)
{
uint8_t *facs_addr;
facs_addr = get_facs_table();
if (facs_addr != NULL) {
host_acpi_info.pm_s_state.wake_vector_32 =
(uint32_t *)(facs_addr + OFFSET_WAKE_VECTOR_32);
host_acpi_info.pm_s_state.wake_vector_64 =
(uint64_t *)(facs_addr + OFFSET_WAKE_VECTOR_64);
}
}
#endif