* Hisilicon K3 DMA controller See dma.txt first Required properties: - compatible: Should be "hisilicon,k3-dma-1.0" - reg: Should contain DMA registers location and length. - interrupts: Should contain one interrupt shared by all channel - #dma-cells: see dma.txt, should be 1, para number - dma-channels: physical channels supported - dma-requests: virtual channels supported, each virtual channel have specific request line - clocks: clock required Example: Controller: dma0: dma@fcd02000 { compatible = "hisilicon,k3-dma-1.0"; reg = <0xfcd02000 0x1000>; #dma-cells = <1>; dma-channels = <16>; dma-requests = <27>; interrupts = <0 12 4>; clocks = <&pclk>; status = "disable"; }; Client: Use specific request line passing from dmax For example, i2c0 read channel request line is 18, while write channel use 19 i2c0: i2c@fcb08000 { compatible = "snps,designware-i2c"; dmas = <&dma0 18 /* read channel */ &dma0 19>; /* write channel */ dma-names = "rx", "tx"; }; i2c1: i2c@fcb09000 { compatible = "snps,designware-i2c"; dmas = <&dma0 20 /* read channel */ &dma0 21>; /* write channel */ dma-names = "rx", "tx"; }; |