1290ad0f9SMarkus Pargmann* Freescale Direct Memory Access (DMA) Controller for i.MX
2290ad0f9SMarkus Pargmann
3290ad0f9SMarkus PargmannThis document will only describe differences to the generic DMA Controller and
4290ad0f9SMarkus PargmannDMA request bindings as described in dma/dma.txt .
5290ad0f9SMarkus Pargmann
6290ad0f9SMarkus Pargmann* DMA controller
7290ad0f9SMarkus Pargmann
8290ad0f9SMarkus PargmannRequired properties:
9290ad0f9SMarkus Pargmann- compatible : Should be "fsl,<chip>-dma". chip can be imx1, imx21 or imx27
10290ad0f9SMarkus Pargmann- reg : Should contain DMA registers location and length
11290ad0f9SMarkus Pargmann- interrupts : First item should be DMA interrupt, second one is optional and
12290ad0f9SMarkus Pargmann    should contain DMA Error interrupt
13290ad0f9SMarkus Pargmann- #dma-cells : Has to be 1. imx-dma does not support anything else.
14290ad0f9SMarkus Pargmann
15290ad0f9SMarkus PargmannOptional properties:
16290ad0f9SMarkus Pargmann- #dma-channels : Number of DMA channels supported. Should be 16.
17290ad0f9SMarkus Pargmann- #dma-requests : Number of DMA requests supported.
18290ad0f9SMarkus Pargmann
19290ad0f9SMarkus PargmannExample:
20290ad0f9SMarkus Pargmann
21290ad0f9SMarkus Pargmann	dma: dma@10001000 {
22290ad0f9SMarkus Pargmann		compatible = "fsl,imx27-dma";
23290ad0f9SMarkus Pargmann		reg = <0x10001000 0x1000>;
24290ad0f9SMarkus Pargmann		interrupts = <32 33>;
25290ad0f9SMarkus Pargmann		#dma-cells = <1>;
26290ad0f9SMarkus Pargmann		#dma-channels = <16>;
27290ad0f9SMarkus Pargmann	};
28290ad0f9SMarkus Pargmann
29290ad0f9SMarkus Pargmann
30290ad0f9SMarkus Pargmann* DMA client
31290ad0f9SMarkus Pargmann
32290ad0f9SMarkus PargmannClients have to specify the DMA requests with phandles in a list.
33290ad0f9SMarkus Pargmann
34290ad0f9SMarkus PargmannRequired properties:
35290ad0f9SMarkus Pargmann- dmas: List of one or more DMA request specifiers. One DMA request specifier
36290ad0f9SMarkus Pargmann    consists of a phandle to the DMA controller followed by the integer
37290ad0f9SMarkus Pargmann    specifiying the request line.
38290ad0f9SMarkus Pargmann- dma-names: List of string identifiers for the DMA requests. For the correct
39290ad0f9SMarkus Pargmann    names, have a look at the specific client driver.
40290ad0f9SMarkus Pargmann
41290ad0f9SMarkus PargmannExample:
42290ad0f9SMarkus Pargmann
43290ad0f9SMarkus Pargmann	sdhci1: sdhci@10013000 {
44290ad0f9SMarkus Pargmann		...
45290ad0f9SMarkus Pargmann		dmas = <&dma 7>;
46290ad0f9SMarkus Pargmann		dma-names = "rx-tx";
47290ad0f9SMarkus Pargmann		...
48290ad0f9SMarkus Pargmann	};
49