mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 23:42:43 +00:00
05ed7dc50d
Patches automatically rebased. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
51 lines
1.9 KiB
Diff
51 lines
1.9 KiB
Diff
From 1dccaa4c1e99cd8bd27684a2c87ec806d426c088 Mon Sep 17 00:00:00 2001
|
|
From: Eugen Hristev <eugen.hristev@microchip.com>
|
|
Date: Fri, 16 Oct 2020 12:37:25 +0300
|
|
Subject: [PATCH 132/247] dmaengine: at_xdmac: adapt perid for mem2mem
|
|
operations
|
|
|
|
The PERID in the CC register for mem2mem operations must match an unused
|
|
PERID.
|
|
The PERID field is 7 bits, but the selected value is 0x3f.
|
|
On later products we can have more reserved PERIDs for actual peripherals,
|
|
thus this needs to be increased to maximum size.
|
|
Changing the value to 0x7f, which is the maximum for 7 bits field.
|
|
|
|
Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
|
|
Reviewed-by: Tudor Ambarus <tudor.ambarus@microchip.com>
|
|
Link: https://lore.kernel.org/r/20201016093725.289880-1-eugen.hristev@microchip.com
|
|
Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
|
---
|
|
drivers/dma/at_xdmac.c | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
--- a/drivers/dma/at_xdmac.c
|
|
+++ b/drivers/dma/at_xdmac.c
|
|
@@ -865,7 +865,7 @@ at_xdmac_interleaved_queue_desc(struct d
|
|
* match the one of another channel. If not, it could lead to spurious
|
|
* flag status.
|
|
*/
|
|
- u32 chan_cc = AT_XDMAC_CC_PERID(0x3f)
|
|
+ u32 chan_cc = AT_XDMAC_CC_PERID(0x7f)
|
|
| AT_XDMAC_CC_DIF(0)
|
|
| AT_XDMAC_CC_SIF(0)
|
|
| AT_XDMAC_CC_MBSIZE_SIXTEEN
|
|
@@ -1047,7 +1047,7 @@ at_xdmac_prep_dma_memcpy(struct dma_chan
|
|
* match the one of another channel. If not, it could lead to spurious
|
|
* flag status.
|
|
*/
|
|
- u32 chan_cc = AT_XDMAC_CC_PERID(0x3f)
|
|
+ u32 chan_cc = AT_XDMAC_CC_PERID(0x7f)
|
|
| AT_XDMAC_CC_DAM_INCREMENTED_AM
|
|
| AT_XDMAC_CC_SAM_INCREMENTED_AM
|
|
| AT_XDMAC_CC_DIF(0)
|
|
@@ -1153,7 +1153,7 @@ static struct at_xdmac_desc *at_xdmac_me
|
|
* match the one of another channel. If not, it could lead to spurious
|
|
* flag status.
|
|
*/
|
|
- u32 chan_cc = AT_XDMAC_CC_PERID(0x3f)
|
|
+ u32 chan_cc = AT_XDMAC_CC_PERID(0x7f)
|
|
| AT_XDMAC_CC_DAM_UBS_AM
|
|
| AT_XDMAC_CC_SAM_INCREMENTED_AM
|
|
| AT_XDMAC_CC_DIF(0)
|