linux/Documentation/devicetree/bindings/dma/arm-pl330.txt
<<
>>
Prefs
   1* 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
  12Optional 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
  18
  19Example:
  20
  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        };
  29
  30Client drivers (device nodes requiring dma transfers from dev-to-mem or
  31mem-to-dev) should specify the DMA channel numbers and dma channel names
  32as shown below.
  33
  34  [property name]  = <[phandle of the dma controller] [dma request id]>;
  35  [property name]  = <[dma channel name]>
  36
  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.
  41
  42  Example:  dmas = <&pdma0 12
  43                    &pdma1 11>;
  44            dma-names = "tx", "rx";
  45