1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/interconnect/qcom,sdm660.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm SDM660 Network-On-Chip interconnect
8
9 maintainers:
10 - AngeloGioacchino Del Regno <kholk11@gmail.com>
11
12 description: |
13 The Qualcomm SDM660 interconnect providers support adjusting the
14 bandwidth requirements between the various NoC fabrics.
15
16 properties:
17 reg:
18 maxItems: 1
19
20 compatible:
21 enum:
22 - qcom,sdm660-a2noc
23 - qcom,sdm660-bimc
24 - qcom,sdm660-cnoc
25 - qcom,sdm660-gnoc
26 - qcom,sdm660-mnoc
27 - qcom,sdm660-snoc
28
29 '#interconnect-cells':
30 const: 1
31
32 clocks:
33 minItems: 1
34 maxItems: 7
35
36 clock-names:
37 minItems: 1
38 maxItems: 7
39
40 required:
41 - compatible
42 - reg
43 - '#interconnect-cells'
44 - clock-names
45 - clocks
46
47 additionalProperties: false
48
49 allOf:
50 - if:
51 properties:
52 compatible:
53 contains:
54 enum:
55 - qcom,sdm660-mnoc
56 then:
57 properties:
58 clocks:
59 items:
60 - description: Bus Clock.
61 - description: Bus A Clock.
62 - description: CPU-NoC High-performance Bus Clock.
63 clock-names:
64 items:
65 - const: bus
66 - const: bus_a
67 - const: iface
68
69 - if:
70 properties:
71 compatible:
72 contains:
73 enum:
74 - qcom,sdm660-a2noc
75 then:
76 properties:
77 clocks:
78 items:
79 - description: Bus Clock.
80 - description: Bus A Clock.
81 - description: IPA Clock.
82 - description: UFS AXI Clock.
83 - description: Aggregate2 UFS AXI Clock.
84 - description: Aggregate2 USB3 AXI Clock.
85 - description: Config NoC USB2 AXI Clock.
86 clock-names:
87 items:
88 - const: bus
89 - const: bus_a
90 - const: ipa
91 - const: ufs_axi
92 - const: aggre2_ufs_axi
93 - const: aggre2_usb3_axi
94 - const: cfg_noc_usb2_axi
95
96 - if:
97 properties:
98 compatible:
99 contains:
100 enum:
101 - qcom,sdm660-bimc
102 - qcom,sdm660-cnoc
103 - qcom,sdm660-gnoc
104 - qcom,sdm660-snoc
105 then:
106 properties:
107 clocks:
108 items:
109 - description: Bus Clock.
110 - description: Bus A Clock.
111 clock-names:
112 items:
113 - const: bus
114 - const: bus_a
115
116 examples:
117 - |
118 #include <dt-bindings/clock/qcom,rpmcc.h>
119 #include <dt-bindings/clock/qcom,mmcc-sdm660.h>
120 #include <dt-bindings/clock/qcom,gcc-sdm660.h>
121
122 bimc: interconnect@1008000 {
123 compatible = "qcom,sdm660-bimc";
124 reg = <0x01008000 0x78000>;
125 #interconnect-cells = <1>;
126 clock-names = "bus", "bus_a";
127 clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
128 <&rpmcc RPM_SMD_BIMC_A_CLK>;
129 };
130
131 cnoc: interconnect@1500000 {
132 compatible = "qcom,sdm660-cnoc";
133 reg = <0x01500000 0x10000>;
134 #interconnect-cells = <1>;
135 clock-names = "bus", "bus_a";
136 clocks = <&rpmcc RPM_SMD_CNOC_CLK>,
137 <&rpmcc RPM_SMD_CNOC_A_CLK>;
138 };
139
140 snoc: interconnect@1626000 {
141 compatible = "qcom,sdm660-snoc";
142 reg = <0x01626000 0x7090>;
143 #interconnect-cells = <1>;
144 clock-names = "bus", "bus_a";
145 clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
146 <&rpmcc RPM_SMD_SNOC_A_CLK>;
147 };
148
149 a2noc: interconnect@1704000 {
150 compatible = "qcom,sdm660-a2noc";
151 reg = <0x01704000 0xc100>;
152 #interconnect-cells = <1>;
153 clock-names = "bus",
154 "bus_a",
155 "ipa",
156 "ufs_axi",
157 "aggre2_ufs_axi",
158 "aggre2_usb3_axi",
159 "cfg_noc_usb2_axi";
160 clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>,
161 <&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>,
162 <&rpmcc RPM_SMD_IPA_CLK>,
163 <&gcc GCC_UFS_AXI_CLK>,
164 <&gcc GCC_AGGRE2_UFS_AXI_CLK>,
165 <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
166 <&gcc GCC_CFG_NOC_USB2_AXI_CLK>;
167 };
168
169 mnoc: interconnect@1745000 {
170 compatible = "qcom,sdm660-mnoc";
171 reg = <0x01745000 0xa010>;
172 #interconnect-cells = <1>;
173 clock-names = "bus", "bus_a", "iface";
174 clocks = <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK>,
175 <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK_A>,
176 <&mmcc AHB_CLK_SRC>;
177 };
178
179 gnoc: interconnect@17900000 {
180 compatible = "qcom,sdm660-gnoc";
181 reg = <0x17900000 0xe000>;
182 #interconnect-cells = <1>;
183 clock-names = "bus", "bus_a";
184 clocks = <&xo_board>, <&xo_board>;
185 };
Cache object: 7cc6fec5c82e581db83e4025b82da61d
|