1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- From 1dccaa4c1e99cd8bd27684a2c87ec806d426c088 Mon Sep 17 00:00:00 2001
- From: Eugen Hristev <[email protected]>
- 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 <[email protected]>
- Reviewed-by: Tudor Ambarus <[email protected]>
- Link: https://lore.kernel.org/r/[email protected]
- Signed-off-by: Vinod Koul <[email protected]>
- ---
- 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)
|