162306a36Sopenharmony_ci* Hisilicon K3 DMA controller 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciSee dma.txt first 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciRequired properties: 662306a36Sopenharmony_ci- compatible: Must be one of 762306a36Sopenharmony_ci- "hisilicon,k3-dma-1.0" 862306a36Sopenharmony_ci- "hisilicon,hisi-pcm-asp-dma-1.0" 962306a36Sopenharmony_ci- reg: Should contain DMA registers location and length. 1062306a36Sopenharmony_ci- interrupts: Should contain one interrupt shared by all channel 1162306a36Sopenharmony_ci- #dma-cells: see dma.txt, should be 1, para number 1262306a36Sopenharmony_ci- dma-channels: physical channels supported 1362306a36Sopenharmony_ci- dma-requests: virtual channels supported, each virtual channel 1462306a36Sopenharmony_ci have specific request line 1562306a36Sopenharmony_ci- clocks: clock required 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciExample: 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ciController: 2062306a36Sopenharmony_ci dma0: dma@fcd02000 { 2162306a36Sopenharmony_ci compatible = "hisilicon,k3-dma-1.0"; 2262306a36Sopenharmony_ci reg = <0xfcd02000 0x1000>; 2362306a36Sopenharmony_ci #dma-cells = <1>; 2462306a36Sopenharmony_ci dma-channels = <16>; 2562306a36Sopenharmony_ci dma-requests = <27>; 2662306a36Sopenharmony_ci interrupts = <0 12 4>; 2762306a36Sopenharmony_ci clocks = <&pclk>; 2862306a36Sopenharmony_ci }; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ciClient: 3162306a36Sopenharmony_ciUse specific request line passing from dmax 3262306a36Sopenharmony_ciFor example, i2c0 read channel request line is 18, while write channel use 19 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci i2c0: i2c@fcb08000 { 3562306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 3662306a36Sopenharmony_ci dmas = <&dma0 18 /* read channel */ 3762306a36Sopenharmony_ci &dma0 19>; /* write channel */ 3862306a36Sopenharmony_ci dma-names = "rx", "tx"; 3962306a36Sopenharmony_ci }; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci i2c1: i2c@fcb09000 { 4262306a36Sopenharmony_ci compatible = "snps,designware-i2c"; 4362306a36Sopenharmony_ci dmas = <&dma0 20 /* read channel */ 4462306a36Sopenharmony_ci &dma0 21>; /* write channel */ 4562306a36Sopenharmony_ci dma-names = "rx", "tx"; 4662306a36Sopenharmony_ci }; 4762306a36Sopenharmony_ci 48