diff options
author | Koro Chen <koro.chen@mediatek.com> | 2016-03-15 17:56:37 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-03-16 06:43:24 -0700 |
commit | c1fbaa22c62c621e414dd0b58e90ad972b4ddb44 (patch) | |
tree | 970f3078ae810a8d870a4ca87dcd65a7cd09a3b1 /power | |
parent | 51fa74ec6fce5f5c7a9c03a79e73bb3eef032bd8 (diff) | |
download | chrome-ec-c1fbaa22c62c621e414dd0b58e90ad972b4ddb44.tar.gz |
oak: Add delay before we turn off VBAT
After power good is lost, PMIC requires some time to turn off
all its internal power before we can turn off VBAT by
set_system_power(0). This ensures the power measurement is within
PMIC spec when system is shut down.
BRANCH=none
BUG=none
TEST=measure the power rails of PMIC after system is shut down
Change-Id: I55d4d99ed0ef69b103a4e52e9f9eec1c9e6265b5
Signed-off-by: Koro Chen <koro.chen@mediatek.com>
Reviewed-on: https://chromium-review.googlesource.com/332409
Reviewed-by: Rong Chang <rongchang@chromium.org>
Diffstat (limited to 'power')
-rw-r--r-- | power/mediatek.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/power/mediatek.c b/power/mediatek.c index 544adbe250..bdd330de7c 100644 --- a/power/mediatek.c +++ b/power/mediatek.c @@ -104,6 +104,12 @@ /* Wait for 5V power source stable */ #define PMIC_WAIT_FOR_5V_POWER_GOOD (1 * MSEC) +/* + * If POWER_GOOD is lost, wait for PMIC to turn off its power completely + * before we turn off VBAT by set_system_power(0) + */ +#define PMIC_POWER_OFF_DELAY (50 * MSEC) + /* TODO(crosbug.com/p/25047): move to HOOK_POWER_BUTTON_CHANGE */ /* 1 if the power button was pressed last time we checked */ static char power_button_was_pressed; @@ -470,6 +476,7 @@ static void chipset_turn_off_power_rails(void) set_pmic_pwron(0); /* system power off */ + usleep(PMIC_POWER_OFF_DELAY); set_system_power(0); } |