linux/drivers/dma/sh
Biju Das 68ed0d88d1 dmaengine: sh: rz-dmac: Fix rz_dmac_terminate_all()
commit 747213b08a upstream.

After audio full duplex testing, playing the recorded file contains a few
playback frames from the previous time. The rz_dmac_terminate_all() does
not reset all the hardware descriptors queued previously, leading to the
wrong descriptor being picked up during the next DMA transfer. Fix the
above issue by resetting all the descriptor headers for a channel in
rz_dmac_terminate_all() as rz_dmac_lmdesc_recycle() points to the proper
descriptor header filled by the rz_dmac_prepare_descs_for_slave_sg().

Cc: stable@kernel.org
Fixes: 5000d37042 ("dmaengine: sh: Add DMAC driver for RZ/G2L SoC")
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Tested-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Link: https://patch.msgid.link/20251113195052.564338-1-biju.das.jz@bp.renesas.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2026-02-06 16:41:50 +01:00
..
Kconfig dmaengine: sh: Add DMAC driver for RZ/G2L SoC 2021-08-29 19:14:19 +05:30
Makefile dmaengine: sh: Add DMAC driver for RZ/G2L SoC 2021-08-29 19:14:19 +05:30
rcar-dmac.c dmaengine: sh: rcar-dmac: Check for error num after dma_set_max_seg_size 2022-02-23 12:03:21 +01:00
rz-dmac.c dmaengine: sh: rz-dmac: Fix rz_dmac_terminate_all() 2026-02-06 16:41:50 +01:00
shdma-arm.h dmaengine: use SPDX identifier for Renesas drivers 2018-08-29 21:58:49 +05:30
shdma-base.c dmaengine: sh: setup_xref error handling 2025-12-07 06:09:20 +09:00
shdma.h dmaengine: shdma: increase size of 'dev_id' 2024-03-01 13:21:43 +01:00
shdmac.c dmaengine: sh: setup_xref error handling 2025-12-07 06:09:20 +09:00
usb-dmac.c dmaengine: usb-dmac: make usb_dmac_get_current_residue unsigned 2021-08-02 12:16:47 +05:30