1*6be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*6be33864SEmmanuel Vadot%YAML 1.2 3*6be33864SEmmanuel Vadot--- 4*6be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/interconnect/qcom,rpmh.yaml# 5*6be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*6be33864SEmmanuel Vadot 7*6be33864SEmmanuel Vadottitle: Qualcomm RPMh Network-On-Chip Interconnect 8*6be33864SEmmanuel Vadot 9*6be33864SEmmanuel Vadotmaintainers: 10*6be33864SEmmanuel Vadot - Georgi Djakov <georgi.djakov@linaro.org> 11*6be33864SEmmanuel Vadot - Odelu Kukatla <okukatla@codeaurora.org> 12*6be33864SEmmanuel Vadot 13*6be33864SEmmanuel Vadotdescription: | 14*6be33864SEmmanuel Vadot RPMh interconnect providers support system bandwidth requirements through 15*6be33864SEmmanuel Vadot RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is 16*6be33864SEmmanuel Vadot able to communicate with the BCM through the Resource State Coordinator (RSC) 17*6be33864SEmmanuel Vadot associated with each execution environment. Provider nodes must point to at 18*6be33864SEmmanuel Vadot least one RPMh device child node pertaining to their RSC and each provider 19*6be33864SEmmanuel Vadot can map to multiple RPMh resources. 20*6be33864SEmmanuel Vadot 21*6be33864SEmmanuel Vadotproperties: 22*6be33864SEmmanuel Vadot reg: 23*6be33864SEmmanuel Vadot maxItems: 1 24*6be33864SEmmanuel Vadot 25*6be33864SEmmanuel Vadot compatible: 26*6be33864SEmmanuel Vadot enum: 27*6be33864SEmmanuel Vadot - qcom,sc7180-aggre1-noc 28*6be33864SEmmanuel Vadot - qcom,sc7180-aggre2-noc 29*6be33864SEmmanuel Vadot - qcom,sc7180-camnoc-virt 30*6be33864SEmmanuel Vadot - qcom,sc7180-compute-noc 31*6be33864SEmmanuel Vadot - qcom,sc7180-config-noc 32*6be33864SEmmanuel Vadot - qcom,sc7180-dc-noc 33*6be33864SEmmanuel Vadot - qcom,sc7180-gem-noc 34*6be33864SEmmanuel Vadot - qcom,sc7180-ipa-virt 35*6be33864SEmmanuel Vadot - qcom,sc7180-mc-virt 36*6be33864SEmmanuel Vadot - qcom,sc7180-mmss-noc 37*6be33864SEmmanuel Vadot - qcom,sc7180-npu-noc 38*6be33864SEmmanuel Vadot - qcom,sc7180-qup-virt 39*6be33864SEmmanuel Vadot - qcom,sc7180-system-noc 40*6be33864SEmmanuel Vadot - qcom,sdm845-aggre1-noc 41*6be33864SEmmanuel Vadot - qcom,sdm845-aggre2-noc 42*6be33864SEmmanuel Vadot - qcom,sdm845-config-noc 43*6be33864SEmmanuel Vadot - qcom,sdm845-dc-noc 44*6be33864SEmmanuel Vadot - qcom,sdm845-gladiator-noc 45*6be33864SEmmanuel Vadot - qcom,sdm845-mem-noc 46*6be33864SEmmanuel Vadot - qcom,sdm845-mmss-noc 47*6be33864SEmmanuel Vadot - qcom,sdm845-system-noc 48*6be33864SEmmanuel Vadot - qcom,sm8150-aggre1-noc 49*6be33864SEmmanuel Vadot - qcom,sm8150-aggre2-noc 50*6be33864SEmmanuel Vadot - qcom,sm8150-camnoc-noc 51*6be33864SEmmanuel Vadot - qcom,sm8150-compute-noc 52*6be33864SEmmanuel Vadot - qcom,sm8150-config-noc 53*6be33864SEmmanuel Vadot - qcom,sm8150-dc-noc 54*6be33864SEmmanuel Vadot - qcom,sm8150-gem-noc 55*6be33864SEmmanuel Vadot - qcom,sm8150-ipa-virt 56*6be33864SEmmanuel Vadot - qcom,sm8150-mc-virt 57*6be33864SEmmanuel Vadot - qcom,sm8150-mmss-noc 58*6be33864SEmmanuel Vadot - qcom,sm8150-system-noc 59*6be33864SEmmanuel Vadot - qcom,sm8250-aggre1-noc 60*6be33864SEmmanuel Vadot - qcom,sm8250-aggre2-noc 61*6be33864SEmmanuel Vadot - qcom,sm8250-compute-noc 62*6be33864SEmmanuel Vadot - qcom,sm8250-config-noc 63*6be33864SEmmanuel Vadot - qcom,sm8250-dc-noc 64*6be33864SEmmanuel Vadot - qcom,sm8250-gem-noc 65*6be33864SEmmanuel Vadot - qcom,sm8250-ipa-virt 66*6be33864SEmmanuel Vadot - qcom,sm8250-mc-virt 67*6be33864SEmmanuel Vadot - qcom,sm8250-mmss-noc 68*6be33864SEmmanuel Vadot - qcom,sm8250-npu-noc 69*6be33864SEmmanuel Vadot - qcom,sm8250-system-noc 70*6be33864SEmmanuel Vadot 71*6be33864SEmmanuel Vadot '#interconnect-cells': 72*6be33864SEmmanuel Vadot const: 1 73*6be33864SEmmanuel Vadot 74*6be33864SEmmanuel Vadot qcom,bcm-voters: 75*6be33864SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle-array 76*6be33864SEmmanuel Vadot description: | 77*6be33864SEmmanuel Vadot List of phandles to qcom,bcm-voter nodes that are required by 78*6be33864SEmmanuel Vadot this interconnect to send RPMh commands. 79*6be33864SEmmanuel Vadot 80*6be33864SEmmanuel Vadot qcom,bcm-voter-names: 81*6be33864SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string-array 82*6be33864SEmmanuel Vadot description: | 83*6be33864SEmmanuel Vadot Names for each of the qcom,bcm-voters specified. 84*6be33864SEmmanuel Vadot 85*6be33864SEmmanuel Vadotrequired: 86*6be33864SEmmanuel Vadot - compatible 87*6be33864SEmmanuel Vadot - reg 88*6be33864SEmmanuel Vadot - '#interconnect-cells' 89*6be33864SEmmanuel Vadot - qcom,bcm-voters 90*6be33864SEmmanuel Vadot 91*6be33864SEmmanuel VadotadditionalProperties: false 92*6be33864SEmmanuel Vadot 93*6be33864SEmmanuel Vadotexamples: 94*6be33864SEmmanuel Vadot - | 95*6be33864SEmmanuel Vadot #include <dt-bindings/interconnect/qcom,sdm845.h> 96*6be33864SEmmanuel Vadot 97*6be33864SEmmanuel Vadot mem_noc: interconnect@1380000 { 98*6be33864SEmmanuel Vadot compatible = "qcom,sdm845-mem-noc"; 99*6be33864SEmmanuel Vadot reg = <0x01380000 0x27200>; 100*6be33864SEmmanuel Vadot #interconnect-cells = <1>; 101*6be33864SEmmanuel Vadot qcom,bcm-voters = <&apps_bcm_voter>; 102*6be33864SEmmanuel Vadot }; 103*6be33864SEmmanuel Vadot 104*6be33864SEmmanuel Vadot mmss_noc: interconnect@1740000 { 105*6be33864SEmmanuel Vadot compatible = "qcom,sdm845-mmss-noc"; 106*6be33864SEmmanuel Vadot reg = <0x01740000 0x1c1000>; 107*6be33864SEmmanuel Vadot #interconnect-cells = <1>; 108*6be33864SEmmanuel Vadot qcom,bcm-voter-names = "apps", "disp"; 109*6be33864SEmmanuel Vadot qcom,bcm-voters = <&apps_bcm_voter>, <&disp_bcm_voter>; 110*6be33864SEmmanuel Vadot }; 111