diff options
author | Duncan Laurie <dlaurie@chromium.org> | 2016-10-20 18:05:36 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-10-26 01:44:06 -0700 |
commit | b142b05465052511b837ac71ab079081ff9430ae (patch) | |
tree | 4f5553577513da9908c30a8ef262d6f76bd21e85 /include/board_config.h | |
parent | b1ac9d3c6eb2469e2ce9ad059d774ffd99cc2bae (diff) | |
download | chrome-ec-b142b05465052511b837ac71ab079081ff9430ae.tar.gz |
power: Add board callback before RSMRST# state change
This board function allows workarounds to be applied to a board after all
power rails are up but before the AP is out of reset.
Most workarounds for power sequencing can go in board init hooks, but for
devices where the power sequencing is driven by external PMIC the EC may
not get interrupts in time to handle workarounds.
For x86 platforms and boards which support RSMRST# passthrough this board
callback will allow workarounds to be applied despite the PMIC sequencing
by ensuring that the function is executed before RSMRST# deassertion.
BUG=chrome-os-partner:58666
BRANCH=none
TEST=test IMVP8 workaround on multiple eve boards
Change-Id: I0569494084000a4b1738ee18aafce5c96900dc4b
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/402591
Reviewed-by: Shawn N <shawnn@chromium.org>
Diffstat (limited to 'include/board_config.h')
-rw-r--r-- | include/board_config.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/board_config.h b/include/board_config.h index 0a97b8a181..6742573bc2 100644 --- a/include/board_config.h +++ b/include/board_config.h @@ -32,4 +32,20 @@ void board_config_pre_init(void); void board_config_post_gpio_init(void); #endif +#ifdef CONFIG_BOARD_HAS_BEFORE_RSMRST +/** + * Configure board before RSMRST# state change + * + * This board function allows workarounds to be applied to a board after all + * power rails are up but before the AP is out of reset. + * + * Most workarounds for power sequencing can go in board init hooks, but for + * devices where the power sequencing is driven by external PMIC the EC may + * not get interrupts in time to handle workarounds. For x86 platforms and + * boards which support RSMRST# passthrough this hook will allow the board + * to apply workarounds despite the PMIC sequencing. + */ +void board_before_rsmrst(int rsmrst); +#endif + #endif /* __CROS_EC_BOARD_CONFIG_H */ |