From 806fa2463f16d32f98cff6437576a5efe2874ece Mon Sep 17 00:00:00 2001 From: Lee Leahy Date: Mon, 1 Aug 2016 13:55:02 -0700 Subject: drivers/intel/fsp2_0: Handle FspNotify calls Other SOC platforms need to handle the FspNotify calls in the same way as Apollo Lake. Migrate the FspNotify calls into the FSP 2.0 driver. Provide a platform callback to handle anything else that needs to be done after the FspNotify call. Display the MTRRs before the first call to fsp_notify. TEST=Build and run on Galileo Gen2 Change-Id: I1ff327d77516d4ea212740c16c2514c2908758a2 Signed-off-by: Lee Leahy Reviewed-on: https://review.coreboot.org/15855 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/soc/intel/apollolake/chip.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'src/soc') diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index 812f663bfe..345d7c4446 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -406,28 +406,13 @@ struct chip_operations soc_intel_apollolake_ops = { .final = &soc_final }; -static void fsp_notify_dummy(void *arg) +void platform_fsp_notify_status(enum fsp_notify_phase phase) { - - enum fsp_notify_phase ph = (enum fsp_notify_phase) arg; - - fsp_notify(ph); - - /* Call END_OF_FIRMWARE Notify after READY_TO_BOOT Notify */ - if (ph == READY_TO_BOOT) { - fsp_notify_dummy((void *)END_OF_FIRMWARE); - /* Hide the P2SB device to align with previous behavior. */ + /* Hide the P2SB device to align with previous behavior. */ + if (phase == END_OF_FIRMWARE) p2sb_hide(); - } } -BOOT_STATE_INIT_ENTRY(BS_DEV_RESOURCES, BS_ON_EXIT, fsp_notify_dummy, - (void *) AFTER_PCI_ENUM); -BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_LOAD, BS_ON_EXIT, fsp_notify_dummy, - (void *) READY_TO_BOOT); -BOOT_STATE_INIT_ENTRY(BS_OS_RESUME, BS_ON_ENTRY, fsp_notify_dummy, - (void *) READY_TO_BOOT); - /* * spi_init() needs to run unconditionally on every boot (including resume) to * allow write protect to be disabled for eventlog and nvram updates. This needs -- cgit v1.2.3