soc: ti: k3-navss-ringacc: fix k3_nav_ringacc_ring_reset_dma
authorVignesh Raghavendra <vigneshr@ti.com>
Fri, 30 Aug 2019 05:32:24 +0000 (11:02 +0530)
committerTom Rini <trini@konsulko.com>
Fri, 13 Sep 2019 15:56:08 +0000 (11:56 -0400)
In case dma_ring_reset_quirk is not set the k3_ringacc_ring_reset_dma will
just exit without ring reset. Fix it, by adding ring reset call in case
dma_ring_reset_quirk is not.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
drivers/soc/ti/k3-navss-ringacc.c

index fcb84f7aa49b96c0fd21fc90f65d77f58ac3ef7f..64ebc0ba0030b06205bb1e34188a58529a583bd9 100644 (file)
@@ -366,8 +366,10 @@ void k3_nav_ringacc_ring_reset_dma(struct k3_nav_ring *ring, u32 occ)
        if (!ring || !(ring->flags & KNAV_RING_FLAG_BUSY))
                return;
 
-       if (!ring->parent->dma_ring_reset_quirk)
+       if (!ring->parent->dma_ring_reset_quirk) {
+               k3_nav_ringacc_ring_reset(ring);
                return;
+       }
 
        if (!occ)
                occ = ringacc_readl(&ring->rt->occ);