153 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/interconnect/qcom,sm6115.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Qualcomm SM6115 Network-On-Chip interconnect8 9maintainers:10 - Konrad Dybcio <konradybcio@kernel.org>11 12description:13 The Qualcomm SM6115 interconnect providers support adjusting the14 bandwidth requirements between the various NoC fabrics.15 16properties:17 compatible:18 enum:19 - qcom,sm6115-bimc20 - qcom,sm6115-cnoc21 - qcom,sm6115-snoc22 23 reg:24 maxItems: 125 26 clocks:27 minItems: 128 maxItems: 429 30 clock-names:31 minItems: 132 maxItems: 433 34# Child node's properties35patternProperties:36 '^interconnect-[a-z0-9]+$':37 type: object38 description:39 The interconnect providers do not have a separate QoS register space,40 but share parent's space.41 42 $ref: qcom,rpm-common.yaml#43 44 properties:45 compatible:46 enum:47 - qcom,sm6115-clk-virt48 - qcom,sm6115-mmrt-virt49 - qcom,sm6115-mmnrt-virt50 51 required:52 - compatible53 54 unevaluatedProperties: false55 56required:57 - compatible58 - reg59 60allOf:61 - $ref: qcom,rpm-common.yaml#62 - if:63 properties:64 compatible:65 const: qcom,sm6115-cnoc66 67 then:68 properties:69 clocks:70 items:71 - description: USB-NoC AXI clock72 73 clock-names:74 items:75 - const: usb_axi76 77 - if:78 properties:79 compatible:80 const: qcom,sm6115-snoc81 82 then:83 properties:84 clocks:85 items:86 - description: CPU-NoC AXI clock.87 - description: UFS-NoC AXI clock.88 - description: USB-NoC AXI clock.89 - description: IPA clock.90 91 clock-names:92 items:93 - const: cpu_axi94 - const: ufs_axi95 - const: usb_axi96 - const: ipa97 98 - if:99 properties:100 compatible:101 enum:102 - qcom,sm6115-bimc103 - qcom,sm6115-clk-virt104 - qcom,sm6115-mmrt-virt105 - qcom,sm6115-mmnrt-virt106 107 then:108 properties:109 clocks: false110 clock-names: false111 112unevaluatedProperties: false113 114examples:115 - |116 #include <dt-bindings/clock/qcom,gcc-sm6115.h>117 #include <dt-bindings/clock/qcom,rpmcc.h>118 119 snoc: interconnect@1880000 {120 compatible = "qcom,sm6115-snoc";121 reg = <0x01880000 0x60200>;122 clocks = <&gcc GCC_SYS_NOC_CPUSS_AHB_CLK>,123 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>,124 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>,125 <&rpmcc RPM_SMD_IPA_CLK>;126 clock-names = "cpu_axi",127 "ufs_axi",128 "usb_axi",129 "ipa";130 #interconnect-cells = <1>;131 132 qup_virt: interconnect-clk {133 compatible = "qcom,sm6115-clk-virt";134 #interconnect-cells = <1>;135 };136 137 mmnrt_virt: interconnect-mmnrt {138 compatible = "qcom,sm6115-mmnrt-virt";139 #interconnect-cells = <1>;140 };141 142 mmrt_virt: interconnect-mmrt {143 compatible = "qcom,sm6115-mmrt-virt";144 #interconnect-cells = <1>;145 };146 };147 148 cnoc: interconnect@1900000 {149 compatible = "qcom,sm6115-cnoc";150 reg = <0x01900000 0x8200>;151 #interconnect-cells = <1>;152 };153