1*8d13bc63SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*8d13bc63SEmmanuel Vadot%YAML 1.2
3*8d13bc63SEmmanuel Vadot---
4*8d13bc63SEmmanuel Vadot$id: http://devicetree.org/schemas/interconnect/qcom,x1e80100-rpmh.yaml#
5*8d13bc63SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8d13bc63SEmmanuel Vadot
7*8d13bc63SEmmanuel Vadottitle: Qualcomm RPMh Network-On-Chip Interconnect on X1E80100
8*8d13bc63SEmmanuel Vadot
9*8d13bc63SEmmanuel Vadotmaintainers:
10*8d13bc63SEmmanuel Vadot  - Rajendra Nayak <quic_rjendra@quicinc.com>
11*8d13bc63SEmmanuel Vadot  - Abel Vesa <abel.vesa@linaro.org>
12*8d13bc63SEmmanuel Vadot
13*8d13bc63SEmmanuel Vadotdescription: |
14*8d13bc63SEmmanuel Vadot  RPMh interconnect providers support system bandwidth requirements through
15*8d13bc63SEmmanuel Vadot  RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
16*8d13bc63SEmmanuel Vadot  able to communicate with the BCM through the Resource State Coordinator (RSC)
17*8d13bc63SEmmanuel Vadot  associated with each execution environment. Provider nodes must point to at
18*8d13bc63SEmmanuel Vadot  least one RPMh device child node pertaining to their RSC and each provider
19*8d13bc63SEmmanuel Vadot  can map to multiple RPMh resources.
20*8d13bc63SEmmanuel Vadot
21*8d13bc63SEmmanuel Vadot  See also:: include/dt-bindings/interconnect/qcom,x1e80100-rpmh.h
22*8d13bc63SEmmanuel Vadot
23*8d13bc63SEmmanuel Vadotproperties:
24*8d13bc63SEmmanuel Vadot  compatible:
25*8d13bc63SEmmanuel Vadot    enum:
26*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-aggre1-noc
27*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-aggre2-noc
28*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-clk-virt
29*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-cnoc-cfg
30*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-cnoc-main
31*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-gem-noc
32*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-lpass-ag-noc
33*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-lpass-lpiaon-noc
34*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-lpass-lpicx-noc
35*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-mc-virt
36*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-mmss-noc
37*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-nsp-noc
38*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-pcie-center-anoc
39*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-pcie-north-anoc
40*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-pcie-south-anoc
41*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-system-noc
42*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-usb-center-anoc
43*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-usb-north-anoc
44*8d13bc63SEmmanuel Vadot      - qcom,x1e80100-usb-south-anoc
45*8d13bc63SEmmanuel Vadot
46*8d13bc63SEmmanuel Vadot  reg:
47*8d13bc63SEmmanuel Vadot    maxItems: 1
48*8d13bc63SEmmanuel Vadot
49*8d13bc63SEmmanuel Vadotrequired:
50*8d13bc63SEmmanuel Vadot  - compatible
51*8d13bc63SEmmanuel Vadot
52*8d13bc63SEmmanuel VadotallOf:
53*8d13bc63SEmmanuel Vadot  - $ref: qcom,rpmh-common.yaml#
54*8d13bc63SEmmanuel Vadot  - if:
55*8d13bc63SEmmanuel Vadot      properties:
56*8d13bc63SEmmanuel Vadot        compatible:
57*8d13bc63SEmmanuel Vadot          contains:
58*8d13bc63SEmmanuel Vadot            enum:
59*8d13bc63SEmmanuel Vadot              - qcom,x1e80100-clk-virt
60*8d13bc63SEmmanuel Vadot              - qcom,x1e80100-mc-virt
61*8d13bc63SEmmanuel Vadot    then:
62*8d13bc63SEmmanuel Vadot      properties:
63*8d13bc63SEmmanuel Vadot        reg: false
64*8d13bc63SEmmanuel Vadot    else:
65*8d13bc63SEmmanuel Vadot      required:
66*8d13bc63SEmmanuel Vadot        - reg
67*8d13bc63SEmmanuel Vadot
68*8d13bc63SEmmanuel VadotunevaluatedProperties: false
69*8d13bc63SEmmanuel Vadot
70*8d13bc63SEmmanuel Vadotexamples:
71*8d13bc63SEmmanuel Vadot  - |
72*8d13bc63SEmmanuel Vadot    clk_virt: interconnect-0 {
73*8d13bc63SEmmanuel Vadot      compatible = "qcom,x1e80100-clk-virt";
74*8d13bc63SEmmanuel Vadot      #interconnect-cells = <2>;
75*8d13bc63SEmmanuel Vadot      qcom,bcm-voters = <&apps_bcm_voter>;
76*8d13bc63SEmmanuel Vadot    };
77*8d13bc63SEmmanuel Vadot
78*8d13bc63SEmmanuel Vadot    aggre1_noc: interconnect@16e0000 {
79*8d13bc63SEmmanuel Vadot      compatible = "qcom,x1e80100-aggre1-noc";
80*8d13bc63SEmmanuel Vadot      reg = <0x016e0000 0x14400>;
81*8d13bc63SEmmanuel Vadot      #interconnect-cells = <2>;
82*8d13bc63SEmmanuel Vadot      qcom,bcm-voters = <&apps_bcm_voter>;
83*8d13bc63SEmmanuel Vadot    };
84