Merge remote-tracking branches 'regulator/fix/88pm800', 'regulator/fix/max8973',...
[linux-drm-fsl-dcu.git] / Documentation / devicetree / bindings / dma / ti-dma-crossbar.txt
1 Texas Instruments DMA Crossbar (DMA request router)
2
3 Required properties:
4 - compatible:   "ti,dra7-dma-crossbar" for DRA7xx DMA crossbar
5 - reg:          Memory map for accessing module
6 - #dma-cells:   Should be set to <1>.
7                 Clients should use the crossbar request number (input)
8 - dma-requests: Number of DMA requests the crossbar can receive
9 - dma-masters:  phandle pointing to the DMA controller
10
11 The DMA controller node need to have the following poroperties:
12 - dma-requests: Number of DMA requests the controller can handle
13
14 Optional properties:
15 - ti,dma-safe-map: Safe routing value for unused request lines
16
17 Example:
18
19 /* DMA controller */
20 sdma: dma-controller@4a056000 {
21         compatible = "ti,omap4430-sdma";
22         reg = <0x4a056000 0x1000>;
23         interrupts =    <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
24                         <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
25                         <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
26                         <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
27         #dma-cells = <1>;
28         dma-channels = <32>;
29         dma-requests = <127>;
30 };
31
32 /* DMA crossbar */
33 sdma_xbar: dma-router@4a002b78 {
34         compatible = "ti,dra7-dma-crossbar";
35         reg = <0x4a002b78 0xfc>;
36         #dma-cells = <1>;
37         dma-requests = <205>;
38         ti,dma-safe-map = <0>;
39         dma-masters = <&sdma>;
40 };
41
42 /* DMA client */
43 uart1: serial@4806a000 {
44         compatible = "ti,omap4-uart";
45         reg = <0x4806a000 0x100>;
46         interrupts-extended = <&gic GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
47         ti,hwmods = "uart1";
48         clock-frequency = <48000000>;
49         status = "disabled";
50         dmas = <&sdma_xbar 49>, <&sdma_xbar 50>;
51         dma-names = "tx", "rx";
52 };