linux/Documentation/devicetree/bindings/dma/ste-dma40.txt
<<
>>
Prefs
   1* DMA40 DMA Controller
   2
   3Required properties:
   4- compatible: "stericsson,dma40"
   5- reg: Address range of the DMAC registers
   6- reg-names: Names of the above areas to use during resource look-up
   7- interrupt: Should contain the DMAC interrupt number
   8- #dma-cells: must be <3>
   9- memcpy-channels: Channels to be used for memcpy
  10
  11Optional properties:
  12- dma-channels: Number of channels supported by hardware - if not present
  13                the driver will attempt to obtain the information from H/W
  14- disabled-channels: Channels which can not be used
  15
  16Example:
  17
  18        dma: dma-controller@801C0000 {
  19                compatible = "stericsson,db8500-dma40", "stericsson,dma40";
  20                reg = <0x801C0000 0x1000  0x40010000 0x800>;
  21                reg-names = "base", "lcpa";
  22                interrupt-parent = <&intc>;
  23                interrupts = <0 25 0x4>;
  24
  25                #dma-cells = <2>;
  26                memcpy-channels  = <56 57 58 59 60>;
  27                disabled-channels  = <12>;
  28                dma-channels = <8>;
  29        };
  30
  31Clients
  32Required properties:
  33- dmas: Comma separated list of dma channel requests
  34- dma-names: Names of the aforementioned requested channels
  35
  36Each dmas request consists of 4 cells:
  37  1. A phandle pointing to the DMA controller
  38  2. Device Type
  39  3. The DMA request line number (only when 'use fixed channel' is set)
  40  4. A 32bit mask specifying; mode, direction and endianess [NB: This list will grow]
  41        0x00000001: Mode:
  42                Logical channel when unset
  43                Physical channel when set
  44        0x00000002: Direction:
  45                Memory to Device when unset
  46                Device to Memory when set
  47        0x00000004: Endianess:
  48                Little endian when unset
  49                Big endian when set
  50        0x00000008: Use fixed channel:
  51                Use automatic channel selection when unset
  52                Use DMA request line number when set
  53
  54Example:
  55
  56        uart@80120000 {
  57                compatible = "arm,pl011", "arm,primecell";
  58                reg = <0x80120000 0x1000>;
  59                interrupts = <0 11 0x4>;
  60
  61                dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
  62                       <&dma 13 0 0x0>; /* Logical - MemToDev */
  63                dma-names = "rx", "rx";
  64
  65                status = "disabled";
  66        };
  67