diff options
author | Vic Yang <victoryang@chromium.org> | 2013-06-21 15:16:34 +0800 |
---|---|---|
committer | ChromeBot <chrome-bot@google.com> | 2013-06-22 22:30:04 -0700 |
commit | 843587252350330e33c143a7485cfbc184654921 (patch) | |
tree | 744756a3bc7281e98014e9fc3cb8f562606e81dd | |
parent | f73c6d8ec7ec38957ec03a74a6d99161799138a4 (diff) | |
download | chrome-ec-843587252350330e33c143a7485cfbc184654921.tar.gz |
Clear pending interrupt on disabling TSU6721 interrupt
If we disable TSU6721 interrupt without clearing pending interrupt, we
get bogus interrupt after. Let's clear it.
BUG=chrome-os-partner:20336
TEST=Log interrupt. Check there's none after disabling interrupt.
BRANCH=Spring
Original-Change-Id: Ic8e5bcdcea894cccfbdf4b7d9afd43084b0c3309
Signed-off-by: Vic Yang <victoryang@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/59534
Reviewed-by: Randall Spangler <rspangler@chromium.org>
(cherry picked from commit 0412f17aaf20887fc6ec2598f269841e03b760e4)
Change-Id: I18ba0e4bbfd81e59d30b2d5723f8859e42acadaa
Signed-off-by: Vic Yang <victoryang@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/59665
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
-rw-r--r-- | common/tsu6721.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/common/tsu6721.c b/common/tsu6721.c index ae22201628..6c45f8799c 100644 --- a/common/tsu6721.c +++ b/common/tsu6721.c @@ -63,7 +63,11 @@ int tsu6721_enable_interrupts(void) int tsu6721_disable_interrupts(void) { int ctrl = tsu6721_read(TSU6721_REG_CONTROL); - return tsu6721_write(TSU6721_REG_CONTROL, ctrl | 0x1); + int rv; + + rv = tsu6721_write(TSU6721_REG_CONTROL, ctrl | 0x1); + tsu6721_get_interrupts(); + return rv; } int tsu6721_set_interrupt_mask(uint16_t mask) |