From: Ashok Reddy Soma <ashok.reddy.s...@amd.com>

Before DMA read, ideally cache should be invalidated, so that data from
memory will be updated to cache after DMA is completed. But
flush_dcache_range is being used which is incorrect. Change
flush_dcache_range to invalidate_dcache_range.

Signed-off-by: Ashok Reddy Soma <ashok.reddy.s...@amd.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbar...@amd.com>
---
 drivers/spi/zynqmp_gqspi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/spi/zynqmp_gqspi.c b/drivers/spi/zynqmp_gqspi.c
index c4aee279aa..a506d15227 100644
--- a/drivers/spi/zynqmp_gqspi.c
+++ b/drivers/spi/zynqmp_gqspi.c
@@ -690,7 +690,7 @@ static int zynqmp_qspi_start_dma(struct zynqmp_qspi_priv 
*priv,
                writel(GQSPI_DMA_DST_I_STS_MASK, &dma_regs->dmaier);
                addr = (unsigned long)buf;
                size = roundup(priv->len, GQSPI_DMA_ALIGN);
-               flush_dcache_range(addr, addr + size);
+               invalidate_dcache_range(addr, addr + size);
 
                while (priv->len) {
                        zynqmp_qspi_calc_exp(priv, &gen_fifo_cmd);
-- 
2.17.1

Reply via email to