| From 91e9170242290a678083a53fd88510b1833336bf Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 14 Sep 2021 23:20:58 +0200 |
| Subject: MIPS: lantiq: dma: add small delay after reset |
| |
| From: Aleksander Jan Bajkowski <olek2@wp.pl> |
| |
| [ Upstream commit c12aa581f6d5e80c3c3675ab26a52c2b3b62f76e ] |
| |
| Reading the DMA registers immediately after the reset causes |
| Data Bus Error. Adding a small delay fixes this issue. |
| |
| Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/mips/lantiq/xway/dma.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| diff --git a/arch/mips/lantiq/xway/dma.c b/arch/mips/lantiq/xway/dma.c |
| index aeb1b989cd4ee..24c6267f78698 100644 |
| --- a/arch/mips/lantiq/xway/dma.c |
| +++ b/arch/mips/lantiq/xway/dma.c |
| @@ -11,6 +11,7 @@ |
| #include <linux/export.h> |
| #include <linux/spinlock.h> |
| #include <linux/clk.h> |
| +#include <linux/delay.h> |
| #include <linux/err.h> |
| |
| #include <lantiq_soc.h> |
| @@ -221,6 +222,8 @@ ltq_dma_init(struct platform_device *pdev) |
| clk_enable(clk); |
| ltq_dma_w32_mask(0, DMA_RESET, LTQ_DMA_CTRL); |
| |
| + usleep_range(1, 10); |
| + |
| /* disable all interrupts */ |
| ltq_dma_w32(0, LTQ_DMA_IRNEN); |
| |
| -- |
| 2.33.0 |
| |