xref: /freebsd/sys/contrib/device-tree/Bindings/dma/sprd-dma.txt (revision dd41de95a84d979615a2ef11df6850622bf6184e)
1* Spreadtrum DMA controller
2
3This binding follows the generic DMA bindings defined in dma.txt.
4
5Required properties:
6- compatible: Should be "sprd,sc9860-dma".
7- reg: Should contain DMA registers location and length.
8- interrupts: Should contain one interrupt shared by all channel.
9- #dma-cells: must be <1>. Used to represent the number of integer
10	cells in the dmas property of client device.
11- #dma-channels : Number of DMA channels supported. Should be 32.
12- clock-names: Should contain the clock of the DMA controller.
13- clocks: Should contain a clock specifier for each entry in clock-names.
14
15Example:
16
17Controller:
18apdma: dma-controller@20100000 {
19	compatible = "sprd,sc9860-dma";
20	reg = <0x20100000 0x4000>;
21	interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
22	#dma-cells = <1>;
23	#dma-channels = <32>;
24	clock-names = "enable";
25	clocks = <&clk_ap_ahb_gates 5>;
26};
27
28
29Client:
30DMA clients connected to the Spreadtrum DMA controller must use the format
31described in the dma.txt file, using a two-cell specifier for each channel.
32The two cells in order are:
331. A phandle pointing to the DMA controller.
342. The slave id.
35
36spi0: spi@70a00000{
37	...
38	dma-names = "rx_chn", "tx_chn";
39	dmas = <&apdma 11>, <&apdma 12>;
40	...
41};
42