[coreboot-gerrit] Patch set updated for coreboot: soc/intel/apollolake: Add handling of global reset in FspNotify stage

Andrey Petrov (andrey.petrov@intel.com) gerrit at coreboot.org
Thu Jun 23 20:30:56 CEST 2016


Andrey Petrov (andrey.petrov at intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15280

-gerrit

commit 86a2ce8eee31b8c6bdeac7ed61b6450488a06221
Author: Andrey Petrov <andrey.petrov at intel.com>
Date:   Wed Jun 22 19:32:51 2016 -0700

    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 at intel.com>
---
 src/soc/intel/apollolake/chip.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c
index ddb1374..b5592e7 100644
--- a/src/soc/intel/apollolake/chip.c
+++ b/src/soc/intel/apollolake/chip.c
@@ -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);



More information about the coreboot-gerrit mailing list