kernel_samsung_a53x/drivers/dma
Alain Volmat 8ea0cc98cd dmaengine: stm32-mdma: correct desc prep when channel running
commit 03f25d53b145bc2f7ccc82fc04e4482ed734f524 upstream.

In case of the prep descriptor while the channel is already running, the
CCR register value stored into the channel could already have its EN bit
set.  This would lead to a bad transfer since, at start transfer time,
enabling the channel while other registers aren't yet properly set.
To avoid this, ensure to mask the CCR_EN bit when storing the ccr value
into the mdma channel structure.

Fixes: a4ffb13c8946 ("dmaengine: Add STM32 MDMA driver")
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Cc: stable@vger.kernel.org
Tested-by: Alain Volmat <alain.volmat@foss.st.com>
Link: https://lore.kernel.org/r/20231009082450.452877-1-amelie.delaunay@foss.st.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-18 11:43:25 +01:00
..
bestcomm Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw-axi-dmac Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw-edma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-dpaa2-qdma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hsu Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idxd Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ioat Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ipu Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mediatek dmaengine: mediatek: Fix deadlock caused by synchronize_irq() 2024-11-08 11:25:53 +01:00
ppc4xx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sf-pdma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sh Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ti dmaengine: ti: edma: handle irq_of_parse_and_map() errors 2024-11-18 11:43:05 +01:00
xilinx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
acpi-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
altera-msgdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amba-pl08x.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_hdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_hdmac_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm-sba-raid.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm2835-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318_lli.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-axi-dmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-jz4780.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmaengine.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmaengine.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmatest.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ep93xx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma-common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma-common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-qdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl_raid.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl_raid.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsldma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsldma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hisi_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idma64.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idma64.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
img-mdc-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
imx-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
imx-sdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iop-adma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iop-adma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
k3dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
lpc18xx-dmamux.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcf-edma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
milbeaut-hdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
milbeaut-xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mmp_pdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mmp_tdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
moxart-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mpc512x_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor_v2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mxs-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nbpfaxi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
of-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
owl-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pch_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pl330.c dma: pl330: Make IRQ handler non-threaded on RT 2024-11-17 17:44:35 +01:00
plx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pxa_dma.c dmaengine: pxa_dma: Remove an erroneous BUG_ON() in pxad_free_desc() 2024-11-18 11:43:05 +01:00
s3c24xx-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sa11x0-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
samsung-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sirf-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sprd-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st_fdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st_fdma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ste_dma40.c dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe 2024-11-18 10:58:46 +01:00
ste_dma40_ll.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ste_dma40_ll.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-dmamux.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-mdma.c dmaengine: stm32-mdma: correct desc prep when channel running 2024-11-18 11:43:25 +01:00
sun4i-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sun6i-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tegra20-apb-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tegra210-adma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
timb_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
TODO Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
txx9dmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
txx9dmac.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
uniphier-mdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
uniphier-xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
virt-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
virt-dma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xgene-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
zx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00