diff options
author | Vignesh Raghavendra <vigneshr@ti.com> | 2020-09-17 20:11:22 +0530 |
---|---|---|
committer | Lokesh Vutla <lokeshvutla@ti.com> | 2020-10-12 08:09:18 +0530 |
commit | 85bdcf03b79bb35b98fce26d8dd064cc1165917a (patch) | |
tree | ed34d60f5f897b101f099d0853770f92ec98c083 /drivers/dma | |
parent | 6d7364016a4da0d8faeb6a2566aed9e0f188ffbe (diff) | |
download | u-boot-85bdcf03b79bb35b98fce26d8dd064cc1165917a.tar.gz |
dma: ti: k3-udma: Reset the channel during release
Reset the channel completely during channel release in order to clear
teardown bit before handing over to next user or jumping to Linux.
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/ti/k3-udma.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c index 57d9fbfabb..94216045cc 100644 --- a/drivers/dma/ti/k3-udma.c +++ b/drivers/dma/ti/k3-udma.c @@ -1134,7 +1134,9 @@ err_free_res: static void udma_free_chan_resources(struct udma_chan *uc) { - /* Some configuration to UDMA-P channel: disable, reset, whatever */ + /* Hard reset UDMA channel */ + udma_stop_hard(uc); + udma_reset_counters(uc); /* Release PSI-L pairing */ udma_navss_psil_unpair(uc->ud, uc->config.src_thread, uc->config.dst_thread); |