# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/interconnect/qcom,sdm660.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm SDM660 Network-On-Chip interconnect

maintainers:
  - AngeloGioacchino Del Regno <kholk11@gmail.com>

description: |
  The Qualcomm SDM660 interconnect providers support adjusting the
  bandwidth requirements between the various NoC fabrics.

properties:
  reg:
    maxItems: 1

  compatible:
    enum:
      - qcom,sdm660-a2noc
      - qcom,sdm660-bimc
      - qcom,sdm660-cnoc
      - qcom,sdm660-gnoc
      - qcom,sdm660-mnoc
      - qcom,sdm660-snoc

  '#interconnect-cells':
    const: 1

  clocks:
    minItems: 1
    maxItems: 7

  clock-names:
    minItems: 1
    maxItems: 7

required:
  - compatible
  - reg
  - '#interconnect-cells'
  - clock-names
  - clocks

additionalProperties: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sdm660-mnoc
    then:
      properties:
        clocks:
          items:
            - description: Bus Clock.
            - description: Bus A Clock.
            - description: CPU-NoC High-performance Bus Clock.
        clock-names:
          items:
            - const: bus
            - const: bus_a
            - const: iface

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sdm660-a2noc
    then:
      properties:
        clocks:
          items:
            - description: Bus Clock.
            - description: Bus A Clock.
            - description: IPA Clock.
            - description: UFS AXI Clock.
            - description: Aggregate2 UFS AXI Clock.
            - description: Aggregate2 USB3 AXI Clock.
            - description: Config NoC USB2 AXI Clock.
        clock-names:
          items:
            - const: bus
            - const: bus_a
            - const: ipa
            - const: ufs_axi
            - const: aggre2_ufs_axi
            - const: aggre2_usb3_axi
            - const: cfg_noc_usb2_axi

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sdm660-bimc
              - qcom,sdm660-cnoc
              - qcom,sdm660-gnoc
              - qcom,sdm660-snoc
    then:
      properties:
        clocks:
          items:
            - description: Bus Clock.
            - description: Bus A Clock.
        clock-names:
          items:
            - const: bus
            - const: bus_a

examples:
  - |
      #include <dt-bindings/clock/qcom,rpmcc.h>
      #include <dt-bindings/clock/qcom,mmcc-sdm660.h>
      #include <dt-bindings/clock/qcom,gcc-sdm660.h>

      bimc: interconnect@1008000 {
              compatible = "qcom,sdm660-bimc";
              reg = <0x01008000 0x78000>;
              #interconnect-cells = <1>;
              clock-names = "bus", "bus_a";
              clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
                       <&rpmcc RPM_SMD_BIMC_A_CLK>;
      };

      cnoc: interconnect@1500000 {
              compatible = "qcom,sdm660-cnoc";
              reg = <0x01500000 0x10000>;
              #interconnect-cells = <1>;
              clock-names = "bus", "bus_a";
              clocks = <&rpmcc RPM_SMD_CNOC_CLK>,
                       <&rpmcc RPM_SMD_CNOC_A_CLK>;
      };

      snoc: interconnect@1626000 {
              compatible = "qcom,sdm660-snoc";
              reg = <0x01626000 0x7090>;
              #interconnect-cells = <1>;
              clock-names = "bus", "bus_a";
              clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
                       <&rpmcc RPM_SMD_SNOC_A_CLK>;
      };

      a2noc: interconnect@1704000 {
              compatible = "qcom,sdm660-a2noc";
              reg = <0x01704000 0xc100>;
              #interconnect-cells = <1>;
              clock-names = "bus",
                            "bus_a",
                            "ipa",
                            "ufs_axi",
                            "aggre2_ufs_axi",
                            "aggre2_usb3_axi",
                            "cfg_noc_usb2_axi";
              clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>,
                       <&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>,
                       <&rpmcc RPM_SMD_IPA_CLK>,
                       <&gcc GCC_UFS_AXI_CLK>,
                       <&gcc GCC_AGGRE2_UFS_AXI_CLK>,
                       <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
                       <&gcc GCC_CFG_NOC_USB2_AXI_CLK>;
      };

      mnoc: interconnect@1745000 {
              compatible = "qcom,sdm660-mnoc";
              reg = <0x01745000 0xa010>;
              #interconnect-cells = <1>;
              clock-names = "bus", "bus_a", "iface";
              clocks = <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK>,
                       <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK_A>,
                       <&mmcc AHB_CLK_SRC>;
      };

      gnoc: interconnect@17900000 {
              compatible = "qcom,sdm660-gnoc";
              reg = <0x17900000 0xe000>;
              #interconnect-cells = <1>;
              clock-names = "bus", "bus_a";
              clocks = <&xo_board>, <&xo_board>;
      };
