162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/dma/qcom,adm.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Qualcomm ADM DMA Controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Christian Marangi <ansuelsmth@gmail.com>
1162306a36Sopenharmony_ci  - Bjorn Andersson <bjorn.andersson@linaro.org>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_cidescription: |
1462306a36Sopenharmony_ci  QCOM ADM DMA controller provides DMA capabilities for
1562306a36Sopenharmony_ci  peripheral buses such as NAND and SPI.
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciproperties:
1862306a36Sopenharmony_ci  compatible:
1962306a36Sopenharmony_ci    const: qcom,adm
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci  reg:
2262306a36Sopenharmony_ci    maxItems: 1
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci  interrupts:
2562306a36Sopenharmony_ci    maxItems: 1
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci  "#dma-cells":
2862306a36Sopenharmony_ci    const: 1
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci  clocks:
3162306a36Sopenharmony_ci    items:
3262306a36Sopenharmony_ci      - description: phandle to the core clock
3362306a36Sopenharmony_ci      - description: phandle to the iface clock
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci  clock-names:
3662306a36Sopenharmony_ci    items:
3762306a36Sopenharmony_ci      - const: core
3862306a36Sopenharmony_ci      - const: iface
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci  resets:
4162306a36Sopenharmony_ci    items:
4262306a36Sopenharmony_ci      - description: phandle to the clk reset
4362306a36Sopenharmony_ci      - description: phandle to the pbus reset
4462306a36Sopenharmony_ci      - description: phandle to the c0 reset
4562306a36Sopenharmony_ci      - description: phandle to the c1 reset
4662306a36Sopenharmony_ci      - description: phandle to the c2 reset
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci  reset-names:
4962306a36Sopenharmony_ci    items:
5062306a36Sopenharmony_ci      - const: clk
5162306a36Sopenharmony_ci      - const: pbus
5262306a36Sopenharmony_ci      - const: c0
5362306a36Sopenharmony_ci      - const: c1
5462306a36Sopenharmony_ci      - const: c2
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci  qcom,ee:
5762306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
5862306a36Sopenharmony_ci    description: indicates the security domain identifier used in the secure world.
5962306a36Sopenharmony_ci    minimum: 0
6062306a36Sopenharmony_ci    maximum: 255
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_cirequired:
6362306a36Sopenharmony_ci  - compatible
6462306a36Sopenharmony_ci  - reg
6562306a36Sopenharmony_ci  - interrupts
6662306a36Sopenharmony_ci  - "#dma-cells"
6762306a36Sopenharmony_ci  - clocks
6862306a36Sopenharmony_ci  - clock-names
6962306a36Sopenharmony_ci  - resets
7062306a36Sopenharmony_ci  - reset-names
7162306a36Sopenharmony_ci  - qcom,ee
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ciadditionalProperties: false
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ciexamples:
7662306a36Sopenharmony_ci  - |
7762306a36Sopenharmony_ci    #include <dt-bindings/clock/qcom,gcc-ipq806x.h>
7862306a36Sopenharmony_ci    #include <dt-bindings/reset/qcom,gcc-ipq806x.h>
7962306a36Sopenharmony_ci
8062306a36Sopenharmony_ci    adm_dma: dma-controller@18300000 {
8162306a36Sopenharmony_ci        compatible = "qcom,adm";
8262306a36Sopenharmony_ci        reg = <0x18300000 0x100000>;
8362306a36Sopenharmony_ci        interrupts = <0 170 0>;
8462306a36Sopenharmony_ci        #dma-cells = <1>;
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ci        clocks = <&gcc ADM0_CLK>,
8762306a36Sopenharmony_ci                  <&gcc ADM0_PBUS_CLK>;
8862306a36Sopenharmony_ci        clock-names = "core", "iface";
8962306a36Sopenharmony_ci
9062306a36Sopenharmony_ci        resets = <&gcc ADM0_RESET>,
9162306a36Sopenharmony_ci                  <&gcc ADM0_PBUS_RESET>,
9262306a36Sopenharmony_ci                  <&gcc ADM0_C0_RESET>,
9362306a36Sopenharmony_ci                  <&gcc ADM0_C1_RESET>,
9462306a36Sopenharmony_ci                  <&gcc ADM0_C2_RESET>;
9562306a36Sopenharmony_ci        reset-names = "clk", "pbus", "c0", "c1", "c2";
9662306a36Sopenharmony_ci        qcom,ee = <0>;
9762306a36Sopenharmony_ci    };
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci...
100