mbox series

[v2,0/6] dmaengine: pl330: Updates and logical changes for peripheral usecases

Message ID 20230512141445.2026660-1-joychakr@google.com (mailing list archive)
Headers show
Series dmaengine: pl330: Updates and logical changes for peripheral usecases | expand

Message

Joy Chakraborty May 12, 2023, 2:14 p.m. UTC
This patch series makes some initial minor and cosmetic changes:
    -Add variables and logic to handle separate source and destination
    AxSize and AxLen.
    -Use __ffs to calculate AxSize for consistency in the driver
    -Use switch-case in prep_slave_sg() for consistency
    -Change args get_burst_len() to remove redundant "len" and add
    burst_size so that it can be used in multiple places.

to majorly enable addition of 2 logical changes in the last 2 patches:
    -Allow transactions towards memory to use the maximum possible
    bus width (AxSize) during a memory to peripheral dma usage or
    vise-versa.
    -Add logic to copy left over data after executing bursts to
    the peripheral in singles instead of bursts.
---
V1->V2 Changes : Remove Quirk logic and update description texts.
---

Joy Chakraborty (6):
  dmaengine: pl330: Separate SRC and DST burst size and len
  dmaengine: pl330: Use FFS to calculate burst size
  dmaengine: pl330: Change if-else to switch-case for consistency
  dmaengine: pl330: Change unused arg "len" from get_burst_len()
  dmaengine: pl330: Optimize AxSize for peripheral usecases
  dmaengine: pl330: Use dma singles for peripheral _dregs

 drivers/dma/pl330.c | 223 ++++++++++++++++++++++++++++++++++++--------
 1 file changed, 185 insertions(+), 38 deletions(-)