Patrick Georgi (pgeorgi@google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10851
-gerrit
commit 0686105b62a53bfd8d541362046cd35c95f1ad61 Author: Patrick Georgi pgeorgi@chromium.org Date: Wed Jul 8 11:33:35 2015 +0200
vboot: Don't count boot attempts if lid is closed
This can be a problem with freshly updated devices that are periodically powered on while closed (as explained in the bug report).
In this case, just don't count down. In case of actual errors (where we want the system to fall back to the old code), this now means that the retries have to happen with the lid open.
BUG=chromium:446945 TEST=to test the OS update side, follow the test protocol in https://code.google.com/p/chromium/issues/detail?id=446945#c43 With a servo, it can be sped up using the EC console interface to start the closed system - no need to wait 60min and plugging in power to get to that state.
Change-Id: I0e39aadc52195fe53ee4a29a828ed9a40d28f5e6 Signed-off-by: Patrick Georgi pgeorgi@chromium.org --- 3rdparty/vboot | 2 +- src/vendorcode/google/chromeos/vboot2/verstage.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/3rdparty/vboot b/3rdparty/vboot index 7dd3bd0..fbf631c 160000 --- a/3rdparty/vboot +++ b/3rdparty/vboot @@ -1 +1 @@ -Subproject commit 7dd3bd0fcf565901aacc512cd29cefe19291c2e7 +Subproject commit fbf631c845c08299f0bcbae3f311c5807d34c0d6 diff --git a/src/vendorcode/google/chromeos/vboot2/verstage.c b/src/vendorcode/google/chromeos/vboot2/verstage.c index 783d1b6..2a2a956 100644 --- a/src/vendorcode/google/chromeos/vboot2/verstage.c +++ b/src/vendorcode/google/chromeos/vboot2/verstage.c @@ -270,6 +270,9 @@ void verstage_main(void) if (IS_ENABLED(CONFIG_WIPEOUT_SUPPORTED) && get_wipeout_mode_switch()) ctx.flags |= VB2_CONTEXT_FORCE_WIPEOUT_MODE;
+ if (IS_ENABLED(CONFIG_LID_SWITCH) && !get_lid_switch()) + ctx.flags |= VB2_CONTEXT_NOFAIL_BOOT; + /* Do early init (set up secdata and NVRAM, load GBB) */ printk(BIOS_INFO, "Phase 1\n"); rv = vb2api_fw_phase1(&ctx);