1*d03374a6SKonrad Dybcio# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*d03374a6SKonrad Dybcio%YAML 1.2 3*d03374a6SKonrad Dybcio--- 4*d03374a6SKonrad Dybcio$id: http://devicetree.org/schemas/interconnect/qcom,msm8996.yaml# 5*d03374a6SKonrad Dybcio$schema: http://devicetree.org/meta-schemas/core.yaml# 6*d03374a6SKonrad Dybcio 7*d03374a6SKonrad Dybciotitle: Qualcomm MSM8996 Network-On-Chip interconnect 8*d03374a6SKonrad Dybcio 9*d03374a6SKonrad Dybciomaintainers: 10*d03374a6SKonrad Dybcio - Konrad Dybcio <konradybcio@kernel.org> 11*d03374a6SKonrad Dybcio 12*d03374a6SKonrad Dybciodescription: | 13*d03374a6SKonrad Dybcio The Qualcomm MSM8996 interconnect providers support adjusting the 14*d03374a6SKonrad Dybcio bandwidth requirements between the various NoC fabrics. 15*d03374a6SKonrad Dybcio 16*d03374a6SKonrad Dybcioproperties: 17*d03374a6SKonrad Dybcio compatible: 18*d03374a6SKonrad Dybcio enum: 19*d03374a6SKonrad Dybcio - qcom,msm8996-a0noc 20*d03374a6SKonrad Dybcio - qcom,msm8996-a1noc 21*d03374a6SKonrad Dybcio - qcom,msm8996-a2noc 22*d03374a6SKonrad Dybcio - qcom,msm8996-bimc 23*d03374a6SKonrad Dybcio - qcom,msm8996-cnoc 24*d03374a6SKonrad Dybcio - qcom,msm8996-mnoc 25*d03374a6SKonrad Dybcio - qcom,msm8996-pnoc 26*d03374a6SKonrad Dybcio - qcom,msm8996-snoc 27*d03374a6SKonrad Dybcio 28*d03374a6SKonrad Dybcio reg: 29*d03374a6SKonrad Dybcio maxItems: 1 30*d03374a6SKonrad Dybcio 31*d03374a6SKonrad Dybcio clock-names: 32*d03374a6SKonrad Dybcio minItems: 1 33*d03374a6SKonrad Dybcio maxItems: 3 34*d03374a6SKonrad Dybcio 35*d03374a6SKonrad Dybcio clocks: 36*d03374a6SKonrad Dybcio minItems: 1 37*d03374a6SKonrad Dybcio maxItems: 3 38*d03374a6SKonrad Dybcio 39*d03374a6SKonrad Dybcio power-domains: 40*d03374a6SKonrad Dybcio maxItems: 1 41*d03374a6SKonrad Dybcio 42*d03374a6SKonrad Dybciorequired: 43*d03374a6SKonrad Dybcio - compatible 44*d03374a6SKonrad Dybcio - reg 45*d03374a6SKonrad Dybcio 46*d03374a6SKonrad DybciounevaluatedProperties: false 47*d03374a6SKonrad Dybcio 48*d03374a6SKonrad DybcioallOf: 49*d03374a6SKonrad Dybcio - $ref: qcom,rpm-common.yaml# 50*d03374a6SKonrad Dybcio - if: 51*d03374a6SKonrad Dybcio properties: 52*d03374a6SKonrad Dybcio compatible: 53*d03374a6SKonrad Dybcio const: qcom,msm8996-a0noc 54*d03374a6SKonrad Dybcio 55*d03374a6SKonrad Dybcio then: 56*d03374a6SKonrad Dybcio properties: 57*d03374a6SKonrad Dybcio clocks: 58*d03374a6SKonrad Dybcio items: 59*d03374a6SKonrad Dybcio - description: Aggregate0 System NoC AXI Clock. 60*d03374a6SKonrad Dybcio - description: Aggregate0 Config NoC AHB Clock. 61*d03374a6SKonrad Dybcio - description: Aggregate0 NoC MPU Clock. 62*d03374a6SKonrad Dybcio 63*d03374a6SKonrad Dybcio clock-names: 64*d03374a6SKonrad Dybcio items: 65*d03374a6SKonrad Dybcio - const: aggre0_snoc_axi 66*d03374a6SKonrad Dybcio - const: aggre0_cnoc_ahb 67*d03374a6SKonrad Dybcio - const: aggre0_noc_mpu_cfg 68*d03374a6SKonrad Dybcio 69*d03374a6SKonrad Dybcio required: 70*d03374a6SKonrad Dybcio - power-domains 71*d03374a6SKonrad Dybcio 72*d03374a6SKonrad Dybcio - if: 73*d03374a6SKonrad Dybcio properties: 74*d03374a6SKonrad Dybcio compatible: 75*d03374a6SKonrad Dybcio const: qcom,msm8996-mnoc 76*d03374a6SKonrad Dybcio 77*d03374a6SKonrad Dybcio then: 78*d03374a6SKonrad Dybcio properties: 79*d03374a6SKonrad Dybcio clocks: 80*d03374a6SKonrad Dybcio items: 81*d03374a6SKonrad Dybcio - description: CPU-NoC High-performance Bus Clock. 82*d03374a6SKonrad Dybcio 83*d03374a6SKonrad Dybcio clock-names: 84*d03374a6SKonrad Dybcio const: iface 85*d03374a6SKonrad Dybcio 86*d03374a6SKonrad Dybcio - if: 87*d03374a6SKonrad Dybcio properties: 88*d03374a6SKonrad Dybcio compatible: 89*d03374a6SKonrad Dybcio const: qcom,msm8996-a2noc 90*d03374a6SKonrad Dybcio 91*d03374a6SKonrad Dybcio then: 92*d03374a6SKonrad Dybcio properties: 93*d03374a6SKonrad Dybcio clocks: 94*d03374a6SKonrad Dybcio items: 95*d03374a6SKonrad Dybcio - description: Aggregate2 NoC UFS AXI Clock 96*d03374a6SKonrad Dybcio - description: UFS AXI Clock 97*d03374a6SKonrad Dybcio 98*d03374a6SKonrad Dybcio clock-names: 99*d03374a6SKonrad Dybcio items: 100*d03374a6SKonrad Dybcio - const: aggre2_ufs_axi 101*d03374a6SKonrad Dybcio - const: ufs_axi 102*d03374a6SKonrad Dybcio 103*d03374a6SKonrad Dybcioexamples: 104*d03374a6SKonrad Dybcio - | 105*d03374a6SKonrad Dybcio #include <dt-bindings/clock/qcom,gcc-msm8996.h> 106*d03374a6SKonrad Dybcio #include <dt-bindings/clock/qcom,mmcc-msm8996.h> 107*d03374a6SKonrad Dybcio #include <dt-bindings/clock/qcom,rpmcc.h> 108*d03374a6SKonrad Dybcio 109*d03374a6SKonrad Dybcio bimc: interconnect@408000 { 110*d03374a6SKonrad Dybcio compatible = "qcom,msm8996-bimc"; 111*d03374a6SKonrad Dybcio reg = <0x00408000 0x5a000>; 112*d03374a6SKonrad Dybcio #interconnect-cells = <1>; 113*d03374a6SKonrad Dybcio }; 114*d03374a6SKonrad Dybcio 115*d03374a6SKonrad Dybcio a0noc: interconnect@543000 { 116*d03374a6SKonrad Dybcio compatible = "qcom,msm8996-a0noc"; 117*d03374a6SKonrad Dybcio reg = <0x00543000 0x6000>; 118*d03374a6SKonrad Dybcio #interconnect-cells = <1>; 119*d03374a6SKonrad Dybcio clocks = <&gcc GCC_AGGRE0_SNOC_AXI_CLK>, 120*d03374a6SKonrad Dybcio <&gcc GCC_AGGRE0_CNOC_AHB_CLK>, 121*d03374a6SKonrad Dybcio <&gcc GCC_AGGRE0_NOC_MPU_CFG_AHB_CLK>; 122*d03374a6SKonrad Dybcio clock-names = "aggre0_snoc_axi", 123*d03374a6SKonrad Dybcio "aggre0_cnoc_ahb", 124*d03374a6SKonrad Dybcio "aggre0_noc_mpu_cfg"; 125*d03374a6SKonrad Dybcio power-domains = <&gcc AGGRE0_NOC_GDSC>; 126*d03374a6SKonrad Dybcio }; 127