Attention is currently required from: Julius Werner, Yu-Ping Wu.
Vladimir Serbinenko has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/81509?usp=email )
Change subject: Clear spurious recovery request ......................................................................
Clear spurious recovery request
Some recovery requests are spurious. Clear them and follow RW path regardless
Change-Id: I6ba7c954e6c51ef97abc2ff8e2826a95ff6b0532 Signed-off-by: Vladimir Serbinenko phcoder@gmail.com --- M src/security/vboot/vboot_logic.c 1 file changed, 7 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/09/81509/1
diff --git a/src/security/vboot/vboot_logic.c b/src/security/vboot/vboot_logic.c index 784f1d0..2ca9a81 100644 --- a/src/security/vboot/vboot_logic.c +++ b/src/security/vboot/vboot_logic.c @@ -17,6 +17,7 @@ #include <vb2_api.h> #include <boot_device.h> #include <pc80/mc146818rtc.h> +#include "../2lib/include/2nvstorage.h"
#include "antirollback.h"
@@ -346,6 +347,12 @@ /* Initialize and read nvdata from non-volatile storage. */ vbnv_init();
+ /* Spurious. But if we continue we'll get into recovery bootloader. So clear it. */ + if (CONFIG(VBOOT_HYBRID) && vb2_nv_get(ctx, VB2_NV_RECOVERY_REQUEST) == VB2_RECOVERY_SECDATA_FIRMWARE_INIT) { + vb2_nv_set(ctx, VB2_NV_RECOVERY_REQUEST, 0); + vb2_nv_set(ctx, VB2_NV_RECOVERY_SUBCODE, 0); + } + /* Set S3 resume flag if vboot should behave differently when selecting * which slot to boot. This is only relevant to vboot if the platform * does verification of memory init and thus must ensure it resumes with