This patch series aims to add DMAC support on RZ/G2L SoC's. It is based on the work done by Chris Brandt for RZ/A DMA driver. v6->v7: * As per the DMA documention vc.lock must be held by caller for vchan_cookie_complete. So added vc.lock for this function. * Added lock for the lists used in rz_dmac_terminate_all. v5->v6: * Added Rb tag from Rob for binding patch * Fixed dma_addr_t and size_t format specifier issue reported by kernel test robot * Started using ARRAY_SIZE macro instead of magic number in rz_dmac_ds_to_val_mapping function. v4->v5: * Passing legacy slave channel configuration parameters using dmaengine_slave_config is prohibited. So started passing this parameters in DT instead, by encoding MID/RID values with channel parameters in the #dma-cells. * Removed Rb tag's of Geert and Rob since there is a modification in binding patch * Added 128 byte slave bus width support * Removed SoC dtsi and Defconfig patch from this series. Will send as separate patch. Ref:- https://lore.kernel.org/linux-renesas-soc/20210719092535.4474-1-biju.das.jz@xxxxxxxxxxxxxx/T/#ma0b261df6d4400882204aaaaa014ddb59c479db4 v3->v4: * Added Rob's Rb tag for binding patch. * Incorporated Vinod and Geert's review comments. v2->v3: * Described clocks and resets in binding file as per Rob's feedback. v1->v2 * Started using virtual DMAC * Added Geert's Rb tag for binding patch. Biju Das (3): dt-bindings: dma: Document RZ/G2L bindings dmaengine: Extend the dma_slave_width for 128 bytes drivers: dma: sh: Add DMAC driver for RZ/G2L SoC .../bindings/dma/renesas,rz-dmac.yaml | 130 +++ drivers/dma/sh/Kconfig | 9 + drivers/dma/sh/Makefile | 1 + drivers/dma/sh/rz-dmac.c | 971 ++++++++++++++++++ include/linux/dmaengine.h | 3 +- 5 files changed, 1113 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/dma/renesas,rz-dmac.yaml create mode 100644 drivers/dma/sh/rz-dmac.c -- 2.17.1