summaryrefslogtreecommitdiff
path: root/utility/crossystem.c
diff options
context:
space:
mode:
authorVadim Bendebury <vbendeb@chromium.org>2015-03-12 18:58:13 -0700
committerPatrick Sosinski <sosinski@google.com>2015-05-07 22:22:34 +0000
commit8803c1805f0e4378770ef72489f85196a6a31f34 (patch)
tree6b0e5ff9ccb160e422f5da28b3ff5e8056fa38c8 /utility/crossystem.c
parentf44ebbe36b2c1603437edc57b534244e89bfcd9c (diff)
downloadvboot-8803c1805f0e4378770ef72489f85196a6a31f34.tar.gz
vboot: allow firmware to signal a wipeout request
It has become necessary to be able to "factory reset" certain devices on firmware request. The best mechanism for this is NVRAM, as the request needs to be detected very early in the boot process, before other means of communications with the upper layers are available. A previously unused NVRAM bit (bit 0x08 at offset zero) is taken for this purpose. A new flag is introduced to allow the firmware to signal the need to assert this bit. A new variable name/parameter ('wipeout_request') added to crossystem to provide user space access to the setting of the dedicated NVRAM bit. BRANCH=storm BUG=chrome-os-partner:37219 TEST=with all the patches applied, on storm, holding the recovery button at startup for 10 seconds, causes 'crossystem wipeout_request' to report '1'. Change-Id: If1f6f061ce5b3f357b92aaa74cb129671dc30446 Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/259857 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 7b50512ccf17f1a0f138c2ef2bb5d3984e0e89de) Reviewed-on: https://chromium-review.googlesource.com/270004 Reviewed-by: Patrick Sosinski <sosinski@google.com> Commit-Queue: Patrick Sosinski <sosinski@google.com> Tested-by: Patrick Sosinski <sosinski@google.com>
Diffstat (limited to 'utility/crossystem.c')
-rw-r--r--utility/crossystem.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/utility/crossystem.c b/utility/crossystem.c
index 41ed8494..adc828d7 100644
--- a/utility/crossystem.c
+++ b/utility/crossystem.c
@@ -94,6 +94,7 @@ const Param sys_param_list[] = {
{"vdat_lkdebug", IS_STRING|NO_PRINT_ALL,
"LoadKernel() debug data (not in print-all)"},
{"vdat_timers", IS_STRING, "Timer values from VbSharedData"},
+ {"wipeout_request", 0, "Firmware requested factory reset (wipeout)"},
{"wpsw_boot", 0, "Firmware write protect hardware switch position at boot"},
{"wpsw_cur", 0, "Firmware write protect hardware switch current position"},
/* Terminate with null name */