Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/dma/xilinx/xlnx,zynqmp-dma-1.0.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Xilinx ZynqMP DMA Engine
0008 
0009 description: |
0010   The Xilinx ZynqMP DMA engine supports memory to memory transfers,
0011   memory to device and device to memory transfers. It also has flow
0012   control and rate control support for slave/peripheral dma access.
0013 
0014 maintainers:
0015   - Michael Tretter <m.tretter@pengutronix.de>
0016 
0017 allOf:
0018   - $ref: "../dma-controller.yaml#"
0019 
0020 properties:
0021   "#dma-cells":
0022     const: 1
0023 
0024   compatible:
0025     const: xlnx,zynqmp-dma-1.0
0026 
0027   reg:
0028     description: memory map for gdma/adma module access
0029     maxItems: 1
0030 
0031   interrupts:
0032     description: DMA channel interrupt
0033     maxItems: 1
0034 
0035   clocks:
0036     description: input clocks
0037     minItems: 2
0038     maxItems: 2
0039 
0040   clock-names:
0041     items:
0042       - const: clk_main
0043       - const: clk_apb
0044 
0045   xlnx,bus-width:
0046     $ref: /schemas/types.yaml#/definitions/uint32
0047     enum:
0048       - 64
0049       - 128
0050     description: AXI bus width in bits
0051 
0052   iommus:
0053     maxItems: 1
0054 
0055   power-domains:
0056     maxItems: 1
0057 
0058   dma-coherent:
0059     description: present if dma operations are coherent
0060 
0061 required:
0062   - "#dma-cells"
0063   - compatible
0064   - reg
0065   - interrupts
0066   - clocks
0067   - clock-names
0068 
0069 additionalProperties: false
0070 
0071 examples:
0072   - |
0073     #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
0074 
0075     fpd_dma_chan1: dma-controller@fd500000 {
0076       compatible = "xlnx,zynqmp-dma-1.0";
0077       reg = <0xfd500000 0x1000>;
0078       interrupt-parent = <&gic>;
0079       interrupts = <0 117 0x4>;
0080       #dma-cells = <1>;
0081       clock-names = "clk_main", "clk_apb";
0082       clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
0083       xlnx,bus-width = <128>;
0084       dma-coherent;
0085     };