diff options
author | John Crossley <crossley@lionsemi.corp-partner.google.com> | 2021-04-19 21:27:03 +0000 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-05-06 04:22:42 +0000 |
commit | 64be980319e9e7c8f132bfda349e8ebaefb780f1 (patch) | |
tree | a1d153fd6328179e1ca37df10159a88cb239e3e2 /board/homestar | |
parent | 0a9949d1b059698247bde17a34c9c8caace4d48d (diff) | |
download | chrome-ec-64be980319e9e7c8f132bfda349e8ebaefb780f1.tar.gz |
ln9310: Stronger workaround to prevent SCOUT overvoltage at startup
This improved workaround (compared to the previous 2520279) moves
the CFLY precharge step out of the ln9310's internal startup
sequence and implements it using I2C commands sent by the EC just before
the I2C command that triggers the ln9310 startup. The workaround
additionally modifies the ln9310's internal startup sequence to use
the precharged CFLY capacitors as decoupling of an internal node
during the startup sequence which should help prevent an OV glitch
from appearing on the LN9310 output even if the internal level
shifter on SW1 glitches and pulls up on the C1PA/B nodes.
BRANCH=Trogdor
BUG=b:185308433
TEST=Should not break the current boot flow, i.e. power-up and
power-down (using long-press of the power button) should function
similar to before this change. Testing the efficacy at preventing
the SCOUT overvoltage glitch must be done with LN9310 parts screened
out at wafer test that have a higher likelihood of exhibiting the
glitch at the SCOUT output. With these parts, startup should be
observed with a scope probe monitoring LN9310 SCOUT for overvoltagee.
Change-Id: I216991f950196225cabbbfdaa2333f1650f7f4fa
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2837531
Reviewed-by: Alexandru M Stan <amstan@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@google.com>
Tested-by: John Crossley <crossley@lionsemi.corp-partner.google.com>
Commit-Queue: John Crossley <crossley@lionsemi.corp-partner.google.com>
Diffstat (limited to 'board/homestar')
-rw-r--r-- | board/homestar/board.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/board/homestar/board.c b/board/homestar/board.c index ce13ee1076..657b547c5f 100644 --- a/board/homestar/board.c +++ b/board/homestar/board.c @@ -439,6 +439,7 @@ DECLARE_HOOK(HOOK_CHIPSET_RESUME, board_chipset_resume, HOOK_PRIO_DEFAULT); void board_set_switchcap_power(int enable) { gpio_set_level(GPIO_SWITCHCAP_ON_L, !enable); + ln9310_software_enable(enable); } int board_is_switchcap_enabled(void) |