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