diff options
author | Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com> | 2023-09-15 08:47:59 +0530 |
---|---|---|
committer | Michal Simek <michal.simek@amd.com> | 2023-09-21 13:20:12 +0200 |
commit | a3ade3dae4d93f9b5282ddb4885d69161729ec6d (patch) | |
tree | 1a33c6dff33ad0fbb4a6785acfce5208244db493 | |
parent | 638189ddeaa5dccee9466bc772fa5655218f530b (diff) |
spi: zynqmp_qspi: Workaround for small data cache issue
Cache related issues are seen with small sized data reads.
Due to this, proper data is not read. Also some times sf probe
fails randomly. To workaround this issue, invalidate dcache after read DMA
is triggered.
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20230915031759.28889-3-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
-rw-r--r-- | drivers/spi/zynqmp_gqspi.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/spi/zynqmp_gqspi.c b/drivers/spi/zynqmp_gqspi.c index a506d15227..ec59ef5804 100644 --- a/drivers/spi/zynqmp_gqspi.c +++ b/drivers/spi/zynqmp_gqspi.c @@ -707,6 +707,8 @@ static int zynqmp_qspi_start_dma(struct zynqmp_qspi_priv *priv, return -ETIMEDOUT; } + invalidate_dcache_range(addr, addr + size); + writel(GQSPI_DMA_DST_I_STS_DONE, &dma_regs->dmaisr); debug("buf:0x%lx, rxbuf:0x%lx, *buf:0x%x len: 0x%x\n", |