In Mediatek SOCs, the uart can support DMA function. Base on DMA engine formwork, we add the DMA code to support uart. And put the code under drivers/dma/mediatek. This series contains document bindings, Kconfig to control the function enable or not, device tree including interrupt and dma device node, the code of UART DMA Changes compared to v10 -modify DMA tx status function -modify 8250_mtk for DMA rx -add notes to binding Document. Changes compared to v9 -rename dt-bindings file -remove direction from device_config -simplified code Changes compared to v8 -revise missing items Changes compared to v7: -modify apdma uart tx Changes compared to v6: -Correct spelling Changes compared to v5: -move 'requst irqs' to alloc channel -remove tasklet. Changes compared to v4: -modify Kconfig depends on. Changes compared to v3: -fix CONFIG_PM, will cause build fail Changes compared to v2: -remove unimportant parameters -instead of cookie, use APIs of virtual channel. -use of_dma_xlate_by_chan_id. Changes compared to v1: -mian revised file, 8250_mtk_dma.c --parameters renamed for standard --remove atomic operation Long Cheng (4): dmaengine: 8250_mtk_dma: add MediaTek uart DMA support arm: dts: mt2712: add uart APDMA to device tree dt-bindings: dma: uart: rename binding serial: 8250-mtk: modify uart DMA rx .../devicetree/bindings/dma/8250_mtk_dma.txt | 33 - .../devicetree/bindings/dma/mtk-uart-apdma.txt | 55 ++ arch/arm64/boot/dts/mediatek/mt2712e.dtsi | 51 ++ drivers/dma/mediatek/Kconfig | 11 + drivers/dma/mediatek/Makefile | 1 + drivers/dma/mediatek/mtk-uart-apdma.c | 660 ++++++++++++++++++++ drivers/tty/serial/8250/8250_mtk.c | 53 +- 7 files changed, 801 insertions(+), 63 deletions(-) delete mode 100644 Documentation/devicetree/bindings/dma/8250_mtk_dma.txt create mode 100644 Documentation/devicetree/bindings/dma/mtk-uart-apdma.txt create mode 100644 drivers/dma/mediatek/mtk-uart-apdma.c -- 1.7.9.5