xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/dma/zxdma.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun* ZTE ZX296702 DMA controller
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunRequired properties:
4*4882a593Smuzhiyun- compatible: Should be "zte,zx296702-dma"
5*4882a593Smuzhiyun- reg: Should contain DMA registers location and length.
6*4882a593Smuzhiyun- interrupts: Should contain one interrupt shared by all channel
7*4882a593Smuzhiyun- #dma-cells: see dma.txt, should be 1, para number
8*4882a593Smuzhiyun- dma-channels: physical channels supported
9*4882a593Smuzhiyun- dma-requests: virtual channels supported, each virtual channel
10*4882a593Smuzhiyun		have specific request line
11*4882a593Smuzhiyun- clocks: clock required
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunExample:
14*4882a593Smuzhiyun
15*4882a593SmuzhiyunController:
16*4882a593Smuzhiyun	dma: dma-controller@09c00000{
17*4882a593Smuzhiyun		compatible = "zte,zx296702-dma";
18*4882a593Smuzhiyun		reg = <0x09c00000 0x1000>;
19*4882a593Smuzhiyun		clocks = <&topclk ZX296702_DMA_ACLK>;
20*4882a593Smuzhiyun		interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
21*4882a593Smuzhiyun		#dma-cells = <1>;
22*4882a593Smuzhiyun		dma-channels = <24>;
23*4882a593Smuzhiyun		dma-requests = <24>;
24*4882a593Smuzhiyun	};
25*4882a593Smuzhiyun
26*4882a593SmuzhiyunClient:
27*4882a593SmuzhiyunUse specific request line passing from dmax
28*4882a593SmuzhiyunFor example, spdif0 tx channel request line is 4
29*4882a593Smuzhiyun	spdif0: spdif0@b004000 {
30*4882a593Smuzhiyun		#sound-dai-cells = <0>;
31*4882a593Smuzhiyun		compatible = "zte,zx296702-spdif";
32*4882a593Smuzhiyun		reg = <0x0b004000 0x1000>;
33*4882a593Smuzhiyun		clocks = <&lsp0clk ZX296702_SPDIF0_DIV>;
34*4882a593Smuzhiyun		clock-names = "tx";
35*4882a593Smuzhiyun		interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
36*4882a593Smuzhiyun		dmas = <&dma 4>;
37*4882a593Smuzhiyun		dma-names = "tx";
38*4882a593Smuzhiyun	}
39