blob: db7e2260f9c5749e510a19e6d275e7bbfdaff467 [file] [log] [blame]
Thomas Abraham93ed5542011-10-24 11:43:31 +02001* ARM PrimeCell PL330 DMA Controller
2
3The ARM PrimeCell PL330 DMA controller can move blocks of memory contents
4between memory and peripherals or memory to memory.
5
6Required 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.
11
Rob Herring1dc737c2012-08-21 12:31:06 +020012Optional properties:
Padmavathi Venna42cf2092013-02-14 09:10:08 +053013 - 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
Shawn Lin2318a3d2016-01-22 19:06:45 +080018 - arm,pl330-broken-no-flushp: quirk for avoiding to execute DMAFLUSHP
Rob Herring1dc737c2012-08-21 12:31:06 +020019
Thomas Abraham93ed5542011-10-24 11:43:31 +020020Example:
21
22 pdma0: pdma@12680000 {
23 compatible = "arm,pl330", "arm,primecell";
24 reg = <0x12680000 0x1000>;
25 interrupts = <99>;
Padmavathi Venna42cf2092013-02-14 09:10:08 +053026 #dma-cells = <1>;
27 #dma-channels = <8>;
28 #dma-requests = <32>;
Thomas Abraham93ed5542011-10-24 11:43:31 +020029 };
30
31Client drivers (device nodes requiring dma transfers from dev-to-mem or
Padmavathi Venna42cf2092013-02-14 09:10:08 +053032mem-to-dev) should specify the DMA channel numbers and dma channel names
Thomas Abraham93ed5542011-10-24 11:43:31 +020033as shown below.
34
35 [property name] = <[phandle of the dma controller] [dma request id]>;
Padmavathi Venna42cf2092013-02-14 09:10:08 +053036 [property name] = <[dma channel name]>
Thomas Abraham93ed5542011-10-24 11:43:31 +020037
38 where 'dma request id' is the dma request number which is connected
Padmavathi Venna42cf2092013-02-14 09:10:08 +053039 to the client controller. The 'property name' 'dmas' and 'dma-names'
40 as required by the generic dma device tree binding helpers. The dma
41 names correspond 1:1 with the dma request ids in the dmas property.
Thomas Abraham93ed5542011-10-24 11:43:31 +020042
Padmavathi Venna42cf2092013-02-14 09:10:08 +053043 Example: dmas = <&pdma0 12
44 &pdma1 11>;
45 dma-names = "tx", "rx";