xref: /linux/drivers/interconnect/qcom/nord.c (revision 00599d4841790d05401820a96cf7edb193888b00)
1*010f4d24SOdelu Kukatla // SPDX-License-Identifier: GPL-2.0-only
2*010f4d24SOdelu Kukatla /*
3*010f4d24SOdelu Kukatla  * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4*010f4d24SOdelu Kukatla  *
5*010f4d24SOdelu Kukatla  */
6*010f4d24SOdelu Kukatla 
7*010f4d24SOdelu Kukatla #include <linux/device.h>
8*010f4d24SOdelu Kukatla #include <linux/interconnect.h>
9*010f4d24SOdelu Kukatla #include <linux/interconnect-provider.h>
10*010f4d24SOdelu Kukatla #include <linux/module.h>
11*010f4d24SOdelu Kukatla #include <linux/of_platform.h>
12*010f4d24SOdelu Kukatla #include <dt-bindings/interconnect/qcom,nord-rpmh.h>
13*010f4d24SOdelu Kukatla 
14*010f4d24SOdelu Kukatla #include "bcm-voter.h"
15*010f4d24SOdelu Kukatla #include "icc-rpmh.h"
16*010f4d24SOdelu Kukatla 
17*010f4d24SOdelu Kukatla static struct qcom_icc_node qup0_core_slave = {
18*010f4d24SOdelu Kukatla 	.name = "qup0_core_slave",
19*010f4d24SOdelu Kukatla 	.channels = 1,
20*010f4d24SOdelu Kukatla 	.buswidth = 4,
21*010f4d24SOdelu Kukatla };
22*010f4d24SOdelu Kukatla 
23*010f4d24SOdelu Kukatla static struct qcom_icc_node qup1_core_slave = {
24*010f4d24SOdelu Kukatla 	.name = "qup1_core_slave",
25*010f4d24SOdelu Kukatla 	.channels = 1,
26*010f4d24SOdelu Kukatla 	.buswidth = 4,
27*010f4d24SOdelu Kukatla };
28*010f4d24SOdelu Kukatla 
29*010f4d24SOdelu Kukatla static struct qcom_icc_node qup2_core_slave = {
30*010f4d24SOdelu Kukatla 	.name = "qup2_core_slave",
31*010f4d24SOdelu Kukatla 	.channels = 1,
32*010f4d24SOdelu Kukatla 	.buswidth = 4,
33*010f4d24SOdelu Kukatla };
34*010f4d24SOdelu Kukatla 
35*010f4d24SOdelu Kukatla static struct qcom_icc_node qup3_core_slave = {
36*010f4d24SOdelu Kukatla 	.name = "qup3_core_slave",
37*010f4d24SOdelu Kukatla 	.channels = 1,
38*010f4d24SOdelu Kukatla 	.buswidth = 4,
39*010f4d24SOdelu Kukatla };
40*010f4d24SOdelu Kukatla 
41*010f4d24SOdelu Kukatla static struct qcom_icc_node ps_eth_0 = {
42*010f4d24SOdelu Kukatla 	.name = "ps_eth_0",
43*010f4d24SOdelu Kukatla 	.channels = 1,
44*010f4d24SOdelu Kukatla 	.buswidth = 4,
45*010f4d24SOdelu Kukatla };
46*010f4d24SOdelu Kukatla 
47*010f4d24SOdelu Kukatla static struct qcom_icc_node ps_eth_1 = {
48*010f4d24SOdelu Kukatla 	.name = "ps_eth_1",
49*010f4d24SOdelu Kukatla 	.channels = 1,
50*010f4d24SOdelu Kukatla 	.buswidth = 4,
51*010f4d24SOdelu Kukatla };
52*010f4d24SOdelu Kukatla 
53*010f4d24SOdelu Kukatla static struct qcom_icc_node ps_shs_server = {
54*010f4d24SOdelu Kukatla 	.name = "ps_shs_server",
55*010f4d24SOdelu Kukatla 	.channels = 1,
56*010f4d24SOdelu Kukatla 	.buswidth = 4,
57*010f4d24SOdelu Kukatla };
58*010f4d24SOdelu Kukatla 
59*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy0 = {
60*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy0",
61*010f4d24SOdelu Kukatla 	.channels = 1,
62*010f4d24SOdelu Kukatla 	.buswidth = 4,
63*010f4d24SOdelu Kukatla };
64*010f4d24SOdelu Kukatla 
65*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy1 = {
66*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy1",
67*010f4d24SOdelu Kukatla 	.channels = 1,
68*010f4d24SOdelu Kukatla 	.buswidth = 4,
69*010f4d24SOdelu Kukatla };
70*010f4d24SOdelu Kukatla 
71*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy2 = {
72*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy2",
73*010f4d24SOdelu Kukatla 	.channels = 1,
74*010f4d24SOdelu Kukatla 	.buswidth = 4,
75*010f4d24SOdelu Kukatla };
76*010f4d24SOdelu Kukatla 
77*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy3 = {
78*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy3",
79*010f4d24SOdelu Kukatla 	.channels = 1,
80*010f4d24SOdelu Kukatla 	.buswidth = 4,
81*010f4d24SOdelu Kukatla };
82*010f4d24SOdelu Kukatla 
83*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy_eth_0 = {
84*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy_eth_0",
85*010f4d24SOdelu Kukatla 	.channels = 1,
86*010f4d24SOdelu Kukatla 	.buswidth = 4,
87*010f4d24SOdelu Kukatla };
88*010f4d24SOdelu Kukatla 
89*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ahb2phy_eth_1 = {
90*010f4d24SOdelu Kukatla 	.name = "qhs_ahb2phy_eth_1",
91*010f4d24SOdelu Kukatla 	.channels = 1,
92*010f4d24SOdelu Kukatla 	.buswidth = 4,
93*010f4d24SOdelu Kukatla };
94*010f4d24SOdelu Kukatla 
95*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_camera_cfg = {
96*010f4d24SOdelu Kukatla 	.name = "qhs_camera_cfg",
97*010f4d24SOdelu Kukatla 	.channels = 1,
98*010f4d24SOdelu Kukatla 	.buswidth = 4,
99*010f4d24SOdelu Kukatla };
100*010f4d24SOdelu Kukatla 
101*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_clk_ctl = {
102*010f4d24SOdelu Kukatla 	.name = "qhs_clk_ctl",
103*010f4d24SOdelu Kukatla 	.channels = 1,
104*010f4d24SOdelu Kukatla 	.buswidth = 4,
105*010f4d24SOdelu Kukatla };
106*010f4d24SOdelu Kukatla 
107*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_crypto0_cfg = {
108*010f4d24SOdelu Kukatla 	.name = "qhs_crypto0_cfg",
109*010f4d24SOdelu Kukatla 	.channels = 1,
110*010f4d24SOdelu Kukatla 	.buswidth = 4,
111*010f4d24SOdelu Kukatla };
112*010f4d24SOdelu Kukatla 
113*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_crypto1_cfg = {
114*010f4d24SOdelu Kukatla 	.name = "qhs_crypto1_cfg",
115*010f4d24SOdelu Kukatla 	.channels = 1,
116*010f4d24SOdelu Kukatla 	.buswidth = 4,
117*010f4d24SOdelu Kukatla };
118*010f4d24SOdelu Kukatla 
119*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_crypto2_cfg = {
120*010f4d24SOdelu Kukatla 	.name = "qhs_crypto2_cfg",
121*010f4d24SOdelu Kukatla 	.channels = 1,
122*010f4d24SOdelu Kukatla 	.buswidth = 4,
123*010f4d24SOdelu Kukatla };
124*010f4d24SOdelu Kukatla 
125*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_display_1_cfg = {
126*010f4d24SOdelu Kukatla 	.name = "qhs_display_1_cfg",
127*010f4d24SOdelu Kukatla 	.channels = 1,
128*010f4d24SOdelu Kukatla 	.buswidth = 4,
129*010f4d24SOdelu Kukatla };
130*010f4d24SOdelu Kukatla 
131*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_display_cfg = {
132*010f4d24SOdelu Kukatla 	.name = "qhs_display_cfg",
133*010f4d24SOdelu Kukatla 	.channels = 1,
134*010f4d24SOdelu Kukatla 	.buswidth = 4,
135*010f4d24SOdelu Kukatla };
136*010f4d24SOdelu Kukatla 
137*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_dprx0 = {
138*010f4d24SOdelu Kukatla 	.name = "qhs_dprx0",
139*010f4d24SOdelu Kukatla 	.channels = 1,
140*010f4d24SOdelu Kukatla 	.buswidth = 4,
141*010f4d24SOdelu Kukatla };
142*010f4d24SOdelu Kukatla 
143*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_dprx1 = {
144*010f4d24SOdelu Kukatla 	.name = "qhs_dprx1",
145*010f4d24SOdelu Kukatla 	.channels = 1,
146*010f4d24SOdelu Kukatla 	.buswidth = 4,
147*010f4d24SOdelu Kukatla };
148*010f4d24SOdelu Kukatla 
149*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_eva_cfg = {
150*010f4d24SOdelu Kukatla 	.name = "qhs_eva_cfg",
151*010f4d24SOdelu Kukatla 	.channels = 1,
152*010f4d24SOdelu Kukatla 	.buswidth = 4,
153*010f4d24SOdelu Kukatla };
154*010f4d24SOdelu Kukatla 
155*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_gpuss_0_cfg = {
156*010f4d24SOdelu Kukatla 	.name = "qhs_gpuss_0_cfg",
157*010f4d24SOdelu Kukatla 	.channels = 1,
158*010f4d24SOdelu Kukatla 	.buswidth = 8,
159*010f4d24SOdelu Kukatla };
160*010f4d24SOdelu Kukatla 
161*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_gpuss_1_cfg = {
162*010f4d24SOdelu Kukatla 	.name = "qhs_gpuss_1_cfg",
163*010f4d24SOdelu Kukatla 	.channels = 1,
164*010f4d24SOdelu Kukatla 	.buswidth = 8,
165*010f4d24SOdelu Kukatla };
166*010f4d24SOdelu Kukatla 
167*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_i2c = {
168*010f4d24SOdelu Kukatla 	.name = "qhs_i2c",
169*010f4d24SOdelu Kukatla 	.channels = 1,
170*010f4d24SOdelu Kukatla 	.buswidth = 4,
171*010f4d24SOdelu Kukatla };
172*010f4d24SOdelu Kukatla 
173*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_imem_cfg = {
174*010f4d24SOdelu Kukatla 	.name = "qhs_imem_cfg",
175*010f4d24SOdelu Kukatla 	.channels = 1,
176*010f4d24SOdelu Kukatla 	.buswidth = 4,
177*010f4d24SOdelu Kukatla };
178*010f4d24SOdelu Kukatla 
179*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_mcw_pcie = {
180*010f4d24SOdelu Kukatla 	.name = "qhs_mcw_pcie",
181*010f4d24SOdelu Kukatla 	.channels = 1,
182*010f4d24SOdelu Kukatla 	.buswidth = 4,
183*010f4d24SOdelu Kukatla };
184*010f4d24SOdelu Kukatla 
185*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_mm_rscc = {
186*010f4d24SOdelu Kukatla 	.name = "qhs_mm_rscc",
187*010f4d24SOdelu Kukatla 	.channels = 1,
188*010f4d24SOdelu Kukatla 	.buswidth = 4,
189*010f4d24SOdelu Kukatla };
190*010f4d24SOdelu Kukatla 
191*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ne_clk_ctl = {
192*010f4d24SOdelu Kukatla 	.name = "qhs_ne_clk_ctl",
193*010f4d24SOdelu Kukatla 	.channels = 1,
194*010f4d24SOdelu Kukatla 	.buswidth = 4,
195*010f4d24SOdelu Kukatla };
196*010f4d24SOdelu Kukatla 
197*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_nspss0_cfg = {
198*010f4d24SOdelu Kukatla 	.name = "qhs_nspss0_cfg",
199*010f4d24SOdelu Kukatla 	.channels = 1,
200*010f4d24SOdelu Kukatla 	.buswidth = 4,
201*010f4d24SOdelu Kukatla };
202*010f4d24SOdelu Kukatla 
203*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_nspss1_cfg = {
204*010f4d24SOdelu Kukatla 	.name = "qhs_nspss1_cfg",
205*010f4d24SOdelu Kukatla 	.channels = 1,
206*010f4d24SOdelu Kukatla 	.buswidth = 4,
207*010f4d24SOdelu Kukatla };
208*010f4d24SOdelu Kukatla 
209*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_nspss2_cfg = {
210*010f4d24SOdelu Kukatla 	.name = "qhs_nspss2_cfg",
211*010f4d24SOdelu Kukatla 	.channels = 1,
212*010f4d24SOdelu Kukatla 	.buswidth = 4,
213*010f4d24SOdelu Kukatla };
214*010f4d24SOdelu Kukatla 
215*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_nspss3_cfg = {
216*010f4d24SOdelu Kukatla 	.name = "qhs_nspss3_cfg",
217*010f4d24SOdelu Kukatla 	.channels = 1,
218*010f4d24SOdelu Kukatla 	.buswidth = 4,
219*010f4d24SOdelu Kukatla };
220*010f4d24SOdelu Kukatla 
221*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_nw_clk_ctl = {
222*010f4d24SOdelu Kukatla 	.name = "qhs_nw_clk_ctl",
223*010f4d24SOdelu Kukatla 	.channels = 1,
224*010f4d24SOdelu Kukatla 	.buswidth = 4,
225*010f4d24SOdelu Kukatla };
226*010f4d24SOdelu Kukatla 
227*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_prng = {
228*010f4d24SOdelu Kukatla 	.name = "qhs_prng",
229*010f4d24SOdelu Kukatla 	.channels = 1,
230*010f4d24SOdelu Kukatla 	.buswidth = 4,
231*010f4d24SOdelu Kukatla };
232*010f4d24SOdelu Kukatla 
233*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qdss_cfg = {
234*010f4d24SOdelu Kukatla 	.name = "qhs_qdss_cfg",
235*010f4d24SOdelu Kukatla 	.channels = 1,
236*010f4d24SOdelu Kukatla 	.buswidth = 4,
237*010f4d24SOdelu Kukatla };
238*010f4d24SOdelu Kukatla 
239*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qspi = {
240*010f4d24SOdelu Kukatla 	.name = "qhs_qspi",
241*010f4d24SOdelu Kukatla 	.channels = 1,
242*010f4d24SOdelu Kukatla 	.buswidth = 4,
243*010f4d24SOdelu Kukatla };
244*010f4d24SOdelu Kukatla 
245*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qup0 = {
246*010f4d24SOdelu Kukatla 	.name = "qhs_qup0",
247*010f4d24SOdelu Kukatla 	.channels = 1,
248*010f4d24SOdelu Kukatla 	.buswidth = 4,
249*010f4d24SOdelu Kukatla };
250*010f4d24SOdelu Kukatla 
251*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qup3 = {
252*010f4d24SOdelu Kukatla 	.name = "qhs_qup3",
253*010f4d24SOdelu Kukatla 	.channels = 1,
254*010f4d24SOdelu Kukatla 	.buswidth = 4,
255*010f4d24SOdelu Kukatla };
256*010f4d24SOdelu Kukatla 
257*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qup1 = {
258*010f4d24SOdelu Kukatla 	.name = "qhs_qup1",
259*010f4d24SOdelu Kukatla 	.channels = 1,
260*010f4d24SOdelu Kukatla 	.buswidth = 4,
261*010f4d24SOdelu Kukatla };
262*010f4d24SOdelu Kukatla 
263*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_qup2 = {
264*010f4d24SOdelu Kukatla 	.name = "qhs_qup2",
265*010f4d24SOdelu Kukatla 	.channels = 1,
266*010f4d24SOdelu Kukatla 	.buswidth = 4,
267*010f4d24SOdelu Kukatla };
268*010f4d24SOdelu Kukatla 
269*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_safedma_cfg = {
270*010f4d24SOdelu Kukatla 	.name = "qhs_safedma_cfg",
271*010f4d24SOdelu Kukatla 	.channels = 1,
272*010f4d24SOdelu Kukatla 	.buswidth = 4,
273*010f4d24SOdelu Kukatla };
274*010f4d24SOdelu Kukatla 
275*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_sdc4 = {
276*010f4d24SOdelu Kukatla 	.name = "qhs_sdc4",
277*010f4d24SOdelu Kukatla 	.channels = 1,
278*010f4d24SOdelu Kukatla 	.buswidth = 4,
279*010f4d24SOdelu Kukatla };
280*010f4d24SOdelu Kukatla 
281*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_se_clk_ctl = {
282*010f4d24SOdelu Kukatla 	.name = "qhs_se_clk_ctl",
283*010f4d24SOdelu Kukatla 	.channels = 1,
284*010f4d24SOdelu Kukatla 	.buswidth = 4,
285*010f4d24SOdelu Kukatla };
286*010f4d24SOdelu Kukatla 
287*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_tcsr = {
288*010f4d24SOdelu Kukatla 	.name = "qhs_tcsr",
289*010f4d24SOdelu Kukatla 	.channels = 1,
290*010f4d24SOdelu Kukatla 	.buswidth = 4,
291*010f4d24SOdelu Kukatla };
292*010f4d24SOdelu Kukatla 
293*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_tlmm = {
294*010f4d24SOdelu Kukatla 	.name = "qhs_tlmm",
295*010f4d24SOdelu Kukatla 	.channels = 1,
296*010f4d24SOdelu Kukatla 	.buswidth = 4,
297*010f4d24SOdelu Kukatla };
298*010f4d24SOdelu Kukatla 
299*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_tsc_cfg = {
300*010f4d24SOdelu Kukatla 	.name = "qhs_tsc_cfg",
301*010f4d24SOdelu Kukatla 	.channels = 1,
302*010f4d24SOdelu Kukatla 	.buswidth = 4,
303*010f4d24SOdelu Kukatla };
304*010f4d24SOdelu Kukatla 
305*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ufs_mem_cfg = {
306*010f4d24SOdelu Kukatla 	.name = "qhs_ufs_mem_cfg",
307*010f4d24SOdelu Kukatla 	.channels = 1,
308*010f4d24SOdelu Kukatla 	.buswidth = 4,
309*010f4d24SOdelu Kukatla };
310*010f4d24SOdelu Kukatla 
311*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_usb2 = {
312*010f4d24SOdelu Kukatla 	.name = "qhs_usb2",
313*010f4d24SOdelu Kukatla 	.channels = 1,
314*010f4d24SOdelu Kukatla 	.buswidth = 4,
315*010f4d24SOdelu Kukatla };
316*010f4d24SOdelu Kukatla 
317*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_usb3_0 = {
318*010f4d24SOdelu Kukatla 	.name = "qhs_usb3_0",
319*010f4d24SOdelu Kukatla 	.channels = 1,
320*010f4d24SOdelu Kukatla 	.buswidth = 4,
321*010f4d24SOdelu Kukatla };
322*010f4d24SOdelu Kukatla 
323*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_usb3_1 = {
324*010f4d24SOdelu Kukatla 	.name = "qhs_usb3_1",
325*010f4d24SOdelu Kukatla 	.channels = 1,
326*010f4d24SOdelu Kukatla 	.buswidth = 4,
327*010f4d24SOdelu Kukatla };
328*010f4d24SOdelu Kukatla 
329*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_venus_cfg = {
330*010f4d24SOdelu Kukatla 	.name = "qhs_venus_cfg",
331*010f4d24SOdelu Kukatla 	.channels = 1,
332*010f4d24SOdelu Kukatla 	.buswidth = 4,
333*010f4d24SOdelu Kukatla };
334*010f4d24SOdelu Kukatla 
335*010f4d24SOdelu Kukatla static struct qcom_icc_node qss_computenoc_cfg = {
336*010f4d24SOdelu Kukatla 	.name = "qss_computenoc_cfg",
337*010f4d24SOdelu Kukatla 	.channels = 1,
338*010f4d24SOdelu Kukatla 	.buswidth = 4,
339*010f4d24SOdelu Kukatla };
340*010f4d24SOdelu Kukatla 
341*010f4d24SOdelu Kukatla static struct qcom_icc_node qss_qtc_cfg = {
342*010f4d24SOdelu Kukatla 	.name = "qss_qtc_cfg",
343*010f4d24SOdelu Kukatla 	.channels = 1,
344*010f4d24SOdelu Kukatla 	.buswidth = 4,
345*010f4d24SOdelu Kukatla };
346*010f4d24SOdelu Kukatla 
347*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_qdss_stm = {
348*010f4d24SOdelu Kukatla 	.name = "xs_qdss_stm",
349*010f4d24SOdelu Kukatla 	.channels = 1,
350*010f4d24SOdelu Kukatla 	.buswidth = 4,
351*010f4d24SOdelu Kukatla };
352*010f4d24SOdelu Kukatla 
353*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_sys_tcu0_cfg = {
354*010f4d24SOdelu Kukatla 	.name = "xs_sys_tcu0_cfg",
355*010f4d24SOdelu Kukatla 	.channels = 1,
356*010f4d24SOdelu Kukatla 	.buswidth = 8,
357*010f4d24SOdelu Kukatla };
358*010f4d24SOdelu Kukatla 
359*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_sys_tcu1_cfg = {
360*010f4d24SOdelu Kukatla 	.name = "xs_sys_tcu1_cfg",
361*010f4d24SOdelu Kukatla 	.channels = 1,
362*010f4d24SOdelu Kukatla 	.buswidth = 8,
363*010f4d24SOdelu Kukatla };
364*010f4d24SOdelu Kukatla 
365*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_sys_tcu2_cfg = {
366*010f4d24SOdelu Kukatla 	.name = "xs_sys_tcu2_cfg",
367*010f4d24SOdelu Kukatla 	.channels = 1,
368*010f4d24SOdelu Kukatla 	.buswidth = 8,
369*010f4d24SOdelu Kukatla };
370*010f4d24SOdelu Kukatla 
371*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_aoss = {
372*010f4d24SOdelu Kukatla 	.name = "qhs_aoss",
373*010f4d24SOdelu Kukatla 	.channels = 1,
374*010f4d24SOdelu Kukatla 	.buswidth = 4,
375*010f4d24SOdelu Kukatla };
376*010f4d24SOdelu Kukatla 
377*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_hbcu = {
378*010f4d24SOdelu Kukatla 	.name = "qhs_hbcu",
379*010f4d24SOdelu Kukatla 	.channels = 1,
380*010f4d24SOdelu Kukatla 	.buswidth = 4,
381*010f4d24SOdelu Kukatla };
382*010f4d24SOdelu Kukatla 
383*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ipa = {
384*010f4d24SOdelu Kukatla 	.name = "qhs_ipa",
385*010f4d24SOdelu Kukatla 	.channels = 1,
386*010f4d24SOdelu Kukatla 	.buswidth = 4,
387*010f4d24SOdelu Kukatla };
388*010f4d24SOdelu Kukatla 
389*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_ipc_router = {
390*010f4d24SOdelu Kukatla 	.name = "qhs_ipc_router",
391*010f4d24SOdelu Kukatla 	.channels = 1,
392*010f4d24SOdelu Kukatla 	.buswidth = 4,
393*010f4d24SOdelu Kukatla };
394*010f4d24SOdelu Kukatla 
395*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_soccp = {
396*010f4d24SOdelu Kukatla 	.name = "qhs_soccp",
397*010f4d24SOdelu Kukatla 	.channels = 1,
398*010f4d24SOdelu Kukatla 	.buswidth = 4,
399*010f4d24SOdelu Kukatla };
400*010f4d24SOdelu Kukatla 
401*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_tme_cfg = {
402*010f4d24SOdelu Kukatla 	.name = "qhs_tme_cfg",
403*010f4d24SOdelu Kukatla 	.channels = 1,
404*010f4d24SOdelu Kukatla 	.buswidth = 4,
405*010f4d24SOdelu Kukatla };
406*010f4d24SOdelu Kukatla 
407*010f4d24SOdelu Kukatla static struct qcom_icc_node qss_ddrss_cfg = {
408*010f4d24SOdelu Kukatla 	.name = "qss_ddrss_cfg",
409*010f4d24SOdelu Kukatla 	.channels = 1,
410*010f4d24SOdelu Kukatla 	.buswidth = 4,
411*010f4d24SOdelu Kukatla };
412*010f4d24SOdelu Kukatla 
413*010f4d24SOdelu Kukatla static struct qcom_icc_node qxs_imem = {
414*010f4d24SOdelu Kukatla 	.name = "qxs_imem",
415*010f4d24SOdelu Kukatla 	.channels = 1,
416*010f4d24SOdelu Kukatla 	.buswidth = 8,
417*010f4d24SOdelu Kukatla };
418*010f4d24SOdelu Kukatla 
419*010f4d24SOdelu Kukatla static struct qcom_icc_node ebi = {
420*010f4d24SOdelu Kukatla 	.name = "ebi",
421*010f4d24SOdelu Kukatla 	.channels = 16,
422*010f4d24SOdelu Kukatla 	.buswidth = 4,
423*010f4d24SOdelu Kukatla };
424*010f4d24SOdelu Kukatla 
425*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_ahb2phy_cfg = {
426*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_ahb2phy_cfg",
427*010f4d24SOdelu Kukatla 	.channels = 1,
428*010f4d24SOdelu Kukatla 	.buswidth = 4,
429*010f4d24SOdelu Kukatla };
430*010f4d24SOdelu Kukatla 
431*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_cfg_0 = {
432*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_cfg_0",
433*010f4d24SOdelu Kukatla 	.channels = 1,
434*010f4d24SOdelu Kukatla 	.buswidth = 4,
435*010f4d24SOdelu Kukatla };
436*010f4d24SOdelu Kukatla 
437*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_cfg_1 = {
438*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_cfg_1",
439*010f4d24SOdelu Kukatla 	.channels = 1,
440*010f4d24SOdelu Kukatla 	.buswidth = 4,
441*010f4d24SOdelu Kukatla };
442*010f4d24SOdelu Kukatla 
443*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_cfg_2 = {
444*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_cfg_2",
445*010f4d24SOdelu Kukatla 	.channels = 1,
446*010f4d24SOdelu Kukatla 	.buswidth = 4,
447*010f4d24SOdelu Kukatla };
448*010f4d24SOdelu Kukatla 
449*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_cfg_3 = {
450*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_cfg_3",
451*010f4d24SOdelu Kukatla 	.channels = 1,
452*010f4d24SOdelu Kukatla 	.buswidth = 4,
453*010f4d24SOdelu Kukatla };
454*010f4d24SOdelu Kukatla 
455*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_dma_0_cfg = {
456*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_dma_0_cfg",
457*010f4d24SOdelu Kukatla 	.channels = 1,
458*010f4d24SOdelu Kukatla 	.buswidth = 4,
459*010f4d24SOdelu Kukatla };
460*010f4d24SOdelu Kukatla 
461*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_dma_1_cfg = {
462*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_dma_1_cfg",
463*010f4d24SOdelu Kukatla 	.channels = 1,
464*010f4d24SOdelu Kukatla 	.buswidth = 4,
465*010f4d24SOdelu Kukatla };
466*010f4d24SOdelu Kukatla 
467*010f4d24SOdelu Kukatla static struct qcom_icc_node qhs_pcie_dma_2_cfg = {
468*010f4d24SOdelu Kukatla 	.name = "qhs_pcie_dma_2_cfg",
469*010f4d24SOdelu Kukatla 	.channels = 1,
470*010f4d24SOdelu Kukatla 	.buswidth = 4,
471*010f4d24SOdelu Kukatla };
472*010f4d24SOdelu Kukatla 
473*010f4d24SOdelu Kukatla static struct qcom_icc_node qxs_pcie_dma_0 = {
474*010f4d24SOdelu Kukatla 	.name = "qxs_pcie_dma_0",
475*010f4d24SOdelu Kukatla 	.channels = 1,
476*010f4d24SOdelu Kukatla 	.buswidth = 8,
477*010f4d24SOdelu Kukatla };
478*010f4d24SOdelu Kukatla 
479*010f4d24SOdelu Kukatla static struct qcom_icc_node qxs_pcie_dma_1 = {
480*010f4d24SOdelu Kukatla 	.name = "qxs_pcie_dma_1",
481*010f4d24SOdelu Kukatla 	.channels = 1,
482*010f4d24SOdelu Kukatla 	.buswidth = 8,
483*010f4d24SOdelu Kukatla };
484*010f4d24SOdelu Kukatla 
485*010f4d24SOdelu Kukatla static struct qcom_icc_node qxs_pcie_dma_2 = {
486*010f4d24SOdelu Kukatla 	.name = "qxs_pcie_dma_2",
487*010f4d24SOdelu Kukatla 	.channels = 1,
488*010f4d24SOdelu Kukatla 	.buswidth = 8,
489*010f4d24SOdelu Kukatla };
490*010f4d24SOdelu Kukatla 
491*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_pcie_0 = {
492*010f4d24SOdelu Kukatla 	.name = "xs_pcie_0",
493*010f4d24SOdelu Kukatla 	.channels = 1,
494*010f4d24SOdelu Kukatla 	.buswidth = 32,
495*010f4d24SOdelu Kukatla };
496*010f4d24SOdelu Kukatla 
497*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_pcie_1 = {
498*010f4d24SOdelu Kukatla 	.name = "xs_pcie_1",
499*010f4d24SOdelu Kukatla 	.channels = 1,
500*010f4d24SOdelu Kukatla 	.buswidth = 32,
501*010f4d24SOdelu Kukatla };
502*010f4d24SOdelu Kukatla 
503*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_pcie_2 = {
504*010f4d24SOdelu Kukatla 	.name = "xs_pcie_2",
505*010f4d24SOdelu Kukatla 	.channels = 1,
506*010f4d24SOdelu Kukatla 	.buswidth = 16,
507*010f4d24SOdelu Kukatla };
508*010f4d24SOdelu Kukatla 
509*010f4d24SOdelu Kukatla static struct qcom_icc_node xs_pcie_3 = {
510*010f4d24SOdelu Kukatla 	.name = "xs_pcie_3",
511*010f4d24SOdelu Kukatla 	.channels = 1,
512*010f4d24SOdelu Kukatla 	.buswidth = 8,
513*010f4d24SOdelu Kukatla };
514*010f4d24SOdelu Kukatla 
515*010f4d24SOdelu Kukatla static struct qcom_icc_node qup0_core_master = {
516*010f4d24SOdelu Kukatla 	.name = "qup0_core_master",
517*010f4d24SOdelu Kukatla 	.channels = 1,
518*010f4d24SOdelu Kukatla 	.buswidth = 4,
519*010f4d24SOdelu Kukatla 	.num_links = 1,
520*010f4d24SOdelu Kukatla 	.link_nodes = { &qup0_core_slave },
521*010f4d24SOdelu Kukatla };
522*010f4d24SOdelu Kukatla 
523*010f4d24SOdelu Kukatla static struct qcom_icc_node qup1_core_master = {
524*010f4d24SOdelu Kukatla 	.name = "qup1_core_master",
525*010f4d24SOdelu Kukatla 	.channels = 1,
526*010f4d24SOdelu Kukatla 	.buswidth = 4,
527*010f4d24SOdelu Kukatla 	.num_links = 1,
528*010f4d24SOdelu Kukatla 	.link_nodes = { &qup1_core_slave },
529*010f4d24SOdelu Kukatla };
530*010f4d24SOdelu Kukatla 
531*010f4d24SOdelu Kukatla static struct qcom_icc_node qup2_core_master = {
532*010f4d24SOdelu Kukatla 	.name = "qup2_core_master",
533*010f4d24SOdelu Kukatla 	.channels = 1,
534*010f4d24SOdelu Kukatla 	.buswidth = 4,
535*010f4d24SOdelu Kukatla 	.num_links = 1,
536*010f4d24SOdelu Kukatla 	.link_nodes = { &qup2_core_slave },
537*010f4d24SOdelu Kukatla };
538*010f4d24SOdelu Kukatla 
539*010f4d24SOdelu Kukatla static struct qcom_icc_node qup3_core_master = {
540*010f4d24SOdelu Kukatla 	.name = "qup3_core_master",
541*010f4d24SOdelu Kukatla 	.channels = 1,
542*010f4d24SOdelu Kukatla 	.buswidth = 4,
543*010f4d24SOdelu Kukatla 	.num_links = 1,
544*010f4d24SOdelu Kukatla 	.link_nodes = { &qup3_core_slave },
545*010f4d24SOdelu Kukatla };
546*010f4d24SOdelu Kukatla 
547*010f4d24SOdelu Kukatla static struct qcom_icc_node llcc_mc = {
548*010f4d24SOdelu Kukatla 	.name = "llcc_mc",
549*010f4d24SOdelu Kukatla 	.channels = 16,
550*010f4d24SOdelu Kukatla 	.buswidth = 4,
551*010f4d24SOdelu Kukatla 	.num_links = 1,
552*010f4d24SOdelu Kukatla 	.link_nodes = { &ebi },
553*010f4d24SOdelu Kukatla };
554*010f4d24SOdelu Kukatla 
555*010f4d24SOdelu Kukatla static struct qcom_icc_node qsm_pcie_noc_cfg = {
556*010f4d24SOdelu Kukatla 	.name = "qsm_pcie_noc_cfg",
557*010f4d24SOdelu Kukatla 	.channels = 1,
558*010f4d24SOdelu Kukatla 	.buswidth = 4,
559*010f4d24SOdelu Kukatla 	.num_links = 8,
560*010f4d24SOdelu Kukatla 	.link_nodes = { &qhs_pcie_ahb2phy_cfg, &qhs_pcie_cfg_0,
561*010f4d24SOdelu Kukatla 			&qhs_pcie_cfg_1, &qhs_pcie_cfg_2,
562*010f4d24SOdelu Kukatla 			&qhs_pcie_cfg_3, &qhs_pcie_dma_0_cfg,
563*010f4d24SOdelu Kukatla 			&qhs_pcie_dma_1_cfg, &qhs_pcie_dma_2_cfg },
564*010f4d24SOdelu Kukatla };
565*010f4d24SOdelu Kukatla 
566*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_cnoc_pcie_dma = {
567*010f4d24SOdelu Kukatla 	.name = "qnm_cnoc_pcie_dma",
568*010f4d24SOdelu Kukatla 	.channels = 1,
569*010f4d24SOdelu Kukatla 	.buswidth = 16,
570*010f4d24SOdelu Kukatla 	.num_links = 3,
571*010f4d24SOdelu Kukatla 	.link_nodes = { &qxs_pcie_dma_0, &qxs_pcie_dma_1,
572*010f4d24SOdelu Kukatla 			&qxs_pcie_dma_2 },
573*010f4d24SOdelu Kukatla };
574*010f4d24SOdelu Kukatla 
575*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hscnoc_pcie = {
576*010f4d24SOdelu Kukatla 	.name = "qnm_hscnoc_pcie",
577*010f4d24SOdelu Kukatla 	.channels = 1,
578*010f4d24SOdelu Kukatla 	.buswidth = 32,
579*010f4d24SOdelu Kukatla 	.num_links = 4,
580*010f4d24SOdelu Kukatla 	.link_nodes = { &xs_pcie_0, &xs_pcie_1,
581*010f4d24SOdelu Kukatla 			&xs_pcie_2, &xs_pcie_3 },
582*010f4d24SOdelu Kukatla };
583*010f4d24SOdelu Kukatla 
584*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_pcie_ibnoc_dma = {
585*010f4d24SOdelu Kukatla 	.name = "qnm_pcie_ibnoc_dma",
586*010f4d24SOdelu Kukatla 	.channels = 1,
587*010f4d24SOdelu Kukatla 	.buswidth = 16,
588*010f4d24SOdelu Kukatla 	.num_links = 1,
589*010f4d24SOdelu Kukatla 	.link_nodes = { &xs_pcie_0 },
590*010f4d24SOdelu Kukatla };
591*010f4d24SOdelu Kukatla 
592*010f4d24SOdelu Kukatla static struct qcom_icc_node qss_pcie_noc_cfg = {
593*010f4d24SOdelu Kukatla 	.name = "qss_pcie_noc_cfg",
594*010f4d24SOdelu Kukatla 	.channels = 1,
595*010f4d24SOdelu Kukatla 	.buswidth = 4,
596*010f4d24SOdelu Kukatla 	.num_links = 1,
597*010f4d24SOdelu Kukatla 	.link_nodes = { &qsm_pcie_noc_cfg },
598*010f4d24SOdelu Kukatla };
599*010f4d24SOdelu Kukatla 
600*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_pcie_dma = {
601*010f4d24SOdelu Kukatla 	.name = "qns_pcie_dma",
602*010f4d24SOdelu Kukatla 	.channels = 1,
603*010f4d24SOdelu Kukatla 	.buswidth = 16,
604*010f4d24SOdelu Kukatla 	.num_links = 1,
605*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_cnoc_pcie_dma },
606*010f4d24SOdelu Kukatla };
607*010f4d24SOdelu Kukatla 
608*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_llcc = {
609*010f4d24SOdelu Kukatla 	.name = "qns_llcc",
610*010f4d24SOdelu Kukatla 	.channels = 16,
611*010f4d24SOdelu Kukatla 	.buswidth = 16,
612*010f4d24SOdelu Kukatla 	.num_links = 1,
613*010f4d24SOdelu Kukatla 	.link_nodes = { &llcc_mc },
614*010f4d24SOdelu Kukatla };
615*010f4d24SOdelu Kukatla 
616*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_pcie = {
617*010f4d24SOdelu Kukatla 	.name = "qns_pcie",
618*010f4d24SOdelu Kukatla 	.channels = 1,
619*010f4d24SOdelu Kukatla 	.buswidth = 32,
620*010f4d24SOdelu Kukatla 	.num_links = 1,
621*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_hscnoc_pcie },
622*010f4d24SOdelu Kukatla };
623*010f4d24SOdelu Kukatla 
624*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_pcie_obnoc_dma = {
625*010f4d24SOdelu Kukatla 	.name = "qns_pcie_obnoc_dma",
626*010f4d24SOdelu Kukatla 	.channels = 1,
627*010f4d24SOdelu Kukatla 	.buswidth = 16,
628*010f4d24SOdelu Kukatla 	.num_links = 1,
629*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_pcie_ibnoc_dma },
630*010f4d24SOdelu Kukatla };
631*010f4d24SOdelu Kukatla 
632*010f4d24SOdelu Kukatla static struct qcom_icc_node qsm_cfg = {
633*010f4d24SOdelu Kukatla 	.name = "qsm_cfg",
634*010f4d24SOdelu Kukatla 	.channels = 1,
635*010f4d24SOdelu Kukatla 	.buswidth = 4,
636*010f4d24SOdelu Kukatla 	.num_links = 56,
637*010f4d24SOdelu Kukatla 	.link_nodes = { &ps_eth_0, &ps_eth_1,
638*010f4d24SOdelu Kukatla 			&ps_shs_server, &qhs_ahb2phy0,
639*010f4d24SOdelu Kukatla 			&qhs_ahb2phy1, &qhs_ahb2phy2,
640*010f4d24SOdelu Kukatla 			&qhs_ahb2phy3, &qhs_ahb2phy_eth_0,
641*010f4d24SOdelu Kukatla 			&qhs_ahb2phy_eth_1, &qhs_camera_cfg,
642*010f4d24SOdelu Kukatla 			&qhs_clk_ctl, &qhs_crypto0_cfg,
643*010f4d24SOdelu Kukatla 			&qhs_crypto1_cfg, &qhs_crypto2_cfg,
644*010f4d24SOdelu Kukatla 			&qhs_display_1_cfg, &qhs_display_cfg,
645*010f4d24SOdelu Kukatla 			&qhs_dprx0, &qhs_dprx1,
646*010f4d24SOdelu Kukatla 			&qhs_eva_cfg, &qhs_gpuss_0_cfg,
647*010f4d24SOdelu Kukatla 			&qhs_gpuss_1_cfg, &qhs_i2c,
648*010f4d24SOdelu Kukatla 			&qhs_imem_cfg, &qhs_mcw_pcie,
649*010f4d24SOdelu Kukatla 			&qhs_mm_rscc, &qhs_ne_clk_ctl,
650*010f4d24SOdelu Kukatla 			&qhs_nspss0_cfg, &qhs_nspss1_cfg,
651*010f4d24SOdelu Kukatla 			&qhs_nspss2_cfg, &qhs_nspss3_cfg,
652*010f4d24SOdelu Kukatla 			&qhs_nw_clk_ctl, &qhs_prng,
653*010f4d24SOdelu Kukatla 			&qhs_qdss_cfg, &qhs_qspi,
654*010f4d24SOdelu Kukatla 			&qhs_qup0, &qhs_qup3,
655*010f4d24SOdelu Kukatla 			&qhs_qup1, &qhs_qup2,
656*010f4d24SOdelu Kukatla 			&qhs_safedma_cfg, &qhs_sdc4,
657*010f4d24SOdelu Kukatla 			&qhs_se_clk_ctl, &qhs_tcsr,
658*010f4d24SOdelu Kukatla 			&qhs_tlmm, &qhs_tsc_cfg,
659*010f4d24SOdelu Kukatla 			&qhs_ufs_mem_cfg, &qhs_usb2,
660*010f4d24SOdelu Kukatla 			&qhs_usb3_0, &qhs_usb3_1,
661*010f4d24SOdelu Kukatla 			&qhs_venus_cfg, &qss_computenoc_cfg,
662*010f4d24SOdelu Kukatla 			&qss_pcie_noc_cfg, &qss_qtc_cfg,
663*010f4d24SOdelu Kukatla 			&xs_qdss_stm, &xs_sys_tcu0_cfg,
664*010f4d24SOdelu Kukatla 			&xs_sys_tcu1_cfg, &xs_sys_tcu2_cfg },
665*010f4d24SOdelu Kukatla };
666*010f4d24SOdelu Kukatla 
667*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_gic = {
668*010f4d24SOdelu Kukatla 	.name = "xm_gic",
669*010f4d24SOdelu Kukatla 	.channels = 1,
670*010f4d24SOdelu Kukatla 	.buswidth = 8,
671*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
672*010f4d24SOdelu Kukatla 		.num_ports = 1,
673*010f4d24SOdelu Kukatla 		.port_offsets = { 0xa44000 },
674*010f4d24SOdelu Kukatla 		.prio = 4,
675*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
676*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
677*010f4d24SOdelu Kukatla 	},
678*010f4d24SOdelu Kukatla 	.num_links = 1,
679*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_llcc },
680*010f4d24SOdelu Kukatla };
681*010f4d24SOdelu Kukatla 
682*010f4d24SOdelu Kukatla static struct qcom_icc_node qss_cfg = {
683*010f4d24SOdelu Kukatla 	.name = "qss_cfg",
684*010f4d24SOdelu Kukatla 	.channels = 1,
685*010f4d24SOdelu Kukatla 	.buswidth = 4,
686*010f4d24SOdelu Kukatla 	.num_links = 1,
687*010f4d24SOdelu Kukatla 	.link_nodes = { &qsm_cfg },
688*010f4d24SOdelu Kukatla };
689*010f4d24SOdelu Kukatla 
690*010f4d24SOdelu Kukatla static struct qcom_icc_node qhm_mm_rscc = {
691*010f4d24SOdelu Kukatla 	.name = "qhm_mm_rscc",
692*010f4d24SOdelu Kukatla 	.channels = 1,
693*010f4d24SOdelu Kukatla 	.buswidth = 4,
694*010f4d24SOdelu Kukatla 	.num_links = 1,
695*010f4d24SOdelu Kukatla 	.link_nodes = { &qss_cfg },
696*010f4d24SOdelu Kukatla };
697*010f4d24SOdelu Kukatla 
698*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hscnoc = {
699*010f4d24SOdelu Kukatla 	.name = "qnm_hscnoc",
700*010f4d24SOdelu Kukatla 	.channels = 1,
701*010f4d24SOdelu Kukatla 	.buswidth = 16,
702*010f4d24SOdelu Kukatla 	.num_links = 10,
703*010f4d24SOdelu Kukatla 	.link_nodes = { &qhs_aoss, &qhs_hbcu,
704*010f4d24SOdelu Kukatla 			&qhs_ipa, &qhs_ipc_router,
705*010f4d24SOdelu Kukatla 			&qhs_soccp, &qhs_tme_cfg,
706*010f4d24SOdelu Kukatla 			&qns_pcie_dma, &qss_cfg,
707*010f4d24SOdelu Kukatla 			&qss_ddrss_cfg, &qxs_imem },
708*010f4d24SOdelu Kukatla };
709*010f4d24SOdelu Kukatla 
710*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_hscnoc_cnoc = {
711*010f4d24SOdelu Kukatla 	.name = "qns_hscnoc_cnoc",
712*010f4d24SOdelu Kukatla 	.channels = 1,
713*010f4d24SOdelu Kukatla 	.buswidth = 16,
714*010f4d24SOdelu Kukatla 	.num_links = 1,
715*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_hscnoc },
716*010f4d24SOdelu Kukatla };
717*010f4d24SOdelu Kukatla 
718*010f4d24SOdelu Kukatla static struct qcom_icc_node alm_gpu_tcu = {
719*010f4d24SOdelu Kukatla 	.name = "alm_gpu_tcu",
720*010f4d24SOdelu Kukatla 	.channels = 2,
721*010f4d24SOdelu Kukatla 	.buswidth = 8,
722*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
723*010f4d24SOdelu Kukatla 		.num_ports = 2,
724*010f4d24SOdelu Kukatla 		.port_offsets = { 0x930000, 0xa45000 },
725*010f4d24SOdelu Kukatla 		.prio = 1,
726*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
727*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
728*010f4d24SOdelu Kukatla 	},
729*010f4d24SOdelu Kukatla 	.num_links = 2,
730*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
731*010f4d24SOdelu Kukatla };
732*010f4d24SOdelu Kukatla 
733*010f4d24SOdelu Kukatla static struct qcom_icc_node alm_qtc = {
734*010f4d24SOdelu Kukatla 	.name = "alm_qtc",
735*010f4d24SOdelu Kukatla 	.channels = 1,
736*010f4d24SOdelu Kukatla 	.buswidth = 8,
737*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
738*010f4d24SOdelu Kukatla 		.num_ports = 1,
739*010f4d24SOdelu Kukatla 		.port_offsets = { 0x2c0000 },
740*010f4d24SOdelu Kukatla 		.prio = 3,
741*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
742*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
743*010f4d24SOdelu Kukatla 	},
744*010f4d24SOdelu Kukatla 	.num_links = 2,
745*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
746*010f4d24SOdelu Kukatla };
747*010f4d24SOdelu Kukatla 
748*010f4d24SOdelu Kukatla static struct qcom_icc_node alm_sys_tcu0 = {
749*010f4d24SOdelu Kukatla 	.name = "alm_sys_tcu0",
750*010f4d24SOdelu Kukatla 	.channels = 1,
751*010f4d24SOdelu Kukatla 	.buswidth = 8,
752*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
753*010f4d24SOdelu Kukatla 		.num_ports = 1,
754*010f4d24SOdelu Kukatla 		.port_offsets = { 0xa42000 },
755*010f4d24SOdelu Kukatla 		.prio = 6,
756*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
757*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
758*010f4d24SOdelu Kukatla 	},
759*010f4d24SOdelu Kukatla 	.num_links = 2,
760*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
761*010f4d24SOdelu Kukatla };
762*010f4d24SOdelu Kukatla 
763*010f4d24SOdelu Kukatla static struct qcom_icc_node alm_sys_tcu1 = {
764*010f4d24SOdelu Kukatla 	.name = "alm_sys_tcu1",
765*010f4d24SOdelu Kukatla 	.channels = 1,
766*010f4d24SOdelu Kukatla 	.buswidth = 8,
767*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
768*010f4d24SOdelu Kukatla 		.num_ports = 1,
769*010f4d24SOdelu Kukatla 		.port_offsets = { 0x81f000 },
770*010f4d24SOdelu Kukatla 		.prio = 6,
771*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
772*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
773*010f4d24SOdelu Kukatla 	},
774*010f4d24SOdelu Kukatla 	.num_links = 2,
775*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
776*010f4d24SOdelu Kukatla };
777*010f4d24SOdelu Kukatla 
778*010f4d24SOdelu Kukatla static struct qcom_icc_node alm_sys_tcu2 = {
779*010f4d24SOdelu Kukatla 	.name = "alm_sys_tcu2",
780*010f4d24SOdelu Kukatla 	.channels = 1,
781*010f4d24SOdelu Kukatla 	.buswidth = 8,
782*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
783*010f4d24SOdelu Kukatla 		.num_ports = 1,
784*010f4d24SOdelu Kukatla 		.port_offsets = { 0x30000 },
785*010f4d24SOdelu Kukatla 		.prio = 6,
786*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
787*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
788*010f4d24SOdelu Kukatla 	},
789*010f4d24SOdelu Kukatla 	.num_links = 2,
790*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
791*010f4d24SOdelu Kukatla };
792*010f4d24SOdelu Kukatla 
793*010f4d24SOdelu Kukatla static struct qcom_icc_node chm_apps = {
794*010f4d24SOdelu Kukatla 	.name = "chm_apps",
795*010f4d24SOdelu Kukatla 	.channels = 6,
796*010f4d24SOdelu Kukatla 	.buswidth = 32,
797*010f4d24SOdelu Kukatla 	.num_links = 3,
798*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
799*010f4d24SOdelu Kukatla 			&qns_pcie },
800*010f4d24SOdelu Kukatla };
801*010f4d24SOdelu Kukatla 
802*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_aggre_north = {
803*010f4d24SOdelu Kukatla 	.name = "qnm_aggre_north",
804*010f4d24SOdelu Kukatla 	.channels = 1,
805*010f4d24SOdelu Kukatla 	.buswidth = 16,
806*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
807*010f4d24SOdelu Kukatla 		.num_ports = 1,
808*010f4d24SOdelu Kukatla 		.port_offsets = { 0x935000 },
809*010f4d24SOdelu Kukatla 		.prio = 0,
810*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
811*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
812*010f4d24SOdelu Kukatla 	},
813*010f4d24SOdelu Kukatla 	.num_links = 3,
814*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
815*010f4d24SOdelu Kukatla 			&qns_pcie },
816*010f4d24SOdelu Kukatla };
817*010f4d24SOdelu Kukatla 
818*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_aggre_south = {
819*010f4d24SOdelu Kukatla 	.name = "qnm_aggre_south",
820*010f4d24SOdelu Kukatla 	.channels = 1,
821*010f4d24SOdelu Kukatla 	.buswidth = 16,
822*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
823*010f4d24SOdelu Kukatla 		.num_ports = 1,
824*010f4d24SOdelu Kukatla 		.port_offsets = { 0x31000 },
825*010f4d24SOdelu Kukatla 		.prio = 0,
826*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
827*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
828*010f4d24SOdelu Kukatla 	},
829*010f4d24SOdelu Kukatla 	.num_links = 3,
830*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
831*010f4d24SOdelu Kukatla 			&qns_pcie },
832*010f4d24SOdelu Kukatla };
833*010f4d24SOdelu Kukatla 
834*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_gpu0 = {
835*010f4d24SOdelu Kukatla 	.name = "qnm_gpu0",
836*010f4d24SOdelu Kukatla 	.channels = 4,
837*010f4d24SOdelu Kukatla 	.buswidth = 32,
838*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
839*010f4d24SOdelu Kukatla 		.num_ports = 4,
840*010f4d24SOdelu Kukatla 		.port_offsets = { 0x931000, 0x932000, 0x933000, 0x934000 },
841*010f4d24SOdelu Kukatla 		.prio = 0,
842*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
843*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
844*010f4d24SOdelu Kukatla 	},
845*010f4d24SOdelu Kukatla 	.num_links = 3,
846*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
847*010f4d24SOdelu Kukatla 			&qns_pcie },
848*010f4d24SOdelu Kukatla };
849*010f4d24SOdelu Kukatla 
850*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_gpu1 = {
851*010f4d24SOdelu Kukatla 	.name = "qnm_gpu1",
852*010f4d24SOdelu Kukatla 	.channels = 2,
853*010f4d24SOdelu Kukatla 	.buswidth = 32,
854*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
855*010f4d24SOdelu Kukatla 		.num_ports = 2,
856*010f4d24SOdelu Kukatla 		.port_offsets = { 0xa40000, 0xa41000 },
857*010f4d24SOdelu Kukatla 		.prio = 0,
858*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
859*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
860*010f4d24SOdelu Kukatla 	},
861*010f4d24SOdelu Kukatla 	.num_links = 3,
862*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
863*010f4d24SOdelu Kukatla 			&qns_pcie },
864*010f4d24SOdelu Kukatla };
865*010f4d24SOdelu Kukatla 
866*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hpass_adas_hscnoc = {
867*010f4d24SOdelu Kukatla 	.name = "qnm_hpass_adas_hscnoc",
868*010f4d24SOdelu Kukatla 	.channels = 2,
869*010f4d24SOdelu Kukatla 	.buswidth = 32,
870*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
871*010f4d24SOdelu Kukatla 		.num_ports = 2,
872*010f4d24SOdelu Kukatla 		.port_offsets = { 0x240000, 0x245000 },
873*010f4d24SOdelu Kukatla 		.prio = 0,
874*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
875*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
876*010f4d24SOdelu Kukatla 	},
877*010f4d24SOdelu Kukatla 	.num_links = 3,
878*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
879*010f4d24SOdelu Kukatla 			&qns_pcie },
880*010f4d24SOdelu Kukatla };
881*010f4d24SOdelu Kukatla 
882*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hpass_audio_hscnoc = {
883*010f4d24SOdelu Kukatla 	.name = "qnm_hpass_audio_hscnoc",
884*010f4d24SOdelu Kukatla 	.channels = 1,
885*010f4d24SOdelu Kukatla 	.buswidth = 32,
886*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
887*010f4d24SOdelu Kukatla 		.num_ports = 1,
888*010f4d24SOdelu Kukatla 		.port_offsets = { 0x241000 },
889*010f4d24SOdelu Kukatla 		.prio = 3,
890*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
891*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
892*010f4d24SOdelu Kukatla 	},
893*010f4d24SOdelu Kukatla 	.num_links = 3,
894*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
895*010f4d24SOdelu Kukatla 			&qns_pcie },
896*010f4d24SOdelu Kukatla };
897*010f4d24SOdelu Kukatla 
898*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_mnoc_hf = {
899*010f4d24SOdelu Kukatla 	.name = "qnm_mnoc_hf",
900*010f4d24SOdelu Kukatla 	.channels = 2,
901*010f4d24SOdelu Kukatla 	.buswidth = 32,
902*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
903*010f4d24SOdelu Kukatla 		.num_ports = 2,
904*010f4d24SOdelu Kukatla 		.port_offsets = { 0x81d000, 0x820000 },
905*010f4d24SOdelu Kukatla 		.prio = 0,
906*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
907*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
908*010f4d24SOdelu Kukatla 	},
909*010f4d24SOdelu Kukatla 	.num_links = 3,
910*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
911*010f4d24SOdelu Kukatla 			&qns_pcie },
912*010f4d24SOdelu Kukatla };
913*010f4d24SOdelu Kukatla 
914*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_mnoc_sf = {
915*010f4d24SOdelu Kukatla 	.name = "qnm_mnoc_sf",
916*010f4d24SOdelu Kukatla 	.channels = 2,
917*010f4d24SOdelu Kukatla 	.buswidth = 32,
918*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
919*010f4d24SOdelu Kukatla 		.num_ports = 2,
920*010f4d24SOdelu Kukatla 		.port_offsets = { 0x81e000, 0x821000 },
921*010f4d24SOdelu Kukatla 		.prio = 0,
922*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
923*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
924*010f4d24SOdelu Kukatla 	},
925*010f4d24SOdelu Kukatla 	.num_links = 3,
926*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
927*010f4d24SOdelu Kukatla 			&qns_pcie },
928*010f4d24SOdelu Kukatla };
929*010f4d24SOdelu Kukatla 
930*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp0_hscnoc = {
931*010f4d24SOdelu Kukatla 	.name = "qnm_nsp0_hscnoc",
932*010f4d24SOdelu Kukatla 	.channels = 2,
933*010f4d24SOdelu Kukatla 	.buswidth = 32,
934*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
935*010f4d24SOdelu Kukatla 		.num_ports = 2,
936*010f4d24SOdelu Kukatla 		.port_offsets = { 0x32000, 0x33000 },
937*010f4d24SOdelu Kukatla 		.prio = 0,
938*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
939*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
940*010f4d24SOdelu Kukatla 	},
941*010f4d24SOdelu Kukatla 	.num_links = 3,
942*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
943*010f4d24SOdelu Kukatla 			&qns_pcie },
944*010f4d24SOdelu Kukatla };
945*010f4d24SOdelu Kukatla 
946*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp1_hscnoc = {
947*010f4d24SOdelu Kukatla 	.name = "qnm_nsp1_hscnoc",
948*010f4d24SOdelu Kukatla 	.channels = 2,
949*010f4d24SOdelu Kukatla 	.buswidth = 32,
950*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
951*010f4d24SOdelu Kukatla 		.num_ports = 2,
952*010f4d24SOdelu Kukatla 		.port_offsets = { 0x34000, 0x35000 },
953*010f4d24SOdelu Kukatla 		.prio = 0,
954*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
955*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
956*010f4d24SOdelu Kukatla 	},
957*010f4d24SOdelu Kukatla 	.num_links = 3,
958*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
959*010f4d24SOdelu Kukatla 			&qns_pcie },
960*010f4d24SOdelu Kukatla };
961*010f4d24SOdelu Kukatla 
962*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp2_hscnoc = {
963*010f4d24SOdelu Kukatla 	.name = "qnm_nsp2_hscnoc",
964*010f4d24SOdelu Kukatla 	.channels = 2,
965*010f4d24SOdelu Kukatla 	.buswidth = 32,
966*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
967*010f4d24SOdelu Kukatla 		.num_ports = 2,
968*010f4d24SOdelu Kukatla 		.port_offsets = { 0x36000, 0x37000 },
969*010f4d24SOdelu Kukatla 		.prio = 0,
970*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
971*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
972*010f4d24SOdelu Kukatla 	},
973*010f4d24SOdelu Kukatla 	.num_links = 3,
974*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
975*010f4d24SOdelu Kukatla 			&qns_pcie },
976*010f4d24SOdelu Kukatla };
977*010f4d24SOdelu Kukatla 
978*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp3_hscnoc = {
979*010f4d24SOdelu Kukatla 	.name = "qnm_nsp3_hscnoc",
980*010f4d24SOdelu Kukatla 	.channels = 2,
981*010f4d24SOdelu Kukatla 	.buswidth = 32,
982*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
983*010f4d24SOdelu Kukatla 		.num_ports = 2,
984*010f4d24SOdelu Kukatla 		.port_offsets = { 0x38000, 0x39000 },
985*010f4d24SOdelu Kukatla 		.prio = 0,
986*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
987*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
988*010f4d24SOdelu Kukatla 	},
989*010f4d24SOdelu Kukatla 	.num_links = 3,
990*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
991*010f4d24SOdelu Kukatla 			&qns_pcie },
992*010f4d24SOdelu Kukatla };
993*010f4d24SOdelu Kukatla 
994*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_pcie = {
995*010f4d24SOdelu Kukatla 	.name = "qnm_pcie",
996*010f4d24SOdelu Kukatla 	.channels = 1,
997*010f4d24SOdelu Kukatla 	.buswidth = 64,
998*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
999*010f4d24SOdelu Kukatla 		.num_ports = 1,
1000*010f4d24SOdelu Kukatla 		.port_offsets = { 0x2c1000 },
1001*010f4d24SOdelu Kukatla 		.prio = 2,
1002*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1003*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1004*010f4d24SOdelu Kukatla 	},
1005*010f4d24SOdelu Kukatla 	.num_links = 2,
1006*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc },
1007*010f4d24SOdelu Kukatla };
1008*010f4d24SOdelu Kukatla 
1009*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_sailss_md0_hscnoc = {
1010*010f4d24SOdelu Kukatla 	.name = "qnm_sailss_md0_hscnoc",
1011*010f4d24SOdelu Kukatla 	.channels = 1,
1012*010f4d24SOdelu Kukatla 	.buswidth = 16,
1013*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1014*010f4d24SOdelu Kukatla 		.num_ports = 1,
1015*010f4d24SOdelu Kukatla 		.port_offsets = { 0x243000 },
1016*010f4d24SOdelu Kukatla 		.prio = 2,
1017*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1018*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1019*010f4d24SOdelu Kukatla 	},
1020*010f4d24SOdelu Kukatla 	.num_links = 3,
1021*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
1022*010f4d24SOdelu Kukatla 			&qns_pcie },
1023*010f4d24SOdelu Kukatla };
1024*010f4d24SOdelu Kukatla 
1025*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_snoc_sf = {
1026*010f4d24SOdelu Kukatla 	.name = "qnm_snoc_sf",
1027*010f4d24SOdelu Kukatla 	.channels = 1,
1028*010f4d24SOdelu Kukatla 	.buswidth = 64,
1029*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1030*010f4d24SOdelu Kukatla 		.num_ports = 1,
1031*010f4d24SOdelu Kukatla 		.port_offsets = { 0xa43000 },
1032*010f4d24SOdelu Kukatla 		.prio = 0,
1033*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1034*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1035*010f4d24SOdelu Kukatla 	},
1036*010f4d24SOdelu Kukatla 	.num_links = 3,
1037*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_cnoc, &qns_llcc,
1038*010f4d24SOdelu Kukatla 			&qns_pcie },
1039*010f4d24SOdelu Kukatla };
1040*010f4d24SOdelu Kukatla 
1041*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_a1noc_hscnoc = {
1042*010f4d24SOdelu Kukatla 	.name = "qns_a1noc_hscnoc",
1043*010f4d24SOdelu Kukatla 	.channels = 1,
1044*010f4d24SOdelu Kukatla 	.buswidth = 16,
1045*010f4d24SOdelu Kukatla 	.num_links = 1,
1046*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_aggre_north },
1047*010f4d24SOdelu Kukatla };
1048*010f4d24SOdelu Kukatla 
1049*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_a2noc_hscnoc = {
1050*010f4d24SOdelu Kukatla 	.name = "qns_a2noc_hscnoc",
1051*010f4d24SOdelu Kukatla 	.channels = 1,
1052*010f4d24SOdelu Kukatla 	.buswidth = 16,
1053*010f4d24SOdelu Kukatla 	.num_links = 1,
1054*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_aggre_south },
1055*010f4d24SOdelu Kukatla };
1056*010f4d24SOdelu Kukatla 
1057*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_hpass_agnoc_audio = {
1058*010f4d24SOdelu Kukatla 	.name = "qns_hpass_agnoc_audio",
1059*010f4d24SOdelu Kukatla 	.channels = 1,
1060*010f4d24SOdelu Kukatla 	.buswidth = 32,
1061*010f4d24SOdelu Kukatla 	.num_links = 1,
1062*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_hpass_audio_hscnoc },
1063*010f4d24SOdelu Kukatla };
1064*010f4d24SOdelu Kukatla 
1065*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_mem_noc_hf = {
1066*010f4d24SOdelu Kukatla 	.name = "qns_mem_noc_hf",
1067*010f4d24SOdelu Kukatla 	.channels = 2,
1068*010f4d24SOdelu Kukatla 	.buswidth = 32,
1069*010f4d24SOdelu Kukatla 	.num_links = 1,
1070*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_mnoc_hf },
1071*010f4d24SOdelu Kukatla };
1072*010f4d24SOdelu Kukatla 
1073*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_mem_noc_sf = {
1074*010f4d24SOdelu Kukatla 	.name = "qns_mem_noc_sf",
1075*010f4d24SOdelu Kukatla 	.channels = 2,
1076*010f4d24SOdelu Kukatla 	.buswidth = 32,
1077*010f4d24SOdelu Kukatla 	.num_links = 1,
1078*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_mnoc_sf },
1079*010f4d24SOdelu Kukatla };
1080*010f4d24SOdelu Kukatla 
1081*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_nsp0_hsc_noc = {
1082*010f4d24SOdelu Kukatla 	.name = "qns_nsp0_hsc_noc",
1083*010f4d24SOdelu Kukatla 	.channels = 2,
1084*010f4d24SOdelu Kukatla 	.buswidth = 32,
1085*010f4d24SOdelu Kukatla 	.num_links = 1,
1086*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_nsp0_hscnoc },
1087*010f4d24SOdelu Kukatla };
1088*010f4d24SOdelu Kukatla 
1089*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_nsp1_hsc_noc = {
1090*010f4d24SOdelu Kukatla 	.name = "qns_nsp1_hsc_noc",
1091*010f4d24SOdelu Kukatla 	.channels = 2,
1092*010f4d24SOdelu Kukatla 	.buswidth = 32,
1093*010f4d24SOdelu Kukatla 	.num_links = 1,
1094*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_nsp1_hscnoc },
1095*010f4d24SOdelu Kukatla };
1096*010f4d24SOdelu Kukatla 
1097*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_nsp2_hsc_noc = {
1098*010f4d24SOdelu Kukatla 	.name = "qns_nsp2_hsc_noc",
1099*010f4d24SOdelu Kukatla 	.channels = 2,
1100*010f4d24SOdelu Kukatla 	.buswidth = 32,
1101*010f4d24SOdelu Kukatla 	.num_links = 1,
1102*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_nsp2_hscnoc },
1103*010f4d24SOdelu Kukatla };
1104*010f4d24SOdelu Kukatla 
1105*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_nsp3_hsc_noc = {
1106*010f4d24SOdelu Kukatla 	.name = "qns_nsp3_hsc_noc",
1107*010f4d24SOdelu Kukatla 	.channels = 2,
1108*010f4d24SOdelu Kukatla 	.buswidth = 32,
1109*010f4d24SOdelu Kukatla 	.num_links = 1,
1110*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_nsp3_hscnoc },
1111*010f4d24SOdelu Kukatla };
1112*010f4d24SOdelu Kukatla 
1113*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_pcie_hscnoc = {
1114*010f4d24SOdelu Kukatla 	.name = "qns_pcie_hscnoc",
1115*010f4d24SOdelu Kukatla 	.channels = 1,
1116*010f4d24SOdelu Kukatla 	.buswidth = 64,
1117*010f4d24SOdelu Kukatla 	.num_links = 1,
1118*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_pcie },
1119*010f4d24SOdelu Kukatla };
1120*010f4d24SOdelu Kukatla 
1121*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_hscnoc_sf = {
1122*010f4d24SOdelu Kukatla 	.name = "qns_hscnoc_sf",
1123*010f4d24SOdelu Kukatla 	.channels = 1,
1124*010f4d24SOdelu Kukatla 	.buswidth = 64,
1125*010f4d24SOdelu Kukatla 	.num_links = 1,
1126*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_snoc_sf },
1127*010f4d24SOdelu Kukatla };
1128*010f4d24SOdelu Kukatla 
1129*010f4d24SOdelu Kukatla static struct qcom_icc_node qhm_qup2 = {
1130*010f4d24SOdelu Kukatla 	.name = "qhm_qup2",
1131*010f4d24SOdelu Kukatla 	.channels = 1,
1132*010f4d24SOdelu Kukatla 	.buswidth = 4,
1133*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1134*010f4d24SOdelu Kukatla 		.num_ports = 1,
1135*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1b000 },
1136*010f4d24SOdelu Kukatla 		.prio = 2,
1137*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1138*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1139*010f4d24SOdelu Kukatla 	},
1140*010f4d24SOdelu Kukatla 	.num_links = 1,
1141*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1142*010f4d24SOdelu Kukatla };
1143*010f4d24SOdelu Kukatla 
1144*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_crypto_0 = {
1145*010f4d24SOdelu Kukatla 	.name = "qxm_crypto_0",
1146*010f4d24SOdelu Kukatla 	.channels = 1,
1147*010f4d24SOdelu Kukatla 	.buswidth = 8,
1148*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1149*010f4d24SOdelu Kukatla 		.num_ports = 1,
1150*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1c000 },
1151*010f4d24SOdelu Kukatla 		.prio = 2,
1152*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1153*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1154*010f4d24SOdelu Kukatla 	},
1155*010f4d24SOdelu Kukatla 	.num_links = 1,
1156*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1157*010f4d24SOdelu Kukatla };
1158*010f4d24SOdelu Kukatla 
1159*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_crypto_1 = {
1160*010f4d24SOdelu Kukatla 	.name = "qxm_crypto_1",
1161*010f4d24SOdelu Kukatla 	.channels = 1,
1162*010f4d24SOdelu Kukatla 	.buswidth = 8,
1163*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1164*010f4d24SOdelu Kukatla 		.num_ports = 1,
1165*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1d000 },
1166*010f4d24SOdelu Kukatla 		.prio = 2,
1167*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1168*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1169*010f4d24SOdelu Kukatla 	},
1170*010f4d24SOdelu Kukatla 	.num_links = 1,
1171*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1172*010f4d24SOdelu Kukatla };
1173*010f4d24SOdelu Kukatla 
1174*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_crypto_2 = {
1175*010f4d24SOdelu Kukatla 	.name = "qxm_crypto_2",
1176*010f4d24SOdelu Kukatla 	.channels = 1,
1177*010f4d24SOdelu Kukatla 	.buswidth = 8,
1178*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1179*010f4d24SOdelu Kukatla 		.num_ports = 1,
1180*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1e000 },
1181*010f4d24SOdelu Kukatla 		.prio = 2,
1182*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1183*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1184*010f4d24SOdelu Kukatla 	},
1185*010f4d24SOdelu Kukatla 	.num_links = 1,
1186*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1187*010f4d24SOdelu Kukatla };
1188*010f4d24SOdelu Kukatla 
1189*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_sdc4 = {
1190*010f4d24SOdelu Kukatla 	.name = "xm_sdc4",
1191*010f4d24SOdelu Kukatla 	.channels = 1,
1192*010f4d24SOdelu Kukatla 	.buswidth = 8,
1193*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1194*010f4d24SOdelu Kukatla 		.num_ports = 1,
1195*010f4d24SOdelu Kukatla 		.port_offsets = { 0x16000 },
1196*010f4d24SOdelu Kukatla 		.prio = 2,
1197*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1198*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1199*010f4d24SOdelu Kukatla 	},
1200*010f4d24SOdelu Kukatla 	.num_links = 1,
1201*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1202*010f4d24SOdelu Kukatla };
1203*010f4d24SOdelu Kukatla 
1204*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_ufs_mem = {
1205*010f4d24SOdelu Kukatla 	.name = "xm_ufs_mem",
1206*010f4d24SOdelu Kukatla 	.channels = 1,
1207*010f4d24SOdelu Kukatla 	.buswidth = 16,
1208*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1209*010f4d24SOdelu Kukatla 		.num_ports = 1,
1210*010f4d24SOdelu Kukatla 		.port_offsets = { 0x17000 },
1211*010f4d24SOdelu Kukatla 		.prio = 2,
1212*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1213*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1214*010f4d24SOdelu Kukatla 	},
1215*010f4d24SOdelu Kukatla 	.num_links = 1,
1216*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1217*010f4d24SOdelu Kukatla };
1218*010f4d24SOdelu Kukatla 
1219*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_usb2 = {
1220*010f4d24SOdelu Kukatla 	.name = "xm_usb2",
1221*010f4d24SOdelu Kukatla 	.channels = 1,
1222*010f4d24SOdelu Kukatla 	.buswidth = 8,
1223*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1224*010f4d24SOdelu Kukatla 		.num_ports = 1,
1225*010f4d24SOdelu Kukatla 		.port_offsets = { 0x19000 },
1226*010f4d24SOdelu Kukatla 		.prio = 2,
1227*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1228*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1229*010f4d24SOdelu Kukatla 	},
1230*010f4d24SOdelu Kukatla 	.num_links = 1,
1231*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1232*010f4d24SOdelu Kukatla };
1233*010f4d24SOdelu Kukatla 
1234*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_usb3_0 = {
1235*010f4d24SOdelu Kukatla 	.name = "xm_usb3_0",
1236*010f4d24SOdelu Kukatla 	.channels = 1,
1237*010f4d24SOdelu Kukatla 	.buswidth = 8,
1238*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1239*010f4d24SOdelu Kukatla 		.num_ports = 1,
1240*010f4d24SOdelu Kukatla 		.port_offsets = { 0x18000 },
1241*010f4d24SOdelu Kukatla 		.prio = 2,
1242*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1243*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1244*010f4d24SOdelu Kukatla 	},
1245*010f4d24SOdelu Kukatla 	.num_links = 1,
1246*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1247*010f4d24SOdelu Kukatla };
1248*010f4d24SOdelu Kukatla 
1249*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_usb3_1 = {
1250*010f4d24SOdelu Kukatla 	.name = "xm_usb3_1",
1251*010f4d24SOdelu Kukatla 	.channels = 1,
1252*010f4d24SOdelu Kukatla 	.buswidth = 8,
1253*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1254*010f4d24SOdelu Kukatla 		.num_ports = 1,
1255*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1a000 },
1256*010f4d24SOdelu Kukatla 		.prio = 2,
1257*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1258*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1259*010f4d24SOdelu Kukatla 	},
1260*010f4d24SOdelu Kukatla 	.num_links = 1,
1261*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_hscnoc },
1262*010f4d24SOdelu Kukatla };
1263*010f4d24SOdelu Kukatla 
1264*010f4d24SOdelu Kukatla static struct qcom_icc_node qhm_qup0 = {
1265*010f4d24SOdelu Kukatla 	.name = "qhm_qup0",
1266*010f4d24SOdelu Kukatla 	.channels = 1,
1267*010f4d24SOdelu Kukatla 	.buswidth = 4,
1268*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1269*010f4d24SOdelu Kukatla 		.num_ports = 1,
1270*010f4d24SOdelu Kukatla 		.port_offsets = { 0x13000 },
1271*010f4d24SOdelu Kukatla 		.prio = 2,
1272*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1273*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1274*010f4d24SOdelu Kukatla 	},
1275*010f4d24SOdelu Kukatla 	.num_links = 1,
1276*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_hscnoc },
1277*010f4d24SOdelu Kukatla };
1278*010f4d24SOdelu Kukatla 
1279*010f4d24SOdelu Kukatla static struct qcom_icc_node qhm_qup1 = {
1280*010f4d24SOdelu Kukatla 	.name = "qhm_qup1",
1281*010f4d24SOdelu Kukatla 	.channels = 1,
1282*010f4d24SOdelu Kukatla 	.buswidth = 4,
1283*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1284*010f4d24SOdelu Kukatla 		.num_ports = 1,
1285*010f4d24SOdelu Kukatla 		.port_offsets = { 0x14000 },
1286*010f4d24SOdelu Kukatla 		.prio = 2,
1287*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1288*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1289*010f4d24SOdelu Kukatla 	},
1290*010f4d24SOdelu Kukatla 	.num_links = 1,
1291*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_hscnoc },
1292*010f4d24SOdelu Kukatla };
1293*010f4d24SOdelu Kukatla 
1294*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_emac_0 = {
1295*010f4d24SOdelu Kukatla 	.name = "xm_emac_0",
1296*010f4d24SOdelu Kukatla 	.channels = 1,
1297*010f4d24SOdelu Kukatla 	.buswidth = 16,
1298*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1299*010f4d24SOdelu Kukatla 		.num_ports = 1,
1300*010f4d24SOdelu Kukatla 		.port_offsets = { 0x16000 },
1301*010f4d24SOdelu Kukatla 		.prio = 2,
1302*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1303*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1304*010f4d24SOdelu Kukatla 	},
1305*010f4d24SOdelu Kukatla 	.num_links = 1,
1306*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_hscnoc },
1307*010f4d24SOdelu Kukatla };
1308*010f4d24SOdelu Kukatla 
1309*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_emac_1 = {
1310*010f4d24SOdelu Kukatla 	.name = "xm_emac_1",
1311*010f4d24SOdelu Kukatla 	.channels = 1,
1312*010f4d24SOdelu Kukatla 	.buswidth = 16,
1313*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1314*010f4d24SOdelu Kukatla 		.num_ports = 1,
1315*010f4d24SOdelu Kukatla 		.port_offsets = { 0x17000 },
1316*010f4d24SOdelu Kukatla 		.prio = 2,
1317*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1318*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1319*010f4d24SOdelu Kukatla 	},
1320*010f4d24SOdelu Kukatla 	.num_links = 1,
1321*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_hscnoc },
1322*010f4d24SOdelu Kukatla };
1323*010f4d24SOdelu Kukatla 
1324*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hpass_dsp0 = {
1325*010f4d24SOdelu Kukatla 	.name = "qnm_hpass_dsp0",
1326*010f4d24SOdelu Kukatla 	.channels = 2,
1327*010f4d24SOdelu Kukatla 	.buswidth = 32,
1328*010f4d24SOdelu Kukatla 	.num_links = 1,
1329*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hpass_agnoc_audio },
1330*010f4d24SOdelu Kukatla };
1331*010f4d24SOdelu Kukatla 
1332*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hpass_dsp1 = {
1333*010f4d24SOdelu Kukatla 	.name = "qnm_hpass_dsp1",
1334*010f4d24SOdelu Kukatla 	.channels = 2,
1335*010f4d24SOdelu Kukatla 	.buswidth = 32,
1336*010f4d24SOdelu Kukatla 	.num_links = 1,
1337*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hpass_agnoc_audio },
1338*010f4d24SOdelu Kukatla };
1339*010f4d24SOdelu Kukatla 
1340*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_hpass_dsp2 = {
1341*010f4d24SOdelu Kukatla 	.name = "qnm_hpass_dsp2",
1342*010f4d24SOdelu Kukatla 	.channels = 2,
1343*010f4d24SOdelu Kukatla 	.buswidth = 32,
1344*010f4d24SOdelu Kukatla 	.num_links = 1,
1345*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hpass_agnoc_audio },
1346*010f4d24SOdelu Kukatla };
1347*010f4d24SOdelu Kukatla 
1348*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_camnoc_hf = {
1349*010f4d24SOdelu Kukatla 	.name = "qnm_camnoc_hf",
1350*010f4d24SOdelu Kukatla 	.channels = 2,
1351*010f4d24SOdelu Kukatla 	.buswidth = 32,
1352*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1353*010f4d24SOdelu Kukatla 		.num_ports = 2,
1354*010f4d24SOdelu Kukatla 		.port_offsets = { 0x57000, 0x58000 },
1355*010f4d24SOdelu Kukatla 		.prio = 0,
1356*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1357*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1358*010f4d24SOdelu Kukatla 	},
1359*010f4d24SOdelu Kukatla 	.num_links = 1,
1360*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_hf },
1361*010f4d24SOdelu Kukatla };
1362*010f4d24SOdelu Kukatla 
1363*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_camnoc_nrt_icp_sf = {
1364*010f4d24SOdelu Kukatla 	.name = "qnm_camnoc_nrt_icp_sf",
1365*010f4d24SOdelu Kukatla 	.channels = 1,
1366*010f4d24SOdelu Kukatla 	.buswidth = 8,
1367*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1368*010f4d24SOdelu Kukatla 		.num_ports = 1,
1369*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1a000 },
1370*010f4d24SOdelu Kukatla 		.prio = 4,
1371*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1372*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1373*010f4d24SOdelu Kukatla 	},
1374*010f4d24SOdelu Kukatla 	.num_links = 1,
1375*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1376*010f4d24SOdelu Kukatla };
1377*010f4d24SOdelu Kukatla 
1378*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_camnoc_rt_cdm_sf = {
1379*010f4d24SOdelu Kukatla 	.name = "qnm_camnoc_rt_cdm_sf",
1380*010f4d24SOdelu Kukatla 	.channels = 1,
1381*010f4d24SOdelu Kukatla 	.buswidth = 8,
1382*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1383*010f4d24SOdelu Kukatla 		.num_ports = 1,
1384*010f4d24SOdelu Kukatla 		.port_offsets = { 0x5b000 },
1385*010f4d24SOdelu Kukatla 		.prio = 2,
1386*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1387*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1388*010f4d24SOdelu Kukatla 	},
1389*010f4d24SOdelu Kukatla 	.num_links = 1,
1390*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1391*010f4d24SOdelu Kukatla };
1392*010f4d24SOdelu Kukatla 
1393*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_camnoc_sf = {
1394*010f4d24SOdelu Kukatla 	.name = "qnm_camnoc_sf",
1395*010f4d24SOdelu Kukatla 	.channels = 2,
1396*010f4d24SOdelu Kukatla 	.buswidth = 32,
1397*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1398*010f4d24SOdelu Kukatla 		.num_ports = 2,
1399*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1b000, 0x1c000 },
1400*010f4d24SOdelu Kukatla 		.prio = 0,
1401*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1402*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1403*010f4d24SOdelu Kukatla 	},
1404*010f4d24SOdelu Kukatla 	.num_links = 1,
1405*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1406*010f4d24SOdelu Kukatla };
1407*010f4d24SOdelu Kukatla 
1408*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_dprx0 = {
1409*010f4d24SOdelu Kukatla 	.name = "qnm_dprx0",
1410*010f4d24SOdelu Kukatla 	.channels = 1,
1411*010f4d24SOdelu Kukatla 	.buswidth = 32,
1412*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1413*010f4d24SOdelu Kukatla 		.num_ports = 1,
1414*010f4d24SOdelu Kukatla 		.port_offsets = { 0x5c000 },
1415*010f4d24SOdelu Kukatla 		.prio = 0,
1416*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1417*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1418*010f4d24SOdelu Kukatla 	},
1419*010f4d24SOdelu Kukatla 	.num_links = 1,
1420*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_hf },
1421*010f4d24SOdelu Kukatla };
1422*010f4d24SOdelu Kukatla 
1423*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_dprx1 = {
1424*010f4d24SOdelu Kukatla 	.name = "qnm_dprx1",
1425*010f4d24SOdelu Kukatla 	.channels = 1,
1426*010f4d24SOdelu Kukatla 	.buswidth = 32,
1427*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1428*010f4d24SOdelu Kukatla 		.num_ports = 1,
1429*010f4d24SOdelu Kukatla 		.port_offsets = { 0x5d000 },
1430*010f4d24SOdelu Kukatla 		.prio = 0,
1431*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1432*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1433*010f4d24SOdelu Kukatla 	},
1434*010f4d24SOdelu Kukatla 	.num_links = 1,
1435*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_hf },
1436*010f4d24SOdelu Kukatla };
1437*010f4d24SOdelu Kukatla 
1438*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_mdp0 = {
1439*010f4d24SOdelu Kukatla 	.name = "qnm_mdp0",
1440*010f4d24SOdelu Kukatla 	.channels = 2,
1441*010f4d24SOdelu Kukatla 	.buswidth = 32,
1442*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1443*010f4d24SOdelu Kukatla 		.num_ports = 2,
1444*010f4d24SOdelu Kukatla 		.port_offsets = { 0x59000, 0x5a000 },
1445*010f4d24SOdelu Kukatla 		.prio = 0,
1446*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1447*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1448*010f4d24SOdelu Kukatla 	},
1449*010f4d24SOdelu Kukatla 	.num_links = 1,
1450*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_hf },
1451*010f4d24SOdelu Kukatla };
1452*010f4d24SOdelu Kukatla 
1453*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_mdp1 = {
1454*010f4d24SOdelu Kukatla 	.name = "qnm_mdp1",
1455*010f4d24SOdelu Kukatla 	.channels = 2,
1456*010f4d24SOdelu Kukatla 	.buswidth = 32,
1457*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1458*010f4d24SOdelu Kukatla 		.num_ports = 2,
1459*010f4d24SOdelu Kukatla 		.port_offsets = { 0x5e000, 0x5f000 },
1460*010f4d24SOdelu Kukatla 		.prio = 0,
1461*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1462*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1463*010f4d24SOdelu Kukatla 	},
1464*010f4d24SOdelu Kukatla 	.num_links = 1,
1465*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_hf },
1466*010f4d24SOdelu Kukatla };
1467*010f4d24SOdelu Kukatla 
1468*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_video_cv_cpu = {
1469*010f4d24SOdelu Kukatla 	.name = "qnm_video_cv_cpu",
1470*010f4d24SOdelu Kukatla 	.channels = 1,
1471*010f4d24SOdelu Kukatla 	.buswidth = 8,
1472*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1473*010f4d24SOdelu Kukatla 		.num_ports = 1,
1474*010f4d24SOdelu Kukatla 		.port_offsets = { 0x21000 },
1475*010f4d24SOdelu Kukatla 		.prio = 4,
1476*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1477*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1478*010f4d24SOdelu Kukatla 	},
1479*010f4d24SOdelu Kukatla 	.num_links = 1,
1480*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1481*010f4d24SOdelu Kukatla };
1482*010f4d24SOdelu Kukatla 
1483*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_video_eva = {
1484*010f4d24SOdelu Kukatla 	.name = "qnm_video_eva",
1485*010f4d24SOdelu Kukatla 	.channels = 2,
1486*010f4d24SOdelu Kukatla 	.buswidth = 32,
1487*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1488*010f4d24SOdelu Kukatla 		.num_ports = 2,
1489*010f4d24SOdelu Kukatla 		.port_offsets = { 0x22000, 0x23000 },
1490*010f4d24SOdelu Kukatla 		.prio = 0,
1491*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1492*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1493*010f4d24SOdelu Kukatla 	},
1494*010f4d24SOdelu Kukatla 	.num_links = 1,
1495*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1496*010f4d24SOdelu Kukatla };
1497*010f4d24SOdelu Kukatla 
1498*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_video_mvp0 = {
1499*010f4d24SOdelu Kukatla 	.name = "qnm_video_mvp0",
1500*010f4d24SOdelu Kukatla 	.channels = 2,
1501*010f4d24SOdelu Kukatla 	.buswidth = 32,
1502*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1503*010f4d24SOdelu Kukatla 		.num_ports = 2,
1504*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1d000, 0x1e000 },
1505*010f4d24SOdelu Kukatla 		.prio = 0,
1506*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1507*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1508*010f4d24SOdelu Kukatla 	},
1509*010f4d24SOdelu Kukatla 	.num_links = 1,
1510*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1511*010f4d24SOdelu Kukatla };
1512*010f4d24SOdelu Kukatla 
1513*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_video_mvp1 = {
1514*010f4d24SOdelu Kukatla 	.name = "qnm_video_mvp1",
1515*010f4d24SOdelu Kukatla 	.channels = 2,
1516*010f4d24SOdelu Kukatla 	.buswidth = 32,
1517*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1518*010f4d24SOdelu Kukatla 		.num_ports = 2,
1519*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1f000, 0x20000 },
1520*010f4d24SOdelu Kukatla 		.prio = 0,
1521*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1522*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1523*010f4d24SOdelu Kukatla 	},
1524*010f4d24SOdelu Kukatla 	.num_links = 1,
1525*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1526*010f4d24SOdelu Kukatla };
1527*010f4d24SOdelu Kukatla 
1528*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_video_v_cpu = {
1529*010f4d24SOdelu Kukatla 	.name = "qnm_video_v_cpu",
1530*010f4d24SOdelu Kukatla 	.channels = 1,
1531*010f4d24SOdelu Kukatla 	.buswidth = 8,
1532*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1533*010f4d24SOdelu Kukatla 		.num_ports = 1,
1534*010f4d24SOdelu Kukatla 		.port_offsets = { 0x24000 },
1535*010f4d24SOdelu Kukatla 		.prio = 4,
1536*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1537*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1538*010f4d24SOdelu Kukatla 	},
1539*010f4d24SOdelu Kukatla 	.num_links = 1,
1540*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_mem_noc_sf },
1541*010f4d24SOdelu Kukatla };
1542*010f4d24SOdelu Kukatla 
1543*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp_data00 = {
1544*010f4d24SOdelu Kukatla 	.name = "qnm_nsp_data00",
1545*010f4d24SOdelu Kukatla 	.channels = 2,
1546*010f4d24SOdelu Kukatla 	.buswidth = 32,
1547*010f4d24SOdelu Kukatla 	.num_links = 1,
1548*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_nsp0_hsc_noc },
1549*010f4d24SOdelu Kukatla };
1550*010f4d24SOdelu Kukatla 
1551*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp_data01 = {
1552*010f4d24SOdelu Kukatla 	.name = "qnm_nsp_data01",
1553*010f4d24SOdelu Kukatla 	.channels = 2,
1554*010f4d24SOdelu Kukatla 	.buswidth = 32,
1555*010f4d24SOdelu Kukatla 	.num_links = 1,
1556*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_nsp1_hsc_noc },
1557*010f4d24SOdelu Kukatla };
1558*010f4d24SOdelu Kukatla 
1559*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp_data02 = {
1560*010f4d24SOdelu Kukatla 	.name = "qnm_nsp_data02",
1561*010f4d24SOdelu Kukatla 	.channels = 2,
1562*010f4d24SOdelu Kukatla 	.buswidth = 32,
1563*010f4d24SOdelu Kukatla 	.num_links = 1,
1564*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_nsp2_hsc_noc },
1565*010f4d24SOdelu Kukatla };
1566*010f4d24SOdelu Kukatla 
1567*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsp_data03 = {
1568*010f4d24SOdelu Kukatla 	.name = "qnm_nsp_data03",
1569*010f4d24SOdelu Kukatla 	.channels = 2,
1570*010f4d24SOdelu Kukatla 	.buswidth = 32,
1571*010f4d24SOdelu Kukatla 	.num_links = 1,
1572*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_nsp3_hsc_noc },
1573*010f4d24SOdelu Kukatla };
1574*010f4d24SOdelu Kukatla 
1575*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_pcie_dma_0 = {
1576*010f4d24SOdelu Kukatla 	.name = "qxm_pcie_dma_0",
1577*010f4d24SOdelu Kukatla 	.channels = 1,
1578*010f4d24SOdelu Kukatla 	.buswidth = 8,
1579*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1580*010f4d24SOdelu Kukatla 		.num_ports = 1,
1581*010f4d24SOdelu Kukatla 		.port_offsets = { 0x49000 },
1582*010f4d24SOdelu Kukatla 		.prio = 0,
1583*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1584*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1585*010f4d24SOdelu Kukatla 	},
1586*010f4d24SOdelu Kukatla 	.num_links = 2,
1587*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc, &qns_pcie_obnoc_dma },
1588*010f4d24SOdelu Kukatla };
1589*010f4d24SOdelu Kukatla 
1590*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_pcie_dma_1 = {
1591*010f4d24SOdelu Kukatla 	.name = "qxm_pcie_dma_1",
1592*010f4d24SOdelu Kukatla 	.channels = 1,
1593*010f4d24SOdelu Kukatla 	.buswidth = 8,
1594*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1595*010f4d24SOdelu Kukatla 		.num_ports = 1,
1596*010f4d24SOdelu Kukatla 		.port_offsets = { 0x4a000 },
1597*010f4d24SOdelu Kukatla 		.prio = 0,
1598*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1599*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1600*010f4d24SOdelu Kukatla 	},
1601*010f4d24SOdelu Kukatla 	.num_links = 2,
1602*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc, &qns_pcie_obnoc_dma },
1603*010f4d24SOdelu Kukatla };
1604*010f4d24SOdelu Kukatla 
1605*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_pcie_dma_2 = {
1606*010f4d24SOdelu Kukatla 	.name = "qxm_pcie_dma_2",
1607*010f4d24SOdelu Kukatla 	.channels = 1,
1608*010f4d24SOdelu Kukatla 	.buswidth = 8,
1609*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1610*010f4d24SOdelu Kukatla 		.num_ports = 1,
1611*010f4d24SOdelu Kukatla 		.port_offsets = { 0x4b000 },
1612*010f4d24SOdelu Kukatla 		.prio = 0,
1613*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1614*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1615*010f4d24SOdelu Kukatla 	},
1616*010f4d24SOdelu Kukatla 	.num_links = 2,
1617*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc, &qns_pcie_obnoc_dma },
1618*010f4d24SOdelu Kukatla };
1619*010f4d24SOdelu Kukatla 
1620*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_pcie_0 = {
1621*010f4d24SOdelu Kukatla 	.name = "xm_pcie_0",
1622*010f4d24SOdelu Kukatla 	.channels = 1,
1623*010f4d24SOdelu Kukatla 	.buswidth = 64,
1624*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1625*010f4d24SOdelu Kukatla 		.num_ports = 1,
1626*010f4d24SOdelu Kukatla 		.port_offsets = { 0x18000 },
1627*010f4d24SOdelu Kukatla 		.prio = 2,
1628*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1629*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1630*010f4d24SOdelu Kukatla 	},
1631*010f4d24SOdelu Kukatla 	.num_links = 1,
1632*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc },
1633*010f4d24SOdelu Kukatla };
1634*010f4d24SOdelu Kukatla 
1635*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_pcie_1 = {
1636*010f4d24SOdelu Kukatla 	.name = "xm_pcie_1",
1637*010f4d24SOdelu Kukatla 	.channels = 1,
1638*010f4d24SOdelu Kukatla 	.buswidth = 32,
1639*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1640*010f4d24SOdelu Kukatla 		.num_ports = 1,
1641*010f4d24SOdelu Kukatla 		.port_offsets = { 0x19000 },
1642*010f4d24SOdelu Kukatla 		.prio = 2,
1643*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1644*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1645*010f4d24SOdelu Kukatla 	},
1646*010f4d24SOdelu Kukatla 	.num_links = 1,
1647*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc },
1648*010f4d24SOdelu Kukatla };
1649*010f4d24SOdelu Kukatla 
1650*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_pcie_2 = {
1651*010f4d24SOdelu Kukatla 	.name = "xm_pcie_2",
1652*010f4d24SOdelu Kukatla 	.channels = 1,
1653*010f4d24SOdelu Kukatla 	.buswidth = 16,
1654*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1655*010f4d24SOdelu Kukatla 		.num_ports = 1,
1656*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1a000 },
1657*010f4d24SOdelu Kukatla 		.prio = 2,
1658*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1659*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1660*010f4d24SOdelu Kukatla 	},
1661*010f4d24SOdelu Kukatla 	.num_links = 1,
1662*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc },
1663*010f4d24SOdelu Kukatla };
1664*010f4d24SOdelu Kukatla 
1665*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_pcie_3 = {
1666*010f4d24SOdelu Kukatla 	.name = "xm_pcie_3",
1667*010f4d24SOdelu Kukatla 	.channels = 1,
1668*010f4d24SOdelu Kukatla 	.buswidth = 8,
1669*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1670*010f4d24SOdelu Kukatla 		.num_ports = 1,
1671*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1b000 },
1672*010f4d24SOdelu Kukatla 		.prio = 2,
1673*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1674*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1675*010f4d24SOdelu Kukatla 	},
1676*010f4d24SOdelu Kukatla 	.num_links = 1,
1677*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_pcie_hscnoc },
1678*010f4d24SOdelu Kukatla };
1679*010f4d24SOdelu Kukatla 
1680*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_aggre1_noc = {
1681*010f4d24SOdelu Kukatla 	.name = "qnm_aggre1_noc",
1682*010f4d24SOdelu Kukatla 	.channels = 1,
1683*010f4d24SOdelu Kukatla 	.buswidth = 16,
1684*010f4d24SOdelu Kukatla 	.num_links = 1,
1685*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_sf },
1686*010f4d24SOdelu Kukatla };
1687*010f4d24SOdelu Kukatla 
1688*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_aggre2_noc = {
1689*010f4d24SOdelu Kukatla 	.name = "qnm_aggre2_noc",
1690*010f4d24SOdelu Kukatla 	.channels = 1,
1691*010f4d24SOdelu Kukatla 	.buswidth = 16,
1692*010f4d24SOdelu Kukatla 	.num_links = 1,
1693*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_sf },
1694*010f4d24SOdelu Kukatla };
1695*010f4d24SOdelu Kukatla 
1696*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_cnoc_data = {
1697*010f4d24SOdelu Kukatla 	.name = "qnm_cnoc_data",
1698*010f4d24SOdelu Kukatla 	.channels = 1,
1699*010f4d24SOdelu Kukatla 	.buswidth = 8,
1700*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1701*010f4d24SOdelu Kukatla 		.num_ports = 1,
1702*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1a000 },
1703*010f4d24SOdelu Kukatla 		.prio = 2,
1704*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1705*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1706*010f4d24SOdelu Kukatla 	},
1707*010f4d24SOdelu Kukatla 	.num_links = 1,
1708*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_sf },
1709*010f4d24SOdelu Kukatla };
1710*010f4d24SOdelu Kukatla 
1711*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_nsi_noc = {
1712*010f4d24SOdelu Kukatla 	.name = "qnm_nsi_noc",
1713*010f4d24SOdelu Kukatla 	.channels = 1,
1714*010f4d24SOdelu Kukatla 	.buswidth = 8,
1715*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1716*010f4d24SOdelu Kukatla 		.num_ports = 1,
1717*010f4d24SOdelu Kukatla 		.port_offsets = { 0x19000 },
1718*010f4d24SOdelu Kukatla 		.prio = 2,
1719*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1720*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1721*010f4d24SOdelu Kukatla 	},
1722*010f4d24SOdelu Kukatla 	.num_links = 1,
1723*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_sf },
1724*010f4d24SOdelu Kukatla };
1725*010f4d24SOdelu Kukatla 
1726*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_safe_dma = {
1727*010f4d24SOdelu Kukatla 	.name = "qnm_safe_dma",
1728*010f4d24SOdelu Kukatla 	.channels = 1,
1729*010f4d24SOdelu Kukatla 	.buswidth = 64,
1730*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1731*010f4d24SOdelu Kukatla 		.num_ports = 1,
1732*010f4d24SOdelu Kukatla 		.port_offsets = { 0x1b000 },
1733*010f4d24SOdelu Kukatla 		.prio = 0,
1734*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1735*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 0,
1736*010f4d24SOdelu Kukatla 	},
1737*010f4d24SOdelu Kukatla 	.num_links = 1,
1738*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_hscnoc_sf },
1739*010f4d24SOdelu Kukatla };
1740*010f4d24SOdelu Kukatla 
1741*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_a1noc_snoc = {
1742*010f4d24SOdelu Kukatla 	.name = "qns_a1noc_snoc",
1743*010f4d24SOdelu Kukatla 	.channels = 1,
1744*010f4d24SOdelu Kukatla 	.buswidth = 16,
1745*010f4d24SOdelu Kukatla 	.num_links = 1,
1746*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_aggre1_noc },
1747*010f4d24SOdelu Kukatla };
1748*010f4d24SOdelu Kukatla 
1749*010f4d24SOdelu Kukatla static struct qcom_icc_node qns_a2noc_snoc = {
1750*010f4d24SOdelu Kukatla 	.name = "qns_a2noc_snoc",
1751*010f4d24SOdelu Kukatla 	.channels = 1,
1752*010f4d24SOdelu Kukatla 	.buswidth = 16,
1753*010f4d24SOdelu Kukatla 	.num_links = 1,
1754*010f4d24SOdelu Kukatla 	.link_nodes = { &qnm_aggre2_noc },
1755*010f4d24SOdelu Kukatla };
1756*010f4d24SOdelu Kukatla 
1757*010f4d24SOdelu Kukatla static struct qcom_icc_node qhm_qspi = {
1758*010f4d24SOdelu Kukatla 	.name = "qhm_qspi",
1759*010f4d24SOdelu Kukatla 	.channels = 1,
1760*010f4d24SOdelu Kukatla 	.buswidth = 4,
1761*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1762*010f4d24SOdelu Kukatla 		.num_ports = 1,
1763*010f4d24SOdelu Kukatla 		.port_offsets = { 0x18000 },
1764*010f4d24SOdelu Kukatla 		.prio = 2,
1765*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1766*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1767*010f4d24SOdelu Kukatla 	},
1768*010f4d24SOdelu Kukatla 	.num_links = 1,
1769*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_snoc },
1770*010f4d24SOdelu Kukatla };
1771*010f4d24SOdelu Kukatla 
1772*010f4d24SOdelu Kukatla static struct qcom_icc_node qnm_sailss_md1 = {
1773*010f4d24SOdelu Kukatla 	.name = "qnm_sailss_md1",
1774*010f4d24SOdelu Kukatla 	.channels = 1,
1775*010f4d24SOdelu Kukatla 	.buswidth = 8,
1776*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1777*010f4d24SOdelu Kukatla 		.num_ports = 1,
1778*010f4d24SOdelu Kukatla 		.port_offsets = { 0x16000 },
1779*010f4d24SOdelu Kukatla 		.prio = 2,
1780*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1781*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1782*010f4d24SOdelu Kukatla 	},
1783*010f4d24SOdelu Kukatla 	.num_links = 1,
1784*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_snoc },
1785*010f4d24SOdelu Kukatla };
1786*010f4d24SOdelu Kukatla 
1787*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_qup3 = {
1788*010f4d24SOdelu Kukatla 	.name = "qxm_qup3",
1789*010f4d24SOdelu Kukatla 	.channels = 1,
1790*010f4d24SOdelu Kukatla 	.buswidth = 8,
1791*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1792*010f4d24SOdelu Kukatla 		.num_ports = 1,
1793*010f4d24SOdelu Kukatla 		.port_offsets = { 0x17000 },
1794*010f4d24SOdelu Kukatla 		.prio = 2,
1795*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1796*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1797*010f4d24SOdelu Kukatla 	},
1798*010f4d24SOdelu Kukatla 	.num_links = 1,
1799*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a1noc_snoc },
1800*010f4d24SOdelu Kukatla };
1801*010f4d24SOdelu Kukatla 
1802*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_ipa = {
1803*010f4d24SOdelu Kukatla 	.name = "qxm_ipa",
1804*010f4d24SOdelu Kukatla 	.channels = 1,
1805*010f4d24SOdelu Kukatla 	.buswidth = 8,
1806*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1807*010f4d24SOdelu Kukatla 		.num_ports = 1,
1808*010f4d24SOdelu Kukatla 		.port_offsets = { 0x13000 },
1809*010f4d24SOdelu Kukatla 		.prio = 2,
1810*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1811*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1812*010f4d24SOdelu Kukatla 	},
1813*010f4d24SOdelu Kukatla 	.num_links = 1,
1814*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_snoc },
1815*010f4d24SOdelu Kukatla };
1816*010f4d24SOdelu Kukatla 
1817*010f4d24SOdelu Kukatla static struct qcom_icc_node qxm_soccp = {
1818*010f4d24SOdelu Kukatla 	.name = "qxm_soccp",
1819*010f4d24SOdelu Kukatla 	.channels = 1,
1820*010f4d24SOdelu Kukatla 	.buswidth = 8,
1821*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1822*010f4d24SOdelu Kukatla 		.num_ports = 1,
1823*010f4d24SOdelu Kukatla 		.port_offsets = { 0x16000 },
1824*010f4d24SOdelu Kukatla 		.prio = 2,
1825*010f4d24SOdelu Kukatla 		.urg_fwd = 1,
1826*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1827*010f4d24SOdelu Kukatla 	},
1828*010f4d24SOdelu Kukatla 	.num_links = 1,
1829*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_snoc },
1830*010f4d24SOdelu Kukatla };
1831*010f4d24SOdelu Kukatla 
1832*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_qdss_etr_0 = {
1833*010f4d24SOdelu Kukatla 	.name = "xm_qdss_etr_0",
1834*010f4d24SOdelu Kukatla 	.channels = 1,
1835*010f4d24SOdelu Kukatla 	.buswidth = 8,
1836*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1837*010f4d24SOdelu Kukatla 		.num_ports = 1,
1838*010f4d24SOdelu Kukatla 		.port_offsets = { 0x14000 },
1839*010f4d24SOdelu Kukatla 		.prio = 2,
1840*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1841*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1842*010f4d24SOdelu Kukatla 	},
1843*010f4d24SOdelu Kukatla 	.num_links = 1,
1844*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_snoc },
1845*010f4d24SOdelu Kukatla };
1846*010f4d24SOdelu Kukatla 
1847*010f4d24SOdelu Kukatla static struct qcom_icc_node xm_qdss_etr_1 = {
1848*010f4d24SOdelu Kukatla 	.name = "xm_qdss_etr_1",
1849*010f4d24SOdelu Kukatla 	.channels = 1,
1850*010f4d24SOdelu Kukatla 	.buswidth = 8,
1851*010f4d24SOdelu Kukatla 	.qosbox = &(const struct qcom_icc_qosbox) {
1852*010f4d24SOdelu Kukatla 		.num_ports = 1,
1853*010f4d24SOdelu Kukatla 		.port_offsets = { 0x15000 },
1854*010f4d24SOdelu Kukatla 		.prio = 2,
1855*010f4d24SOdelu Kukatla 		.urg_fwd = 0,
1856*010f4d24SOdelu Kukatla 		.prio_fwd_disable = 1,
1857*010f4d24SOdelu Kukatla 	},
1858*010f4d24SOdelu Kukatla 	.num_links = 1,
1859*010f4d24SOdelu Kukatla 	.link_nodes = { &qns_a2noc_snoc },
1860*010f4d24SOdelu Kukatla };
1861*010f4d24SOdelu Kukatla 
1862*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_c0n0 = {
1863*010f4d24SOdelu Kukatla 	.name = "C0N0",
1864*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1865*010f4d24SOdelu Kukatla 	.num_nodes = 2,
1866*010f4d24SOdelu Kukatla 	.nodes = { &qnm_nsp_data00, &qns_nsp0_hsc_noc },
1867*010f4d24SOdelu Kukatla };
1868*010f4d24SOdelu Kukatla 
1869*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_c1n0 = {
1870*010f4d24SOdelu Kukatla 	.name = "C1N0",
1871*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1872*010f4d24SOdelu Kukatla 	.num_nodes = 2,
1873*010f4d24SOdelu Kukatla 	.nodes = { &qnm_nsp_data01, &qns_nsp1_hsc_noc },
1874*010f4d24SOdelu Kukatla };
1875*010f4d24SOdelu Kukatla 
1876*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_c2n0 = {
1877*010f4d24SOdelu Kukatla 	.name = "C2N0",
1878*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1879*010f4d24SOdelu Kukatla 	.num_nodes = 2,
1880*010f4d24SOdelu Kukatla 	.nodes = { &qnm_nsp_data02, &qns_nsp2_hsc_noc },
1881*010f4d24SOdelu Kukatla };
1882*010f4d24SOdelu Kukatla 
1883*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_c3n0 = {
1884*010f4d24SOdelu Kukatla 	.name = "C3N0",
1885*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1886*010f4d24SOdelu Kukatla 	.num_nodes = 2,
1887*010f4d24SOdelu Kukatla 	.nodes = { &qnm_nsp_data03, &qns_nsp3_hsc_noc },
1888*010f4d24SOdelu Kukatla };
1889*010f4d24SOdelu Kukatla 
1890*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_ce0 = {
1891*010f4d24SOdelu Kukatla 	.name = "CE0",
1892*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1893*010f4d24SOdelu Kukatla 	.nodes = { &qxm_crypto_0 },
1894*010f4d24SOdelu Kukatla };
1895*010f4d24SOdelu Kukatla 
1896*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_ce1 = {
1897*010f4d24SOdelu Kukatla 	.name = "CE1",
1898*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1899*010f4d24SOdelu Kukatla 	.nodes = { &qxm_crypto_1 },
1900*010f4d24SOdelu Kukatla };
1901*010f4d24SOdelu Kukatla 
1902*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_ce2 = {
1903*010f4d24SOdelu Kukatla 	.name = "CE2",
1904*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1905*010f4d24SOdelu Kukatla 	.nodes = { &qxm_crypto_2 },
1906*010f4d24SOdelu Kukatla };
1907*010f4d24SOdelu Kukatla 
1908*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_cn0 = {
1909*010f4d24SOdelu Kukatla 	.name = "CN0",
1910*010f4d24SOdelu Kukatla 	.keepalive = true,
1911*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1912*010f4d24SOdelu Kukatla 	.num_nodes = 6,
1913*010f4d24SOdelu Kukatla 	.nodes = { &qsm_cfg, &qhm_mm_rscc,
1914*010f4d24SOdelu Kukatla 		   &qnm_hscnoc, &qnm_cnoc_pcie_dma,
1915*010f4d24SOdelu Kukatla 		   &qnm_hscnoc_pcie, &qnm_pcie_ibnoc_dma },
1916*010f4d24SOdelu Kukatla };
1917*010f4d24SOdelu Kukatla 
1918*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_cn1 = {
1919*010f4d24SOdelu Kukatla 	.name = "CN1",
1920*010f4d24SOdelu Kukatla 	.num_nodes = 2,
1921*010f4d24SOdelu Kukatla 	.nodes = { &qhs_display_1_cfg, &qhs_display_cfg },
1922*010f4d24SOdelu Kukatla };
1923*010f4d24SOdelu Kukatla 
1924*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_mc0 = {
1925*010f4d24SOdelu Kukatla 	.name = "MC0",
1926*010f4d24SOdelu Kukatla 	.keepalive = true,
1927*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1928*010f4d24SOdelu Kukatla 	.nodes = { &ebi },
1929*010f4d24SOdelu Kukatla };
1930*010f4d24SOdelu Kukatla 
1931*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_mm0 = {
1932*010f4d24SOdelu Kukatla 	.name = "MM0",
1933*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1934*010f4d24SOdelu Kukatla 	.nodes = { &qns_mem_noc_hf },
1935*010f4d24SOdelu Kukatla };
1936*010f4d24SOdelu Kukatla 
1937*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_mm1 = {
1938*010f4d24SOdelu Kukatla 	.name = "MM1",
1939*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1940*010f4d24SOdelu Kukatla 	.num_nodes = 14,
1941*010f4d24SOdelu Kukatla 	.nodes = { &qnm_camnoc_hf, &qnm_camnoc_nrt_icp_sf,
1942*010f4d24SOdelu Kukatla 		   &qnm_camnoc_rt_cdm_sf, &qnm_camnoc_sf,
1943*010f4d24SOdelu Kukatla 		   &qnm_dprx0, &qnm_dprx1,
1944*010f4d24SOdelu Kukatla 		   &qnm_mdp0, &qnm_mdp1,
1945*010f4d24SOdelu Kukatla 		   &qnm_video_cv_cpu, &qnm_video_eva,
1946*010f4d24SOdelu Kukatla 		   &qnm_video_mvp0, &qnm_video_mvp1,
1947*010f4d24SOdelu Kukatla 		   &qnm_video_v_cpu, &qns_mem_noc_sf },
1948*010f4d24SOdelu Kukatla };
1949*010f4d24SOdelu Kukatla 
1950*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_qup0 = {
1951*010f4d24SOdelu Kukatla 	.name = "QUP0",
1952*010f4d24SOdelu Kukatla 	.vote_scale = 1,
1953*010f4d24SOdelu Kukatla 	.keepalive = true,
1954*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1955*010f4d24SOdelu Kukatla 	.nodes = { &qup0_core_slave },
1956*010f4d24SOdelu Kukatla };
1957*010f4d24SOdelu Kukatla 
1958*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_qup1 = {
1959*010f4d24SOdelu Kukatla 	.name = "QUP1",
1960*010f4d24SOdelu Kukatla 	.vote_scale = 1,
1961*010f4d24SOdelu Kukatla 	.keepalive = true,
1962*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1963*010f4d24SOdelu Kukatla 	.nodes = { &qup1_core_slave },
1964*010f4d24SOdelu Kukatla };
1965*010f4d24SOdelu Kukatla 
1966*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_qup2 = {
1967*010f4d24SOdelu Kukatla 	.name = "QUP2",
1968*010f4d24SOdelu Kukatla 	.vote_scale = 1,
1969*010f4d24SOdelu Kukatla 	.keepalive = true,
1970*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1971*010f4d24SOdelu Kukatla 	.nodes = { &qup2_core_slave },
1972*010f4d24SOdelu Kukatla };
1973*010f4d24SOdelu Kukatla 
1974*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_qup3 = {
1975*010f4d24SOdelu Kukatla 	.name = "QUP3",
1976*010f4d24SOdelu Kukatla 	.vote_scale = 1,
1977*010f4d24SOdelu Kukatla 	.keepalive = true,
1978*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1979*010f4d24SOdelu Kukatla 	.nodes = { &qup3_core_slave },
1980*010f4d24SOdelu Kukatla };
1981*010f4d24SOdelu Kukatla 
1982*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sh0 = {
1983*010f4d24SOdelu Kukatla 	.name = "SH0",
1984*010f4d24SOdelu Kukatla 	.keepalive = true,
1985*010f4d24SOdelu Kukatla 	.num_nodes = 1,
1986*010f4d24SOdelu Kukatla 	.nodes = { &qns_llcc },
1987*010f4d24SOdelu Kukatla };
1988*010f4d24SOdelu Kukatla 
1989*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sh1 = {
1990*010f4d24SOdelu Kukatla 	.name = "SH1",
1991*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
1992*010f4d24SOdelu Kukatla 	.num_nodes = 24,
1993*010f4d24SOdelu Kukatla 	.nodes = { &alm_gpu_tcu, &alm_qtc,
1994*010f4d24SOdelu Kukatla 		   &alm_sys_tcu0, &alm_sys_tcu1,
1995*010f4d24SOdelu Kukatla 		   &alm_sys_tcu2, &chm_apps,
1996*010f4d24SOdelu Kukatla 		   &qnm_aggre_north, &qnm_aggre_south,
1997*010f4d24SOdelu Kukatla 		   &qnm_gpu0, &qnm_gpu1,
1998*010f4d24SOdelu Kukatla 		   &qnm_hpass_adas_hscnoc, &qnm_hpass_audio_hscnoc,
1999*010f4d24SOdelu Kukatla 		   &qnm_mnoc_hf, &qnm_mnoc_sf,
2000*010f4d24SOdelu Kukatla 		   &qnm_nsp0_hscnoc, &qnm_nsp1_hscnoc,
2001*010f4d24SOdelu Kukatla 		   &qnm_nsp2_hscnoc, &qnm_nsp3_hscnoc,
2002*010f4d24SOdelu Kukatla 		   &qnm_pcie, &qnm_sailss_md0_hscnoc,
2003*010f4d24SOdelu Kukatla 		   &qnm_snoc_sf, &xm_gic,
2004*010f4d24SOdelu Kukatla 		   &qns_hscnoc_cnoc, &qns_pcie },
2005*010f4d24SOdelu Kukatla };
2006*010f4d24SOdelu Kukatla 
2007*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sn0 = {
2008*010f4d24SOdelu Kukatla 	.name = "SN0",
2009*010f4d24SOdelu Kukatla 	.keepalive = true,
2010*010f4d24SOdelu Kukatla 	.num_nodes = 1,
2011*010f4d24SOdelu Kukatla 	.nodes = { &qns_hscnoc_sf },
2012*010f4d24SOdelu Kukatla };
2013*010f4d24SOdelu Kukatla 
2014*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sn1 = {
2015*010f4d24SOdelu Kukatla 	.name = "SN1",
2016*010f4d24SOdelu Kukatla 	.enable_mask = BIT(0),
2017*010f4d24SOdelu Kukatla 	.num_nodes = 14,
2018*010f4d24SOdelu Kukatla 	.nodes = { &qns_a1noc_hscnoc, &qns_a2noc_hscnoc,
2019*010f4d24SOdelu Kukatla 		   &qxm_pcie_dma_0, &qxm_pcie_dma_1,
2020*010f4d24SOdelu Kukatla 		   &qxm_pcie_dma_2, &xm_pcie_0,
2021*010f4d24SOdelu Kukatla 		   &xm_pcie_1, &xm_pcie_2,
2022*010f4d24SOdelu Kukatla 		   &xm_pcie_3, &qns_pcie_hscnoc,
2023*010f4d24SOdelu Kukatla 		   &qns_pcie_obnoc_dma, &qnm_cnoc_data,
2024*010f4d24SOdelu Kukatla 		   &qnm_nsi_noc, &qnm_safe_dma },
2025*010f4d24SOdelu Kukatla };
2026*010f4d24SOdelu Kukatla 
2027*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sn2 = {
2028*010f4d24SOdelu Kukatla 	.name = "SN2",
2029*010f4d24SOdelu Kukatla 	.num_nodes = 1,
2030*010f4d24SOdelu Kukatla 	.nodes = { &qnm_aggre1_noc },
2031*010f4d24SOdelu Kukatla };
2032*010f4d24SOdelu Kukatla 
2033*010f4d24SOdelu Kukatla static struct qcom_icc_bcm bcm_sn3 = {
2034*010f4d24SOdelu Kukatla 	.name = "SN3",
2035*010f4d24SOdelu Kukatla 	.num_nodes = 1,
2036*010f4d24SOdelu Kukatla 	.nodes = { &qnm_aggre2_noc },
2037*010f4d24SOdelu Kukatla };
2038*010f4d24SOdelu Kukatla 
2039*010f4d24SOdelu Kukatla static struct qcom_icc_node * const aggre1_noc_nodes[] = {
2040*010f4d24SOdelu Kukatla 	[MASTER_QSPI_0] = &qhm_qspi,
2041*010f4d24SOdelu Kukatla 	[MASTER_SAILSS_MD1] = &qnm_sailss_md1,
2042*010f4d24SOdelu Kukatla 	[MASTER_QUP_3] = &qxm_qup3,
2043*010f4d24SOdelu Kukatla 	[SLAVE_A1NOC_SNOC] = &qns_a1noc_snoc,
2044*010f4d24SOdelu Kukatla };
2045*010f4d24SOdelu Kukatla 
2046*010f4d24SOdelu Kukatla static const struct regmap_config nord_aggre1_noc_regmap_config = {
2047*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2048*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2049*010f4d24SOdelu Kukatla 	.val_bits = 32,
2050*010f4d24SOdelu Kukatla 	.max_register = 0x1c400,
2051*010f4d24SOdelu Kukatla 	.fast_io = true,
2052*010f4d24SOdelu Kukatla };
2053*010f4d24SOdelu Kukatla 
2054*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_aggre1_noc = {
2055*010f4d24SOdelu Kukatla 	.config = &nord_aggre1_noc_regmap_config,
2056*010f4d24SOdelu Kukatla 	.nodes = aggre1_noc_nodes,
2057*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(aggre1_noc_nodes),
2058*010f4d24SOdelu Kukatla };
2059*010f4d24SOdelu Kukatla 
2060*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const aggre1_noc_tile_bcms[] = {
2061*010f4d24SOdelu Kukatla 	&bcm_ce0,
2062*010f4d24SOdelu Kukatla 	&bcm_ce1,
2063*010f4d24SOdelu Kukatla 	&bcm_ce2,
2064*010f4d24SOdelu Kukatla 	&bcm_sn1,
2065*010f4d24SOdelu Kukatla };
2066*010f4d24SOdelu Kukatla 
2067*010f4d24SOdelu Kukatla static struct qcom_icc_node * const aggre1_noc_tile_nodes[] = {
2068*010f4d24SOdelu Kukatla 	[MASTER_QUP_2] = &qhm_qup2,
2069*010f4d24SOdelu Kukatla 	[MASTER_CRYPTO_CORE0] = &qxm_crypto_0,
2070*010f4d24SOdelu Kukatla 	[MASTER_CRYPTO_CORE1] = &qxm_crypto_1,
2071*010f4d24SOdelu Kukatla 	[MASTER_CRYPTO_CORE2] = &qxm_crypto_2,
2072*010f4d24SOdelu Kukatla 	[MASTER_SDCC_4] = &xm_sdc4,
2073*010f4d24SOdelu Kukatla 	[MASTER_UFS_MEM] = &xm_ufs_mem,
2074*010f4d24SOdelu Kukatla 	[MASTER_USB2] = &xm_usb2,
2075*010f4d24SOdelu Kukatla 	[MASTER_USB3_0] = &xm_usb3_0,
2076*010f4d24SOdelu Kukatla 	[MASTER_USB3_1] = &xm_usb3_1,
2077*010f4d24SOdelu Kukatla 	[SLAVE_A1NOC_HSCNOC] = &qns_a1noc_hscnoc,
2078*010f4d24SOdelu Kukatla };
2079*010f4d24SOdelu Kukatla 
2080*010f4d24SOdelu Kukatla static const struct regmap_config nord_aggre1_noc_tile_regmap_config = {
2081*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2082*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2083*010f4d24SOdelu Kukatla 	.val_bits = 32,
2084*010f4d24SOdelu Kukatla 	.max_register = 0x23400,
2085*010f4d24SOdelu Kukatla 	.fast_io = true,
2086*010f4d24SOdelu Kukatla };
2087*010f4d24SOdelu Kukatla 
2088*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_aggre1_noc_tile = {
2089*010f4d24SOdelu Kukatla 	.config = &nord_aggre1_noc_tile_regmap_config,
2090*010f4d24SOdelu Kukatla 	.nodes = aggre1_noc_tile_nodes,
2091*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(aggre1_noc_tile_nodes),
2092*010f4d24SOdelu Kukatla 	.bcms = aggre1_noc_tile_bcms,
2093*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(aggre1_noc_tile_bcms),
2094*010f4d24SOdelu Kukatla };
2095*010f4d24SOdelu Kukatla 
2096*010f4d24SOdelu Kukatla static struct qcom_icc_node * const aggre2_noc_nodes[] = {
2097*010f4d24SOdelu Kukatla 	[MASTER_IPA] = &qxm_ipa,
2098*010f4d24SOdelu Kukatla 	[MASTER_SOCCP_AGGR_NOC] = &qxm_soccp,
2099*010f4d24SOdelu Kukatla 	[MASTER_QDSS_ETR] = &xm_qdss_etr_0,
2100*010f4d24SOdelu Kukatla 	[MASTER_QDSS_ETR_1] = &xm_qdss_etr_1,
2101*010f4d24SOdelu Kukatla 	[SLAVE_A2NOC_SNOC] = &qns_a2noc_snoc,
2102*010f4d24SOdelu Kukatla };
2103*010f4d24SOdelu Kukatla 
2104*010f4d24SOdelu Kukatla static const struct regmap_config nord_aggre2_noc_regmap_config = {
2105*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2106*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2107*010f4d24SOdelu Kukatla 	.val_bits = 32,
2108*010f4d24SOdelu Kukatla 	.max_register = 0x1b400,
2109*010f4d24SOdelu Kukatla 	.fast_io = true,
2110*010f4d24SOdelu Kukatla };
2111*010f4d24SOdelu Kukatla 
2112*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_aggre2_noc = {
2113*010f4d24SOdelu Kukatla 	.config = &nord_aggre2_noc_regmap_config,
2114*010f4d24SOdelu Kukatla 	.nodes = aggre2_noc_nodes,
2115*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(aggre2_noc_nodes),
2116*010f4d24SOdelu Kukatla };
2117*010f4d24SOdelu Kukatla 
2118*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const aggre2_noc_tile_bcms[] = {
2119*010f4d24SOdelu Kukatla 	&bcm_sn1,
2120*010f4d24SOdelu Kukatla };
2121*010f4d24SOdelu Kukatla 
2122*010f4d24SOdelu Kukatla static struct qcom_icc_node * const aggre2_noc_tile_nodes[] = {
2123*010f4d24SOdelu Kukatla 	[MASTER_QUP_0] = &qhm_qup0,
2124*010f4d24SOdelu Kukatla 	[MASTER_QUP_1] = &qhm_qup1,
2125*010f4d24SOdelu Kukatla 	[MASTER_EMAC_0] = &xm_emac_0,
2126*010f4d24SOdelu Kukatla 	[MASTER_EMAC_1] = &xm_emac_1,
2127*010f4d24SOdelu Kukatla 	[SLAVE_A2NOC_HSCNOC] = &qns_a2noc_hscnoc,
2128*010f4d24SOdelu Kukatla };
2129*010f4d24SOdelu Kukatla 
2130*010f4d24SOdelu Kukatla static const struct regmap_config nord_aggre2_noc_tile_regmap_config = {
2131*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2132*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2133*010f4d24SOdelu Kukatla 	.val_bits = 32,
2134*010f4d24SOdelu Kukatla 	.max_register = 0x1b400,
2135*010f4d24SOdelu Kukatla 	.fast_io = true,
2136*010f4d24SOdelu Kukatla };
2137*010f4d24SOdelu Kukatla 
2138*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_aggre2_noc_tile = {
2139*010f4d24SOdelu Kukatla 	.config = &nord_aggre2_noc_tile_regmap_config,
2140*010f4d24SOdelu Kukatla 	.nodes = aggre2_noc_tile_nodes,
2141*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(aggre2_noc_tile_nodes),
2142*010f4d24SOdelu Kukatla 	.bcms = aggre2_noc_tile_bcms,
2143*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(aggre2_noc_tile_bcms),
2144*010f4d24SOdelu Kukatla };
2145*010f4d24SOdelu Kukatla 
2146*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const clk_virt_bcms[] = {
2147*010f4d24SOdelu Kukatla 	&bcm_qup0,
2148*010f4d24SOdelu Kukatla 	&bcm_qup1,
2149*010f4d24SOdelu Kukatla 	&bcm_qup2,
2150*010f4d24SOdelu Kukatla 	&bcm_qup3,
2151*010f4d24SOdelu Kukatla };
2152*010f4d24SOdelu Kukatla 
2153*010f4d24SOdelu Kukatla static struct qcom_icc_node * const clk_virt_nodes[] = {
2154*010f4d24SOdelu Kukatla 	[MASTER_QUP_CORE_0] = &qup0_core_master,
2155*010f4d24SOdelu Kukatla 	[MASTER_QUP_CORE_1] = &qup1_core_master,
2156*010f4d24SOdelu Kukatla 	[MASTER_QUP_CORE_2] = &qup2_core_master,
2157*010f4d24SOdelu Kukatla 	[MASTER_QUP_CORE_3] = &qup3_core_master,
2158*010f4d24SOdelu Kukatla 	[SLAVE_QUP_CORE_0] = &qup0_core_slave,
2159*010f4d24SOdelu Kukatla 	[SLAVE_QUP_CORE_1] = &qup1_core_slave,
2160*010f4d24SOdelu Kukatla 	[SLAVE_QUP_CORE_2] = &qup2_core_slave,
2161*010f4d24SOdelu Kukatla 	[SLAVE_QUP_CORE_3] = &qup3_core_slave,
2162*010f4d24SOdelu Kukatla };
2163*010f4d24SOdelu Kukatla 
2164*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_clk_virt = {
2165*010f4d24SOdelu Kukatla 	.nodes = clk_virt_nodes,
2166*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(clk_virt_nodes),
2167*010f4d24SOdelu Kukatla 	.bcms = clk_virt_bcms,
2168*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(clk_virt_bcms),
2169*010f4d24SOdelu Kukatla };
2170*010f4d24SOdelu Kukatla 
2171*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const cnoc_cfg_bcms[] = {
2172*010f4d24SOdelu Kukatla 	&bcm_cn0,
2173*010f4d24SOdelu Kukatla 	&bcm_cn1,
2174*010f4d24SOdelu Kukatla };
2175*010f4d24SOdelu Kukatla 
2176*010f4d24SOdelu Kukatla static struct qcom_icc_node * const cnoc_cfg_nodes[] = {
2177*010f4d24SOdelu Kukatla 	[MASTER_CNOC_CFG] = &qsm_cfg,
2178*010f4d24SOdelu Kukatla 	[SLAVE_PS_ETH_0] = &ps_eth_0,
2179*010f4d24SOdelu Kukatla 	[SLAVE_PS_ETH_1] = &ps_eth_1,
2180*010f4d24SOdelu Kukatla 	[SLAVE_SHS_SERVER] = &ps_shs_server,
2181*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_0] = &qhs_ahb2phy0,
2182*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_1] = &qhs_ahb2phy1,
2183*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_2] = &qhs_ahb2phy2,
2184*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_3] = &qhs_ahb2phy3,
2185*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_ETH_0] = &qhs_ahb2phy_eth_0,
2186*010f4d24SOdelu Kukatla 	[SLAVE_AHB2PHY_ETH_1] = &qhs_ahb2phy_eth_1,
2187*010f4d24SOdelu Kukatla 	[SLAVE_CAMERA_CFG] = &qhs_camera_cfg,
2188*010f4d24SOdelu Kukatla 	[SLAVE_CLK_CTL] = &qhs_clk_ctl,
2189*010f4d24SOdelu Kukatla 	[SLAVE_CRYPTO_0_CFG] = &qhs_crypto0_cfg,
2190*010f4d24SOdelu Kukatla 	[SLAVE_CRYPTO_1_CFG] = &qhs_crypto1_cfg,
2191*010f4d24SOdelu Kukatla 	[SLAVE_CRYPTO_2_CFG] = &qhs_crypto2_cfg,
2192*010f4d24SOdelu Kukatla 	[SLAVE_DISPLAY_1_CFG] = &qhs_display_1_cfg,
2193*010f4d24SOdelu Kukatla 	[SLAVE_DISPLAY_CFG] = &qhs_display_cfg,
2194*010f4d24SOdelu Kukatla 	[SLAVE_DPRX0] = &qhs_dprx0,
2195*010f4d24SOdelu Kukatla 	[SLAVE_DPRX1] = &qhs_dprx1,
2196*010f4d24SOdelu Kukatla 	[SLAVE_EVA_CFG] = &qhs_eva_cfg,
2197*010f4d24SOdelu Kukatla 	[SLAVE_GFX3D_CFG] = &qhs_gpuss_0_cfg,
2198*010f4d24SOdelu Kukatla 	[SLAVE_GFX3D_1_CFG] = &qhs_gpuss_1_cfg,
2199*010f4d24SOdelu Kukatla 	[SLAVE_I2C] = &qhs_i2c,
2200*010f4d24SOdelu Kukatla 	[SLAVE_IMEM_CFG] = &qhs_imem_cfg,
2201*010f4d24SOdelu Kukatla 	[SLAVE_MCW_PCIE] = &qhs_mcw_pcie,
2202*010f4d24SOdelu Kukatla 	[SLAVE_MM_RSCC] = &qhs_mm_rscc,
2203*010f4d24SOdelu Kukatla 	[SLAVE_NE_CLK_CTL] = &qhs_ne_clk_ctl,
2204*010f4d24SOdelu Kukatla 	[SLAVE_NSPSS0_CFG] = &qhs_nspss0_cfg,
2205*010f4d24SOdelu Kukatla 	[SLAVE_NSPSS1_CFG] = &qhs_nspss1_cfg,
2206*010f4d24SOdelu Kukatla 	[SLAVE_NSPSS2_CFG] = &qhs_nspss2_cfg,
2207*010f4d24SOdelu Kukatla 	[SLAVE_NSPSS3_CFG] = &qhs_nspss3_cfg,
2208*010f4d24SOdelu Kukatla 	[SLAVE_NW_CLK_CTL] = &qhs_nw_clk_ctl,
2209*010f4d24SOdelu Kukatla 	[SLAVE_PRNG] = &qhs_prng,
2210*010f4d24SOdelu Kukatla 	[SLAVE_QDSS_CFG] = &qhs_qdss_cfg,
2211*010f4d24SOdelu Kukatla 	[SLAVE_QSPI_0] = &qhs_qspi,
2212*010f4d24SOdelu Kukatla 	[SLAVE_QUP_0] = &qhs_qup0,
2213*010f4d24SOdelu Kukatla 	[SLAVE_QUP_3] = &qhs_qup3,
2214*010f4d24SOdelu Kukatla 	[SLAVE_QUP_1] = &qhs_qup1,
2215*010f4d24SOdelu Kukatla 	[SLAVE_QUP_2] = &qhs_qup2,
2216*010f4d24SOdelu Kukatla 	[SLAVE_SAFEDMA_CFG] = &qhs_safedma_cfg,
2217*010f4d24SOdelu Kukatla 	[SLAVE_SDCC_4] = &qhs_sdc4,
2218*010f4d24SOdelu Kukatla 	[SLAVE_SE_CLK_CTL] = &qhs_se_clk_ctl,
2219*010f4d24SOdelu Kukatla 	[SLAVE_TCSR] = &qhs_tcsr,
2220*010f4d24SOdelu Kukatla 	[SLAVE_TLMM] = &qhs_tlmm,
2221*010f4d24SOdelu Kukatla 	[SLAVE_TSC_CFG] = &qhs_tsc_cfg,
2222*010f4d24SOdelu Kukatla 	[SLAVE_UFS_MEM_CFG] = &qhs_ufs_mem_cfg,
2223*010f4d24SOdelu Kukatla 	[SLAVE_USB2] = &qhs_usb2,
2224*010f4d24SOdelu Kukatla 	[SLAVE_USB3_0] = &qhs_usb3_0,
2225*010f4d24SOdelu Kukatla 	[SLAVE_USB3_1] = &qhs_usb3_1,
2226*010f4d24SOdelu Kukatla 	[SLAVE_VENUS_CFG] = &qhs_venus_cfg,
2227*010f4d24SOdelu Kukatla 	[SLAVE_COMPUTENOC_CFG] = &qss_computenoc_cfg,
2228*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_NOC_CFG] = &qss_pcie_noc_cfg,
2229*010f4d24SOdelu Kukatla 	[SLAVE_QTC_CFG] = &qss_qtc_cfg,
2230*010f4d24SOdelu Kukatla 	[SLAVE_QDSS_STM] = &xs_qdss_stm,
2231*010f4d24SOdelu Kukatla 	[SLAVE_SYS_TCU0_CFG] = &xs_sys_tcu0_cfg,
2232*010f4d24SOdelu Kukatla 	[SLAVE_SYS_TCU1_CFG] = &xs_sys_tcu1_cfg,
2233*010f4d24SOdelu Kukatla 	[SLAVE_SYS_TCU2_CFG] = &xs_sys_tcu2_cfg,
2234*010f4d24SOdelu Kukatla };
2235*010f4d24SOdelu Kukatla 
2236*010f4d24SOdelu Kukatla static const struct regmap_config nord_cnoc_cfg_regmap_config = {
2237*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2238*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2239*010f4d24SOdelu Kukatla 	.val_bits = 32,
2240*010f4d24SOdelu Kukatla 	.max_register = 0xd200,
2241*010f4d24SOdelu Kukatla 	.fast_io = true,
2242*010f4d24SOdelu Kukatla };
2243*010f4d24SOdelu Kukatla 
2244*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_cnoc_cfg = {
2245*010f4d24SOdelu Kukatla 	.config = &nord_cnoc_cfg_regmap_config,
2246*010f4d24SOdelu Kukatla 	.nodes = cnoc_cfg_nodes,
2247*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(cnoc_cfg_nodes),
2248*010f4d24SOdelu Kukatla 	.bcms = cnoc_cfg_bcms,
2249*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(cnoc_cfg_bcms),
2250*010f4d24SOdelu Kukatla };
2251*010f4d24SOdelu Kukatla 
2252*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const cnoc_main_bcms[] = {
2253*010f4d24SOdelu Kukatla 	&bcm_cn0,
2254*010f4d24SOdelu Kukatla };
2255*010f4d24SOdelu Kukatla 
2256*010f4d24SOdelu Kukatla static struct qcom_icc_node * const cnoc_main_nodes[] = {
2257*010f4d24SOdelu Kukatla 	[MASTER_MM_RSCC] = &qhm_mm_rscc,
2258*010f4d24SOdelu Kukatla 	[MASTER_HSCNOC_CNOC] = &qnm_hscnoc,
2259*010f4d24SOdelu Kukatla 	[SLAVE_AOSS] = &qhs_aoss,
2260*010f4d24SOdelu Kukatla 	[SLAVE_HBCU] = &qhs_hbcu,
2261*010f4d24SOdelu Kukatla 	[SLAVE_IPA_CFG] = &qhs_ipa,
2262*010f4d24SOdelu Kukatla 	[SLAVE_IPC_ROUTER_CFG] = &qhs_ipc_router,
2263*010f4d24SOdelu Kukatla 	[SLAVE_SOCCP] = &qhs_soccp,
2264*010f4d24SOdelu Kukatla 	[SLAVE_TME_CFG] = &qhs_tme_cfg,
2265*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA] = &qns_pcie_dma,
2266*010f4d24SOdelu Kukatla 	[SLAVE_CNOC_CFG] = &qss_cfg,
2267*010f4d24SOdelu Kukatla 	[SLAVE_DDRSS_CFG] = &qss_ddrss_cfg,
2268*010f4d24SOdelu Kukatla 	[SLAVE_IMEM] = &qxs_imem,
2269*010f4d24SOdelu Kukatla };
2270*010f4d24SOdelu Kukatla 
2271*010f4d24SOdelu Kukatla static const struct regmap_config nord_cnoc_main_regmap_config = {
2272*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2273*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2274*010f4d24SOdelu Kukatla 	.val_bits = 32,
2275*010f4d24SOdelu Kukatla 	.max_register = 0x1d200,
2276*010f4d24SOdelu Kukatla 	.fast_io = true,
2277*010f4d24SOdelu Kukatla };
2278*010f4d24SOdelu Kukatla 
2279*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_cnoc_main = {
2280*010f4d24SOdelu Kukatla 	.config = &nord_cnoc_main_regmap_config,
2281*010f4d24SOdelu Kukatla 	.nodes = cnoc_main_nodes,
2282*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(cnoc_main_nodes),
2283*010f4d24SOdelu Kukatla 	.bcms = cnoc_main_bcms,
2284*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(cnoc_main_bcms),
2285*010f4d24SOdelu Kukatla };
2286*010f4d24SOdelu Kukatla 
2287*010f4d24SOdelu Kukatla static struct qcom_icc_node * const hpass_ag_noc_nodes[] = {
2288*010f4d24SOdelu Kukatla 	[MASTER_HPASS_PROC_0] = &qnm_hpass_dsp0,
2289*010f4d24SOdelu Kukatla 	[MASTER_HPASS_PROC_1] = &qnm_hpass_dsp1,
2290*010f4d24SOdelu Kukatla 	[MASTER_HPASS_PROC_2] = &qnm_hpass_dsp2,
2291*010f4d24SOdelu Kukatla 	[SLAVE_HPASS_AGNOC_AUDIO] = &qns_hpass_agnoc_audio,
2292*010f4d24SOdelu Kukatla };
2293*010f4d24SOdelu Kukatla 
2294*010f4d24SOdelu Kukatla static const struct regmap_config nord_hpass_ag_noc_regmap_config = {
2295*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2296*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2297*010f4d24SOdelu Kukatla 	.val_bits = 32,
2298*010f4d24SOdelu Kukatla 	.max_register = 0x37080,
2299*010f4d24SOdelu Kukatla 	.fast_io = true,
2300*010f4d24SOdelu Kukatla };
2301*010f4d24SOdelu Kukatla 
2302*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_hpass_ag_noc = {
2303*010f4d24SOdelu Kukatla 	.config = &nord_hpass_ag_noc_regmap_config,
2304*010f4d24SOdelu Kukatla 	.nodes = hpass_ag_noc_nodes,
2305*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(hpass_ag_noc_nodes),
2306*010f4d24SOdelu Kukatla };
2307*010f4d24SOdelu Kukatla 
2308*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const hscnoc_bcms[] = {
2309*010f4d24SOdelu Kukatla 	&bcm_sh0,
2310*010f4d24SOdelu Kukatla 	&bcm_sh1,
2311*010f4d24SOdelu Kukatla };
2312*010f4d24SOdelu Kukatla 
2313*010f4d24SOdelu Kukatla static struct qcom_icc_node * const hscnoc_nodes[] = {
2314*010f4d24SOdelu Kukatla 	[MASTER_GPU_TCU] = &alm_gpu_tcu,
2315*010f4d24SOdelu Kukatla 	[MASTER_QTC_TCU] = &alm_qtc,
2316*010f4d24SOdelu Kukatla 	[MASTER_SYS_TCU_0] = &alm_sys_tcu0,
2317*010f4d24SOdelu Kukatla 	[MASTER_SYS_TCU_1] = &alm_sys_tcu1,
2318*010f4d24SOdelu Kukatla 	[MASTER_SYS_TCU_2] = &alm_sys_tcu2,
2319*010f4d24SOdelu Kukatla 	[MASTER_APPSS_PROC] = &chm_apps,
2320*010f4d24SOdelu Kukatla 	[MASTER_A1NOC_TILE_HSCNOC] = &qnm_aggre_north,
2321*010f4d24SOdelu Kukatla 	[MASTER_A2NOC_TILE_HSCNOC] = &qnm_aggre_south,
2322*010f4d24SOdelu Kukatla 	[MASTER_GFX3D] = &qnm_gpu0,
2323*010f4d24SOdelu Kukatla 	[MASTER_GFX3D_1] = &qnm_gpu1,
2324*010f4d24SOdelu Kukatla 	[MASTER_HPASS_ADAS_HSCNOC] = &qnm_hpass_adas_hscnoc,
2325*010f4d24SOdelu Kukatla 	[MASTER_HPASS_AUDIO_HSCNOC] = &qnm_hpass_audio_hscnoc,
2326*010f4d24SOdelu Kukatla 	[MASTER_MNOC_HF_MEM_NOC] = &qnm_mnoc_hf,
2327*010f4d24SOdelu Kukatla 	[MASTER_MNOC_SF_MEM_NOC] = &qnm_mnoc_sf,
2328*010f4d24SOdelu Kukatla 	[MASTER_NSP0_HSCNOC] = &qnm_nsp0_hscnoc,
2329*010f4d24SOdelu Kukatla 	[MASTER_NSP1_HSCNOC] = &qnm_nsp1_hscnoc,
2330*010f4d24SOdelu Kukatla 	[MASTER_NSP2_HSCNOC] = &qnm_nsp2_hscnoc,
2331*010f4d24SOdelu Kukatla 	[MASTER_NSP3_HSCNOC] = &qnm_nsp3_hscnoc,
2332*010f4d24SOdelu Kukatla 	[MASTER_ANOC_PCIE_GEM_NOC] = &qnm_pcie,
2333*010f4d24SOdelu Kukatla 	[MASTER_SAILSS_MD0_HSCNOC] = &qnm_sailss_md0_hscnoc,
2334*010f4d24SOdelu Kukatla 	[MASTER_SNOC_SF_MEM_NOC] = &qnm_snoc_sf,
2335*010f4d24SOdelu Kukatla 	[MASTER_GIC] = &xm_gic,
2336*010f4d24SOdelu Kukatla 	[SLAVE_HSCNOC_CNOC] = &qns_hscnoc_cnoc,
2337*010f4d24SOdelu Kukatla 	[SLAVE_LLCC] = &qns_llcc,
2338*010f4d24SOdelu Kukatla 	[SLAVE_MEM_NOC_PCIE_SNOC] = &qns_pcie,
2339*010f4d24SOdelu Kukatla };
2340*010f4d24SOdelu Kukatla 
2341*010f4d24SOdelu Kukatla static const struct regmap_config nord_hscnoc_regmap_config = {
2342*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2343*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2344*010f4d24SOdelu Kukatla 	.val_bits = 32,
2345*010f4d24SOdelu Kukatla 	.max_register = 0xa45080,
2346*010f4d24SOdelu Kukatla 	.fast_io = true,
2347*010f4d24SOdelu Kukatla };
2348*010f4d24SOdelu Kukatla 
2349*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_hscnoc = {
2350*010f4d24SOdelu Kukatla 	.config = &nord_hscnoc_regmap_config,
2351*010f4d24SOdelu Kukatla 	.nodes = hscnoc_nodes,
2352*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(hscnoc_nodes),
2353*010f4d24SOdelu Kukatla 	.bcms = hscnoc_bcms,
2354*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(hscnoc_bcms),
2355*010f4d24SOdelu Kukatla };
2356*010f4d24SOdelu Kukatla 
2357*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const mc_virt_bcms[] = {
2358*010f4d24SOdelu Kukatla 	&bcm_mc0,
2359*010f4d24SOdelu Kukatla };
2360*010f4d24SOdelu Kukatla 
2361*010f4d24SOdelu Kukatla static struct qcom_icc_node * const mc_virt_nodes[] = {
2362*010f4d24SOdelu Kukatla 	[MASTER_LLCC] = &llcc_mc,
2363*010f4d24SOdelu Kukatla 	[SLAVE_EBI1] = &ebi,
2364*010f4d24SOdelu Kukatla };
2365*010f4d24SOdelu Kukatla 
2366*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_mc_virt = {
2367*010f4d24SOdelu Kukatla 	.nodes = mc_virt_nodes,
2368*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(mc_virt_nodes),
2369*010f4d24SOdelu Kukatla 	.bcms = mc_virt_bcms,
2370*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(mc_virt_bcms),
2371*010f4d24SOdelu Kukatla };
2372*010f4d24SOdelu Kukatla 
2373*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const mmss_noc_bcms[] = {
2374*010f4d24SOdelu Kukatla 	&bcm_mm0,
2375*010f4d24SOdelu Kukatla 	&bcm_mm1,
2376*010f4d24SOdelu Kukatla };
2377*010f4d24SOdelu Kukatla 
2378*010f4d24SOdelu Kukatla static struct qcom_icc_node * const mmss_noc_nodes[] = {
2379*010f4d24SOdelu Kukatla 	[MASTER_CAMNOC_HF] = &qnm_camnoc_hf,
2380*010f4d24SOdelu Kukatla 	[MASTER_CAMNOC_NRT_ICP_SF] = &qnm_camnoc_nrt_icp_sf,
2381*010f4d24SOdelu Kukatla 	[MASTER_CAMNOC_RT_CDM_SF] = &qnm_camnoc_rt_cdm_sf,
2382*010f4d24SOdelu Kukatla 	[MASTER_CAMNOC_SF] = &qnm_camnoc_sf,
2383*010f4d24SOdelu Kukatla 	[MASTER_DPRX0] = &qnm_dprx0,
2384*010f4d24SOdelu Kukatla 	[MASTER_DPRX1] = &qnm_dprx1,
2385*010f4d24SOdelu Kukatla 	[MASTER_MDP0] = &qnm_mdp0,
2386*010f4d24SOdelu Kukatla 	[MASTER_MDP1] = &qnm_mdp1,
2387*010f4d24SOdelu Kukatla 	[MASTER_VIDEO_CV_PROC] = &qnm_video_cv_cpu,
2388*010f4d24SOdelu Kukatla 	[MASTER_VIDEO_EVA] = &qnm_video_eva,
2389*010f4d24SOdelu Kukatla 	[MASTER_VIDEO_MVP0] = &qnm_video_mvp0,
2390*010f4d24SOdelu Kukatla 	[MASTER_VIDEO_MVP1] = &qnm_video_mvp1,
2391*010f4d24SOdelu Kukatla 	[MASTER_VIDEO_V_PROC] = &qnm_video_v_cpu,
2392*010f4d24SOdelu Kukatla 	[SLAVE_MNOC_HF_MEM_NOC] = &qns_mem_noc_hf,
2393*010f4d24SOdelu Kukatla 	[SLAVE_MNOC_SF_MEM_NOC] = &qns_mem_noc_sf,
2394*010f4d24SOdelu Kukatla };
2395*010f4d24SOdelu Kukatla 
2396*010f4d24SOdelu Kukatla static const struct regmap_config nord_mmss_noc_regmap_config = {
2397*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2398*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2399*010f4d24SOdelu Kukatla 	.val_bits = 32,
2400*010f4d24SOdelu Kukatla 	.max_register = 0x72800,
2401*010f4d24SOdelu Kukatla 	.fast_io = true,
2402*010f4d24SOdelu Kukatla };
2403*010f4d24SOdelu Kukatla 
2404*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_mmss_noc = {
2405*010f4d24SOdelu Kukatla 	.config = &nord_mmss_noc_regmap_config,
2406*010f4d24SOdelu Kukatla 	.nodes = mmss_noc_nodes,
2407*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(mmss_noc_nodes),
2408*010f4d24SOdelu Kukatla 	.bcms = mmss_noc_bcms,
2409*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(mmss_noc_bcms),
2410*010f4d24SOdelu Kukatla };
2411*010f4d24SOdelu Kukatla 
2412*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const nsp_data_noc_0_bcms[] = {
2413*010f4d24SOdelu Kukatla 	&bcm_c0n0,
2414*010f4d24SOdelu Kukatla };
2415*010f4d24SOdelu Kukatla 
2416*010f4d24SOdelu Kukatla static struct qcom_icc_node * const nsp_data_noc_0_nodes[] = {
2417*010f4d24SOdelu Kukatla 	[MASTER_NSP0_PROC] = &qnm_nsp_data00,
2418*010f4d24SOdelu Kukatla 	[SLAVE_NSP0_HSC_NOC] = &qns_nsp0_hsc_noc,
2419*010f4d24SOdelu Kukatla };
2420*010f4d24SOdelu Kukatla 
2421*010f4d24SOdelu Kukatla static const struct regmap_config nord_nsp_data_noc_0_regmap_config = {
2422*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2423*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2424*010f4d24SOdelu Kukatla 	.val_bits = 32,
2425*010f4d24SOdelu Kukatla 	.max_register = 0x2a200,
2426*010f4d24SOdelu Kukatla 	.fast_io = true,
2427*010f4d24SOdelu Kukatla };
2428*010f4d24SOdelu Kukatla 
2429*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_nsp_data_noc_0 = {
2430*010f4d24SOdelu Kukatla 	.config = &nord_nsp_data_noc_0_regmap_config,
2431*010f4d24SOdelu Kukatla 	.nodes = nsp_data_noc_0_nodes,
2432*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(nsp_data_noc_0_nodes),
2433*010f4d24SOdelu Kukatla 	.bcms = nsp_data_noc_0_bcms,
2434*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(nsp_data_noc_0_bcms),
2435*010f4d24SOdelu Kukatla };
2436*010f4d24SOdelu Kukatla 
2437*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const nsp_data_noc_1_bcms[] = {
2438*010f4d24SOdelu Kukatla 	&bcm_c1n0,
2439*010f4d24SOdelu Kukatla };
2440*010f4d24SOdelu Kukatla 
2441*010f4d24SOdelu Kukatla static struct qcom_icc_node * const nsp_data_noc_1_nodes[] = {
2442*010f4d24SOdelu Kukatla 	[MASTER_NSP1_PROC] = &qnm_nsp_data01,
2443*010f4d24SOdelu Kukatla 	[SLAVE_NSP1_HSC_NOC] = &qns_nsp1_hsc_noc,
2444*010f4d24SOdelu Kukatla };
2445*010f4d24SOdelu Kukatla 
2446*010f4d24SOdelu Kukatla static const struct regmap_config nord_nsp_data_noc_1_regmap_config = {
2447*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2448*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2449*010f4d24SOdelu Kukatla 	.val_bits = 32,
2450*010f4d24SOdelu Kukatla 	.max_register = 0x2a200,
2451*010f4d24SOdelu Kukatla 	.fast_io = true,
2452*010f4d24SOdelu Kukatla };
2453*010f4d24SOdelu Kukatla 
2454*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_nsp_data_noc_1 = {
2455*010f4d24SOdelu Kukatla 	.config = &nord_nsp_data_noc_1_regmap_config,
2456*010f4d24SOdelu Kukatla 	.nodes = nsp_data_noc_1_nodes,
2457*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(nsp_data_noc_1_nodes),
2458*010f4d24SOdelu Kukatla 	.bcms = nsp_data_noc_1_bcms,
2459*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(nsp_data_noc_1_bcms),
2460*010f4d24SOdelu Kukatla };
2461*010f4d24SOdelu Kukatla 
2462*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const nsp_data_noc_2_bcms[] = {
2463*010f4d24SOdelu Kukatla 	&bcm_c2n0,
2464*010f4d24SOdelu Kukatla };
2465*010f4d24SOdelu Kukatla 
2466*010f4d24SOdelu Kukatla static struct qcom_icc_node * const nsp_data_noc_2_nodes[] = {
2467*010f4d24SOdelu Kukatla 	[MASTER_NSP2_PROC] = &qnm_nsp_data02,
2468*010f4d24SOdelu Kukatla 	[SLAVE_NSP2_HSC_NOC] = &qns_nsp2_hsc_noc,
2469*010f4d24SOdelu Kukatla };
2470*010f4d24SOdelu Kukatla 
2471*010f4d24SOdelu Kukatla static const struct regmap_config nord_nsp_data_noc_2_regmap_config = {
2472*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2473*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2474*010f4d24SOdelu Kukatla 	.val_bits = 32,
2475*010f4d24SOdelu Kukatla 	.max_register = 0x2a200,
2476*010f4d24SOdelu Kukatla 	.fast_io = true,
2477*010f4d24SOdelu Kukatla };
2478*010f4d24SOdelu Kukatla 
2479*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_nsp_data_noc_2 = {
2480*010f4d24SOdelu Kukatla 	.config = &nord_nsp_data_noc_2_regmap_config,
2481*010f4d24SOdelu Kukatla 	.nodes = nsp_data_noc_2_nodes,
2482*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(nsp_data_noc_2_nodes),
2483*010f4d24SOdelu Kukatla 	.bcms = nsp_data_noc_2_bcms,
2484*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(nsp_data_noc_2_bcms),
2485*010f4d24SOdelu Kukatla };
2486*010f4d24SOdelu Kukatla 
2487*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const nsp_data_noc_3_bcms[] = {
2488*010f4d24SOdelu Kukatla 	&bcm_c3n0,
2489*010f4d24SOdelu Kukatla };
2490*010f4d24SOdelu Kukatla 
2491*010f4d24SOdelu Kukatla static struct qcom_icc_node * const nsp_data_noc_3_nodes[] = {
2492*010f4d24SOdelu Kukatla 	[MASTER_NSP3_PROC] = &qnm_nsp_data03,
2493*010f4d24SOdelu Kukatla 	[SLAVE_NSP3_HSC_NOC] = &qns_nsp3_hsc_noc,
2494*010f4d24SOdelu Kukatla };
2495*010f4d24SOdelu Kukatla 
2496*010f4d24SOdelu Kukatla static const struct regmap_config nord_nsp_data_noc_3_regmap_config = {
2497*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2498*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2499*010f4d24SOdelu Kukatla 	.val_bits = 32,
2500*010f4d24SOdelu Kukatla 	.max_register = 0x2a200,
2501*010f4d24SOdelu Kukatla 	.fast_io = true,
2502*010f4d24SOdelu Kukatla };
2503*010f4d24SOdelu Kukatla 
2504*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_nsp_data_noc_3 = {
2505*010f4d24SOdelu Kukatla 	.config = &nord_nsp_data_noc_3_regmap_config,
2506*010f4d24SOdelu Kukatla 	.nodes = nsp_data_noc_3_nodes,
2507*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(nsp_data_noc_3_nodes),
2508*010f4d24SOdelu Kukatla 	.bcms = nsp_data_noc_3_bcms,
2509*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(nsp_data_noc_3_bcms),
2510*010f4d24SOdelu Kukatla };
2511*010f4d24SOdelu Kukatla 
2512*010f4d24SOdelu Kukatla static struct qcom_icc_node * const pcie_cfg_nodes[] = {
2513*010f4d24SOdelu Kukatla 	[MASTER_PCIE_NOC_CFG] = &qsm_pcie_noc_cfg,
2514*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_AHB2PHY_CFG] = &qhs_pcie_ahb2phy_cfg,
2515*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_CFG_0] = &qhs_pcie_cfg_0,
2516*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_CFG_1] = &qhs_pcie_cfg_1,
2517*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_CFG_2] = &qhs_pcie_cfg_2,
2518*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_CFG_3] = &qhs_pcie_cfg_3,
2519*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_0_CFG] = &qhs_pcie_dma_0_cfg,
2520*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_1_CFG] = &qhs_pcie_dma_1_cfg,
2521*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_2_CFG] = &qhs_pcie_dma_2_cfg,
2522*010f4d24SOdelu Kukatla };
2523*010f4d24SOdelu Kukatla 
2524*010f4d24SOdelu Kukatla static const struct regmap_config nord_pcie_cfg_regmap_config = {
2525*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2526*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2527*010f4d24SOdelu Kukatla 	.val_bits = 32,
2528*010f4d24SOdelu Kukatla 	.max_register = 0x7200,
2529*010f4d24SOdelu Kukatla 	.fast_io = true,
2530*010f4d24SOdelu Kukatla };
2531*010f4d24SOdelu Kukatla 
2532*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_pcie_cfg = {
2533*010f4d24SOdelu Kukatla 	.config = &nord_pcie_cfg_regmap_config,
2534*010f4d24SOdelu Kukatla 	.nodes = pcie_cfg_nodes,
2535*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(pcie_cfg_nodes),
2536*010f4d24SOdelu Kukatla };
2537*010f4d24SOdelu Kukatla 
2538*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const pcie_data_inbound_bcms[] = {
2539*010f4d24SOdelu Kukatla 	&bcm_sn1,
2540*010f4d24SOdelu Kukatla };
2541*010f4d24SOdelu Kukatla 
2542*010f4d24SOdelu Kukatla static struct qcom_icc_node * const pcie_data_inbound_nodes[] = {
2543*010f4d24SOdelu Kukatla 	[MASTER_PCIE_DMA_0] = &qxm_pcie_dma_0,
2544*010f4d24SOdelu Kukatla 	[MASTER_PCIE_DMA_1] = &qxm_pcie_dma_1,
2545*010f4d24SOdelu Kukatla 	[MASTER_PCIE_DMA_2] = &qxm_pcie_dma_2,
2546*010f4d24SOdelu Kukatla 	[MASTER_PCIE_0] = &xm_pcie_0,
2547*010f4d24SOdelu Kukatla 	[MASTER_PCIE_1] = &xm_pcie_1,
2548*010f4d24SOdelu Kukatla 	[MASTER_PCIE_2] = &xm_pcie_2,
2549*010f4d24SOdelu Kukatla 	[MASTER_PCIE_3] = &xm_pcie_3,
2550*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_HSCNOC] = &qns_pcie_hscnoc,
2551*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_OBNOC_DMA] = &qns_pcie_obnoc_dma,
2552*010f4d24SOdelu Kukatla };
2553*010f4d24SOdelu Kukatla 
2554*010f4d24SOdelu Kukatla static const struct regmap_config nord_pcie_data_inbound_regmap_config = {
2555*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2556*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2557*010f4d24SOdelu Kukatla 	.val_bits = 32,
2558*010f4d24SOdelu Kukatla 	.max_register = 0x4b080,
2559*010f4d24SOdelu Kukatla 	.fast_io = true,
2560*010f4d24SOdelu Kukatla };
2561*010f4d24SOdelu Kukatla 
2562*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_pcie_data_inbound = {
2563*010f4d24SOdelu Kukatla 	.config = &nord_pcie_data_inbound_regmap_config,
2564*010f4d24SOdelu Kukatla 	.nodes = pcie_data_inbound_nodes,
2565*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(pcie_data_inbound_nodes),
2566*010f4d24SOdelu Kukatla 	.bcms = pcie_data_inbound_bcms,
2567*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(pcie_data_inbound_bcms),
2568*010f4d24SOdelu Kukatla };
2569*010f4d24SOdelu Kukatla 
2570*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const pcie_data_outbound_bcms[] = {
2571*010f4d24SOdelu Kukatla 	&bcm_cn0,
2572*010f4d24SOdelu Kukatla };
2573*010f4d24SOdelu Kukatla 
2574*010f4d24SOdelu Kukatla static struct qcom_icc_node * const pcie_data_outbound_nodes[] = {
2575*010f4d24SOdelu Kukatla 	[MASTER_CNOC_PCIE_DMA] = &qnm_cnoc_pcie_dma,
2576*010f4d24SOdelu Kukatla 	[MASTER_ANOC_PCIE_HSCNOC] = &qnm_hscnoc_pcie,
2577*010f4d24SOdelu Kukatla 	[MASTER_PCIE_IBNOC_DMA] = &qnm_pcie_ibnoc_dma,
2578*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_0] = &qxs_pcie_dma_0,
2579*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_1] = &qxs_pcie_dma_1,
2580*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_DMA_2] = &qxs_pcie_dma_2,
2581*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_0] = &xs_pcie_0,
2582*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_1] = &xs_pcie_1,
2583*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_2] = &xs_pcie_2,
2584*010f4d24SOdelu Kukatla 	[SLAVE_PCIE_3] = &xs_pcie_3,
2585*010f4d24SOdelu Kukatla };
2586*010f4d24SOdelu Kukatla 
2587*010f4d24SOdelu Kukatla static const struct regmap_config nord_pcie_data_outbound_regmap_config = {
2588*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2589*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2590*010f4d24SOdelu Kukatla 	.val_bits = 32,
2591*010f4d24SOdelu Kukatla 	.max_register = 0x17000,
2592*010f4d24SOdelu Kukatla 	.fast_io = true,
2593*010f4d24SOdelu Kukatla };
2594*010f4d24SOdelu Kukatla 
2595*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_pcie_data_outbound = {
2596*010f4d24SOdelu Kukatla 	.config = &nord_pcie_data_outbound_regmap_config,
2597*010f4d24SOdelu Kukatla 	.nodes = pcie_data_outbound_nodes,
2598*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(pcie_data_outbound_nodes),
2599*010f4d24SOdelu Kukatla 	.bcms = pcie_data_outbound_bcms,
2600*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(pcie_data_outbound_bcms),
2601*010f4d24SOdelu Kukatla };
2602*010f4d24SOdelu Kukatla 
2603*010f4d24SOdelu Kukatla static struct qcom_icc_bcm * const system_noc_bcms[] = {
2604*010f4d24SOdelu Kukatla 	&bcm_sn0,
2605*010f4d24SOdelu Kukatla 	&bcm_sn1,
2606*010f4d24SOdelu Kukatla 	&bcm_sn2,
2607*010f4d24SOdelu Kukatla 	&bcm_sn3,
2608*010f4d24SOdelu Kukatla };
2609*010f4d24SOdelu Kukatla 
2610*010f4d24SOdelu Kukatla static struct qcom_icc_node * const system_noc_nodes[] = {
2611*010f4d24SOdelu Kukatla 	[MASTER_A1NOC_SNOC] = &qnm_aggre1_noc,
2612*010f4d24SOdelu Kukatla 	[MASTER_A2NOC_SNOC] = &qnm_aggre2_noc,
2613*010f4d24SOdelu Kukatla 	[MASTER_CNOC_SNOC] = &qnm_cnoc_data,
2614*010f4d24SOdelu Kukatla 	[MASTER_NSINOC_SNOC] = &qnm_nsi_noc,
2615*010f4d24SOdelu Kukatla 	[MASTER_SAFE_DMA] = &qnm_safe_dma,
2616*010f4d24SOdelu Kukatla 	[SLAVE_SNOC_HSCNOC_SF] = &qns_hscnoc_sf,
2617*010f4d24SOdelu Kukatla };
2618*010f4d24SOdelu Kukatla 
2619*010f4d24SOdelu Kukatla static const struct regmap_config nord_system_noc_regmap_config = {
2620*010f4d24SOdelu Kukatla 	.reg_bits = 32,
2621*010f4d24SOdelu Kukatla 	.reg_stride = 4,
2622*010f4d24SOdelu Kukatla 	.val_bits = 32,
2623*010f4d24SOdelu Kukatla 	.max_register = 0x1c080,
2624*010f4d24SOdelu Kukatla 	.fast_io = true,
2625*010f4d24SOdelu Kukatla };
2626*010f4d24SOdelu Kukatla 
2627*010f4d24SOdelu Kukatla static const struct qcom_icc_desc nord_system_noc = {
2628*010f4d24SOdelu Kukatla 	.config = &nord_system_noc_regmap_config,
2629*010f4d24SOdelu Kukatla 	.nodes = system_noc_nodes,
2630*010f4d24SOdelu Kukatla 	.num_nodes = ARRAY_SIZE(system_noc_nodes),
2631*010f4d24SOdelu Kukatla 	.bcms = system_noc_bcms,
2632*010f4d24SOdelu Kukatla 	.num_bcms = ARRAY_SIZE(system_noc_bcms),
2633*010f4d24SOdelu Kukatla };
2634*010f4d24SOdelu Kukatla 
2635*010f4d24SOdelu Kukatla static const struct of_device_id qnoc_of_match[] = {
2636*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-aggre1-noc", .data = &nord_aggre1_noc },
2637*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-aggre1-noc-tile", .data = &nord_aggre1_noc_tile },
2638*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-aggre2-noc", .data = &nord_aggre2_noc },
2639*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-aggre2-noc-tile", .data = &nord_aggre2_noc_tile },
2640*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-clk-virt", .data = &nord_clk_virt },
2641*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-cnoc-cfg", .data = &nord_cnoc_cfg },
2642*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-cnoc-main", .data = &nord_cnoc_main },
2643*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-hpass-ag-noc", .data = &nord_hpass_ag_noc },
2644*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-hscnoc", .data = &nord_hscnoc },
2645*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-mc-virt", .data = &nord_mc_virt },
2646*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-mmss-noc", .data = &nord_mmss_noc },
2647*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-nsp-data-noc-0", .data = &nord_nsp_data_noc_0 },
2648*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-nsp-data-noc-1", .data = &nord_nsp_data_noc_1 },
2649*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-nsp-data-noc-2", .data = &nord_nsp_data_noc_2 },
2650*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-nsp-data-noc-3", .data = &nord_nsp_data_noc_3 },
2651*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-pcie-cfg", .data = &nord_pcie_cfg },
2652*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-pcie-data-inbound", .data = &nord_pcie_data_inbound },
2653*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-pcie-data-outbound", .data = &nord_pcie_data_outbound },
2654*010f4d24SOdelu Kukatla 	{ .compatible = "qcom,nord-system-noc", .data = &nord_system_noc },
2655*010f4d24SOdelu Kukatla 	{ }
2656*010f4d24SOdelu Kukatla };
2657*010f4d24SOdelu Kukatla MODULE_DEVICE_TABLE(of, qnoc_of_match);
2658*010f4d24SOdelu Kukatla 
2659*010f4d24SOdelu Kukatla static struct platform_driver qnoc_driver = {
2660*010f4d24SOdelu Kukatla 	.probe = qcom_icc_rpmh_probe,
2661*010f4d24SOdelu Kukatla 	.remove = qcom_icc_rpmh_remove,
2662*010f4d24SOdelu Kukatla 	.driver = {
2663*010f4d24SOdelu Kukatla 		.name = "qnoc-nord",
2664*010f4d24SOdelu Kukatla 		.of_match_table = qnoc_of_match,
2665*010f4d24SOdelu Kukatla 		.sync_state = icc_sync_state,
2666*010f4d24SOdelu Kukatla 	},
2667*010f4d24SOdelu Kukatla };
2668*010f4d24SOdelu Kukatla 
2669*010f4d24SOdelu Kukatla static int __init qnoc_driver_init(void)
2670*010f4d24SOdelu Kukatla {
2671*010f4d24SOdelu Kukatla 	return platform_driver_register(&qnoc_driver);
2672*010f4d24SOdelu Kukatla }
2673*010f4d24SOdelu Kukatla core_initcall(qnoc_driver_init);
2674*010f4d24SOdelu Kukatla 
2675*010f4d24SOdelu Kukatla static void __exit qnoc_driver_exit(void)
2676*010f4d24SOdelu Kukatla {
2677*010f4d24SOdelu Kukatla 	platform_driver_unregister(&qnoc_driver);
2678*010f4d24SOdelu Kukatla }
2679*010f4d24SOdelu Kukatla module_exit(qnoc_driver_exit);
2680*010f4d24SOdelu Kukatla 
2681*010f4d24SOdelu Kukatla MODULE_DESCRIPTION("Qualcomm Nord NoC driver");
2682*010f4d24SOdelu Kukatla MODULE_LICENSE("GPL");
2683