soc/intel/apollolake: Add handling of global reset in FspNotify stage

Call basic FSP reset handling in FspNotify stage. Handling of reset requests
for other stages need to be implemented as well.

BUG=chrome-os-partner:54149
BRANCH=none
TEST=with FSP that returns reset codes, do cold boot, check
that reboot sequence occurs properly.

Change-Id: I55542aa37e60edb17ca24ac358b61df72679b83e
Signed-off-by: Andrey Petrov <andrey.petrov@intel.com>
Reviewed-on: https://review.coreboot.org/15280
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Andrey Petrov 2016-06-22 19:32:51 -07:00 committed by Martin Roth
parent 901e43c904
commit 1973c39c82
1 changed files with 6 additions and 2 deletions

View File

@ -160,9 +160,13 @@ static void fsp_notify_dummy(void *arg)
{
enum fsp_notify_phase ph = (enum fsp_notify_phase) arg;
enum fsp_status ret;
if (fsp_notify(ph) != FSP_SUCCESS)
printk(BIOS_CRIT, "FspNotify failed!\n");
if ((ret = fsp_notify(ph)) != FSP_SUCCESS) {
printk(BIOS_CRIT, "FspNotify failed, ret = %x!\n", ret);
if (fsp_reset_requested(ret))
fsp_handle_reset(ret);
}
/* Call END_OF_FIRMWARE Notify after READY_TO_BOOT Notify */
if (ph == READY_TO_BOOT)
fsp_notify_dummy((void *)END_OF_FIRMWARE);