diff options
author | Edward Hill <ecgh@chromium.org> | 2018-12-21 15:51:14 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-12-23 14:46:13 -0800 |
commit | a9ea68a50772ea44195c431fb71e5a7b731e4b38 (patch) | |
tree | f4d01751ae88e5720f7a24fdd1b594815b416430 | |
parent | eabd415de887b2a2a75e73bf4d6df49ded03c917 (diff) | |
download | chrome-ec-a9ea68a50772ea44195c431fb71e5a7b731e4b38.tar.gz |
driver/led/lm3630a: Wait 1ms for I2C to be ready
LM3630A will NAK I2C transactions for 1ms (tWAIT in the datasheet)
after HWEN asserted or after SW reset. Add msleep(1) to start of
lm3630a_poweron().
BUG=b:119849255
BRANCH=grunt
TEST=keyboard backlight still works after resume from S3:
suspend_stress_test -c 1 --suspend_min=15 --suspend_max=20
ectool pwmsetkblight 0
ectool pwmsetkblight 100
Change-Id: Ie98e8759c85db6a6f2d8beeee834cabbecfec2c0
Signed-off-by: Edward Hill <ecgh@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1389060
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
-rw-r--r-- | driver/led/lm3630a.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/driver/led/lm3630a.c b/driver/led/lm3630a.c index 8eb12bb8d3..5515771ffa 100644 --- a/driver/led/lm3630a.c +++ b/driver/led/lm3630a.c @@ -39,6 +39,12 @@ int lm3630a_poweron(void) { int ret = 0; + /* + * LM3630A will NAK I2C transactions for 1ms (tWAIT in the datasheet) + * after HWEN asserted or after SW reset. + */ + msleep(1); + /* Sample PWM every 8 periods. */ ret |= lm3630a_write(LM3630A_REG_FILTER_STRENGTH, 0x3); |