xref: /freebsd/sys/contrib/device-tree/Bindings/interconnect/qcom,rpmh.yaml (revision d5b0e70f7e04d971691517ce1304d86a1e367e2e)
16be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
26be33864SEmmanuel Vadot%YAML 1.2
36be33864SEmmanuel Vadot---
46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/interconnect/qcom,rpmh.yaml#
56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
66be33864SEmmanuel Vadot
76be33864SEmmanuel Vadottitle: Qualcomm RPMh Network-On-Chip Interconnect
86be33864SEmmanuel Vadot
96be33864SEmmanuel Vadotmaintainers:
106be33864SEmmanuel Vadot  - Georgi Djakov <georgi.djakov@linaro.org>
116be33864SEmmanuel Vadot  - Odelu Kukatla <okukatla@codeaurora.org>
126be33864SEmmanuel Vadot
136be33864SEmmanuel Vadotdescription: |
146be33864SEmmanuel Vadot   RPMh interconnect providers support system bandwidth requirements through
156be33864SEmmanuel Vadot   RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
166be33864SEmmanuel Vadot   able to communicate with the BCM through the Resource State Coordinator (RSC)
176be33864SEmmanuel Vadot   associated with each execution environment. Provider nodes must point to at
186be33864SEmmanuel Vadot   least one RPMh device child node pertaining to their RSC and each provider
196be33864SEmmanuel Vadot   can map to multiple RPMh resources.
206be33864SEmmanuel Vadot
216be33864SEmmanuel Vadotproperties:
226be33864SEmmanuel Vadot  reg:
236be33864SEmmanuel Vadot    maxItems: 1
246be33864SEmmanuel Vadot
256be33864SEmmanuel Vadot  compatible:
266be33864SEmmanuel Vadot    enum:
276be33864SEmmanuel Vadot      - qcom,sc7180-aggre1-noc
286be33864SEmmanuel Vadot      - qcom,sc7180-aggre2-noc
296be33864SEmmanuel Vadot      - qcom,sc7180-camnoc-virt
306be33864SEmmanuel Vadot      - qcom,sc7180-compute-noc
316be33864SEmmanuel Vadot      - qcom,sc7180-config-noc
326be33864SEmmanuel Vadot      - qcom,sc7180-dc-noc
336be33864SEmmanuel Vadot      - qcom,sc7180-gem-noc
346be33864SEmmanuel Vadot      - qcom,sc7180-mc-virt
356be33864SEmmanuel Vadot      - qcom,sc7180-mmss-noc
366be33864SEmmanuel Vadot      - qcom,sc7180-npu-noc
376be33864SEmmanuel Vadot      - qcom,sc7180-qup-virt
386be33864SEmmanuel Vadot      - qcom,sc7180-system-noc
395956d97fSEmmanuel Vadot      - qcom,sc7280-aggre1-noc
405956d97fSEmmanuel Vadot      - qcom,sc7280-aggre2-noc
415956d97fSEmmanuel Vadot      - qcom,sc7280-clk-virt
425956d97fSEmmanuel Vadot      - qcom,sc7280-cnoc2
435956d97fSEmmanuel Vadot      - qcom,sc7280-cnoc3
445956d97fSEmmanuel Vadot      - qcom,sc7280-dc-noc
455956d97fSEmmanuel Vadot      - qcom,sc7280-gem-noc
465956d97fSEmmanuel Vadot      - qcom,sc7280-lpass-ag-noc
475956d97fSEmmanuel Vadot      - qcom,sc7280-mc-virt
485956d97fSEmmanuel Vadot      - qcom,sc7280-mmss-noc
495956d97fSEmmanuel Vadot      - qcom,sc7280-nsp-noc
505956d97fSEmmanuel Vadot      - qcom,sc7280-system-noc
51354d7675SEmmanuel Vadot      - qcom,sc8180x-aggre1-noc
52354d7675SEmmanuel Vadot      - qcom,sc8180x-aggre2-noc
53354d7675SEmmanuel Vadot      - qcom,sc8180x-camnoc-virt
54354d7675SEmmanuel Vadot      - qcom,sc8180x-compute-noc
55354d7675SEmmanuel Vadot      - qcom,sc8180x-config-noc
56354d7675SEmmanuel Vadot      - qcom,sc8180x-dc-noc
57354d7675SEmmanuel Vadot      - qcom,sc8180x-gem-noc
58354d7675SEmmanuel Vadot      - qcom,sc8180x-ipa-virt
59354d7675SEmmanuel Vadot      - qcom,sc8180x-mc-virt
60354d7675SEmmanuel Vadot      - qcom,sc8180x-mmss-noc
61*d5b0e70fSEmmanuel Vadot      - qcom,sc8180x-qup-virt
62354d7675SEmmanuel Vadot      - qcom,sc8180x-system-noc
63*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-aggre1-noc
64*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-aggre2-noc
65*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-clk-virt
66*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-config-noc
67*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-dc-noc
68*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-gem-noc
69*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-lpass-ag-noc
70*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-mc-virt
71*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-mmss-noc
72*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-nspa-noc
73*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-nspb-noc
74*d5b0e70fSEmmanuel Vadot      - qcom,sc8280xp-system-noc
756be33864SEmmanuel Vadot      - qcom,sdm845-aggre1-noc
766be33864SEmmanuel Vadot      - qcom,sdm845-aggre2-noc
776be33864SEmmanuel Vadot      - qcom,sdm845-config-noc
786be33864SEmmanuel Vadot      - qcom,sdm845-dc-noc
796be33864SEmmanuel Vadot      - qcom,sdm845-gladiator-noc
806be33864SEmmanuel Vadot      - qcom,sdm845-mem-noc
816be33864SEmmanuel Vadot      - qcom,sdm845-mmss-noc
826be33864SEmmanuel Vadot      - qcom,sdm845-system-noc
835def4c47SEmmanuel Vadot      - qcom,sdx55-mc-virt
845def4c47SEmmanuel Vadot      - qcom,sdx55-mem-noc
855def4c47SEmmanuel Vadot      - qcom,sdx55-system-noc
86*d5b0e70fSEmmanuel Vadot      - qcom,sdx65-mc-virt
87*d5b0e70fSEmmanuel Vadot      - qcom,sdx65-mem-noc
88*d5b0e70fSEmmanuel Vadot      - qcom,sdx65-system-noc
896be33864SEmmanuel Vadot      - qcom,sm8150-aggre1-noc
906be33864SEmmanuel Vadot      - qcom,sm8150-aggre2-noc
916be33864SEmmanuel Vadot      - qcom,sm8150-camnoc-noc
926be33864SEmmanuel Vadot      - qcom,sm8150-compute-noc
936be33864SEmmanuel Vadot      - qcom,sm8150-config-noc
946be33864SEmmanuel Vadot      - qcom,sm8150-dc-noc
956be33864SEmmanuel Vadot      - qcom,sm8150-gem-noc
966be33864SEmmanuel Vadot      - qcom,sm8150-ipa-virt
976be33864SEmmanuel Vadot      - qcom,sm8150-mc-virt
986be33864SEmmanuel Vadot      - qcom,sm8150-mmss-noc
996be33864SEmmanuel Vadot      - qcom,sm8150-system-noc
1006be33864SEmmanuel Vadot      - qcom,sm8250-aggre1-noc
1016be33864SEmmanuel Vadot      - qcom,sm8250-aggre2-noc
1026be33864SEmmanuel Vadot      - qcom,sm8250-compute-noc
1036be33864SEmmanuel Vadot      - qcom,sm8250-config-noc
1046be33864SEmmanuel Vadot      - qcom,sm8250-dc-noc
1056be33864SEmmanuel Vadot      - qcom,sm8250-gem-noc
1066be33864SEmmanuel Vadot      - qcom,sm8250-ipa-virt
1076be33864SEmmanuel Vadot      - qcom,sm8250-mc-virt
1086be33864SEmmanuel Vadot      - qcom,sm8250-mmss-noc
1096be33864SEmmanuel Vadot      - qcom,sm8250-npu-noc
1106be33864SEmmanuel Vadot      - qcom,sm8250-system-noc
1112eb4d8dcSEmmanuel Vadot      - qcom,sm8350-aggre1-noc
1122eb4d8dcSEmmanuel Vadot      - qcom,sm8350-aggre2-noc
1132eb4d8dcSEmmanuel Vadot      - qcom,sm8350-config-noc
1142eb4d8dcSEmmanuel Vadot      - qcom,sm8350-dc-noc
1152eb4d8dcSEmmanuel Vadot      - qcom,sm8350-gem-noc
1162eb4d8dcSEmmanuel Vadot      - qcom,sm8350-lpass-ag-noc
1172eb4d8dcSEmmanuel Vadot      - qcom,sm8350-mc-virt
1182eb4d8dcSEmmanuel Vadot      - qcom,sm8350-mmss-noc
1192eb4d8dcSEmmanuel Vadot      - qcom,sm8350-compute-noc
1202eb4d8dcSEmmanuel Vadot      - qcom,sm8350-system-noc
121e67e8565SEmmanuel Vadot      - qcom,sm8450-aggre1-noc
122e67e8565SEmmanuel Vadot      - qcom,sm8450-aggre2-noc
123e67e8565SEmmanuel Vadot      - qcom,sm8450-clk-virt
124e67e8565SEmmanuel Vadot      - qcom,sm8450-config-noc
125e67e8565SEmmanuel Vadot      - qcom,sm8450-gem-noc
126e67e8565SEmmanuel Vadot      - qcom,sm8450-lpass-ag-noc
127e67e8565SEmmanuel Vadot      - qcom,sm8450-mc-virt
128e67e8565SEmmanuel Vadot      - qcom,sm8450-mmss-noc
129e67e8565SEmmanuel Vadot      - qcom,sm8450-nsp-noc
130e67e8565SEmmanuel Vadot      - qcom,sm8450-pcie-anoc
131e67e8565SEmmanuel Vadot      - qcom,sm8450-system-noc
1326be33864SEmmanuel Vadot
1336be33864SEmmanuel Vadot  '#interconnect-cells':
1345def4c47SEmmanuel Vadot    enum: [ 1, 2 ]
1356be33864SEmmanuel Vadot
1366be33864SEmmanuel Vadot  qcom,bcm-voters:
1376be33864SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
138c9ccf3a3SEmmanuel Vadot    items:
139c9ccf3a3SEmmanuel Vadot      maxItems: 1
1406be33864SEmmanuel Vadot    description: |
1416be33864SEmmanuel Vadot      List of phandles to qcom,bcm-voter nodes that are required by
1426be33864SEmmanuel Vadot      this interconnect to send RPMh commands.
1436be33864SEmmanuel Vadot
1446be33864SEmmanuel Vadot  qcom,bcm-voter-names:
1456be33864SEmmanuel Vadot    description: |
1466be33864SEmmanuel Vadot      Names for each of the qcom,bcm-voters specified.
1476be33864SEmmanuel Vadot
1486be33864SEmmanuel Vadotrequired:
1496be33864SEmmanuel Vadot  - compatible
1506be33864SEmmanuel Vadot  - reg
1516be33864SEmmanuel Vadot  - '#interconnect-cells'
1526be33864SEmmanuel Vadot  - qcom,bcm-voters
1536be33864SEmmanuel Vadot
1546be33864SEmmanuel VadotadditionalProperties: false
1556be33864SEmmanuel Vadot
1566be33864SEmmanuel Vadotexamples:
1576be33864SEmmanuel Vadot  - |
1586be33864SEmmanuel Vadot      #include <dt-bindings/interconnect/qcom,sdm845.h>
1596be33864SEmmanuel Vadot
1606be33864SEmmanuel Vadot      mem_noc: interconnect@1380000 {
1616be33864SEmmanuel Vadot             compatible = "qcom,sdm845-mem-noc";
1626be33864SEmmanuel Vadot             reg = <0x01380000 0x27200>;
1636be33864SEmmanuel Vadot             #interconnect-cells = <1>;
1646be33864SEmmanuel Vadot             qcom,bcm-voters = <&apps_bcm_voter>;
1656be33864SEmmanuel Vadot      };
1666be33864SEmmanuel Vadot
1676be33864SEmmanuel Vadot      mmss_noc: interconnect@1740000 {
1686be33864SEmmanuel Vadot             compatible = "qcom,sdm845-mmss-noc";
1696be33864SEmmanuel Vadot             reg = <0x01740000 0x1c1000>;
1706be33864SEmmanuel Vadot             #interconnect-cells = <1>;
1716be33864SEmmanuel Vadot             qcom,bcm-voter-names = "apps", "disp";
1726be33864SEmmanuel Vadot             qcom,bcm-voters = <&apps_bcm_voter>, <&disp_bcm_voter>;
1736be33864SEmmanuel Vadot      };
174