1*c66ec88fSEmmanuel VadotAnalog Devices AXI-DMAC DMA controller 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot - compatible: Must be "adi,axi-dmac-1.00.a". 5*c66ec88fSEmmanuel Vadot - reg: Specification for the controllers memory mapped register map. 6*c66ec88fSEmmanuel Vadot - interrupts: Specification for the controllers interrupt. 7*c66ec88fSEmmanuel Vadot - clocks: Phandle and specifier to the controllers AXI interface clock 8*c66ec88fSEmmanuel Vadot - #dma-cells: Must be 1. 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel VadotRequired sub-nodes: 11*c66ec88fSEmmanuel Vadot - adi,channels: This sub-node must contain a sub-node for each DMA channel. For 12*c66ec88fSEmmanuel Vadot the channel sub-nodes the following bindings apply. They must match the 13*c66ec88fSEmmanuel Vadot configuration options of the peripheral as it was instantiated. 14*c66ec88fSEmmanuel Vadot 15*c66ec88fSEmmanuel VadotRequired properties for adi,channels sub-node: 16*c66ec88fSEmmanuel Vadot - #size-cells: Must be 0 17*c66ec88fSEmmanuel Vadot - #address-cells: Must be 1 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel VadotRequired channel sub-node properties: 20*c66ec88fSEmmanuel Vadot - reg: Which channel this node refers to. 21*c66ec88fSEmmanuel Vadot - adi,source-bus-width, 22*c66ec88fSEmmanuel Vadot adi,destination-bus-width: Width of the source or destination bus in bits. 23*c66ec88fSEmmanuel Vadot - adi,source-bus-type, 24*c66ec88fSEmmanuel Vadot adi,destination-bus-type: Type of the source or destination bus. Must be one 25*c66ec88fSEmmanuel Vadot of the following: 26*c66ec88fSEmmanuel Vadot 0 (AXI_DMAC_TYPE_AXI_MM): Memory mapped AXI interface 27*c66ec88fSEmmanuel Vadot 1 (AXI_DMAC_TYPE_AXI_STREAM): Streaming AXI interface 28*c66ec88fSEmmanuel Vadot 2 (AXI_DMAC_TYPE_AXI_FIFO): FIFO interface 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel VadotDeprecated optional channel properties: 31*c66ec88fSEmmanuel Vadot - adi,length-width: Width of the DMA transfer length register. 32*c66ec88fSEmmanuel Vadot - adi,cyclic: Must be set if the channel supports hardware cyclic DMA 33*c66ec88fSEmmanuel Vadot transfers. 34*c66ec88fSEmmanuel Vadot - adi,2d: Must be set if the channel supports hardware 2D DMA transfers. 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel VadotDMA clients connected to the AXI-DMAC DMA controller must use the format 37*c66ec88fSEmmanuel Vadotdescribed in the dma.txt file using a one-cell specifier. The value of the 38*c66ec88fSEmmanuel Vadotspecifier refers to the DMA channel index. 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel VadotExample: 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel Vadotdma: dma@7c420000 { 43*c66ec88fSEmmanuel Vadot compatible = "adi,axi-dmac-1.00.a"; 44*c66ec88fSEmmanuel Vadot reg = <0x7c420000 0x10000>; 45*c66ec88fSEmmanuel Vadot interrupts = <0 57 0>; 46*c66ec88fSEmmanuel Vadot clocks = <&clkc 16>; 47*c66ec88fSEmmanuel Vadot #dma-cells = <1>; 48*c66ec88fSEmmanuel Vadot 49*c66ec88fSEmmanuel Vadot adi,channels { 50*c66ec88fSEmmanuel Vadot #size-cells = <0>; 51*c66ec88fSEmmanuel Vadot #address-cells = <1>; 52*c66ec88fSEmmanuel Vadot 53*c66ec88fSEmmanuel Vadot dma-channel@0 { 54*c66ec88fSEmmanuel Vadot reg = <0>; 55*c66ec88fSEmmanuel Vadot adi,source-bus-width = <32>; 56*c66ec88fSEmmanuel Vadot adi,source-bus-type = <ADI_AXI_DMAC_TYPE_MM_AXI>; 57*c66ec88fSEmmanuel Vadot adi,destination-bus-width = <64>; 58*c66ec88fSEmmanuel Vadot adi,destination-bus-type = <ADI_AXI_DMAC_TYPE_FIFO>; 59*c66ec88fSEmmanuel Vadot }; 60*c66ec88fSEmmanuel Vadot }; 61*c66ec88fSEmmanuel Vadot}; 62