Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux/fpc-iii.git] / Documentation / devicetree / bindings / dma / arm-pl330.txt
blob267565894db929013c88d75be65093f693546b8b
1 * ARM PrimeCell PL330 DMA Controller
3 The ARM PrimeCell PL330 DMA controller can move blocks of memory contents
4 between memory and peripherals or memory to memory.
6 Required properties:
7   - compatible: should include both "arm,pl330" and "arm,primecell".
8   - reg: physical base address of the controller and length of memory mapped
9     region.
10   - interrupts: interrupt number to the cpu.
12 Optional properties:
13   - dma-coherent      : Present if dma operations are coherent
14   - #dma-cells: must be <1>. used to represent the number of integer
15     cells in the dmas property of client device.
16   - dma-channels: contains the total number of DMA channels supported by the DMAC
17   - dma-requests: contains the total number of DMA requests supported by the DMAC
19 Example:
21         pdma0: pdma@12680000 {
22                 compatible = "arm,pl330", "arm,primecell";
23                 reg = <0x12680000 0x1000>;
24                 interrupts = <99>;
25                 #dma-cells = <1>;
26                 #dma-channels = <8>;
27                 #dma-requests = <32>;
28         };
30 Client drivers (device nodes requiring dma transfers from dev-to-mem or
31 mem-to-dev) should specify the DMA channel numbers and dma channel names
32 as shown below.
34   [property name]  = <[phandle of the dma controller] [dma request id]>;
35   [property name]  = <[dma channel name]>
37       where 'dma request id' is the dma request number which is connected
38       to the client controller. The 'property name' 'dmas' and 'dma-names'
39       as required by the generic dma device tree binding helpers. The dma
40       names correspond 1:1 with the dma request ids in the dmas property.
42   Example:  dmas = <&pdma0 12
43                     &pdma1 11>;
44             dma-names = "tx", "rx";