diff options
author | Ken Chang <kenc@nvidia.com> | 2015-02-06 14:06:16 +0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-02-11 03:36:06 +0000 |
commit | f968fc8a198573c7c9a8a0c195e93d8b33fb8603 (patch) | |
tree | 9f37eed3ca43688d42ed79bcb84e537535b80dba /host/arch/arm/lib/crossystem_arch.c | |
parent | 752b7b20e20d3504549b4059dc233b13a8d41974 (diff) | |
download | vboot-stabilize-6680.79.B.tar.gz |
crossystem: read recovery switch status from chromeos_arm devicestabilize-6680.79.Bstabilize-6680.78.Brelease-R41-6680.B
The kernel chromeos_arm platform device provides the recovery status
with the consideration of active polarity.
Thus make crossystem to read from chromeos_arm device first. If this
is not available, read directly from gpio pin status.
BUG=chrome-os-partner:36425
BRANCH=none
TEST=ran on kitty,
'crossystem recoverysw_cur' return 0 with recovery switch off
'crossystem recoverysw_cur' return 1 with recovery switch on
Change-Id: Ie20630d7d07aeadf24044cd3ffc495df7cdd8a4a
Signed-off-by: Ken Chang <kenc@nvidia.com>
Reviewed-on: https://chromium-review.googlesource.com/246883
Tested-by: Titan Lee <titanlee@nvidia.com>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Queue: Titan Lee <titanlee@nvidia.com>
(cherry picked from commit c93ddb60aae37fc06f614a1b79e6f3fee25b97c4)
Reviewed-on: https://chromium-review.googlesource.com/248372
Reviewed-by: Andrew Bresticker <abrestic@chromium.org>
Diffstat (limited to 'host/arch/arm/lib/crossystem_arch.c')
-rw-r--r-- | host/arch/arm/lib/crossystem_arch.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/host/arch/arm/lib/crossystem_arch.c b/host/arch/arm/lib/crossystem_arch.c index 21e21696..b032ed30 100644 --- a/host/arch/arm/lib/crossystem_arch.c +++ b/host/arch/arm/lib/crossystem_arch.c @@ -524,6 +524,11 @@ int VbGetArchPropertyInt(const char* name) { return VbGetVarGpio("developer-switch"); } else if (!strcasecmp(name, "recoverysw_cur")) { + int value; + value = VbGetPlatformGpioStatus("recovery"); + if (value != -1) + return value; + return VbGetVarGpio("recovery-switch"); } else if (!strcasecmp(name, "wpsw_cur")) { int value; |