GNU Linux-libre 4.19.264-gnu1
[releases.git] / Documentation / devicetree / bindings / dma / fsl-imx-dma.txt
1 * Freescale Direct Memory Access (DMA) Controller for i.MX
2
3 This document will only describe differences to the generic DMA Controller and
4 DMA request bindings as described in dma/dma.txt .
5
6 * DMA controller
7
8 Required properties:
9 - compatible : Should be "fsl,<chip>-dma". chip can be imx1, imx21 or imx27
10 - reg : Should contain DMA registers location and length
11 - interrupts : First item should be DMA interrupt, second one is optional and
12     should contain DMA Error interrupt
13 - #dma-cells : Has to be 1. imx-dma does not support anything else.
14
15 Optional properties:
16 - #dma-channels : Number of DMA channels supported. Should be 16.
17 - #dma-requests : Number of DMA requests supported.
18
19 Example:
20
21         dma: dma@10001000 {
22                 compatible = "fsl,imx27-dma";
23                 reg = <0x10001000 0x1000>;
24                 interrupts = <32 33>;
25                 #dma-cells = <1>;
26                 #dma-channels = <16>;
27         };
28
29
30 * DMA client
31
32 Clients have to specify the DMA requests with phandles in a list.
33
34 Required properties:
35 - dmas: List of one or more DMA request specifiers. One DMA request specifier
36     consists of a phandle to the DMA controller followed by the integer
37     specifying the request line.
38 - dma-names: List of string identifiers for the DMA requests. For the correct
39     names, have a look at the specific client driver.
40
41 Example:
42
43         sdhci1: sdhci@10013000 {
44                 ...
45                 dmas = <&dma 7>;
46                 dma-names = "rx-tx";
47                 ...
48         };