This patchset introduces support for MediaTek Command-Queue DMA controller in dt-bindings, and simplifies the controller by removing redundant structures. Main changes to the initial version: - remove redundant queue structure in mtk_cqdma_pchan - remove redundant completion management - remove redundant tasklet management - fix wrong residue assignment in mtk_cqdma_tx_status - fix typos The result of dmatest shown below: dmatest: dma0chan0-copy2: summary 5000 tests, 0 failures 3500 iops 28037 KB/s dmatest: dma0chan0-copy4: summary 5000 tests, 0 failures 3494 iops 27612 KB/s dmatest: dma0chan0-copy1: summary 5000 tests, 0 failures 3491 iops 27749 KB/s dmatest: dma0chan0-copy7: summary 5000 tests, 0 failures 3673 iops 29092 KB/s dmatest: dma0chan0-copy6: summary 5000 tests, 0 failures 3763 iops 30237 KB/s dmatest: dma0chan0-copy0: summary 5000 tests, 0 failures 3730 iops 30131 KB/s dmatest: dma0chan0-copy3: summary 5000 tests, 0 failures 3717 iops 29569 KB/s dmatest: dma0chan0-copy5: summary 5000 tests, 0 failures 3699 iops 29302 KB/s Shun-Chih Yu (2): dt-bindings: dmaengine: Add MediaTek Command-Queue DMA controller bindings dmaengine: mediatek-cqdma: remove redundant queue structure .../devicetree/bindings/dma/mtk-cqdma.txt | 31 ++ drivers/dma/mediatek/mtk-cqdma.c | 399 +++++--------------- 2 files changed, 129 insertions(+), 301 deletions(-) create mode 100644 Documentation/devicetree/bindings/dma/mtk-cqdma.txt