diff options
author | Divagar Mohandass <divagar.mohandass@intel.com> | 2020-09-15 07:16:55 +0000 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-09-22 05:15:19 +0000 |
commit | aa66f469cf4be213014d3e16440861e08ee57bca (patch) | |
tree | 5f03fbba004777b65c85d982c828ed188d1d691a /board/drawcia | |
parent | 1ba3b3d64b0cc58c107a5d24079999deea0bb03b (diff) | |
download | chrome-ec-aa66f469cf4be213014d3e16440861e08ee57bca.tar.gz |
SM5803: add suspend/resume function for S0ix state
add function to turn on/off features in SM5803 charger
during S0ix state to save power. we are seeing ~8mW power
saving per charger.
BRANCH=None
BUG=b:168591511
TEST=Check power saving in S0ix state and check charger and device
functionality after resume.
Signed-off-by: Divagar Mohandass <divagar.mohandass@intel.com>
Change-Id: I3ea32219040263f0abef8b9dd4c52edb31289fd7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2409485
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'board/drawcia')
-rw-r--r-- | board/drawcia/board.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/board/drawcia/board.c b/board/drawcia/board.c index 3adcbb819a..1b872683fa 100644 --- a/board/drawcia/board.c +++ b/board/drawcia/board.c @@ -424,6 +424,22 @@ void board_init(void) } DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT); +static void board_resume(void) +{ + sm5803_disable_low_power_mode(CHARGER_PRIMARY); + if (board_get_charger_chip_count() > 1) + sm5803_disable_low_power_mode(CHARGER_SECONDARY); +} +DECLARE_HOOK(HOOK_CHIPSET_RESUME, board_resume, HOOK_PRIO_DEFAULT); + +static void board_suspend(void) +{ + sm5803_enable_low_power_mode(CHARGER_PRIMARY); + if (board_get_charger_chip_count() > 1) + sm5803_enable_low_power_mode(CHARGER_SECONDARY); +} +DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, board_suspend, HOOK_PRIO_DEFAULT); + void board_hibernate(void) { /* |