Re: [PATCH v10 00/12] dmaengine: edma: add freescale edma v3 support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 07, 2023 at 03:00:17PM -0400, Frank Li wrote:
> This patch series introduces support for the eDMA version 3 from
> Freescale. The eDMA v3 brings alterations in the register layout,
> particularly, the separation of channel control registers into
> different channels. The Transfer Control Descriptor (TCD) layout,
> however, remains identical with only the offset being changed.

@vkoul:
  Do you have chance to check these patches again? I fixed all problem
that you said.
  All audio parts of i.MX8x and i.MX9 was dependent on these patches.

Frank

> 
> The first 11 patches aim at tidying up the existing Freescale
> eDMA code and laying the groundwork for the integration of eDMA v3
> support.
> 
> Patch 1-11:
> These patches primarily focus on cleaning up and refactoring the existing
> fsl_edma driver code. This is to accommodate the upcoming changes and new
> features introduced with the eDMA v3.
> 
> Patch 12:
> This patch introduces support for eDMA v3. In addition, this patch has
> been designed with an eye towards future upgradability, specifically for
> transitioning to eDMA v5. The latter involves a significant upgrade
> where the TCD address would need to support 64 bits.
> 
> Patch 13:
> This patch focuses on the device tree bindings and their modifications
> to properly handle and integrate the changes brought about by eDMA v3
> 
> Change from v9 to v10
> - use HAS_IOMEM
> - move dt-bind before enable v3
> - remove a unused code
> - drop patch3 clean up fsl_edma_irq_exit()
> 
> Change from v8 to v9
> - add dmaengine: fsl-edma: fix build error when arch is s390
>   fix kernel test robot build issue
> 
> Change from v7 to v8
> -dt-bind: add missed part
> 
> clock-names:
> > items:
> >   - const: dma
> > 
> > clocks:
> >   maxItems: 1
> 
> Change from v6 to v7
> -dt-bind: remove "else" branch. 
> 
> Change from v5 to v6
> - dt-bind: rework it by fixed top level constraint.
> 
> Change from v4 to v5
> - dt-bind, add example for imx93 to trigger make dt_binding_check to
> generate the yaml error. fixed dt_binding_check error. 
>   keep compatible string ordered alphabetically.
> 
> Change from v3 to v4.
> - use dma-channel-mask instead of fsl,channel-mask
> - don't use dmamux after v3. only use flags to distinguish the IP
> difference
> - fixed 8qm and imx93 have not CH_MUX register. Previous can work
> because dmamux is 0.
> 
> Change from v2 to v3
> - dt-binding: add interrupt-names
> - dt-binding: add minItems
> - dt-binding: add missed property: fsl,channel-mask
> - rework patch 4, removed edma_version to avoid confuse with hardware
> IP version.
> 
> Change from v1 to v2
> - fixed issue found by make DT_CHECKER_FLAGS=-m dt_binding_check
> - fixed warning found by kernel test robot
> 
> 
> Frank Li (13):
> 1   dmaengine: fsl-edma: fix build error when arch is s390
> 2   dmaengine: fsl-edma: clean up EXPORT_SYMBOL_GPL in fsl-edma-common.c
> 3[dropped]   dmaengine: fsl-edma: clean up fsl_edma_irq_exit()
> 4   dmaengine: fsl-edma: transition from bool fields to bitmask flags in
>     drvdata
> 5   dmaengine: fsl-edma: Remove enum edma_version
> 6   dmaengine: fsl-edma: move common IRQ handler to common.c
> 7   dmaengine: fsl-edma: simply ATTR_DSIZE and ATTR_SSIZE by using ffs()
> 8   dmaengine: fsl-edma: refactor using devm_clk_get_enabled
> 9   dmaengine: fsl-edma: move clearing of register interrupt into
>     setup_irq function
> 10  dmaengine: fsl-edma: refactor chan_name setup and safety
> 11  dmaengine: fsl-edma: move tcd into struct fsl_dma_chan
> 12  dt-bindings: fsl-dma: fsl-edma: add edma3 compatible string
> 13  dmaengine: fsl-edma: integrate v3 support
> 
>  .../devicetree/bindings/dma/fsl,edma.yaml     | 106 +++++-
>  drivers/dma/Kconfig                           |   2 +-
>  drivers/dma/Makefile                          |   6 +-
>  drivers/dma/fsl-edma-common.c                 | 308 +++++++++++------
>  drivers/dma/fsl-edma-common.h                 | 127 +++++--
>  drivers/dma/{fsl-edma.c => fsl-edma-main.c}   | 320 ++++++++++++++----
>  drivers/dma/{mcf-edma.c => mcf-edma-main.c}   |  36 +-
>  7 files changed, 677 insertions(+), 228 deletions(-)
>  rename drivers/dma/{fsl-edma.c => fsl-edma-main.c} (62%)
>  rename drivers/dma/{mcf-edma.c => mcf-edma-main.c} (90%)
> 
> -- 
> 2.34.1
> 



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux