18d13bc63SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28d13bc63SEmmanuel Vadot%YAML 1.2 38d13bc63SEmmanuel Vadot--- 48d13bc63SEmmanuel Vadot$id: http://devicetree.org/schemas/interconnect/qcom,sm8650-rpmh.yaml# 58d13bc63SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68d13bc63SEmmanuel Vadot 78d13bc63SEmmanuel Vadottitle: Qualcomm RPMh Network-On-Chip Interconnect on SM8650 88d13bc63SEmmanuel Vadot 98d13bc63SEmmanuel Vadotmaintainers: 108d13bc63SEmmanuel Vadot - Abel Vesa <abel.vesa@linaro.org> 118d13bc63SEmmanuel Vadot - Neil Armstrong <neil.armstrong@linaro.org> 128d13bc63SEmmanuel Vadot 138d13bc63SEmmanuel Vadotdescription: | 148d13bc63SEmmanuel Vadot RPMh interconnect providers support system bandwidth requirements through 158d13bc63SEmmanuel Vadot RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is 168d13bc63SEmmanuel Vadot able to communicate with the BCM through the Resource State Coordinator (RSC) 178d13bc63SEmmanuel Vadot associated with each execution environment. Provider nodes must point to at 188d13bc63SEmmanuel Vadot least one RPMh device child node pertaining to their RSC and each provider 198d13bc63SEmmanuel Vadot can map to multiple RPMh resources. 208d13bc63SEmmanuel Vadot 21*833e5d42SEmmanuel Vadot See also: include/dt-bindings/interconnect/qcom,sm8650-rpmh.h 228d13bc63SEmmanuel Vadot 238d13bc63SEmmanuel Vadotproperties: 248d13bc63SEmmanuel Vadot compatible: 258d13bc63SEmmanuel Vadot enum: 268d13bc63SEmmanuel Vadot - qcom,sm8650-aggre1-noc 278d13bc63SEmmanuel Vadot - qcom,sm8650-aggre2-noc 288d13bc63SEmmanuel Vadot - qcom,sm8650-clk-virt 298d13bc63SEmmanuel Vadot - qcom,sm8650-cnoc-main 308d13bc63SEmmanuel Vadot - qcom,sm8650-config-noc 318d13bc63SEmmanuel Vadot - qcom,sm8650-gem-noc 328d13bc63SEmmanuel Vadot - qcom,sm8650-lpass-ag-noc 338d13bc63SEmmanuel Vadot - qcom,sm8650-lpass-lpiaon-noc 348d13bc63SEmmanuel Vadot - qcom,sm8650-lpass-lpicx-noc 358d13bc63SEmmanuel Vadot - qcom,sm8650-mc-virt 368d13bc63SEmmanuel Vadot - qcom,sm8650-mmss-noc 378d13bc63SEmmanuel Vadot - qcom,sm8650-nsp-noc 388d13bc63SEmmanuel Vadot - qcom,sm8650-pcie-anoc 398d13bc63SEmmanuel Vadot - qcom,sm8650-system-noc 408d13bc63SEmmanuel Vadot 418d13bc63SEmmanuel Vadot reg: 428d13bc63SEmmanuel Vadot maxItems: 1 438d13bc63SEmmanuel Vadot 448d13bc63SEmmanuel Vadot clocks: 458d13bc63SEmmanuel Vadot minItems: 1 468d13bc63SEmmanuel Vadot maxItems: 2 478d13bc63SEmmanuel Vadot 488d13bc63SEmmanuel Vadotrequired: 498d13bc63SEmmanuel Vadot - compatible 508d13bc63SEmmanuel Vadot 518d13bc63SEmmanuel VadotallOf: 528d13bc63SEmmanuel Vadot - $ref: qcom,rpmh-common.yaml# 538d13bc63SEmmanuel Vadot - if: 548d13bc63SEmmanuel Vadot properties: 558d13bc63SEmmanuel Vadot compatible: 568d13bc63SEmmanuel Vadot contains: 578d13bc63SEmmanuel Vadot enum: 588d13bc63SEmmanuel Vadot - qcom,sm8650-clk-virt 598d13bc63SEmmanuel Vadot - qcom,sm8650-mc-virt 608d13bc63SEmmanuel Vadot then: 618d13bc63SEmmanuel Vadot properties: 628d13bc63SEmmanuel Vadot reg: false 638d13bc63SEmmanuel Vadot else: 648d13bc63SEmmanuel Vadot required: 658d13bc63SEmmanuel Vadot - reg 668d13bc63SEmmanuel Vadot 678d13bc63SEmmanuel Vadot - if: 688d13bc63SEmmanuel Vadot properties: 698d13bc63SEmmanuel Vadot compatible: 708d13bc63SEmmanuel Vadot contains: 718d13bc63SEmmanuel Vadot enum: 728d13bc63SEmmanuel Vadot - qcom,sm8650-pcie-anoc 738d13bc63SEmmanuel Vadot then: 748d13bc63SEmmanuel Vadot properties: 758d13bc63SEmmanuel Vadot clocks: 768d13bc63SEmmanuel Vadot items: 778d13bc63SEmmanuel Vadot - description: aggre-NOC PCIe AXI clock 788d13bc63SEmmanuel Vadot - description: cfg-NOC PCIe a-NOC AHB clock 798d13bc63SEmmanuel Vadot 808d13bc63SEmmanuel Vadot - if: 818d13bc63SEmmanuel Vadot properties: 828d13bc63SEmmanuel Vadot compatible: 838d13bc63SEmmanuel Vadot contains: 848d13bc63SEmmanuel Vadot enum: 858d13bc63SEmmanuel Vadot - qcom,sm8650-aggre1-noc 868d13bc63SEmmanuel Vadot then: 878d13bc63SEmmanuel Vadot properties: 888d13bc63SEmmanuel Vadot clocks: 898d13bc63SEmmanuel Vadot items: 908d13bc63SEmmanuel Vadot - description: aggre UFS PHY AXI clock 918d13bc63SEmmanuel Vadot - description: aggre USB3 PRIM AXI clock 928d13bc63SEmmanuel Vadot 938d13bc63SEmmanuel Vadot - if: 948d13bc63SEmmanuel Vadot properties: 958d13bc63SEmmanuel Vadot compatible: 968d13bc63SEmmanuel Vadot contains: 978d13bc63SEmmanuel Vadot enum: 988d13bc63SEmmanuel Vadot - qcom,sm8650-aggre2-noc 998d13bc63SEmmanuel Vadot then: 1008d13bc63SEmmanuel Vadot properties: 1018d13bc63SEmmanuel Vadot clocks: 1028d13bc63SEmmanuel Vadot items: 1038d13bc63SEmmanuel Vadot - description: RPMH CC IPA clock 1048d13bc63SEmmanuel Vadot 1058d13bc63SEmmanuel Vadot - if: 1068d13bc63SEmmanuel Vadot properties: 1078d13bc63SEmmanuel Vadot compatible: 1088d13bc63SEmmanuel Vadot contains: 1098d13bc63SEmmanuel Vadot enum: 1108d13bc63SEmmanuel Vadot - qcom,sm8650-aggre1-noc 1118d13bc63SEmmanuel Vadot - qcom,sm8650-aggre2-noc 1128d13bc63SEmmanuel Vadot - qcom,sm8650-pcie-anoc 1138d13bc63SEmmanuel Vadot then: 1148d13bc63SEmmanuel Vadot required: 1158d13bc63SEmmanuel Vadot - clocks 1168d13bc63SEmmanuel Vadot else: 1178d13bc63SEmmanuel Vadot properties: 1188d13bc63SEmmanuel Vadot clocks: false 1198d13bc63SEmmanuel Vadot 1208d13bc63SEmmanuel VadotunevaluatedProperties: false 1218d13bc63SEmmanuel Vadot 1228d13bc63SEmmanuel Vadotexamples: 1238d13bc63SEmmanuel Vadot - | 1248d13bc63SEmmanuel Vadot clk_virt: interconnect-0 { 1258d13bc63SEmmanuel Vadot compatible = "qcom,sm8650-clk-virt"; 1268d13bc63SEmmanuel Vadot #interconnect-cells = <2>; 1278d13bc63SEmmanuel Vadot qcom,bcm-voters = <&apps_bcm_voter>; 1288d13bc63SEmmanuel Vadot }; 1298d13bc63SEmmanuel Vadot 1308d13bc63SEmmanuel Vadot aggre1_noc: interconnect@16e0000 { 1318d13bc63SEmmanuel Vadot compatible = "qcom,sm8650-aggre1-noc"; 1328d13bc63SEmmanuel Vadot reg = <0x016e0000 0x14400>; 1338d13bc63SEmmanuel Vadot #interconnect-cells = <2>; 1348d13bc63SEmmanuel Vadot clocks = <&gcc_phy_axi_clk>, <&gcc_prim_axi_clk>; 1358d13bc63SEmmanuel Vadot qcom,bcm-voters = <&apps_bcm_voter>; 1368d13bc63SEmmanuel Vadot }; 137