dmaengine: imx-sdma: only restart cyclic channel when enabled
authorSascha Hauer <s.hauer@pengutronix.de>
Fri, 17 Jun 2022 11:50:42 +0000 (13:50 +0200)
committerVinod Koul <vkoul@kernel.org>
Fri, 1 Jul 2022 16:37:59 +0000 (22:07 +0530)
commit09f7b80fac3e588b282ad26aabd7336d7d293efd
tree777979a4e72fa66350382748f76c57c148fb2ae6
parent49db68d45bdcad06e28a420d5d911e4178389666
dmaengine: imx-sdma: only restart cyclic channel when enabled

An interrupt for a channel might be pending even after struct
dma_device::device_terminate_all has been called. In that case the
recently introduced warning message "restart cyclic channel..." triggers
and the channel will be restarted. This is not desired as the channel
has just been stopped. Only restart the channel when we still have a
descriptor set for it (which will be set to NULL in
sdma_terminate_all()).

Fixes: 5b215c28b9235 ("dmaengine: imx-sdma: restart cyclic channel if needed")
Cc: stable@vger.kernel.org
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Link: https://lore.kernel.org/r/20220617115042.4004062-1-s.hauer@pengutronix.de
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/imx-sdma.c