[PATCH] ASoC: qcom: lpass-platform: Reset irq clear reg post handling interrupts
Srinivasa Rao Mandadapu
srivasam at codeaurora.org
Fri Sep 3 12:01:53 CEST 2021
Update interrupt clear register with reset value after addressing
all interrupts. This is to fix playback or capture hanging issue in
simultaneous playback and capture usecase.
Signed-off-by: Srinivasa Rao Mandadapu <srivasam at codeaurora.org>
---
sound/soc/qcom/lpass-platform.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c
index f9df76d37858..1a0a4b0b1a03 100644
--- a/sound/soc/qcom/lpass-platform.c
+++ b/sound/soc/qcom/lpass-platform.c
@@ -749,6 +749,12 @@ static irqreturn_t lpass_platform_lpaif_irq(int irq, void *data)
}
}
+ rv = regmap_write(drvdata->lpaif_map, LPAIF_IRQCLEAR_REG(v, LPAIF_IRQ_PORT_HOST), 0x0);
+ if (rv) {
+ pr_err("error writing to irqstat reg: %d\n", rv);
+ return IRQ_NONE;
+ }
+
return IRQ_HANDLED;
}
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.
More information about the Alsa-devel
mailing list