diff options
author | Spade Lee <spadelee@google.com> | 2023-11-09 16:43:37 +0000 |
---|---|---|
committer | Spade Lee <spadelee@google.com> | 2023-11-15 03:23:29 +0000 |
commit | 6ef0ba1b4b28b8c89cfbee34b9446d0a90dcc3a0 (patch) | |
tree | 8e6b764c603c6a400c10aef8cb8cbde413547e63 | |
parent | d70c3a9aa89b3849baac35a2b5d3ba13753ca5a1 (diff) | |
download | bms-6ef0ba1b4b28b8c89cfbee34b9446d0a90dcc3a0.tar.gz |
max1720x_battery: possible race on start in max1720x_fg_irq_thread_fn()
bypass init completion check if call with irq = -1 in
max1720x_fg_irq_thread_fn()
Bug: 309472665
Change-Id: I032cb2acc098d7cdeafba85bb3460b9626e2a21c
Signed-off-by: Spade Lee <spadelee@google.com>
(cherry picked from commit 0bb14d997e241e1bd4c06c250a7831435f0afb76)
-rw-r--r-- | max1720x_battery.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/max1720x_battery.c b/max1720x_battery.c index 4447b19..6c86d12 100644 --- a/max1720x_battery.c +++ b/max1720x_battery.c @@ -2877,7 +2877,7 @@ static irqreturn_t max1720x_fg_irq_thread_fn(int irq, void *obj) return IRQ_NONE; pm_runtime_get_sync(chip->dev); - if (!chip->init_complete || !chip->resume_complete) { + if (irq != -1 && (!chip->init_complete || !chip->resume_complete)) { if (chip->init_complete && !chip->irq_disabled) { chip->irq_disabled = true; disable_irq_nosync(chip->primary->irq); |