dmaengine: imx-sdma: remove BD_INTR for channel0
It is possible for an irq triggered by channel0 to be received later after clks are disabled once firmware loaded during sdma probe. If that happens then clearing them by writing to SDMA_H_INTR won't work and the kernel will hang processing infinite interrupts. Actually, don't need interrupt triggered on channel0 since it's pollling SDMA_H_STATSTOP to know channel0 done rather than interrupt in current code, just clear BD_INTR to disable channel0 interrupt to avoid the above case. This issue was brought by commit 1d069bfa ("dmaengine: imx-sdma: ack channel 0 IRQ in the interrupt handler") which didn't take care the above case. Fixes: 1d069bfa ("dmaengine: imx-sdma: ack channel 0 IRQ in the interrupt handler") Cc: stable@vger.kernel.org #5.0+ Signed-off-by: NRobin Gong <yibin.gong@nxp.com> Reported-by: NSven Van Asbroeck <thesven73@gmail.com> Tested-by: NSven Van Asbroeck <thesven73@gmail.com> Reviewed-by: NMichael Olbrich <m.olbrich@pengutronix.de> Signed-off-by: NVinod Koul <vkoul@kernel.org>
Showing
想要评论请 注册 或 登录