diff options
author | Nicolas Boichat <drinkcat@chromium.org> | 2018-04-10 09:01:31 +0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2018-04-26 01:35:04 +0000 |
commit | c1e3ce642d8ef26c4a165dfb226d711afef375ae (patch) | |
tree | 321b2adbf6840c9b9d0c27224850e2831904780e | |
parent | 9f0102cc79b748243c036295b0ca01afb5825a28 (diff) | |
download | chrome-ec-c1e3ce642d8ef26c4a165dfb226d711afef375ae.tar.gz |
poppy: Move PMIC init to a deferred function
Instead of doing I2C traffic in an init hook, move it to a
deferred function to be called outside of INIT_HOOK processing.
(identical to CL:1001474 on eve branch, moved to poppy board
file)
BUG=b:77336348
BRANCH=poppy
TEST=while true ; do ectool reboot_ec RO ; ectool reboot_ec RW ; done for 24 hours
Change-Id: Ie7ce08f5c4d6ee7052f2c1b36b53099c9e208074
Original-Change-Id: Icd9c2096ca026da6308b74582144886b30ea965f
Original-Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/1003436
Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1029254
Commit-Queue: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Trybot-Ready: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
-rw-r--r-- | board/poppy/board.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/board/poppy/board.c b/board/poppy/board.c index 2244619c41..c693e2374c 100644 --- a/board/poppy/board.c +++ b/board/poppy/board.c @@ -518,7 +518,7 @@ static void board_pmic_init(void) /* Disable power button shutdown timer. */ i2c_write8(I2C_PORT_PMIC, I2C_ADDR_BD99992, 0x14, 0x00); } -DECLARE_HOOK(HOOK_INIT, board_pmic_init, HOOK_PRIO_DEFAULT); +DECLARE_DEFERRED(board_pmic_init); /* Initialize board. */ static void board_init(void) @@ -595,6 +595,9 @@ static void board_init(void) /* Enable Gyro interrupts */ gpio_enable_interrupt(GPIO_ACCELGYRO3_INT_L); + + /* Initialize PMIC */ + hook_call_deferred(&board_pmic_init_data, 0); } DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT); |