Hi, Changes since v1: - Convert edma platform device registration to use platform_device_register_full - Moved the PM callback also to the dmaengine driver - missed in v1 - Commit message added to: ARM/dmaengine: edma: Remove limitation on the number of eDMA controllers - New patch which reads the flag for the channel mapping support in one place Cover letter: with this series the edma two driver setup will be changed to have only one driver to support eDMA3. The legacy edma interface will be removed and eDMA can only be used via dmaengine API from this point on. In order to do the merge the following improvements has been done: - One driver instance per eDMA: - Any number of eDMA instances are supported (both legacy and DT boot) - Not relying on global variables, arrays, etc - Code simplification and optimizations in several places This change will also help us to do bigger changes in the eDMA driver since, since now we have only one driver to work with. The series has been tested on: da850-evm (OMAP-L138) - with legacy and DT boot (both eDMA0 and eDMA1 is enabled) - In code swapping the eDMA instances in legacy mode to make sure the second instance is handled correctly. am335x-evmsk - DT boot I think this series could go via the dmaengine tree. Changes are trivial under arch/arm/ Regards, Peter --- Peter Ujfalusi (23): ARM: common: edma: Fix channel parameter for irq callbacks ARM: common: edma: Remove unused functions dmaengine: edma: Simplify and optimize the edma_execute path ARM: davinci/common: Convert edma driver to handle one eDMA instance per driver ARM/dmaengine: edma: Move of_dma_controller_register to the dmaengine driver ARM: common: edma: Internal API to use pointer to 'struct edma' ARM/dmaengine: edma: Public API to use private struct pointer ARM/dmaengine: edma: Remove limitation on the number of eDMA controllers ARM: davinci: Use platform_device_register_full() to create pdev for eDMA ARM: davinci: Add set dma_mask to eDMA devices ARM/dmaengine: edma: Merge the two drivers under drivers/dmaengine dmaengine: edma: Allocate memory dynamically for bitmaps and structures dmaengine: edma: Parameter alignment and long line fixes dmaengine: edma: Use devm_kcalloc when possible dmaengine: edma: Cleanup regarding the use of dev around the code dmaengine: edma: Use dev_dbg instead pr_debug dmaengine: edma: Use the edma_write_slot instead open coded memcpy_toio dmaengine: edma: Print warning when linking slots from different eDMA dmaengine: edma: Consolidate the comments for functions dmaengine: edma: Simplify the interrupt handling dmaengine: edma: Move the pending error check into helper function dmaengine: edma: Simplify and optimize ccerr interrupt handler dmaengine: edma: Read channel mapping support only once from HW arch/arm/Kconfig | 1 - arch/arm/common/Kconfig | 3 - arch/arm/common/Makefile | 1 - arch/arm/common/edma.c | 1876 --------------------------------- arch/arm/mach-davinci/devices-da8xx.c | 122 +-- arch/arm/mach-davinci/dm355.c | 40 +- arch/arm/mach-davinci/dm365.c | 25 +- arch/arm/mach-davinci/dm644x.c | 40 +- arch/arm/mach-davinci/dm646x.c | 44 +- arch/arm/mach-omap2/Kconfig | 1 - drivers/dma/Kconfig | 1 - drivers/dma/edma.c | 1560 ++++++++++++++++++++++++--- include/linux/platform_data/edma.h | 101 -- 13 files changed, 1516 insertions(+), 2299 deletions(-) delete mode 100644 arch/arm/common/edma.c -- 2.5.1 -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html