xref: /linux/drivers/clk/qcom/gcc-glymur.c (revision 522ba450b56fff29f868b1552bdc2965f55de7ed)
1*efe50430STaniya Das // SPDX-License-Identifier: GPL-2.0-only
2*efe50430STaniya Das /*
3*efe50430STaniya Das  * Copyright (c) 2025, Qualcomm Technologies, Inc. and/or its subsidiaries.
4*efe50430STaniya Das  */
5*efe50430STaniya Das 
6*efe50430STaniya Das #include <linux/clk-provider.h>
7*efe50430STaniya Das #include <linux/mod_devicetable.h>
8*efe50430STaniya Das #include <linux/module.h>
9*efe50430STaniya Das #include <linux/of.h>
10*efe50430STaniya Das #include <linux/platform_device.h>
11*efe50430STaniya Das #include <linux/regmap.h>
12*efe50430STaniya Das 
13*efe50430STaniya Das #include <dt-bindings/clock/qcom,glymur-gcc.h>
14*efe50430STaniya Das 
15*efe50430STaniya Das #include "clk-alpha-pll.h"
16*efe50430STaniya Das #include "clk-branch.h"
17*efe50430STaniya Das #include "clk-pll.h"
18*efe50430STaniya Das #include "clk-rcg.h"
19*efe50430STaniya Das #include "clk-regmap.h"
20*efe50430STaniya Das #include "clk-regmap-divider.h"
21*efe50430STaniya Das #include "clk-regmap-mux.h"
22*efe50430STaniya Das #include "clk-regmap-phy-mux.h"
23*efe50430STaniya Das #include "common.h"
24*efe50430STaniya Das #include "gdsc.h"
25*efe50430STaniya Das #include "reset.h"
26*efe50430STaniya Das 
27*efe50430STaniya Das enum {
28*efe50430STaniya Das 	DT_BI_TCXO,
29*efe50430STaniya Das 	DT_BI_TCXO_AO,
30*efe50430STaniya Das 	DT_SLEEP_CLK,
31*efe50430STaniya Das 	DT_GCC_USB4_0_PHY_DP0_GMUX_CLK_SRC,
32*efe50430STaniya Das 	DT_GCC_USB4_0_PHY_DP1_GMUX_CLK_SRC,
33*efe50430STaniya Das 	DT_GCC_USB4_0_PHY_PCIE_PIPEGMUX_CLK_SRC,
34*efe50430STaniya Das 	DT_GCC_USB4_0_PHY_PIPEGMUX_CLK_SRC,
35*efe50430STaniya Das 	DT_GCC_USB4_0_PHY_SYS_PIPEGMUX_CLK_SRC,
36*efe50430STaniya Das 	DT_GCC_USB4_1_PHY_DP0_GMUX_2_CLK_SRC,
37*efe50430STaniya Das 	DT_GCC_USB4_1_PHY_DP1_GMUX_2_CLK_SRC,
38*efe50430STaniya Das 	DT_GCC_USB4_1_PHY_PCIE_PIPEGMUX_CLK_SRC,
39*efe50430STaniya Das 	DT_GCC_USB4_1_PHY_PIPEGMUX_CLK_SRC,
40*efe50430STaniya Das 	DT_GCC_USB4_1_PHY_SYS_PIPEGMUX_CLK_SRC,
41*efe50430STaniya Das 	DT_GCC_USB4_2_PHY_DP0_GMUX_CLK_SRC,
42*efe50430STaniya Das 	DT_GCC_USB4_2_PHY_DP1_GMUX_CLK_SRC,
43*efe50430STaniya Das 	DT_GCC_USB4_2_PHY_PCIE_PIPEGMUX_CLK_SRC,
44*efe50430STaniya Das 	DT_GCC_USB4_2_PHY_PIPEGMUX_CLK_SRC,
45*efe50430STaniya Das 	DT_GCC_USB4_2_PHY_SYS_PIPEGMUX_CLK_SRC,
46*efe50430STaniya Das 	DT_PCIE_3A_PIPE_CLK,
47*efe50430STaniya Das 	DT_PCIE_3B_PIPE_CLK,
48*efe50430STaniya Das 	DT_PCIE_4_PIPE_CLK,
49*efe50430STaniya Das 	DT_PCIE_5_PIPE_CLK,
50*efe50430STaniya Das 	DT_PCIE_6_PIPE_CLK,
51*efe50430STaniya Das 	DT_QUSB4PHY_0_GCC_USB4_RX0_CLK,
52*efe50430STaniya Das 	DT_QUSB4PHY_0_GCC_USB4_RX1_CLK,
53*efe50430STaniya Das 	DT_QUSB4PHY_1_GCC_USB4_RX0_CLK,
54*efe50430STaniya Das 	DT_QUSB4PHY_1_GCC_USB4_RX1_CLK,
55*efe50430STaniya Das 	DT_QUSB4PHY_2_GCC_USB4_RX0_CLK,
56*efe50430STaniya Das 	DT_QUSB4PHY_2_GCC_USB4_RX1_CLK,
57*efe50430STaniya Das 	DT_UFS_PHY_RX_SYMBOL_0_CLK,
58*efe50430STaniya Das 	DT_UFS_PHY_RX_SYMBOL_1_CLK,
59*efe50430STaniya Das 	DT_UFS_PHY_TX_SYMBOL_0_CLK,
60*efe50430STaniya Das 	DT_USB3_PHY_0_WRAPPER_GCC_USB30_PIPE_CLK,
61*efe50430STaniya Das 	DT_USB3_PHY_1_WRAPPER_GCC_USB30_PIPE_CLK,
62*efe50430STaniya Das 	DT_USB3_PHY_2_WRAPPER_GCC_USB30_PIPE_CLK,
63*efe50430STaniya Das 	DT_USB3_UNI_PHY_MP_GCC_USB30_PIPE_0_CLK,
64*efe50430STaniya Das 	DT_USB3_UNI_PHY_MP_GCC_USB30_PIPE_1_CLK,
65*efe50430STaniya Das 	DT_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK,
66*efe50430STaniya Das 	DT_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
67*efe50430STaniya Das 	DT_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK,
68*efe50430STaniya Das 	DT_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
69*efe50430STaniya Das 	DT_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK,
70*efe50430STaniya Das 	DT_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
71*efe50430STaniya Das };
72*efe50430STaniya Das 
73*efe50430STaniya Das enum {
74*efe50430STaniya Das 	P_BI_TCXO,
75*efe50430STaniya Das 	P_GCC_GPLL0_OUT_EVEN,
76*efe50430STaniya Das 	P_GCC_GPLL0_OUT_MAIN,
77*efe50430STaniya Das 	P_GCC_GPLL14_OUT_EVEN,
78*efe50430STaniya Das 	P_GCC_GPLL14_OUT_MAIN,
79*efe50430STaniya Das 	P_GCC_GPLL1_OUT_MAIN,
80*efe50430STaniya Das 	P_GCC_GPLL4_OUT_MAIN,
81*efe50430STaniya Das 	P_GCC_GPLL5_OUT_MAIN,
82*efe50430STaniya Das 	P_GCC_GPLL7_OUT_MAIN,
83*efe50430STaniya Das 	P_GCC_GPLL8_OUT_MAIN,
84*efe50430STaniya Das 	P_GCC_GPLL9_OUT_MAIN,
85*efe50430STaniya Das 	P_GCC_USB3_PRIM_PHY_PIPE_CLK_SRC,
86*efe50430STaniya Das 	P_GCC_USB3_SEC_PHY_PIPE_CLK_SRC,
87*efe50430STaniya Das 	P_GCC_USB3_TERT_PHY_PIPE_CLK_SRC,
88*efe50430STaniya Das 	P_GCC_USB4_0_PHY_DP0_GMUX_CLK_SRC,
89*efe50430STaniya Das 	P_GCC_USB4_0_PHY_DP1_GMUX_CLK_SRC,
90*efe50430STaniya Das 	P_GCC_USB4_0_PHY_PCIE_PIPEGMUX_CLK_SRC,
91*efe50430STaniya Das 	P_GCC_USB4_0_PHY_PIPEGMUX_CLK_SRC,
92*efe50430STaniya Das 	P_GCC_USB4_0_PHY_SYS_PIPEGMUX_CLK_SRC,
93*efe50430STaniya Das 	P_GCC_USB4_1_PHY_DP0_GMUX_2_CLK_SRC,
94*efe50430STaniya Das 	P_GCC_USB4_1_PHY_DP1_GMUX_2_CLK_SRC,
95*efe50430STaniya Das 	P_GCC_USB4_1_PHY_PCIE_PIPEGMUX_CLK_SRC,
96*efe50430STaniya Das 	P_GCC_USB4_1_PHY_PIPEGMUX_CLK_SRC,
97*efe50430STaniya Das 	P_GCC_USB4_1_PHY_PLL_PIPE_CLK_SRC,
98*efe50430STaniya Das 	P_GCC_USB4_1_PHY_SYS_PIPEGMUX_CLK_SRC,
99*efe50430STaniya Das 	P_GCC_USB4_2_PHY_DP0_GMUX_CLK_SRC,
100*efe50430STaniya Das 	P_GCC_USB4_2_PHY_DP1_GMUX_CLK_SRC,
101*efe50430STaniya Das 	P_GCC_USB4_2_PHY_PCIE_PIPEGMUX_CLK_SRC,
102*efe50430STaniya Das 	P_GCC_USB4_2_PHY_PIPEGMUX_CLK_SRC,
103*efe50430STaniya Das 	P_GCC_USB4_2_PHY_SYS_PIPEGMUX_CLK_SRC,
104*efe50430STaniya Das 	P_PCIE_3A_PIPE_CLK,
105*efe50430STaniya Das 	P_PCIE_3B_PIPE_CLK,
106*efe50430STaniya Das 	P_PCIE_4_PIPE_CLK,
107*efe50430STaniya Das 	P_PCIE_5_PIPE_CLK,
108*efe50430STaniya Das 	P_PCIE_6_PIPE_CLK,
109*efe50430STaniya Das 	P_QUSB4PHY_0_GCC_USB4_RX0_CLK,
110*efe50430STaniya Das 	P_QUSB4PHY_0_GCC_USB4_RX1_CLK,
111*efe50430STaniya Das 	P_QUSB4PHY_1_GCC_USB4_RX0_CLK,
112*efe50430STaniya Das 	P_QUSB4PHY_1_GCC_USB4_RX1_CLK,
113*efe50430STaniya Das 	P_QUSB4PHY_2_GCC_USB4_RX0_CLK,
114*efe50430STaniya Das 	P_QUSB4PHY_2_GCC_USB4_RX1_CLK,
115*efe50430STaniya Das 	P_SLEEP_CLK,
116*efe50430STaniya Das 	P_UFS_PHY_RX_SYMBOL_0_CLK,
117*efe50430STaniya Das 	P_UFS_PHY_RX_SYMBOL_1_CLK,
118*efe50430STaniya Das 	P_UFS_PHY_TX_SYMBOL_0_CLK,
119*efe50430STaniya Das 	P_USB3_PHY_0_WRAPPER_GCC_USB30_PIPE_CLK,
120*efe50430STaniya Das 	P_USB3_PHY_1_WRAPPER_GCC_USB30_PIPE_CLK,
121*efe50430STaniya Das 	P_USB3_PHY_2_WRAPPER_GCC_USB30_PIPE_CLK,
122*efe50430STaniya Das 	P_USB3_UNI_PHY_MP_GCC_USB30_PIPE_0_CLK,
123*efe50430STaniya Das 	P_USB3_UNI_PHY_MP_GCC_USB30_PIPE_1_CLK,
124*efe50430STaniya Das 	P_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK,
125*efe50430STaniya Das 	P_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
126*efe50430STaniya Das 	P_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK,
127*efe50430STaniya Das 	P_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
128*efe50430STaniya Das 	P_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK,
129*efe50430STaniya Das 	P_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK,
130*efe50430STaniya Das };
131*efe50430STaniya Das 
132*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll0 = {
133*efe50430STaniya Das 	.offset = 0x0,
134*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
135*efe50430STaniya Das 	.clkr = {
136*efe50430STaniya Das 		.enable_reg = 0x62040,
137*efe50430STaniya Das 		.enable_mask = BIT(0),
138*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
139*efe50430STaniya Das 			.name = "gcc_gpll0",
140*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
141*efe50430STaniya Das 				.index = DT_BI_TCXO,
142*efe50430STaniya Das 			},
143*efe50430STaniya Das 			.num_parents = 1,
144*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
145*efe50430STaniya Das 		},
146*efe50430STaniya Das 	},
147*efe50430STaniya Das };
148*efe50430STaniya Das 
149*efe50430STaniya Das static const struct clk_div_table post_div_table_gcc_gpll0_out_even[] = {
150*efe50430STaniya Das 	{ 0x1, 2 },
151*efe50430STaniya Das 	{ }
152*efe50430STaniya Das };
153*efe50430STaniya Das 
154*efe50430STaniya Das static struct clk_alpha_pll_postdiv gcc_gpll0_out_even = {
155*efe50430STaniya Das 	.offset = 0x0,
156*efe50430STaniya Das 	.post_div_shift = 10,
157*efe50430STaniya Das 	.post_div_table = post_div_table_gcc_gpll0_out_even,
158*efe50430STaniya Das 	.num_post_div = ARRAY_SIZE(post_div_table_gcc_gpll0_out_even),
159*efe50430STaniya Das 	.width = 4,
160*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
161*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
162*efe50430STaniya Das 		.name = "gcc_gpll0_out_even",
163*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
164*efe50430STaniya Das 			&gcc_gpll0.clkr.hw,
165*efe50430STaniya Das 		},
166*efe50430STaniya Das 		.num_parents = 1,
167*efe50430STaniya Das 		.ops = &clk_alpha_pll_postdiv_taycan_eko_t_ops,
168*efe50430STaniya Das 	},
169*efe50430STaniya Das };
170*efe50430STaniya Das 
171*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll1 = {
172*efe50430STaniya Das 	.offset = 0x1000,
173*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
174*efe50430STaniya Das 	.clkr = {
175*efe50430STaniya Das 		.enable_reg = 0x62040,
176*efe50430STaniya Das 		.enable_mask = BIT(1),
177*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
178*efe50430STaniya Das 			.name = "gcc_gpll1",
179*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
180*efe50430STaniya Das 				.index = DT_BI_TCXO,
181*efe50430STaniya Das 			},
182*efe50430STaniya Das 			.num_parents = 1,
183*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
184*efe50430STaniya Das 		},
185*efe50430STaniya Das 	},
186*efe50430STaniya Das };
187*efe50430STaniya Das 
188*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll14 = {
189*efe50430STaniya Das 	.offset = 0xe000,
190*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
191*efe50430STaniya Das 	.clkr = {
192*efe50430STaniya Das 		.enable_reg = 0x62040,
193*efe50430STaniya Das 		.enable_mask = BIT(14),
194*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
195*efe50430STaniya Das 			.name = "gcc_gpll14",
196*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
197*efe50430STaniya Das 				.index = DT_BI_TCXO,
198*efe50430STaniya Das 			},
199*efe50430STaniya Das 			.num_parents = 1,
200*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
201*efe50430STaniya Das 		},
202*efe50430STaniya Das 	},
203*efe50430STaniya Das };
204*efe50430STaniya Das 
205*efe50430STaniya Das static const struct clk_div_table post_div_table_gcc_gpll14_out_even[] = {
206*efe50430STaniya Das 	{ 0x1, 2 },
207*efe50430STaniya Das 	{ }
208*efe50430STaniya Das };
209*efe50430STaniya Das 
210*efe50430STaniya Das static struct clk_alpha_pll_postdiv gcc_gpll14_out_even = {
211*efe50430STaniya Das 	.offset = 0xe000,
212*efe50430STaniya Das 	.post_div_shift = 10,
213*efe50430STaniya Das 	.post_div_table = post_div_table_gcc_gpll14_out_even,
214*efe50430STaniya Das 	.num_post_div = ARRAY_SIZE(post_div_table_gcc_gpll14_out_even),
215*efe50430STaniya Das 	.width = 4,
216*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
217*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
218*efe50430STaniya Das 		.name = "gcc_gpll14_out_even",
219*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
220*efe50430STaniya Das 			&gcc_gpll14.clkr.hw,
221*efe50430STaniya Das 		},
222*efe50430STaniya Das 		.num_parents = 1,
223*efe50430STaniya Das 		.ops = &clk_alpha_pll_postdiv_taycan_eko_t_ops,
224*efe50430STaniya Das 	},
225*efe50430STaniya Das };
226*efe50430STaniya Das 
227*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll4 = {
228*efe50430STaniya Das 	.offset = 0x4000,
229*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
230*efe50430STaniya Das 	.clkr = {
231*efe50430STaniya Das 		.enable_reg = 0x62040,
232*efe50430STaniya Das 		.enable_mask = BIT(4),
233*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
234*efe50430STaniya Das 			.name = "gcc_gpll4",
235*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
236*efe50430STaniya Das 				.index = DT_BI_TCXO,
237*efe50430STaniya Das 			},
238*efe50430STaniya Das 			.num_parents = 1,
239*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
240*efe50430STaniya Das 		},
241*efe50430STaniya Das 	},
242*efe50430STaniya Das };
243*efe50430STaniya Das 
244*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll5 = {
245*efe50430STaniya Das 	.offset = 0x5000,
246*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
247*efe50430STaniya Das 	.clkr = {
248*efe50430STaniya Das 		.enable_reg = 0x62040,
249*efe50430STaniya Das 		.enable_mask = BIT(5),
250*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
251*efe50430STaniya Das 			.name = "gcc_gpll5",
252*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
253*efe50430STaniya Das 				.index = DT_BI_TCXO,
254*efe50430STaniya Das 			},
255*efe50430STaniya Das 			.num_parents = 1,
256*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
257*efe50430STaniya Das 		},
258*efe50430STaniya Das 	},
259*efe50430STaniya Das };
260*efe50430STaniya Das 
261*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll7 = {
262*efe50430STaniya Das 	.offset = 0x7000,
263*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
264*efe50430STaniya Das 	.clkr = {
265*efe50430STaniya Das 		.enable_reg = 0x62040,
266*efe50430STaniya Das 		.enable_mask = BIT(7),
267*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
268*efe50430STaniya Das 			.name = "gcc_gpll7",
269*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
270*efe50430STaniya Das 				.index = DT_BI_TCXO,
271*efe50430STaniya Das 			},
272*efe50430STaniya Das 			.num_parents = 1,
273*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
274*efe50430STaniya Das 		},
275*efe50430STaniya Das 	},
276*efe50430STaniya Das };
277*efe50430STaniya Das 
278*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll8 = {
279*efe50430STaniya Das 	.offset = 0x8000,
280*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
281*efe50430STaniya Das 	.clkr = {
282*efe50430STaniya Das 		.enable_reg = 0x62040,
283*efe50430STaniya Das 		.enable_mask = BIT(8),
284*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
285*efe50430STaniya Das 			.name = "gcc_gpll8",
286*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
287*efe50430STaniya Das 				.index = DT_BI_TCXO,
288*efe50430STaniya Das 			},
289*efe50430STaniya Das 			.num_parents = 1,
290*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
291*efe50430STaniya Das 		},
292*efe50430STaniya Das 	},
293*efe50430STaniya Das };
294*efe50430STaniya Das 
295*efe50430STaniya Das static struct clk_alpha_pll gcc_gpll9 = {
296*efe50430STaniya Das 	.offset = 0x9000,
297*efe50430STaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T],
298*efe50430STaniya Das 	.clkr = {
299*efe50430STaniya Das 		.enable_reg = 0x62040,
300*efe50430STaniya Das 		.enable_mask = BIT(9),
301*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
302*efe50430STaniya Das 			.name = "gcc_gpll9",
303*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data) {
304*efe50430STaniya Das 				.index = DT_BI_TCXO,
305*efe50430STaniya Das 			},
306*efe50430STaniya Das 			.num_parents = 1,
307*efe50430STaniya Das 			.ops = &clk_alpha_pll_fixed_taycan_eko_t_ops,
308*efe50430STaniya Das 		},
309*efe50430STaniya Das 	},
310*efe50430STaniya Das };
311*efe50430STaniya Das 
312*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_prim_phy_pipe_clk_src;
313*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_sec_phy_pipe_clk_src;
314*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_tert_phy_pipe_clk_src;
315*efe50430STaniya Das 
316*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_phy_pll_pipe_clk_src;
317*efe50430STaniya Das 
318*efe50430STaniya Das static const struct parent_map gcc_parent_map_0[] = {
319*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
320*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
321*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
322*efe50430STaniya Das };
323*efe50430STaniya Das 
324*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_0[] = {
325*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
326*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
327*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
328*efe50430STaniya Das };
329*efe50430STaniya Das 
330*efe50430STaniya Das static const struct parent_map gcc_parent_map_1[] = {
331*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
332*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
333*efe50430STaniya Das 	{ P_GCC_GPLL1_OUT_MAIN, 4 },
334*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
335*efe50430STaniya Das };
336*efe50430STaniya Das 
337*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_1[] = {
338*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
339*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
340*efe50430STaniya Das 	{ .hw = &gcc_gpll1.clkr.hw },
341*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
342*efe50430STaniya Das };
343*efe50430STaniya Das 
344*efe50430STaniya Das static const struct parent_map gcc_parent_map_2[] = {
345*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
346*efe50430STaniya Das 	{ P_SLEEP_CLK, 5 },
347*efe50430STaniya Das };
348*efe50430STaniya Das 
349*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_2[] = {
350*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
351*efe50430STaniya Das 	{ .index = DT_SLEEP_CLK },
352*efe50430STaniya Das };
353*efe50430STaniya Das 
354*efe50430STaniya Das static const struct parent_map gcc_parent_map_3[] = {
355*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
356*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
357*efe50430STaniya Das 	{ P_GCC_GPLL1_OUT_MAIN, 4 },
358*efe50430STaniya Das 	{ P_GCC_GPLL4_OUT_MAIN, 5 },
359*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
360*efe50430STaniya Das };
361*efe50430STaniya Das 
362*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_3[] = {
363*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
364*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
365*efe50430STaniya Das 	{ .hw = &gcc_gpll1.clkr.hw },
366*efe50430STaniya Das 	{ .hw = &gcc_gpll4.clkr.hw },
367*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
368*efe50430STaniya Das };
369*efe50430STaniya Das 
370*efe50430STaniya Das static const struct parent_map gcc_parent_map_4[] = {
371*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
372*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
373*efe50430STaniya Das 	{ P_SLEEP_CLK, 5 },
374*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
375*efe50430STaniya Das };
376*efe50430STaniya Das 
377*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_4[] = {
378*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
379*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
380*efe50430STaniya Das 	{ .index = DT_SLEEP_CLK },
381*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
382*efe50430STaniya Das };
383*efe50430STaniya Das 
384*efe50430STaniya Das static const struct parent_map gcc_parent_map_5[] = {
385*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
386*efe50430STaniya Das };
387*efe50430STaniya Das 
388*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_5[] = {
389*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
390*efe50430STaniya Das };
391*efe50430STaniya Das 
392*efe50430STaniya Das static const struct parent_map gcc_parent_map_6[] = {
393*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
394*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
395*efe50430STaniya Das 	{ P_GCC_GPLL4_OUT_MAIN, 5 },
396*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
397*efe50430STaniya Das };
398*efe50430STaniya Das 
399*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_6[] = {
400*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
401*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
402*efe50430STaniya Das 	{ .hw = &gcc_gpll4.clkr.hw },
403*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
404*efe50430STaniya Das };
405*efe50430STaniya Das 
406*efe50430STaniya Das static const struct parent_map gcc_parent_map_7[] = {
407*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
408*efe50430STaniya Das 	{ P_GCC_GPLL14_OUT_MAIN, 1 },
409*efe50430STaniya Das 	{ P_GCC_GPLL14_OUT_EVEN, 6 },
410*efe50430STaniya Das };
411*efe50430STaniya Das 
412*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_7[] = {
413*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
414*efe50430STaniya Das 	{ .hw = &gcc_gpll14.clkr.hw },
415*efe50430STaniya Das 	{ .hw = &gcc_gpll14_out_even.clkr.hw },
416*efe50430STaniya Das };
417*efe50430STaniya Das 
418*efe50430STaniya Das static const struct parent_map gcc_parent_map_8[] = {
419*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
420*efe50430STaniya Das 	{ P_GCC_GPLL4_OUT_MAIN, 5 },
421*efe50430STaniya Das };
422*efe50430STaniya Das 
423*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_8[] = {
424*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
425*efe50430STaniya Das 	{ .hw = &gcc_gpll4.clkr.hw },
426*efe50430STaniya Das };
427*efe50430STaniya Das 
428*efe50430STaniya Das static const struct parent_map gcc_parent_map_9[] = {
429*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
430*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
431*efe50430STaniya Das 	{ P_GCC_GPLL8_OUT_MAIN, 2 },
432*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
433*efe50430STaniya Das };
434*efe50430STaniya Das 
435*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_9[] = {
436*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
437*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
438*efe50430STaniya Das 	{ .hw = &gcc_gpll8.clkr.hw },
439*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
440*efe50430STaniya Das };
441*efe50430STaniya Das 
442*efe50430STaniya Das static const struct parent_map gcc_parent_map_10[] = {
443*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
444*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
445*efe50430STaniya Das 	{ P_GCC_GPLL7_OUT_MAIN, 2 },
446*efe50430STaniya Das };
447*efe50430STaniya Das 
448*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_10[] = {
449*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
450*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
451*efe50430STaniya Das 	{ .hw = &gcc_gpll7.clkr.hw },
452*efe50430STaniya Das };
453*efe50430STaniya Das 
454*efe50430STaniya Das static const struct parent_map gcc_parent_map_11[] = {
455*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
456*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
457*efe50430STaniya Das 	{ P_GCC_GPLL7_OUT_MAIN, 2 },
458*efe50430STaniya Das 	{ P_GCC_GPLL8_OUT_MAIN, 3 },
459*efe50430STaniya Das 	{ P_SLEEP_CLK, 5 },
460*efe50430STaniya Das };
461*efe50430STaniya Das 
462*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_11[] = {
463*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
464*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
465*efe50430STaniya Das 	{ .hw = &gcc_gpll7.clkr.hw },
466*efe50430STaniya Das 	{ .hw = &gcc_gpll8.clkr.hw },
467*efe50430STaniya Das 	{ .index = DT_SLEEP_CLK },
468*efe50430STaniya Das };
469*efe50430STaniya Das 
470*efe50430STaniya Das static const struct parent_map gcc_parent_map_17[] = {
471*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
472*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
473*efe50430STaniya Das 	{ P_GCC_GPLL9_OUT_MAIN, 2 },
474*efe50430STaniya Das 	{ P_GCC_GPLL4_OUT_MAIN, 5 },
475*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
476*efe50430STaniya Das };
477*efe50430STaniya Das 
478*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_17[] = {
479*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
480*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
481*efe50430STaniya Das 	{ .hw = &gcc_gpll9.clkr.hw },
482*efe50430STaniya Das 	{ .hw = &gcc_gpll4.clkr.hw },
483*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
484*efe50430STaniya Das };
485*efe50430STaniya Das 
486*efe50430STaniya Das static const struct parent_map gcc_parent_map_18[] = {
487*efe50430STaniya Das 	{ P_UFS_PHY_RX_SYMBOL_0_CLK, 0 },
488*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
489*efe50430STaniya Das };
490*efe50430STaniya Das 
491*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_18[] = {
492*efe50430STaniya Das 	{ .index = DT_UFS_PHY_RX_SYMBOL_0_CLK },
493*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
494*efe50430STaniya Das };
495*efe50430STaniya Das 
496*efe50430STaniya Das static const struct parent_map gcc_parent_map_19[] = {
497*efe50430STaniya Das 	{ P_UFS_PHY_RX_SYMBOL_1_CLK, 0 },
498*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
499*efe50430STaniya Das };
500*efe50430STaniya Das 
501*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_19[] = {
502*efe50430STaniya Das 	{ .index = DT_UFS_PHY_RX_SYMBOL_1_CLK },
503*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
504*efe50430STaniya Das };
505*efe50430STaniya Das 
506*efe50430STaniya Das static const struct parent_map gcc_parent_map_20[] = {
507*efe50430STaniya Das 	{ P_UFS_PHY_TX_SYMBOL_0_CLK, 0 },
508*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
509*efe50430STaniya Das };
510*efe50430STaniya Das 
511*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_20[] = {
512*efe50430STaniya Das 	{ .index = DT_UFS_PHY_TX_SYMBOL_0_CLK },
513*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
514*efe50430STaniya Das };
515*efe50430STaniya Das 
516*efe50430STaniya Das static const struct parent_map gcc_parent_map_21[] = {
517*efe50430STaniya Das 	{ P_GCC_USB3_PRIM_PHY_PIPE_CLK_SRC, 0 },
518*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 1 },
519*efe50430STaniya Das 	{ P_GCC_USB4_0_PHY_PIPEGMUX_CLK_SRC, 3 },
520*efe50430STaniya Das };
521*efe50430STaniya Das 
522*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_21[] = {
523*efe50430STaniya Das 	{ .hw = &gcc_usb3_prim_phy_pipe_clk_src.clkr.hw },
524*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
525*efe50430STaniya Das 	{ .index = DT_GCC_USB4_0_PHY_PIPEGMUX_CLK_SRC },
526*efe50430STaniya Das };
527*efe50430STaniya Das 
528*efe50430STaniya Das static const struct parent_map gcc_parent_map_22[] = {
529*efe50430STaniya Das 	{ P_GCC_USB3_SEC_PHY_PIPE_CLK_SRC, 0 },
530*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 1 },
531*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_PLL_PIPE_CLK_SRC, 2 },
532*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_PIPEGMUX_CLK_SRC, 3 },
533*efe50430STaniya Das };
534*efe50430STaniya Das 
535*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_22[] = {
536*efe50430STaniya Das 	{ .hw = &gcc_usb3_sec_phy_pipe_clk_src.clkr.hw },
537*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
538*efe50430STaniya Das 	{ .hw = &gcc_usb4_1_phy_pll_pipe_clk_src.clkr.hw },
539*efe50430STaniya Das 	{ .index = DT_GCC_USB4_1_PHY_PIPEGMUX_CLK_SRC },
540*efe50430STaniya Das };
541*efe50430STaniya Das 
542*efe50430STaniya Das static const struct parent_map gcc_parent_map_23[] = {
543*efe50430STaniya Das 	{ P_GCC_USB3_TERT_PHY_PIPE_CLK_SRC, 0 },
544*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 1 },
545*efe50430STaniya Das 	{ P_GCC_USB4_2_PHY_PIPEGMUX_CLK_SRC, 3 },
546*efe50430STaniya Das };
547*efe50430STaniya Das 
548*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_23[] = {
549*efe50430STaniya Das 	{ .hw = &gcc_usb3_tert_phy_pipe_clk_src.clkr.hw },
550*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
551*efe50430STaniya Das 	{ .index = DT_GCC_USB4_2_PHY_PIPEGMUX_CLK_SRC },
552*efe50430STaniya Das };
553*efe50430STaniya Das 
554*efe50430STaniya Das static const struct parent_map gcc_parent_map_24[] = {
555*efe50430STaniya Das 	{ P_USB3_UNI_PHY_MP_GCC_USB30_PIPE_0_CLK, 0 },
556*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
557*efe50430STaniya Das };
558*efe50430STaniya Das 
559*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_24[] = {
560*efe50430STaniya Das 	{ .index = DT_USB3_UNI_PHY_MP_GCC_USB30_PIPE_0_CLK },
561*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
562*efe50430STaniya Das };
563*efe50430STaniya Das 
564*efe50430STaniya Das static const struct parent_map gcc_parent_map_25[] = {
565*efe50430STaniya Das 	{ P_USB3_UNI_PHY_MP_GCC_USB30_PIPE_1_CLK, 0 },
566*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
567*efe50430STaniya Das };
568*efe50430STaniya Das 
569*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_25[] = {
570*efe50430STaniya Das 	{ .index = DT_USB3_UNI_PHY_MP_GCC_USB30_PIPE_1_CLK },
571*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
572*efe50430STaniya Das };
573*efe50430STaniya Das 
574*efe50430STaniya Das static const struct parent_map gcc_parent_map_26[] = {
575*efe50430STaniya Das 	{ P_USB3_PHY_0_WRAPPER_GCC_USB30_PIPE_CLK, 0 },
576*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
577*efe50430STaniya Das };
578*efe50430STaniya Das 
579*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_26[] = {
580*efe50430STaniya Das 	{ .index = DT_USB3_PHY_0_WRAPPER_GCC_USB30_PIPE_CLK },
581*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
582*efe50430STaniya Das };
583*efe50430STaniya Das 
584*efe50430STaniya Das static const struct parent_map gcc_parent_map_27[] = {
585*efe50430STaniya Das 	{ P_USB3_PHY_1_WRAPPER_GCC_USB30_PIPE_CLK, 0 },
586*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
587*efe50430STaniya Das };
588*efe50430STaniya Das 
589*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_27[] = {
590*efe50430STaniya Das 	{ .index = DT_USB3_PHY_1_WRAPPER_GCC_USB30_PIPE_CLK },
591*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
592*efe50430STaniya Das };
593*efe50430STaniya Das 
594*efe50430STaniya Das static const struct parent_map gcc_parent_map_28[] = {
595*efe50430STaniya Das 	{ P_USB3_PHY_2_WRAPPER_GCC_USB30_PIPE_CLK, 0 },
596*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
597*efe50430STaniya Das };
598*efe50430STaniya Das 
599*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_28[] = {
600*efe50430STaniya Das 	{ .index = DT_USB3_PHY_2_WRAPPER_GCC_USB30_PIPE_CLK },
601*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
602*efe50430STaniya Das };
603*efe50430STaniya Das 
604*efe50430STaniya Das static const struct parent_map gcc_parent_map_29[] = {
605*efe50430STaniya Das 	{ P_GCC_USB4_0_PHY_DP0_GMUX_CLK_SRC, 0 },
606*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
607*efe50430STaniya Das };
608*efe50430STaniya Das 
609*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_29[] = {
610*efe50430STaniya Das 	{ .index = DT_GCC_USB4_0_PHY_DP0_GMUX_CLK_SRC },
611*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
612*efe50430STaniya Das };
613*efe50430STaniya Das 
614*efe50430STaniya Das static const struct parent_map gcc_parent_map_30[] = {
615*efe50430STaniya Das 	{ P_GCC_USB4_0_PHY_DP1_GMUX_CLK_SRC, 0 },
616*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
617*efe50430STaniya Das };
618*efe50430STaniya Das 
619*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_30[] = {
620*efe50430STaniya Das 	{ .index = DT_GCC_USB4_0_PHY_DP1_GMUX_CLK_SRC },
621*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
622*efe50430STaniya Das };
623*efe50430STaniya Das 
624*efe50430STaniya Das static const struct parent_map gcc_parent_map_31[] = {
625*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK, 0 },
626*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
627*efe50430STaniya Das };
628*efe50430STaniya Das 
629*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_31[] = {
630*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK },
631*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
632*efe50430STaniya Das };
633*efe50430STaniya Das 
634*efe50430STaniya Das static const struct parent_map gcc_parent_map_32[] = {
635*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
636*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
637*efe50430STaniya Das 	{ P_GCC_GPLL7_OUT_MAIN, 2 },
638*efe50430STaniya Das 	{ P_SLEEP_CLK, 5 },
639*efe50430STaniya Das };
640*efe50430STaniya Das 
641*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_32[] = {
642*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
643*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
644*efe50430STaniya Das 	{ .hw = &gcc_gpll7.clkr.hw },
645*efe50430STaniya Das 	{ .index = DT_SLEEP_CLK },
646*efe50430STaniya Das };
647*efe50430STaniya Das 
648*efe50430STaniya Das static const struct parent_map gcc_parent_map_33[] = {
649*efe50430STaniya Das 	{ P_GCC_USB4_0_PHY_PCIE_PIPEGMUX_CLK_SRC, 0 },
650*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK, 1 },
651*efe50430STaniya Das };
652*efe50430STaniya Das 
653*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_33[] = {
654*efe50430STaniya Das 	{ .index = DT_GCC_USB4_0_PHY_PCIE_PIPEGMUX_CLK_SRC },
655*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK },
656*efe50430STaniya Das };
657*efe50430STaniya Das 
658*efe50430STaniya Das static const struct parent_map gcc_parent_map_34[] = {
659*efe50430STaniya Das 	{ P_QUSB4PHY_0_GCC_USB4_RX0_CLK, 0 },
660*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
661*efe50430STaniya Das };
662*efe50430STaniya Das 
663*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_34[] = {
664*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_0_GCC_USB4_RX0_CLK },
665*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
666*efe50430STaniya Das };
667*efe50430STaniya Das 
668*efe50430STaniya Das static const struct parent_map gcc_parent_map_35[] = {
669*efe50430STaniya Das 	{ P_QUSB4PHY_0_GCC_USB4_RX1_CLK, 0 },
670*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
671*efe50430STaniya Das };
672*efe50430STaniya Das 
673*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_35[] = {
674*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_0_GCC_USB4_RX1_CLK },
675*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
676*efe50430STaniya Das };
677*efe50430STaniya Das 
678*efe50430STaniya Das static const struct parent_map gcc_parent_map_36[] = {
679*efe50430STaniya Das 	{ P_GCC_USB4_0_PHY_SYS_PIPEGMUX_CLK_SRC, 0 },
680*efe50430STaniya Das 	{ P_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK, 2 },
681*efe50430STaniya Das };
682*efe50430STaniya Das 
683*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_36[] = {
684*efe50430STaniya Das 	{ .index = DT_GCC_USB4_0_PHY_SYS_PIPEGMUX_CLK_SRC },
685*efe50430STaniya Das 	{ .index = DT_USB4_0_PHY_GCC_USB4_PCIE_PIPE_CLK },
686*efe50430STaniya Das };
687*efe50430STaniya Das 
688*efe50430STaniya Das static const struct parent_map gcc_parent_map_37[] = {
689*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_DP0_GMUX_2_CLK_SRC, 0 },
690*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
691*efe50430STaniya Das };
692*efe50430STaniya Das 
693*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_37[] = {
694*efe50430STaniya Das 	{ .index = DT_GCC_USB4_1_PHY_DP0_GMUX_2_CLK_SRC },
695*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
696*efe50430STaniya Das };
697*efe50430STaniya Das 
698*efe50430STaniya Das static const struct parent_map gcc_parent_map_38[] = {
699*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_DP1_GMUX_2_CLK_SRC, 0 },
700*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
701*efe50430STaniya Das };
702*efe50430STaniya Das 
703*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_38[] = {
704*efe50430STaniya Das 	{ .index = DT_GCC_USB4_1_PHY_DP1_GMUX_2_CLK_SRC },
705*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
706*efe50430STaniya Das };
707*efe50430STaniya Das 
708*efe50430STaniya Das static const struct parent_map gcc_parent_map_39[] = {
709*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK, 0 },
710*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
711*efe50430STaniya Das };
712*efe50430STaniya Das 
713*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_39[] = {
714*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK },
715*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
716*efe50430STaniya Das };
717*efe50430STaniya Das 
718*efe50430STaniya Das static const struct parent_map gcc_parent_map_40[] = {
719*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_PCIE_PIPEGMUX_CLK_SRC, 0 },
720*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK, 1 },
721*efe50430STaniya Das };
722*efe50430STaniya Das 
723*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_40[] = {
724*efe50430STaniya Das 	{ .index = DT_GCC_USB4_1_PHY_PCIE_PIPEGMUX_CLK_SRC },
725*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK },
726*efe50430STaniya Das };
727*efe50430STaniya Das 
728*efe50430STaniya Das static const struct parent_map gcc_parent_map_41[] = {
729*efe50430STaniya Das 	{ P_BI_TCXO, 0 },
730*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_MAIN, 1 },
731*efe50430STaniya Das 	{ P_GCC_GPLL5_OUT_MAIN, 3 },
732*efe50430STaniya Das 	{ P_GCC_GPLL0_OUT_EVEN, 6 },
733*efe50430STaniya Das };
734*efe50430STaniya Das 
735*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_41[] = {
736*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
737*efe50430STaniya Das 	{ .hw = &gcc_gpll0.clkr.hw },
738*efe50430STaniya Das 	{ .hw = &gcc_gpll5.clkr.hw },
739*efe50430STaniya Das 	{ .hw = &gcc_gpll0_out_even.clkr.hw },
740*efe50430STaniya Das };
741*efe50430STaniya Das 
742*efe50430STaniya Das static const struct parent_map gcc_parent_map_42[] = {
743*efe50430STaniya Das 	{ P_QUSB4PHY_1_GCC_USB4_RX0_CLK, 0 },
744*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
745*efe50430STaniya Das };
746*efe50430STaniya Das 
747*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_42[] = {
748*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_1_GCC_USB4_RX0_CLK },
749*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
750*efe50430STaniya Das };
751*efe50430STaniya Das 
752*efe50430STaniya Das static const struct parent_map gcc_parent_map_43[] = {
753*efe50430STaniya Das 	{ P_QUSB4PHY_1_GCC_USB4_RX1_CLK, 0 },
754*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
755*efe50430STaniya Das };
756*efe50430STaniya Das 
757*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_43[] = {
758*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_1_GCC_USB4_RX1_CLK },
759*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
760*efe50430STaniya Das };
761*efe50430STaniya Das 
762*efe50430STaniya Das static const struct parent_map gcc_parent_map_44[] = {
763*efe50430STaniya Das 	{ P_GCC_USB4_1_PHY_SYS_PIPEGMUX_CLK_SRC, 0 },
764*efe50430STaniya Das 	{ P_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK, 2 },
765*efe50430STaniya Das };
766*efe50430STaniya Das 
767*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_44[] = {
768*efe50430STaniya Das 	{ .index = DT_GCC_USB4_1_PHY_SYS_PIPEGMUX_CLK_SRC },
769*efe50430STaniya Das 	{ .index = DT_USB4_1_PHY_GCC_USB4_PCIE_PIPE_CLK },
770*efe50430STaniya Das };
771*efe50430STaniya Das 
772*efe50430STaniya Das static const struct parent_map gcc_parent_map_45[] = {
773*efe50430STaniya Das 	{ P_GCC_USB4_2_PHY_DP0_GMUX_CLK_SRC, 0 },
774*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
775*efe50430STaniya Das };
776*efe50430STaniya Das 
777*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_45[] = {
778*efe50430STaniya Das 	{ .index = DT_GCC_USB4_2_PHY_DP0_GMUX_CLK_SRC },
779*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
780*efe50430STaniya Das };
781*efe50430STaniya Das 
782*efe50430STaniya Das static const struct parent_map gcc_parent_map_46[] = {
783*efe50430STaniya Das 	{ P_GCC_USB4_2_PHY_DP1_GMUX_CLK_SRC, 0 },
784*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK, 2 },
785*efe50430STaniya Das };
786*efe50430STaniya Das 
787*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_46[] = {
788*efe50430STaniya Das 	{ .index = DT_GCC_USB4_2_PHY_DP1_GMUX_CLK_SRC },
789*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4RTR_MAX_PIPE_CLK },
790*efe50430STaniya Das };
791*efe50430STaniya Das 
792*efe50430STaniya Das static const struct parent_map gcc_parent_map_47[] = {
793*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK, 0 },
794*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
795*efe50430STaniya Das };
796*efe50430STaniya Das 
797*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_47[] = {
798*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK },
799*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
800*efe50430STaniya Das };
801*efe50430STaniya Das 
802*efe50430STaniya Das static const struct parent_map gcc_parent_map_48[] = {
803*efe50430STaniya Das 	{ P_GCC_USB4_2_PHY_PCIE_PIPEGMUX_CLK_SRC, 0 },
804*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK, 1 },
805*efe50430STaniya Das };
806*efe50430STaniya Das 
807*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_48[] = {
808*efe50430STaniya Das 	{ .index = DT_GCC_USB4_2_PHY_PCIE_PIPEGMUX_CLK_SRC },
809*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK },
810*efe50430STaniya Das };
811*efe50430STaniya Das 
812*efe50430STaniya Das static const struct parent_map gcc_parent_map_49[] = {
813*efe50430STaniya Das 	{ P_QUSB4PHY_2_GCC_USB4_RX0_CLK, 0 },
814*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
815*efe50430STaniya Das };
816*efe50430STaniya Das 
817*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_49[] = {
818*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_2_GCC_USB4_RX0_CLK },
819*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
820*efe50430STaniya Das };
821*efe50430STaniya Das 
822*efe50430STaniya Das static const struct parent_map gcc_parent_map_50[] = {
823*efe50430STaniya Das 	{ P_QUSB4PHY_2_GCC_USB4_RX1_CLK, 0 },
824*efe50430STaniya Das 	{ P_BI_TCXO, 2 },
825*efe50430STaniya Das };
826*efe50430STaniya Das 
827*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_50[] = {
828*efe50430STaniya Das 	{ .index = DT_QUSB4PHY_2_GCC_USB4_RX1_CLK },
829*efe50430STaniya Das 	{ .index = DT_BI_TCXO },
830*efe50430STaniya Das };
831*efe50430STaniya Das 
832*efe50430STaniya Das static const struct parent_map gcc_parent_map_51[] = {
833*efe50430STaniya Das 	{ P_GCC_USB4_2_PHY_SYS_PIPEGMUX_CLK_SRC, 0 },
834*efe50430STaniya Das 	{ P_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK, 2 },
835*efe50430STaniya Das };
836*efe50430STaniya Das 
837*efe50430STaniya Das static const struct clk_parent_data gcc_parent_data_51[] = {
838*efe50430STaniya Das 	{ .index = DT_GCC_USB4_2_PHY_SYS_PIPEGMUX_CLK_SRC },
839*efe50430STaniya Das 	{ .index = DT_USB4_2_PHY_GCC_USB4_PCIE_PIPE_CLK },
840*efe50430STaniya Das };
841*efe50430STaniya Das 
842*efe50430STaniya Das static struct clk_regmap_phy_mux gcc_pcie_3a_pipe_clk_src = {
843*efe50430STaniya Das 	.reg = 0xdc088,
844*efe50430STaniya Das 	.clkr = {
845*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
846*efe50430STaniya Das 			.name = "gcc_pcie_3a_pipe_clk_src",
847*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data){
848*efe50430STaniya Das 				.index = DT_PCIE_3A_PIPE_CLK,
849*efe50430STaniya Das 			},
850*efe50430STaniya Das 			.num_parents = 1,
851*efe50430STaniya Das 			.ops = &clk_regmap_phy_mux_ops,
852*efe50430STaniya Das 		},
853*efe50430STaniya Das 	},
854*efe50430STaniya Das };
855*efe50430STaniya Das 
856*efe50430STaniya Das static struct clk_regmap_phy_mux gcc_pcie_3b_pipe_clk_src = {
857*efe50430STaniya Das 	.reg = 0x941b4,
858*efe50430STaniya Das 	.clkr = {
859*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
860*efe50430STaniya Das 			.name = "gcc_pcie_3b_pipe_clk_src",
861*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data){
862*efe50430STaniya Das 				.index = DT_PCIE_3B_PIPE_CLK,
863*efe50430STaniya Das 			},
864*efe50430STaniya Das 			.num_parents = 1,
865*efe50430STaniya Das 			.ops = &clk_regmap_phy_mux_ops,
866*efe50430STaniya Das 		},
867*efe50430STaniya Das 	},
868*efe50430STaniya Das };
869*efe50430STaniya Das 
870*efe50430STaniya Das static struct clk_regmap_phy_mux gcc_pcie_4_pipe_clk_src = {
871*efe50430STaniya Das 	.reg = 0x881a4,
872*efe50430STaniya Das 	.clkr = {
873*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
874*efe50430STaniya Das 			.name = "gcc_pcie_4_pipe_clk_src",
875*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data){
876*efe50430STaniya Das 				.index = DT_PCIE_4_PIPE_CLK,
877*efe50430STaniya Das 			},
878*efe50430STaniya Das 			.num_parents = 1,
879*efe50430STaniya Das 			.ops = &clk_regmap_phy_mux_ops,
880*efe50430STaniya Das 		},
881*efe50430STaniya Das 	},
882*efe50430STaniya Das };
883*efe50430STaniya Das 
884*efe50430STaniya Das static struct clk_regmap_phy_mux gcc_pcie_5_pipe_clk_src = {
885*efe50430STaniya Das 	.reg = 0xc309c,
886*efe50430STaniya Das 	.clkr = {
887*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
888*efe50430STaniya Das 			.name = "gcc_pcie_5_pipe_clk_src",
889*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data){
890*efe50430STaniya Das 				.index = DT_PCIE_5_PIPE_CLK,
891*efe50430STaniya Das 			},
892*efe50430STaniya Das 			.num_parents = 1,
893*efe50430STaniya Das 			.ops = &clk_regmap_phy_mux_ops,
894*efe50430STaniya Das 		},
895*efe50430STaniya Das 	},
896*efe50430STaniya Das };
897*efe50430STaniya Das 
898*efe50430STaniya Das static struct clk_regmap_phy_mux gcc_pcie_6_pipe_clk_src = {
899*efe50430STaniya Das 	.reg = 0x8a1a4,
900*efe50430STaniya Das 	.clkr = {
901*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
902*efe50430STaniya Das 			.name = "gcc_pcie_6_pipe_clk_src",
903*efe50430STaniya Das 			.parent_data = &(const struct clk_parent_data){
904*efe50430STaniya Das 				.index = DT_PCIE_6_PIPE_CLK,
905*efe50430STaniya Das 			},
906*efe50430STaniya Das 			.num_parents = 1,
907*efe50430STaniya Das 			.ops = &clk_regmap_phy_mux_ops,
908*efe50430STaniya Das 		},
909*efe50430STaniya Das 	},
910*efe50430STaniya Das };
911*efe50430STaniya Das 
912*efe50430STaniya Das static struct clk_regmap_mux gcc_ufs_phy_rx_symbol_0_clk_src = {
913*efe50430STaniya Das 	.reg = 0x7706c,
914*efe50430STaniya Das 	.shift = 0,
915*efe50430STaniya Das 	.width = 2,
916*efe50430STaniya Das 	.parent_map = gcc_parent_map_18,
917*efe50430STaniya Das 	.clkr = {
918*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
919*efe50430STaniya Das 			.name = "gcc_ufs_phy_rx_symbol_0_clk_src",
920*efe50430STaniya Das 			.parent_data = gcc_parent_data_18,
921*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_18),
922*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
923*efe50430STaniya Das 		},
924*efe50430STaniya Das 	},
925*efe50430STaniya Das };
926*efe50430STaniya Das 
927*efe50430STaniya Das static struct clk_regmap_mux gcc_ufs_phy_rx_symbol_1_clk_src = {
928*efe50430STaniya Das 	.reg = 0x770f0,
929*efe50430STaniya Das 	.shift = 0,
930*efe50430STaniya Das 	.width = 2,
931*efe50430STaniya Das 	.parent_map = gcc_parent_map_19,
932*efe50430STaniya Das 	.clkr = {
933*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
934*efe50430STaniya Das 			.name = "gcc_ufs_phy_rx_symbol_1_clk_src",
935*efe50430STaniya Das 			.parent_data = gcc_parent_data_19,
936*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_19),
937*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
938*efe50430STaniya Das 		},
939*efe50430STaniya Das 	},
940*efe50430STaniya Das };
941*efe50430STaniya Das 
942*efe50430STaniya Das static struct clk_regmap_mux gcc_ufs_phy_tx_symbol_0_clk_src = {
943*efe50430STaniya Das 	.reg = 0x7705c,
944*efe50430STaniya Das 	.shift = 0,
945*efe50430STaniya Das 	.width = 2,
946*efe50430STaniya Das 	.parent_map = gcc_parent_map_20,
947*efe50430STaniya Das 	.clkr = {
948*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
949*efe50430STaniya Das 			.name = "gcc_ufs_phy_tx_symbol_0_clk_src",
950*efe50430STaniya Das 			.parent_data = gcc_parent_data_20,
951*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_20),
952*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
953*efe50430STaniya Das 		},
954*efe50430STaniya Das 	},
955*efe50430STaniya Das };
956*efe50430STaniya Das 
957*efe50430STaniya Das static struct clk_regmap_mux gcc_usb34_prim_phy_pipe_clk_src = {
958*efe50430STaniya Das 	.reg = 0x2b0b8,
959*efe50430STaniya Das 	.shift = 0,
960*efe50430STaniya Das 	.width = 2,
961*efe50430STaniya Das 	.parent_map = gcc_parent_map_21,
962*efe50430STaniya Das 	.clkr = {
963*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
964*efe50430STaniya Das 			.name = "gcc_usb34_prim_phy_pipe_clk_src",
965*efe50430STaniya Das 			.parent_data = gcc_parent_data_21,
966*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_21),
967*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
968*efe50430STaniya Das 		},
969*efe50430STaniya Das 	},
970*efe50430STaniya Das };
971*efe50430STaniya Das 
972*efe50430STaniya Das static struct clk_regmap_mux gcc_usb34_sec_phy_pipe_clk_src = {
973*efe50430STaniya Das 	.reg = 0x2d0c4,
974*efe50430STaniya Das 	.shift = 0,
975*efe50430STaniya Das 	.width = 2,
976*efe50430STaniya Das 	.parent_map = gcc_parent_map_22,
977*efe50430STaniya Das 	.clkr = {
978*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
979*efe50430STaniya Das 			.name = "gcc_usb34_sec_phy_pipe_clk_src",
980*efe50430STaniya Das 			.parent_data = gcc_parent_data_22,
981*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_22),
982*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
983*efe50430STaniya Das 		},
984*efe50430STaniya Das 	},
985*efe50430STaniya Das };
986*efe50430STaniya Das 
987*efe50430STaniya Das static struct clk_regmap_mux gcc_usb34_tert_phy_pipe_clk_src = {
988*efe50430STaniya Das 	.reg = 0xe00bc,
989*efe50430STaniya Das 	.shift = 0,
990*efe50430STaniya Das 	.width = 2,
991*efe50430STaniya Das 	.parent_map = gcc_parent_map_23,
992*efe50430STaniya Das 	.clkr = {
993*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
994*efe50430STaniya Das 			.name = "gcc_usb34_tert_phy_pipe_clk_src",
995*efe50430STaniya Das 			.parent_data = gcc_parent_data_23,
996*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_23),
997*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
998*efe50430STaniya Das 		},
999*efe50430STaniya Das 	},
1000*efe50430STaniya Das };
1001*efe50430STaniya Das 
1002*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_mp_phy_pipe_0_clk_src = {
1003*efe50430STaniya Das 	.reg = 0x9a07c,
1004*efe50430STaniya Das 	.shift = 0,
1005*efe50430STaniya Das 	.width = 2,
1006*efe50430STaniya Das 	.parent_map = gcc_parent_map_24,
1007*efe50430STaniya Das 	.clkr = {
1008*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1009*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_pipe_0_clk_src",
1010*efe50430STaniya Das 			.parent_data = gcc_parent_data_24,
1011*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_24),
1012*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1013*efe50430STaniya Das 		},
1014*efe50430STaniya Das 	},
1015*efe50430STaniya Das };
1016*efe50430STaniya Das 
1017*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_mp_phy_pipe_1_clk_src = {
1018*efe50430STaniya Das 	.reg = 0x9a084,
1019*efe50430STaniya Das 	.shift = 0,
1020*efe50430STaniya Das 	.width = 2,
1021*efe50430STaniya Das 	.parent_map = gcc_parent_map_25,
1022*efe50430STaniya Das 	.clkr = {
1023*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1024*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_pipe_1_clk_src",
1025*efe50430STaniya Das 			.parent_data = gcc_parent_data_25,
1026*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_25),
1027*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1028*efe50430STaniya Das 		},
1029*efe50430STaniya Das 	},
1030*efe50430STaniya Das };
1031*efe50430STaniya Das 
1032*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_prim_phy_pipe_clk_src = {
1033*efe50430STaniya Das 	.reg = 0x3f08c,
1034*efe50430STaniya Das 	.shift = 0,
1035*efe50430STaniya Das 	.width = 2,
1036*efe50430STaniya Das 	.parent_map = gcc_parent_map_26,
1037*efe50430STaniya Das 	.clkr = {
1038*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1039*efe50430STaniya Das 			.name = "gcc_usb3_prim_phy_pipe_clk_src",
1040*efe50430STaniya Das 			.parent_data = gcc_parent_data_26,
1041*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_26),
1042*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1043*efe50430STaniya Das 		},
1044*efe50430STaniya Das 	},
1045*efe50430STaniya Das };
1046*efe50430STaniya Das 
1047*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_sec_phy_pipe_clk_src = {
1048*efe50430STaniya Das 	.reg = 0xe207c,
1049*efe50430STaniya Das 	.shift = 0,
1050*efe50430STaniya Das 	.width = 2,
1051*efe50430STaniya Das 	.parent_map = gcc_parent_map_27,
1052*efe50430STaniya Das 	.clkr = {
1053*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1054*efe50430STaniya Das 			.name = "gcc_usb3_sec_phy_pipe_clk_src",
1055*efe50430STaniya Das 			.parent_data = gcc_parent_data_27,
1056*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_27),
1057*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1058*efe50430STaniya Das 		},
1059*efe50430STaniya Das 	},
1060*efe50430STaniya Das };
1061*efe50430STaniya Das 
1062*efe50430STaniya Das static struct clk_regmap_mux gcc_usb3_tert_phy_pipe_clk_src = {
1063*efe50430STaniya Das 	.reg = 0xe107c,
1064*efe50430STaniya Das 	.shift = 0,
1065*efe50430STaniya Das 	.width = 2,
1066*efe50430STaniya Das 	.parent_map = gcc_parent_map_28,
1067*efe50430STaniya Das 	.clkr = {
1068*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1069*efe50430STaniya Das 			.name = "gcc_usb3_tert_phy_pipe_clk_src",
1070*efe50430STaniya Das 			.parent_data = gcc_parent_data_28,
1071*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_28),
1072*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1073*efe50430STaniya Das 		},
1074*efe50430STaniya Das 	},
1075*efe50430STaniya Das };
1076*efe50430STaniya Das 
1077*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_dp0_clk_src = {
1078*efe50430STaniya Das 	.reg = 0x2b080,
1079*efe50430STaniya Das 	.shift = 0,
1080*efe50430STaniya Das 	.width = 2,
1081*efe50430STaniya Das 	.parent_map = gcc_parent_map_29,
1082*efe50430STaniya Das 	.clkr = {
1083*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1084*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_dp0_clk_src",
1085*efe50430STaniya Das 			.parent_data = gcc_parent_data_29,
1086*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_29),
1087*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1088*efe50430STaniya Das 		},
1089*efe50430STaniya Das 	},
1090*efe50430STaniya Das };
1091*efe50430STaniya Das 
1092*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_dp1_clk_src = {
1093*efe50430STaniya Das 	.reg = 0x2b134,
1094*efe50430STaniya Das 	.shift = 0,
1095*efe50430STaniya Das 	.width = 2,
1096*efe50430STaniya Das 	.parent_map = gcc_parent_map_30,
1097*efe50430STaniya Das 	.clkr = {
1098*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1099*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_dp1_clk_src",
1100*efe50430STaniya Das 			.parent_data = gcc_parent_data_30,
1101*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_30),
1102*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1103*efe50430STaniya Das 		},
1104*efe50430STaniya Das 	},
1105*efe50430STaniya Das };
1106*efe50430STaniya Das 
1107*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_p2rr2p_pipe_clk_src = {
1108*efe50430STaniya Das 	.reg = 0x2b0f0,
1109*efe50430STaniya Das 	.shift = 0,
1110*efe50430STaniya Das 	.width = 2,
1111*efe50430STaniya Das 	.parent_map = gcc_parent_map_31,
1112*efe50430STaniya Das 	.clkr = {
1113*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1114*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_p2rr2p_pipe_clk_src",
1115*efe50430STaniya Das 			.parent_data = gcc_parent_data_31,
1116*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_31),
1117*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1118*efe50430STaniya Das 		},
1119*efe50430STaniya Das 	},
1120*efe50430STaniya Das };
1121*efe50430STaniya Das 
1122*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_pcie_pipe_mux_clk_src = {
1123*efe50430STaniya Das 	.reg = 0x2b120,
1124*efe50430STaniya Das 	.shift = 0,
1125*efe50430STaniya Das 	.width = 1,
1126*efe50430STaniya Das 	.parent_map = gcc_parent_map_33,
1127*efe50430STaniya Das 	.clkr = {
1128*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1129*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_pcie_pipe_mux_clk_src",
1130*efe50430STaniya Das 			.parent_data = gcc_parent_data_33,
1131*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_33),
1132*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1133*efe50430STaniya Das 		},
1134*efe50430STaniya Das 	},
1135*efe50430STaniya Das };
1136*efe50430STaniya Das 
1137*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_rx0_clk_src = {
1138*efe50430STaniya Das 	.reg = 0x2b0c0,
1139*efe50430STaniya Das 	.shift = 0,
1140*efe50430STaniya Das 	.width = 2,
1141*efe50430STaniya Das 	.parent_map = gcc_parent_map_34,
1142*efe50430STaniya Das 	.clkr = {
1143*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1144*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_rx0_clk_src",
1145*efe50430STaniya Das 			.parent_data = gcc_parent_data_34,
1146*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_34),
1147*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1148*efe50430STaniya Das 		},
1149*efe50430STaniya Das 	},
1150*efe50430STaniya Das };
1151*efe50430STaniya Das 
1152*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_rx1_clk_src = {
1153*efe50430STaniya Das 	.reg = 0x2b0d4,
1154*efe50430STaniya Das 	.shift = 0,
1155*efe50430STaniya Das 	.width = 2,
1156*efe50430STaniya Das 	.parent_map = gcc_parent_map_35,
1157*efe50430STaniya Das 	.clkr = {
1158*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1159*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_rx1_clk_src",
1160*efe50430STaniya Das 			.parent_data = gcc_parent_data_35,
1161*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_35),
1162*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1163*efe50430STaniya Das 		},
1164*efe50430STaniya Das 	},
1165*efe50430STaniya Das };
1166*efe50430STaniya Das 
1167*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_0_phy_sys_clk_src = {
1168*efe50430STaniya Das 	.reg = 0x2b100,
1169*efe50430STaniya Das 	.shift = 0,
1170*efe50430STaniya Das 	.width = 2,
1171*efe50430STaniya Das 	.parent_map = gcc_parent_map_36,
1172*efe50430STaniya Das 	.clkr = {
1173*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1174*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_sys_clk_src",
1175*efe50430STaniya Das 			.parent_data = gcc_parent_data_36,
1176*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_36),
1177*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1178*efe50430STaniya Das 		},
1179*efe50430STaniya Das 	},
1180*efe50430STaniya Das };
1181*efe50430STaniya Das 
1182*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_dp0_clk_src = {
1183*efe50430STaniya Das 	.reg = 0x2d08c,
1184*efe50430STaniya Das 	.shift = 0,
1185*efe50430STaniya Das 	.width = 2,
1186*efe50430STaniya Das 	.parent_map = gcc_parent_map_37,
1187*efe50430STaniya Das 	.clkr = {
1188*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1189*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_dp0_clk_src",
1190*efe50430STaniya Das 			.parent_data = gcc_parent_data_37,
1191*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_37),
1192*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1193*efe50430STaniya Das 		},
1194*efe50430STaniya Das 	},
1195*efe50430STaniya Das };
1196*efe50430STaniya Das 
1197*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_dp1_clk_src = {
1198*efe50430STaniya Das 	.reg = 0x2d154,
1199*efe50430STaniya Das 	.shift = 0,
1200*efe50430STaniya Das 	.width = 2,
1201*efe50430STaniya Das 	.parent_map = gcc_parent_map_38,
1202*efe50430STaniya Das 	.clkr = {
1203*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1204*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_dp1_clk_src",
1205*efe50430STaniya Das 			.parent_data = gcc_parent_data_38,
1206*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_38),
1207*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1208*efe50430STaniya Das 		},
1209*efe50430STaniya Das 	},
1210*efe50430STaniya Das };
1211*efe50430STaniya Das 
1212*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_p2rr2p_pipe_clk_src = {
1213*efe50430STaniya Das 	.reg = 0x2d114,
1214*efe50430STaniya Das 	.shift = 0,
1215*efe50430STaniya Das 	.width = 2,
1216*efe50430STaniya Das 	.parent_map = gcc_parent_map_39,
1217*efe50430STaniya Das 	.clkr = {
1218*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1219*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_p2rr2p_pipe_clk_src",
1220*efe50430STaniya Das 			.parent_data = gcc_parent_data_39,
1221*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_39),
1222*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1223*efe50430STaniya Das 		},
1224*efe50430STaniya Das 	},
1225*efe50430STaniya Das };
1226*efe50430STaniya Das 
1227*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_pcie_pipe_mux_clk_src = {
1228*efe50430STaniya Das 	.reg = 0x2d140,
1229*efe50430STaniya Das 	.shift = 0,
1230*efe50430STaniya Das 	.width = 1,
1231*efe50430STaniya Das 	.parent_map = gcc_parent_map_40,
1232*efe50430STaniya Das 	.clkr = {
1233*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1234*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_pcie_pipe_mux_clk_src",
1235*efe50430STaniya Das 			.parent_data = gcc_parent_data_40,
1236*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_40),
1237*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1238*efe50430STaniya Das 		},
1239*efe50430STaniya Das 	},
1240*efe50430STaniya Das };
1241*efe50430STaniya Das 
1242*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_rx0_clk_src = {
1243*efe50430STaniya Das 	.reg = 0x2d0e4,
1244*efe50430STaniya Das 	.shift = 0,
1245*efe50430STaniya Das 	.width = 2,
1246*efe50430STaniya Das 	.parent_map = gcc_parent_map_42,
1247*efe50430STaniya Das 	.clkr = {
1248*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1249*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_rx0_clk_src",
1250*efe50430STaniya Das 			.parent_data = gcc_parent_data_42,
1251*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_42),
1252*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1253*efe50430STaniya Das 		},
1254*efe50430STaniya Das 	},
1255*efe50430STaniya Das };
1256*efe50430STaniya Das 
1257*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_rx1_clk_src = {
1258*efe50430STaniya Das 	.reg = 0x2d0f8,
1259*efe50430STaniya Das 	.shift = 0,
1260*efe50430STaniya Das 	.width = 2,
1261*efe50430STaniya Das 	.parent_map = gcc_parent_map_43,
1262*efe50430STaniya Das 	.clkr = {
1263*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1264*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_rx1_clk_src",
1265*efe50430STaniya Das 			.parent_data = gcc_parent_data_43,
1266*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_43),
1267*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1268*efe50430STaniya Das 		},
1269*efe50430STaniya Das 	},
1270*efe50430STaniya Das };
1271*efe50430STaniya Das 
1272*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_1_phy_sys_clk_src = {
1273*efe50430STaniya Das 	.reg = 0x2d124,
1274*efe50430STaniya Das 	.shift = 0,
1275*efe50430STaniya Das 	.width = 2,
1276*efe50430STaniya Das 	.parent_map = gcc_parent_map_44,
1277*efe50430STaniya Das 	.clkr = {
1278*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1279*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_sys_clk_src",
1280*efe50430STaniya Das 			.parent_data = gcc_parent_data_44,
1281*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_44),
1282*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1283*efe50430STaniya Das 		},
1284*efe50430STaniya Das 	},
1285*efe50430STaniya Das };
1286*efe50430STaniya Das 
1287*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_dp0_clk_src = {
1288*efe50430STaniya Das 	.reg = 0xe0084,
1289*efe50430STaniya Das 	.shift = 0,
1290*efe50430STaniya Das 	.width = 2,
1291*efe50430STaniya Das 	.parent_map = gcc_parent_map_45,
1292*efe50430STaniya Das 	.clkr = {
1293*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1294*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_dp0_clk_src",
1295*efe50430STaniya Das 			.parent_data = gcc_parent_data_45,
1296*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_45),
1297*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1298*efe50430STaniya Das 		},
1299*efe50430STaniya Das 	},
1300*efe50430STaniya Das };
1301*efe50430STaniya Das 
1302*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_dp1_clk_src = {
1303*efe50430STaniya Das 	.reg = 0xe013c,
1304*efe50430STaniya Das 	.shift = 0,
1305*efe50430STaniya Das 	.width = 2,
1306*efe50430STaniya Das 	.parent_map = gcc_parent_map_46,
1307*efe50430STaniya Das 	.clkr = {
1308*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1309*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_dp1_clk_src",
1310*efe50430STaniya Das 			.parent_data = gcc_parent_data_46,
1311*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_46),
1312*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1313*efe50430STaniya Das 		},
1314*efe50430STaniya Das 	},
1315*efe50430STaniya Das };
1316*efe50430STaniya Das 
1317*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_p2rr2p_pipe_clk_src = {
1318*efe50430STaniya Das 	.reg = 0xe00f4,
1319*efe50430STaniya Das 	.shift = 0,
1320*efe50430STaniya Das 	.width = 2,
1321*efe50430STaniya Das 	.parent_map = gcc_parent_map_47,
1322*efe50430STaniya Das 	.clkr = {
1323*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1324*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_p2rr2p_pipe_clk_src",
1325*efe50430STaniya Das 			.parent_data = gcc_parent_data_47,
1326*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_47),
1327*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1328*efe50430STaniya Das 		},
1329*efe50430STaniya Das 	},
1330*efe50430STaniya Das };
1331*efe50430STaniya Das 
1332*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_pcie_pipe_mux_clk_src = {
1333*efe50430STaniya Das 	.reg = 0xe0124,
1334*efe50430STaniya Das 	.shift = 0,
1335*efe50430STaniya Das 	.width = 1,
1336*efe50430STaniya Das 	.parent_map = gcc_parent_map_48,
1337*efe50430STaniya Das 	.clkr = {
1338*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1339*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_pcie_pipe_mux_clk_src",
1340*efe50430STaniya Das 			.parent_data = gcc_parent_data_48,
1341*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_48),
1342*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1343*efe50430STaniya Das 		},
1344*efe50430STaniya Das 	},
1345*efe50430STaniya Das };
1346*efe50430STaniya Das 
1347*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_rx0_clk_src = {
1348*efe50430STaniya Das 	.reg = 0xe00c4,
1349*efe50430STaniya Das 	.shift = 0,
1350*efe50430STaniya Das 	.width = 2,
1351*efe50430STaniya Das 	.parent_map = gcc_parent_map_49,
1352*efe50430STaniya Das 	.clkr = {
1353*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1354*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_rx0_clk_src",
1355*efe50430STaniya Das 			.parent_data = gcc_parent_data_49,
1356*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_49),
1357*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1358*efe50430STaniya Das 		},
1359*efe50430STaniya Das 	},
1360*efe50430STaniya Das };
1361*efe50430STaniya Das 
1362*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_rx1_clk_src = {
1363*efe50430STaniya Das 	.reg = 0xe00d8,
1364*efe50430STaniya Das 	.shift = 0,
1365*efe50430STaniya Das 	.width = 2,
1366*efe50430STaniya Das 	.parent_map = gcc_parent_map_50,
1367*efe50430STaniya Das 	.clkr = {
1368*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1369*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_rx1_clk_src",
1370*efe50430STaniya Das 			.parent_data = gcc_parent_data_50,
1371*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_50),
1372*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1373*efe50430STaniya Das 		},
1374*efe50430STaniya Das 	},
1375*efe50430STaniya Das };
1376*efe50430STaniya Das 
1377*efe50430STaniya Das static struct clk_regmap_mux gcc_usb4_2_phy_sys_clk_src = {
1378*efe50430STaniya Das 	.reg = 0xe0104,
1379*efe50430STaniya Das 	.shift = 0,
1380*efe50430STaniya Das 	.width = 2,
1381*efe50430STaniya Das 	.parent_map = gcc_parent_map_51,
1382*efe50430STaniya Das 	.clkr = {
1383*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
1384*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_sys_clk_src",
1385*efe50430STaniya Das 			.parent_data = gcc_parent_data_51,
1386*efe50430STaniya Das 			.num_parents = ARRAY_SIZE(gcc_parent_data_51),
1387*efe50430STaniya Das 			.ops = &clk_regmap_mux_closest_ops,
1388*efe50430STaniya Das 		},
1389*efe50430STaniya Das 	},
1390*efe50430STaniya Das };
1391*efe50430STaniya Das 
1392*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_gp1_clk_src[] = {
1393*efe50430STaniya Das 	F(50000000, P_GCC_GPLL0_OUT_EVEN, 6, 0, 0),
1394*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_MAIN, 6, 0, 0),
1395*efe50430STaniya Das 	F(200000000, P_GCC_GPLL0_OUT_MAIN, 3, 0, 0),
1396*efe50430STaniya Das 	{ }
1397*efe50430STaniya Das };
1398*efe50430STaniya Das 
1399*efe50430STaniya Das static struct clk_rcg2 gcc_gp1_clk_src = {
1400*efe50430STaniya Das 	.cmd_rcgr = 0x64004,
1401*efe50430STaniya Das 	.mnd_width = 16,
1402*efe50430STaniya Das 	.hid_width = 5,
1403*efe50430STaniya Das 	.parent_map = gcc_parent_map_4,
1404*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_gp1_clk_src,
1405*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1406*efe50430STaniya Das 		.name = "gcc_gp1_clk_src",
1407*efe50430STaniya Das 		.parent_data = gcc_parent_data_4,
1408*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_4),
1409*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1410*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1411*efe50430STaniya Das 	},
1412*efe50430STaniya Das };
1413*efe50430STaniya Das 
1414*efe50430STaniya Das static struct clk_rcg2 gcc_gp2_clk_src = {
1415*efe50430STaniya Das 	.cmd_rcgr = 0x92004,
1416*efe50430STaniya Das 	.mnd_width = 16,
1417*efe50430STaniya Das 	.hid_width = 5,
1418*efe50430STaniya Das 	.parent_map = gcc_parent_map_4,
1419*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_gp1_clk_src,
1420*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1421*efe50430STaniya Das 		.name = "gcc_gp2_clk_src",
1422*efe50430STaniya Das 		.parent_data = gcc_parent_data_4,
1423*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_4),
1424*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1425*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1426*efe50430STaniya Das 	},
1427*efe50430STaniya Das };
1428*efe50430STaniya Das 
1429*efe50430STaniya Das static struct clk_rcg2 gcc_gp3_clk_src = {
1430*efe50430STaniya Das 	.cmd_rcgr = 0x93004,
1431*efe50430STaniya Das 	.mnd_width = 16,
1432*efe50430STaniya Das 	.hid_width = 5,
1433*efe50430STaniya Das 	.parent_map = gcc_parent_map_4,
1434*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_gp1_clk_src,
1435*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1436*efe50430STaniya Das 		.name = "gcc_gp3_clk_src",
1437*efe50430STaniya Das 		.parent_data = gcc_parent_data_4,
1438*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_4),
1439*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1440*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1441*efe50430STaniya Das 	},
1442*efe50430STaniya Das };
1443*efe50430STaniya Das 
1444*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_pcie_0_aux_clk_src[] = {
1445*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1446*efe50430STaniya Das 	{ }
1447*efe50430STaniya Das };
1448*efe50430STaniya Das 
1449*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_0_aux_clk_src = {
1450*efe50430STaniya Das 	.cmd_rcgr = 0xc8168,
1451*efe50430STaniya Das 	.mnd_width = 16,
1452*efe50430STaniya Das 	.hid_width = 5,
1453*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1454*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1455*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1456*efe50430STaniya Das 		.name = "gcc_pcie_0_aux_clk_src",
1457*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1458*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1459*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1460*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1461*efe50430STaniya Das 	},
1462*efe50430STaniya Das };
1463*efe50430STaniya Das 
1464*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_pcie_0_phy_rchng_clk_src[] = {
1465*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1466*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_EVEN, 3, 0, 0),
1467*efe50430STaniya Das 	{ }
1468*efe50430STaniya Das };
1469*efe50430STaniya Das 
1470*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_0_phy_rchng_clk_src = {
1471*efe50430STaniya Das 	.cmd_rcgr = 0xc803c,
1472*efe50430STaniya Das 	.mnd_width = 0,
1473*efe50430STaniya Das 	.hid_width = 5,
1474*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1475*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1476*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1477*efe50430STaniya Das 		.name = "gcc_pcie_0_phy_rchng_clk_src",
1478*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1479*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1480*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1481*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1482*efe50430STaniya Das 	},
1483*efe50430STaniya Das };
1484*efe50430STaniya Das 
1485*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_1_aux_clk_src = {
1486*efe50430STaniya Das 	.cmd_rcgr = 0x2e168,
1487*efe50430STaniya Das 	.mnd_width = 16,
1488*efe50430STaniya Das 	.hid_width = 5,
1489*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1490*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1491*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1492*efe50430STaniya Das 		.name = "gcc_pcie_1_aux_clk_src",
1493*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1494*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1495*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1496*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1497*efe50430STaniya Das 	},
1498*efe50430STaniya Das };
1499*efe50430STaniya Das 
1500*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_1_phy_rchng_clk_src = {
1501*efe50430STaniya Das 	.cmd_rcgr = 0x2e03c,
1502*efe50430STaniya Das 	.mnd_width = 0,
1503*efe50430STaniya Das 	.hid_width = 5,
1504*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1505*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1506*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1507*efe50430STaniya Das 		.name = "gcc_pcie_1_phy_rchng_clk_src",
1508*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1509*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1510*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1511*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1512*efe50430STaniya Das 	},
1513*efe50430STaniya Das };
1514*efe50430STaniya Das 
1515*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_2_aux_clk_src = {
1516*efe50430STaniya Das 	.cmd_rcgr = 0xc0168,
1517*efe50430STaniya Das 	.mnd_width = 16,
1518*efe50430STaniya Das 	.hid_width = 5,
1519*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1520*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1521*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1522*efe50430STaniya Das 		.name = "gcc_pcie_2_aux_clk_src",
1523*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1524*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1525*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1526*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1527*efe50430STaniya Das 	},
1528*efe50430STaniya Das };
1529*efe50430STaniya Das 
1530*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_2_phy_rchng_clk_src = {
1531*efe50430STaniya Das 	.cmd_rcgr = 0xc003c,
1532*efe50430STaniya Das 	.mnd_width = 0,
1533*efe50430STaniya Das 	.hid_width = 5,
1534*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1535*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1536*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1537*efe50430STaniya Das 		.name = "gcc_pcie_2_phy_rchng_clk_src",
1538*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1539*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1540*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1541*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1542*efe50430STaniya Das 	},
1543*efe50430STaniya Das };
1544*efe50430STaniya Das 
1545*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_3a_aux_clk_src = {
1546*efe50430STaniya Das 	.cmd_rcgr = 0xdc08c,
1547*efe50430STaniya Das 	.mnd_width = 16,
1548*efe50430STaniya Das 	.hid_width = 5,
1549*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1550*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1551*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1552*efe50430STaniya Das 		.name = "gcc_pcie_3a_aux_clk_src",
1553*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1554*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1555*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1556*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1557*efe50430STaniya Das 	},
1558*efe50430STaniya Das };
1559*efe50430STaniya Das 
1560*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_3a_phy_rchng_clk_src = {
1561*efe50430STaniya Das 	.cmd_rcgr = 0xdc070,
1562*efe50430STaniya Das 	.mnd_width = 0,
1563*efe50430STaniya Das 	.hid_width = 5,
1564*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1565*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1566*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1567*efe50430STaniya Das 		.name = "gcc_pcie_3a_phy_rchng_clk_src",
1568*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1569*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1570*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1571*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1572*efe50430STaniya Das 	},
1573*efe50430STaniya Das };
1574*efe50430STaniya Das 
1575*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_3b_aux_clk_src = {
1576*efe50430STaniya Das 	.cmd_rcgr = 0x941b8,
1577*efe50430STaniya Das 	.mnd_width = 16,
1578*efe50430STaniya Das 	.hid_width = 5,
1579*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1580*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1581*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1582*efe50430STaniya Das 		.name = "gcc_pcie_3b_aux_clk_src",
1583*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1584*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1585*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1586*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1587*efe50430STaniya Das 	},
1588*efe50430STaniya Das };
1589*efe50430STaniya Das 
1590*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_3b_phy_rchng_clk_src = {
1591*efe50430STaniya Das 	.cmd_rcgr = 0x94088,
1592*efe50430STaniya Das 	.mnd_width = 0,
1593*efe50430STaniya Das 	.hid_width = 5,
1594*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1595*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1596*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1597*efe50430STaniya Das 		.name = "gcc_pcie_3b_phy_rchng_clk_src",
1598*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1599*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1600*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1601*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1602*efe50430STaniya Das 	},
1603*efe50430STaniya Das };
1604*efe50430STaniya Das 
1605*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_4_aux_clk_src = {
1606*efe50430STaniya Das 	.cmd_rcgr = 0x881a8,
1607*efe50430STaniya Das 	.mnd_width = 16,
1608*efe50430STaniya Das 	.hid_width = 5,
1609*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1610*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1611*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1612*efe50430STaniya Das 		.name = "gcc_pcie_4_aux_clk_src",
1613*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1614*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1615*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1616*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1617*efe50430STaniya Das 	},
1618*efe50430STaniya Das };
1619*efe50430STaniya Das 
1620*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_4_phy_rchng_clk_src = {
1621*efe50430STaniya Das 	.cmd_rcgr = 0x88078,
1622*efe50430STaniya Das 	.mnd_width = 0,
1623*efe50430STaniya Das 	.hid_width = 5,
1624*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1625*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1626*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1627*efe50430STaniya Das 		.name = "gcc_pcie_4_phy_rchng_clk_src",
1628*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1629*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1630*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1631*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1632*efe50430STaniya Das 	},
1633*efe50430STaniya Das };
1634*efe50430STaniya Das 
1635*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_5_aux_clk_src = {
1636*efe50430STaniya Das 	.cmd_rcgr = 0xc30a0,
1637*efe50430STaniya Das 	.mnd_width = 16,
1638*efe50430STaniya Das 	.hid_width = 5,
1639*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1640*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1641*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1642*efe50430STaniya Das 		.name = "gcc_pcie_5_aux_clk_src",
1643*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1644*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1645*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1646*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1647*efe50430STaniya Das 	},
1648*efe50430STaniya Das };
1649*efe50430STaniya Das 
1650*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_5_phy_rchng_clk_src = {
1651*efe50430STaniya Das 	.cmd_rcgr = 0xc3084,
1652*efe50430STaniya Das 	.mnd_width = 0,
1653*efe50430STaniya Das 	.hid_width = 5,
1654*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1655*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1656*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1657*efe50430STaniya Das 		.name = "gcc_pcie_5_phy_rchng_clk_src",
1658*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1659*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1660*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1661*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1662*efe50430STaniya Das 	},
1663*efe50430STaniya Das };
1664*efe50430STaniya Das 
1665*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_6_aux_clk_src = {
1666*efe50430STaniya Das 	.cmd_rcgr = 0x8a1a8,
1667*efe50430STaniya Das 	.mnd_width = 16,
1668*efe50430STaniya Das 	.hid_width = 5,
1669*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1670*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1671*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1672*efe50430STaniya Das 		.name = "gcc_pcie_6_aux_clk_src",
1673*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1674*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1675*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1676*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1677*efe50430STaniya Das 	},
1678*efe50430STaniya Das };
1679*efe50430STaniya Das 
1680*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_6_phy_rchng_clk_src = {
1681*efe50430STaniya Das 	.cmd_rcgr = 0x8a078,
1682*efe50430STaniya Das 	.mnd_width = 0,
1683*efe50430STaniya Das 	.hid_width = 5,
1684*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1685*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_phy_rchng_clk_src,
1686*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1687*efe50430STaniya Das 		.name = "gcc_pcie_6_phy_rchng_clk_src",
1688*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1689*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1690*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1691*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1692*efe50430STaniya Das 	},
1693*efe50430STaniya Das };
1694*efe50430STaniya Das 
1695*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_phy_3a_aux_clk_src = {
1696*efe50430STaniya Das 	.cmd_rcgr = 0x6c01c,
1697*efe50430STaniya Das 	.mnd_width = 16,
1698*efe50430STaniya Das 	.hid_width = 5,
1699*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1700*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1701*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1702*efe50430STaniya Das 		.name = "gcc_pcie_phy_3a_aux_clk_src",
1703*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1704*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1705*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1706*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1707*efe50430STaniya Das 	},
1708*efe50430STaniya Das };
1709*efe50430STaniya Das 
1710*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_phy_3b_aux_clk_src = {
1711*efe50430STaniya Das 	.cmd_rcgr = 0x7501c,
1712*efe50430STaniya Das 	.mnd_width = 16,
1713*efe50430STaniya Das 	.hid_width = 5,
1714*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1715*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1716*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1717*efe50430STaniya Das 		.name = "gcc_pcie_phy_3b_aux_clk_src",
1718*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1719*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1720*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1721*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1722*efe50430STaniya Das 	},
1723*efe50430STaniya Das };
1724*efe50430STaniya Das 
1725*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_phy_4_aux_clk_src = {
1726*efe50430STaniya Das 	.cmd_rcgr = 0xd3018,
1727*efe50430STaniya Das 	.mnd_width = 16,
1728*efe50430STaniya Das 	.hid_width = 5,
1729*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1730*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1731*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1732*efe50430STaniya Das 		.name = "gcc_pcie_phy_4_aux_clk_src",
1733*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1734*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1735*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1736*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1737*efe50430STaniya Das 	},
1738*efe50430STaniya Das };
1739*efe50430STaniya Das 
1740*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_phy_5_aux_clk_src = {
1741*efe50430STaniya Das 	.cmd_rcgr = 0xd2018,
1742*efe50430STaniya Das 	.mnd_width = 16,
1743*efe50430STaniya Das 	.hid_width = 5,
1744*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1745*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1746*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1747*efe50430STaniya Das 		.name = "gcc_pcie_phy_5_aux_clk_src",
1748*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1749*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1750*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1751*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1752*efe50430STaniya Das 	},
1753*efe50430STaniya Das };
1754*efe50430STaniya Das 
1755*efe50430STaniya Das static struct clk_rcg2 gcc_pcie_phy_6_aux_clk_src = {
1756*efe50430STaniya Das 	.cmd_rcgr = 0xd4018,
1757*efe50430STaniya Das 	.mnd_width = 16,
1758*efe50430STaniya Das 	.hid_width = 5,
1759*efe50430STaniya Das 	.parent_map = gcc_parent_map_2,
1760*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
1761*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1762*efe50430STaniya Das 		.name = "gcc_pcie_phy_6_aux_clk_src",
1763*efe50430STaniya Das 		.parent_data = gcc_parent_data_2,
1764*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_2),
1765*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1766*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1767*efe50430STaniya Das 	},
1768*efe50430STaniya Das };
1769*efe50430STaniya Das 
1770*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_pdm2_clk_src[] = {
1771*efe50430STaniya Das 	F(60000000, P_GCC_GPLL0_OUT_MAIN, 10, 0, 0),
1772*efe50430STaniya Das 	{ }
1773*efe50430STaniya Das };
1774*efe50430STaniya Das 
1775*efe50430STaniya Das static struct clk_rcg2 gcc_pdm2_clk_src = {
1776*efe50430STaniya Das 	.cmd_rcgr = 0x33010,
1777*efe50430STaniya Das 	.mnd_width = 0,
1778*efe50430STaniya Das 	.hid_width = 5,
1779*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
1780*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pdm2_clk_src,
1781*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
1782*efe50430STaniya Das 		.name = "gcc_pdm2_clk_src",
1783*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
1784*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
1785*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
1786*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
1787*efe50430STaniya Das 	},
1788*efe50430STaniya Das };
1789*efe50430STaniya Das 
1790*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_qupv3_oob_qspi_s0_clk_src[] = {
1791*efe50430STaniya Das 	F(7372800, P_GCC_GPLL0_OUT_EVEN, 1, 384, 15625),
1792*efe50430STaniya Das 	F(14745600, P_GCC_GPLL0_OUT_EVEN, 1, 768, 15625),
1793*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1794*efe50430STaniya Das 	F(29491200, P_GCC_GPLL0_OUT_EVEN, 1, 1536, 15625),
1795*efe50430STaniya Das 	F(32000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 75),
1796*efe50430STaniya Das 	F(48000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 25),
1797*efe50430STaniya Das 	F(64000000, P_GCC_GPLL0_OUT_EVEN, 1, 16, 75),
1798*efe50430STaniya Das 	F(75000000, P_GCC_GPLL0_OUT_EVEN, 4, 0, 0),
1799*efe50430STaniya Das 	F(80000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 15),
1800*efe50430STaniya Das 	F(96000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 25),
1801*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_MAIN, 6, 0, 0),
1802*efe50430STaniya Das 	F(120000000, P_GCC_GPLL0_OUT_MAIN, 5, 0, 0),
1803*efe50430STaniya Das 	F(150000000, P_GCC_GPLL0_OUT_EVEN, 2, 0, 0),
1804*efe50430STaniya Das 	F(200000000, P_GCC_GPLL0_OUT_MAIN, 3, 0, 0),
1805*efe50430STaniya Das 	F(403000000, P_GCC_GPLL4_OUT_MAIN, 2, 0, 0),
1806*efe50430STaniya Das 	{ }
1807*efe50430STaniya Das };
1808*efe50430STaniya Das 
1809*efe50430STaniya Das static struct clk_init_data gcc_qupv3_oob_qspi_s0_clk_src_init = {
1810*efe50430STaniya Das 	.name = "gcc_qupv3_oob_qspi_s0_clk_src",
1811*efe50430STaniya Das 	.parent_data = gcc_parent_data_3,
1812*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_3),
1813*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1814*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1815*efe50430STaniya Das };
1816*efe50430STaniya Das 
1817*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_oob_qspi_s0_clk_src = {
1818*efe50430STaniya Das 	.cmd_rcgr = 0xe7044,
1819*efe50430STaniya Das 	.mnd_width = 16,
1820*efe50430STaniya Das 	.hid_width = 5,
1821*efe50430STaniya Das 	.parent_map = gcc_parent_map_3,
1822*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s0_clk_src,
1823*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_oob_qspi_s0_clk_src_init,
1824*efe50430STaniya Das };
1825*efe50430STaniya Das 
1826*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_qupv3_oob_qspi_s1_clk_src[] = {
1827*efe50430STaniya Das 	F(7372800, P_GCC_GPLL0_OUT_EVEN, 1, 384, 15625),
1828*efe50430STaniya Das 	F(14745600, P_GCC_GPLL0_OUT_EVEN, 1, 768, 15625),
1829*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1830*efe50430STaniya Das 	F(29491200, P_GCC_GPLL0_OUT_EVEN, 1, 1536, 15625),
1831*efe50430STaniya Das 	F(32000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 75),
1832*efe50430STaniya Das 	F(48000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 25),
1833*efe50430STaniya Das 	F(64000000, P_GCC_GPLL0_OUT_EVEN, 1, 16, 75),
1834*efe50430STaniya Das 	F(75000000, P_GCC_GPLL0_OUT_EVEN, 4, 0, 0),
1835*efe50430STaniya Das 	F(80000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 15),
1836*efe50430STaniya Das 	F(96000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 25),
1837*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_MAIN, 6, 0, 0),
1838*efe50430STaniya Das 	F(120000000, P_GCC_GPLL0_OUT_MAIN, 5, 0, 0),
1839*efe50430STaniya Das 	F(150000000, P_GCC_GPLL0_OUT_EVEN, 2, 0, 0),
1840*efe50430STaniya Das 	F(200000000, P_GCC_GPLL0_OUT_MAIN, 3, 0, 0),
1841*efe50430STaniya Das 	{ }
1842*efe50430STaniya Das };
1843*efe50430STaniya Das 
1844*efe50430STaniya Das static struct clk_init_data gcc_qupv3_oob_qspi_s1_clk_src_init = {
1845*efe50430STaniya Das 	.name = "gcc_qupv3_oob_qspi_s1_clk_src",
1846*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1847*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1848*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1849*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1850*efe50430STaniya Das };
1851*efe50430STaniya Das 
1852*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_oob_qspi_s1_clk_src = {
1853*efe50430STaniya Das 	.cmd_rcgr = 0xe7170,
1854*efe50430STaniya Das 	.mnd_width = 16,
1855*efe50430STaniya Das 	.hid_width = 5,
1856*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1857*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
1858*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_oob_qspi_s1_clk_src_init,
1859*efe50430STaniya Das };
1860*efe50430STaniya Das 
1861*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_qspi_s2_clk_src_init = {
1862*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_qspi_s2_clk_src",
1863*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1864*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1865*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1866*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1867*efe50430STaniya Das };
1868*efe50430STaniya Das 
1869*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_qspi_s2_clk_src = {
1870*efe50430STaniya Das 	.cmd_rcgr = 0x287a0,
1871*efe50430STaniya Das 	.mnd_width = 16,
1872*efe50430STaniya Das 	.hid_width = 5,
1873*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1874*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
1875*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_qspi_s2_clk_src_init,
1876*efe50430STaniya Das };
1877*efe50430STaniya Das 
1878*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_qspi_s3_clk_src_init = {
1879*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_qspi_s3_clk_src",
1880*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1881*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1882*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1883*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1884*efe50430STaniya Das };
1885*efe50430STaniya Das 
1886*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_qspi_s3_clk_src = {
1887*efe50430STaniya Das 	.cmd_rcgr = 0x288d0,
1888*efe50430STaniya Das 	.mnd_width = 16,
1889*efe50430STaniya Das 	.hid_width = 5,
1890*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1891*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
1892*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_qspi_s3_clk_src_init,
1893*efe50430STaniya Das };
1894*efe50430STaniya Das 
1895*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_qspi_s6_clk_src_init = {
1896*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_qspi_s6_clk_src",
1897*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1898*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1899*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1900*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1901*efe50430STaniya Das };
1902*efe50430STaniya Das 
1903*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_qspi_s6_clk_src = {
1904*efe50430STaniya Das 	.cmd_rcgr = 0x2866c,
1905*efe50430STaniya Das 	.mnd_width = 16,
1906*efe50430STaniya Das 	.hid_width = 5,
1907*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1908*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
1909*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_qspi_s6_clk_src_init,
1910*efe50430STaniya Das };
1911*efe50430STaniya Das 
1912*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_qupv3_wrap0_s0_clk_src[] = {
1913*efe50430STaniya Das 	F(7372800, P_GCC_GPLL0_OUT_EVEN, 1, 384, 15625),
1914*efe50430STaniya Das 	F(14745600, P_GCC_GPLL0_OUT_EVEN, 1, 768, 15625),
1915*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1916*efe50430STaniya Das 	F(29491200, P_GCC_GPLL0_OUT_EVEN, 1, 1536, 15625),
1917*efe50430STaniya Das 	F(32000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 75),
1918*efe50430STaniya Das 	F(48000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 25),
1919*efe50430STaniya Das 	F(64000000, P_GCC_GPLL0_OUT_EVEN, 1, 16, 75),
1920*efe50430STaniya Das 	F(75000000, P_GCC_GPLL0_OUT_EVEN, 4, 0, 0),
1921*efe50430STaniya Das 	F(80000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 15),
1922*efe50430STaniya Das 	F(96000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 25),
1923*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_MAIN, 6, 0, 0),
1924*efe50430STaniya Das 	F(120000000, P_GCC_GPLL0_OUT_MAIN, 5, 0, 0),
1925*efe50430STaniya Das 	{ }
1926*efe50430STaniya Das };
1927*efe50430STaniya Das 
1928*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_s0_clk_src_init = {
1929*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_s0_clk_src",
1930*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1931*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1932*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1933*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1934*efe50430STaniya Das };
1935*efe50430STaniya Das 
1936*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_s0_clk_src = {
1937*efe50430STaniya Das 	.cmd_rcgr = 0x28014,
1938*efe50430STaniya Das 	.mnd_width = 16,
1939*efe50430STaniya Das 	.hid_width = 5,
1940*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1941*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
1942*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_s0_clk_src_init,
1943*efe50430STaniya Das };
1944*efe50430STaniya Das 
1945*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_s1_clk_src_init = {
1946*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_s1_clk_src",
1947*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1948*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1949*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1950*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1951*efe50430STaniya Das };
1952*efe50430STaniya Das 
1953*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_s1_clk_src = {
1954*efe50430STaniya Das 	.cmd_rcgr = 0x28150,
1955*efe50430STaniya Das 	.mnd_width = 16,
1956*efe50430STaniya Das 	.hid_width = 5,
1957*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1958*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
1959*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_s1_clk_src_init,
1960*efe50430STaniya Das };
1961*efe50430STaniya Das 
1962*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_qupv3_wrap0_s4_clk_src[] = {
1963*efe50430STaniya Das 	F(7372800, P_GCC_GPLL0_OUT_EVEN, 1, 384, 15625),
1964*efe50430STaniya Das 	F(14745600, P_GCC_GPLL0_OUT_EVEN, 1, 768, 15625),
1965*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
1966*efe50430STaniya Das 	F(29491200, P_GCC_GPLL0_OUT_EVEN, 1, 1536, 15625),
1967*efe50430STaniya Das 	F(32000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 75),
1968*efe50430STaniya Das 	F(48000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 25),
1969*efe50430STaniya Das 	F(64000000, P_GCC_GPLL0_OUT_EVEN, 1, 16, 75),
1970*efe50430STaniya Das 	F(75000000, P_GCC_GPLL0_OUT_EVEN, 4, 0, 0),
1971*efe50430STaniya Das 	F(80000000, P_GCC_GPLL0_OUT_EVEN, 1, 4, 15),
1972*efe50430STaniya Das 	F(96000000, P_GCC_GPLL0_OUT_EVEN, 1, 8, 25),
1973*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_MAIN, 6, 0, 0),
1974*efe50430STaniya Das 	{ }
1975*efe50430STaniya Das };
1976*efe50430STaniya Das 
1977*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_s4_clk_src_init = {
1978*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_s4_clk_src",
1979*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1980*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1981*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1982*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
1983*efe50430STaniya Das };
1984*efe50430STaniya Das 
1985*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_s4_clk_src = {
1986*efe50430STaniya Das 	.cmd_rcgr = 0x282b4,
1987*efe50430STaniya Das 	.mnd_width = 16,
1988*efe50430STaniya Das 	.hid_width = 5,
1989*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
1990*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
1991*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_s4_clk_src_init,
1992*efe50430STaniya Das };
1993*efe50430STaniya Das 
1994*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_s5_clk_src_init = {
1995*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_s5_clk_src",
1996*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
1997*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
1998*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
1999*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2000*efe50430STaniya Das };
2001*efe50430STaniya Das 
2002*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_s5_clk_src = {
2003*efe50430STaniya Das 	.cmd_rcgr = 0x283f0,
2004*efe50430STaniya Das 	.mnd_width = 16,
2005*efe50430STaniya Das 	.hid_width = 5,
2006*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2007*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2008*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_s5_clk_src_init,
2009*efe50430STaniya Das };
2010*efe50430STaniya Das 
2011*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap0_s7_clk_src_init = {
2012*efe50430STaniya Das 	.name = "gcc_qupv3_wrap0_s7_clk_src",
2013*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2014*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2015*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2016*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2017*efe50430STaniya Das };
2018*efe50430STaniya Das 
2019*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap0_s7_clk_src = {
2020*efe50430STaniya Das 	.cmd_rcgr = 0x28540,
2021*efe50430STaniya Das 	.mnd_width = 16,
2022*efe50430STaniya Das 	.hid_width = 5,
2023*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2024*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2025*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap0_s7_clk_src_init,
2026*efe50430STaniya Das };
2027*efe50430STaniya Das 
2028*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_qspi_s2_clk_src_init = {
2029*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_qspi_s2_clk_src",
2030*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2031*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2032*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2033*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2034*efe50430STaniya Das };
2035*efe50430STaniya Das 
2036*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_qspi_s2_clk_src = {
2037*efe50430STaniya Das 	.cmd_rcgr = 0xb37a0,
2038*efe50430STaniya Das 	.mnd_width = 16,
2039*efe50430STaniya Das 	.hid_width = 5,
2040*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2041*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2042*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_qspi_s2_clk_src_init,
2043*efe50430STaniya Das };
2044*efe50430STaniya Das 
2045*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_qspi_s3_clk_src_init = {
2046*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_qspi_s3_clk_src",
2047*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2048*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2049*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2050*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2051*efe50430STaniya Das };
2052*efe50430STaniya Das 
2053*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_qspi_s3_clk_src = {
2054*efe50430STaniya Das 	.cmd_rcgr = 0xb38d0,
2055*efe50430STaniya Das 	.mnd_width = 16,
2056*efe50430STaniya Das 	.hid_width = 5,
2057*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2058*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2059*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_qspi_s3_clk_src_init,
2060*efe50430STaniya Das };
2061*efe50430STaniya Das 
2062*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_qspi_s6_clk_src_init = {
2063*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_qspi_s6_clk_src",
2064*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2065*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2066*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2067*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2068*efe50430STaniya Das };
2069*efe50430STaniya Das 
2070*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_qspi_s6_clk_src = {
2071*efe50430STaniya Das 	.cmd_rcgr = 0xb366c,
2072*efe50430STaniya Das 	.mnd_width = 16,
2073*efe50430STaniya Das 	.hid_width = 5,
2074*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2075*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2076*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_qspi_s6_clk_src_init,
2077*efe50430STaniya Das };
2078*efe50430STaniya Das 
2079*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_s0_clk_src_init = {
2080*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_s0_clk_src",
2081*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2082*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2083*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2084*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2085*efe50430STaniya Das };
2086*efe50430STaniya Das 
2087*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_s0_clk_src = {
2088*efe50430STaniya Das 	.cmd_rcgr = 0xb3014,
2089*efe50430STaniya Das 	.mnd_width = 16,
2090*efe50430STaniya Das 	.hid_width = 5,
2091*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2092*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
2093*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_s0_clk_src_init,
2094*efe50430STaniya Das };
2095*efe50430STaniya Das 
2096*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_s1_clk_src_init = {
2097*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_s1_clk_src",
2098*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2099*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2100*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2101*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2102*efe50430STaniya Das };
2103*efe50430STaniya Das 
2104*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_s1_clk_src = {
2105*efe50430STaniya Das 	.cmd_rcgr = 0xb3150,
2106*efe50430STaniya Das 	.mnd_width = 16,
2107*efe50430STaniya Das 	.hid_width = 5,
2108*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2109*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
2110*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_s1_clk_src_init,
2111*efe50430STaniya Das };
2112*efe50430STaniya Das 
2113*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_s4_clk_src_init = {
2114*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_s4_clk_src",
2115*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2116*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2117*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2118*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2119*efe50430STaniya Das };
2120*efe50430STaniya Das 
2121*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_s4_clk_src = {
2122*efe50430STaniya Das 	.cmd_rcgr = 0xb32b4,
2123*efe50430STaniya Das 	.mnd_width = 16,
2124*efe50430STaniya Das 	.hid_width = 5,
2125*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2126*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2127*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_s4_clk_src_init,
2128*efe50430STaniya Das };
2129*efe50430STaniya Das 
2130*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_s5_clk_src_init = {
2131*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_s5_clk_src",
2132*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2133*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2134*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2135*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2136*efe50430STaniya Das };
2137*efe50430STaniya Das 
2138*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_s5_clk_src = {
2139*efe50430STaniya Das 	.cmd_rcgr = 0xb33f0,
2140*efe50430STaniya Das 	.mnd_width = 16,
2141*efe50430STaniya Das 	.hid_width = 5,
2142*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2143*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2144*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_s5_clk_src_init,
2145*efe50430STaniya Das };
2146*efe50430STaniya Das 
2147*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap1_s7_clk_src_init = {
2148*efe50430STaniya Das 	.name = "gcc_qupv3_wrap1_s7_clk_src",
2149*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2150*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2151*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2152*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2153*efe50430STaniya Das };
2154*efe50430STaniya Das 
2155*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap1_s7_clk_src = {
2156*efe50430STaniya Das 	.cmd_rcgr = 0xb3540,
2157*efe50430STaniya Das 	.mnd_width = 16,
2158*efe50430STaniya Das 	.hid_width = 5,
2159*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2160*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2161*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap1_s7_clk_src_init,
2162*efe50430STaniya Das };
2163*efe50430STaniya Das 
2164*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_qspi_s2_clk_src_init = {
2165*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_qspi_s2_clk_src",
2166*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2167*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2168*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2169*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2170*efe50430STaniya Das };
2171*efe50430STaniya Das 
2172*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_qspi_s2_clk_src = {
2173*efe50430STaniya Das 	.cmd_rcgr = 0xb47a0,
2174*efe50430STaniya Das 	.mnd_width = 16,
2175*efe50430STaniya Das 	.hid_width = 5,
2176*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2177*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2178*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_qspi_s2_clk_src_init,
2179*efe50430STaniya Das };
2180*efe50430STaniya Das 
2181*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_qspi_s3_clk_src_init = {
2182*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_qspi_s3_clk_src",
2183*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2184*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2185*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2186*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2187*efe50430STaniya Das };
2188*efe50430STaniya Das 
2189*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_qspi_s3_clk_src = {
2190*efe50430STaniya Das 	.cmd_rcgr = 0xb48d0,
2191*efe50430STaniya Das 	.mnd_width = 16,
2192*efe50430STaniya Das 	.hid_width = 5,
2193*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2194*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2195*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_qspi_s3_clk_src_init,
2196*efe50430STaniya Das };
2197*efe50430STaniya Das 
2198*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_qspi_s6_clk_src_init = {
2199*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_qspi_s6_clk_src",
2200*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2201*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2202*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2203*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2204*efe50430STaniya Das };
2205*efe50430STaniya Das 
2206*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_qspi_s6_clk_src = {
2207*efe50430STaniya Das 	.cmd_rcgr = 0xb466c,
2208*efe50430STaniya Das 	.mnd_width = 16,
2209*efe50430STaniya Das 	.hid_width = 5,
2210*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2211*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_oob_qspi_s1_clk_src,
2212*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_qspi_s6_clk_src_init,
2213*efe50430STaniya Das };
2214*efe50430STaniya Das 
2215*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_s0_clk_src_init = {
2216*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_s0_clk_src",
2217*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2218*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2219*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2220*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2221*efe50430STaniya Das };
2222*efe50430STaniya Das 
2223*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_s0_clk_src = {
2224*efe50430STaniya Das 	.cmd_rcgr = 0xb4014,
2225*efe50430STaniya Das 	.mnd_width = 16,
2226*efe50430STaniya Das 	.hid_width = 5,
2227*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2228*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
2229*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_s0_clk_src_init,
2230*efe50430STaniya Das };
2231*efe50430STaniya Das 
2232*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_s1_clk_src_init = {
2233*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_s1_clk_src",
2234*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2235*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2236*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2237*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2238*efe50430STaniya Das };
2239*efe50430STaniya Das 
2240*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_s1_clk_src = {
2241*efe50430STaniya Das 	.cmd_rcgr = 0xb4150,
2242*efe50430STaniya Das 	.mnd_width = 16,
2243*efe50430STaniya Das 	.hid_width = 5,
2244*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2245*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s0_clk_src,
2246*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_s1_clk_src_init,
2247*efe50430STaniya Das };
2248*efe50430STaniya Das 
2249*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_s4_clk_src_init = {
2250*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_s4_clk_src",
2251*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2252*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2253*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2254*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2255*efe50430STaniya Das };
2256*efe50430STaniya Das 
2257*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_s4_clk_src = {
2258*efe50430STaniya Das 	.cmd_rcgr = 0xb42b4,
2259*efe50430STaniya Das 	.mnd_width = 16,
2260*efe50430STaniya Das 	.hid_width = 5,
2261*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2262*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2263*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_s4_clk_src_init,
2264*efe50430STaniya Das };
2265*efe50430STaniya Das 
2266*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_s5_clk_src_init = {
2267*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_s5_clk_src",
2268*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2269*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2270*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2271*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2272*efe50430STaniya Das };
2273*efe50430STaniya Das 
2274*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_s5_clk_src = {
2275*efe50430STaniya Das 	.cmd_rcgr = 0xb43f0,
2276*efe50430STaniya Das 	.mnd_width = 16,
2277*efe50430STaniya Das 	.hid_width = 5,
2278*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2279*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2280*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_s5_clk_src_init,
2281*efe50430STaniya Das };
2282*efe50430STaniya Das 
2283*efe50430STaniya Das static struct clk_init_data gcc_qupv3_wrap2_s7_clk_src_init = {
2284*efe50430STaniya Das 	.name = "gcc_qupv3_wrap2_s7_clk_src",
2285*efe50430STaniya Das 	.parent_data = gcc_parent_data_1,
2286*efe50430STaniya Das 	.num_parents = ARRAY_SIZE(gcc_parent_data_1),
2287*efe50430STaniya Das 	.flags = CLK_SET_RATE_PARENT,
2288*efe50430STaniya Das 	.ops = &clk_rcg2_shared_no_init_park_ops,
2289*efe50430STaniya Das };
2290*efe50430STaniya Das 
2291*efe50430STaniya Das static struct clk_rcg2 gcc_qupv3_wrap2_s7_clk_src = {
2292*efe50430STaniya Das 	.cmd_rcgr = 0xb4540,
2293*efe50430STaniya Das 	.mnd_width = 16,
2294*efe50430STaniya Das 	.hid_width = 5,
2295*efe50430STaniya Das 	.parent_map = gcc_parent_map_1,
2296*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_qupv3_wrap0_s4_clk_src,
2297*efe50430STaniya Das 	.clkr.hw.init = &gcc_qupv3_wrap2_s7_clk_src_init,
2298*efe50430STaniya Das };
2299*efe50430STaniya Das 
2300*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_sdcc2_apps_clk_src[] = {
2301*efe50430STaniya Das 	F(400000, P_BI_TCXO, 12, 1, 4),
2302*efe50430STaniya Das 	F(25000000, P_GCC_GPLL0_OUT_EVEN, 12, 0, 0),
2303*efe50430STaniya Das 	F(50000000, P_GCC_GPLL0_OUT_EVEN, 6, 0, 0),
2304*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_EVEN, 3, 0, 0),
2305*efe50430STaniya Das 	F(202000000, P_GCC_GPLL9_OUT_MAIN, 4, 0, 0),
2306*efe50430STaniya Das 	{ }
2307*efe50430STaniya Das };
2308*efe50430STaniya Das 
2309*efe50430STaniya Das static struct clk_rcg2 gcc_sdcc2_apps_clk_src = {
2310*efe50430STaniya Das 	.cmd_rcgr = 0xb001c,
2311*efe50430STaniya Das 	.mnd_width = 8,
2312*efe50430STaniya Das 	.hid_width = 5,
2313*efe50430STaniya Das 	.parent_map = gcc_parent_map_17,
2314*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_sdcc2_apps_clk_src,
2315*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2316*efe50430STaniya Das 		.name = "gcc_sdcc2_apps_clk_src",
2317*efe50430STaniya Das 		.parent_data = gcc_parent_data_17,
2318*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_17),
2319*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2320*efe50430STaniya Das 		.ops = &clk_rcg2_floor_ops,
2321*efe50430STaniya Das 	},
2322*efe50430STaniya Das };
2323*efe50430STaniya Das 
2324*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_sdcc4_apps_clk_src[] = {
2325*efe50430STaniya Das 	F(400000, P_BI_TCXO, 12, 1, 4),
2326*efe50430STaniya Das 	F(25000000, P_GCC_GPLL0_OUT_EVEN, 12, 0, 0),
2327*efe50430STaniya Das 	F(75000000, P_GCC_GPLL0_OUT_MAIN, 8, 0, 0),
2328*efe50430STaniya Das 	{ }
2329*efe50430STaniya Das };
2330*efe50430STaniya Das 
2331*efe50430STaniya Das static struct clk_rcg2 gcc_sdcc4_apps_clk_src = {
2332*efe50430STaniya Das 	.cmd_rcgr = 0xdf01c,
2333*efe50430STaniya Das 	.mnd_width = 8,
2334*efe50430STaniya Das 	.hid_width = 5,
2335*efe50430STaniya Das 	.parent_map = gcc_parent_map_3,
2336*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_sdcc4_apps_clk_src,
2337*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2338*efe50430STaniya Das 		.name = "gcc_sdcc4_apps_clk_src",
2339*efe50430STaniya Das 		.parent_data = gcc_parent_data_3,
2340*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_3),
2341*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2342*efe50430STaniya Das 		.ops = &clk_rcg2_floor_ops,
2343*efe50430STaniya Das 	},
2344*efe50430STaniya Das };
2345*efe50430STaniya Das 
2346*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_ufs_phy_axi_clk_src[] = {
2347*efe50430STaniya Das 	F(25000000, P_GCC_GPLL0_OUT_EVEN, 12, 0, 0),
2348*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_EVEN, 3, 0, 0),
2349*efe50430STaniya Das 	F(201500000, P_GCC_GPLL4_OUT_MAIN, 4, 0, 0),
2350*efe50430STaniya Das 	F(403000000, P_GCC_GPLL4_OUT_MAIN, 2, 0, 0),
2351*efe50430STaniya Das 	{ }
2352*efe50430STaniya Das };
2353*efe50430STaniya Das 
2354*efe50430STaniya Das static struct clk_rcg2 gcc_ufs_phy_axi_clk_src = {
2355*efe50430STaniya Das 	.cmd_rcgr = 0x77038,
2356*efe50430STaniya Das 	.mnd_width = 8,
2357*efe50430STaniya Das 	.hid_width = 5,
2358*efe50430STaniya Das 	.parent_map = gcc_parent_map_6,
2359*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_ufs_phy_axi_clk_src,
2360*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2361*efe50430STaniya Das 		.name = "gcc_ufs_phy_axi_clk_src",
2362*efe50430STaniya Das 		.parent_data = gcc_parent_data_6,
2363*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_6),
2364*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2365*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2366*efe50430STaniya Das 	},
2367*efe50430STaniya Das };
2368*efe50430STaniya Das 
2369*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_ufs_phy_ice_core_clk_src[] = {
2370*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_EVEN, 3, 0, 0),
2371*efe50430STaniya Das 	F(201500000, P_GCC_GPLL4_OUT_MAIN, 4, 0, 0),
2372*efe50430STaniya Das 	F(403000000, P_GCC_GPLL4_OUT_MAIN, 2, 0, 0),
2373*efe50430STaniya Das 	{ }
2374*efe50430STaniya Das };
2375*efe50430STaniya Das 
2376*efe50430STaniya Das static struct clk_rcg2 gcc_ufs_phy_ice_core_clk_src = {
2377*efe50430STaniya Das 	.cmd_rcgr = 0x77090,
2378*efe50430STaniya Das 	.mnd_width = 0,
2379*efe50430STaniya Das 	.hid_width = 5,
2380*efe50430STaniya Das 	.parent_map = gcc_parent_map_6,
2381*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_ufs_phy_ice_core_clk_src,
2382*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2383*efe50430STaniya Das 		.name = "gcc_ufs_phy_ice_core_clk_src",
2384*efe50430STaniya Das 		.parent_data = gcc_parent_data_6,
2385*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_6),
2386*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2387*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2388*efe50430STaniya Das 	},
2389*efe50430STaniya Das };
2390*efe50430STaniya Das 
2391*efe50430STaniya Das static struct clk_rcg2 gcc_ufs_phy_phy_aux_clk_src = {
2392*efe50430STaniya Das 	.cmd_rcgr = 0x770c4,
2393*efe50430STaniya Das 	.mnd_width = 0,
2394*efe50430STaniya Das 	.hid_width = 5,
2395*efe50430STaniya Das 	.parent_map = gcc_parent_map_5,
2396*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2397*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2398*efe50430STaniya Das 		.name = "gcc_ufs_phy_phy_aux_clk_src",
2399*efe50430STaniya Das 		.parent_data = gcc_parent_data_5,
2400*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_5),
2401*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2402*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2403*efe50430STaniya Das 	},
2404*efe50430STaniya Das };
2405*efe50430STaniya Das 
2406*efe50430STaniya Das static struct clk_rcg2 gcc_ufs_phy_unipro_core_clk_src = {
2407*efe50430STaniya Das 	.cmd_rcgr = 0x770a8,
2408*efe50430STaniya Das 	.mnd_width = 0,
2409*efe50430STaniya Das 	.hid_width = 5,
2410*efe50430STaniya Das 	.parent_map = gcc_parent_map_6,
2411*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_ufs_phy_ice_core_clk_src,
2412*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2413*efe50430STaniya Das 		.name = "gcc_ufs_phy_unipro_core_clk_src",
2414*efe50430STaniya Das 		.parent_data = gcc_parent_data_6,
2415*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_6),
2416*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2417*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2418*efe50430STaniya Das 	},
2419*efe50430STaniya Das };
2420*efe50430STaniya Das 
2421*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb20_master_clk_src[] = {
2422*efe50430STaniya Das 	F(60000000, P_GCC_GPLL14_OUT_MAIN, 10, 0, 0),
2423*efe50430STaniya Das 	F(120000000, P_GCC_GPLL14_OUT_MAIN, 5, 0, 0),
2424*efe50430STaniya Das 	{ }
2425*efe50430STaniya Das };
2426*efe50430STaniya Das 
2427*efe50430STaniya Das static struct clk_rcg2 gcc_usb20_master_clk_src = {
2428*efe50430STaniya Das 	.cmd_rcgr = 0xbc030,
2429*efe50430STaniya Das 	.mnd_width = 8,
2430*efe50430STaniya Das 	.hid_width = 5,
2431*efe50430STaniya Das 	.parent_map = gcc_parent_map_7,
2432*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb20_master_clk_src,
2433*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2434*efe50430STaniya Das 		.name = "gcc_usb20_master_clk_src",
2435*efe50430STaniya Das 		.parent_data = gcc_parent_data_7,
2436*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_7),
2437*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2438*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2439*efe50430STaniya Das 	},
2440*efe50430STaniya Das };
2441*efe50430STaniya Das 
2442*efe50430STaniya Das static struct clk_rcg2 gcc_usb20_mock_utmi_clk_src = {
2443*efe50430STaniya Das 	.cmd_rcgr = 0xbc048,
2444*efe50430STaniya Das 	.mnd_width = 0,
2445*efe50430STaniya Das 	.hid_width = 5,
2446*efe50430STaniya Das 	.parent_map = gcc_parent_map_7,
2447*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2448*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2449*efe50430STaniya Das 		.name = "gcc_usb20_mock_utmi_clk_src",
2450*efe50430STaniya Das 		.parent_data = gcc_parent_data_7,
2451*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_7),
2452*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2453*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2454*efe50430STaniya Das 	},
2455*efe50430STaniya Das };
2456*efe50430STaniya Das 
2457*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb30_mp_master_clk_src[] = {
2458*efe50430STaniya Das 	F(66666667, P_GCC_GPLL0_OUT_EVEN, 4.5, 0, 0),
2459*efe50430STaniya Das 	F(133333333, P_GCC_GPLL0_OUT_MAIN, 4.5, 0, 0),
2460*efe50430STaniya Das 	F(200000000, P_GCC_GPLL0_OUT_MAIN, 3, 0, 0),
2461*efe50430STaniya Das 	F(240000000, P_GCC_GPLL0_OUT_MAIN, 2.5, 0, 0),
2462*efe50430STaniya Das 	{ }
2463*efe50430STaniya Das };
2464*efe50430STaniya Das 
2465*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_mp_master_clk_src = {
2466*efe50430STaniya Das 	.cmd_rcgr = 0x9a03c,
2467*efe50430STaniya Das 	.mnd_width = 8,
2468*efe50430STaniya Das 	.hid_width = 5,
2469*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2470*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb30_mp_master_clk_src,
2471*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2472*efe50430STaniya Das 		.name = "gcc_usb30_mp_master_clk_src",
2473*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2474*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2475*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2476*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2477*efe50430STaniya Das 	},
2478*efe50430STaniya Das };
2479*efe50430STaniya Das 
2480*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_mp_mock_utmi_clk_src = {
2481*efe50430STaniya Das 	.cmd_rcgr = 0x9a054,
2482*efe50430STaniya Das 	.mnd_width = 0,
2483*efe50430STaniya Das 	.hid_width = 5,
2484*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2485*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2486*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2487*efe50430STaniya Das 		.name = "gcc_usb30_mp_mock_utmi_clk_src",
2488*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2489*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2490*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2491*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2492*efe50430STaniya Das 	},
2493*efe50430STaniya Das };
2494*efe50430STaniya Das 
2495*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_prim_master_clk_src = {
2496*efe50430STaniya Das 	.cmd_rcgr = 0x3f04c,
2497*efe50430STaniya Das 	.mnd_width = 8,
2498*efe50430STaniya Das 	.hid_width = 5,
2499*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2500*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb30_mp_master_clk_src,
2501*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2502*efe50430STaniya Das 		.name = "gcc_usb30_prim_master_clk_src",
2503*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2504*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2505*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2506*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2507*efe50430STaniya Das 	},
2508*efe50430STaniya Das };
2509*efe50430STaniya Das 
2510*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_prim_mock_utmi_clk_src = {
2511*efe50430STaniya Das 	.cmd_rcgr = 0x3f064,
2512*efe50430STaniya Das 	.mnd_width = 0,
2513*efe50430STaniya Das 	.hid_width = 5,
2514*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2515*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2516*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2517*efe50430STaniya Das 		.name = "gcc_usb30_prim_mock_utmi_clk_src",
2518*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2519*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2520*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2521*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2522*efe50430STaniya Das 	},
2523*efe50430STaniya Das };
2524*efe50430STaniya Das 
2525*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_sec_master_clk_src = {
2526*efe50430STaniya Das 	.cmd_rcgr = 0xe203c,
2527*efe50430STaniya Das 	.mnd_width = 8,
2528*efe50430STaniya Das 	.hid_width = 5,
2529*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2530*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb30_mp_master_clk_src,
2531*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2532*efe50430STaniya Das 		.name = "gcc_usb30_sec_master_clk_src",
2533*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2534*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2535*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2536*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2537*efe50430STaniya Das 	},
2538*efe50430STaniya Das };
2539*efe50430STaniya Das 
2540*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_sec_mock_utmi_clk_src = {
2541*efe50430STaniya Das 	.cmd_rcgr = 0xe2054,
2542*efe50430STaniya Das 	.mnd_width = 0,
2543*efe50430STaniya Das 	.hid_width = 5,
2544*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2545*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2546*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2547*efe50430STaniya Das 		.name = "gcc_usb30_sec_mock_utmi_clk_src",
2548*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2549*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2550*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2551*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2552*efe50430STaniya Das 	},
2553*efe50430STaniya Das };
2554*efe50430STaniya Das 
2555*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_tert_master_clk_src = {
2556*efe50430STaniya Das 	.cmd_rcgr = 0xe103c,
2557*efe50430STaniya Das 	.mnd_width = 8,
2558*efe50430STaniya Das 	.hid_width = 5,
2559*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2560*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb30_mp_master_clk_src,
2561*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2562*efe50430STaniya Das 		.name = "gcc_usb30_tert_master_clk_src",
2563*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2564*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2565*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2566*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2567*efe50430STaniya Das 	},
2568*efe50430STaniya Das };
2569*efe50430STaniya Das 
2570*efe50430STaniya Das static struct clk_rcg2 gcc_usb30_tert_mock_utmi_clk_src = {
2571*efe50430STaniya Das 	.cmd_rcgr = 0xe1054,
2572*efe50430STaniya Das 	.mnd_width = 0,
2573*efe50430STaniya Das 	.hid_width = 5,
2574*efe50430STaniya Das 	.parent_map = gcc_parent_map_0,
2575*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2576*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2577*efe50430STaniya Das 		.name = "gcc_usb30_tert_mock_utmi_clk_src",
2578*efe50430STaniya Das 		.parent_data = gcc_parent_data_0,
2579*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_0),
2580*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2581*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2582*efe50430STaniya Das 	},
2583*efe50430STaniya Das };
2584*efe50430STaniya Das 
2585*efe50430STaniya Das static struct clk_rcg2 gcc_usb3_mp_phy_aux_clk_src = {
2586*efe50430STaniya Das 	.cmd_rcgr = 0x9a088,
2587*efe50430STaniya Das 	.mnd_width = 0,
2588*efe50430STaniya Das 	.hid_width = 5,
2589*efe50430STaniya Das 	.parent_map = gcc_parent_map_8,
2590*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2591*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2592*efe50430STaniya Das 		.name = "gcc_usb3_mp_phy_aux_clk_src",
2593*efe50430STaniya Das 		.parent_data = gcc_parent_data_8,
2594*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_8),
2595*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2596*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2597*efe50430STaniya Das 	},
2598*efe50430STaniya Das };
2599*efe50430STaniya Das 
2600*efe50430STaniya Das static struct clk_rcg2 gcc_usb3_prim_phy_aux_clk_src = {
2601*efe50430STaniya Das 	.cmd_rcgr = 0x3f090,
2602*efe50430STaniya Das 	.mnd_width = 0,
2603*efe50430STaniya Das 	.hid_width = 5,
2604*efe50430STaniya Das 	.parent_map = gcc_parent_map_8,
2605*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2606*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2607*efe50430STaniya Das 		.name = "gcc_usb3_prim_phy_aux_clk_src",
2608*efe50430STaniya Das 		.parent_data = gcc_parent_data_8,
2609*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_8),
2610*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2611*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2612*efe50430STaniya Das 	},
2613*efe50430STaniya Das };
2614*efe50430STaniya Das 
2615*efe50430STaniya Das static struct clk_rcg2 gcc_usb3_sec_phy_aux_clk_src = {
2616*efe50430STaniya Das 	.cmd_rcgr = 0xe2080,
2617*efe50430STaniya Das 	.mnd_width = 0,
2618*efe50430STaniya Das 	.hid_width = 5,
2619*efe50430STaniya Das 	.parent_map = gcc_parent_map_8,
2620*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2621*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2622*efe50430STaniya Das 		.name = "gcc_usb3_sec_phy_aux_clk_src",
2623*efe50430STaniya Das 		.parent_data = gcc_parent_data_8,
2624*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_8),
2625*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2626*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2627*efe50430STaniya Das 	},
2628*efe50430STaniya Das };
2629*efe50430STaniya Das 
2630*efe50430STaniya Das static struct clk_rcg2 gcc_usb3_tert_phy_aux_clk_src = {
2631*efe50430STaniya Das 	.cmd_rcgr = 0xe1080,
2632*efe50430STaniya Das 	.mnd_width = 0,
2633*efe50430STaniya Das 	.hid_width = 5,
2634*efe50430STaniya Das 	.parent_map = gcc_parent_map_8,
2635*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2636*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2637*efe50430STaniya Das 		.name = "gcc_usb3_tert_phy_aux_clk_src",
2638*efe50430STaniya Das 		.parent_data = gcc_parent_data_8,
2639*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_8),
2640*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2641*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2642*efe50430STaniya Das 	},
2643*efe50430STaniya Das };
2644*efe50430STaniya Das 
2645*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb4_0_master_clk_src[] = {
2646*efe50430STaniya Das 	F(85714286, P_GCC_GPLL0_OUT_EVEN, 3.5, 0, 0),
2647*efe50430STaniya Das 	F(177666750, P_GCC_GPLL8_OUT_MAIN, 4, 0, 0),
2648*efe50430STaniya Das 	F(355333500, P_GCC_GPLL8_OUT_MAIN, 2, 0, 0),
2649*efe50430STaniya Das 	{ }
2650*efe50430STaniya Das };
2651*efe50430STaniya Das 
2652*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_0_master_clk_src = {
2653*efe50430STaniya Das 	.cmd_rcgr = 0x2b02c,
2654*efe50430STaniya Das 	.mnd_width = 8,
2655*efe50430STaniya Das 	.hid_width = 5,
2656*efe50430STaniya Das 	.parent_map = gcc_parent_map_9,
2657*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_master_clk_src,
2658*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2659*efe50430STaniya Das 		.name = "gcc_usb4_0_master_clk_src",
2660*efe50430STaniya Das 		.parent_data = gcc_parent_data_9,
2661*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_9),
2662*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2663*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2664*efe50430STaniya Das 	},
2665*efe50430STaniya Das };
2666*efe50430STaniya Das 
2667*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src[] = {
2668*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
2669*efe50430STaniya Das 	F(125000000, P_GCC_GPLL7_OUT_MAIN, 4, 0, 0),
2670*efe50430STaniya Das 	F(250000000, P_GCC_GPLL7_OUT_MAIN, 2, 0, 0),
2671*efe50430STaniya Das 	{ }
2672*efe50430STaniya Das };
2673*efe50430STaniya Das 
2674*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_0_phy_pcie_pipe_clk_src = {
2675*efe50430STaniya Das 	.cmd_rcgr = 0x2b104,
2676*efe50430STaniya Das 	.mnd_width = 0,
2677*efe50430STaniya Das 	.hid_width = 5,
2678*efe50430STaniya Das 	.parent_map = gcc_parent_map_32,
2679*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src,
2680*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2681*efe50430STaniya Das 		.name = "gcc_usb4_0_phy_pcie_pipe_clk_src",
2682*efe50430STaniya Das 		.parent_data = gcc_parent_data_32,
2683*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_32),
2684*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2685*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2686*efe50430STaniya Das 	},
2687*efe50430STaniya Das };
2688*efe50430STaniya Das 
2689*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_0_sb_if_clk_src = {
2690*efe50430STaniya Das 	.cmd_rcgr = 0x2b0a0,
2691*efe50430STaniya Das 	.mnd_width = 0,
2692*efe50430STaniya Das 	.hid_width = 5,
2693*efe50430STaniya Das 	.parent_map = gcc_parent_map_5,
2694*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2695*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2696*efe50430STaniya Das 		.name = "gcc_usb4_0_sb_if_clk_src",
2697*efe50430STaniya Das 		.parent_data = gcc_parent_data_5,
2698*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_5),
2699*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2700*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2701*efe50430STaniya Das 	},
2702*efe50430STaniya Das };
2703*efe50430STaniya Das 
2704*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_0_tmu_clk_src = {
2705*efe50430STaniya Das 	.cmd_rcgr = 0x2b084,
2706*efe50430STaniya Das 	.mnd_width = 0,
2707*efe50430STaniya Das 	.hid_width = 5,
2708*efe50430STaniya Das 	.parent_map = gcc_parent_map_10,
2709*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src,
2710*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2711*efe50430STaniya Das 		.name = "gcc_usb4_0_tmu_clk_src",
2712*efe50430STaniya Das 		.parent_data = gcc_parent_data_10,
2713*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_10),
2714*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2715*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2716*efe50430STaniya Das 	},
2717*efe50430STaniya Das };
2718*efe50430STaniya Das 
2719*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_master_clk_src = {
2720*efe50430STaniya Das 	.cmd_rcgr = 0x2d02c,
2721*efe50430STaniya Das 	.mnd_width = 8,
2722*efe50430STaniya Das 	.hid_width = 5,
2723*efe50430STaniya Das 	.parent_map = gcc_parent_map_9,
2724*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_master_clk_src,
2725*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2726*efe50430STaniya Das 		.name = "gcc_usb4_1_master_clk_src",
2727*efe50430STaniya Das 		.parent_data = gcc_parent_data_9,
2728*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_9),
2729*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2730*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2731*efe50430STaniya Das 	},
2732*efe50430STaniya Das };
2733*efe50430STaniya Das 
2734*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb4_1_phy_pcie_pipe_clk_src[] = {
2735*efe50430STaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
2736*efe50430STaniya Das 	F(177666750, P_GCC_GPLL8_OUT_MAIN, 4, 0, 0),
2737*efe50430STaniya Das 	F(355333500, P_GCC_GPLL8_OUT_MAIN, 2, 0, 0),
2738*efe50430STaniya Das 	{ }
2739*efe50430STaniya Das };
2740*efe50430STaniya Das 
2741*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_phy_pcie_pipe_clk_src = {
2742*efe50430STaniya Das 	.cmd_rcgr = 0x2d128,
2743*efe50430STaniya Das 	.mnd_width = 0,
2744*efe50430STaniya Das 	.hid_width = 5,
2745*efe50430STaniya Das 	.parent_map = gcc_parent_map_11,
2746*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_1_phy_pcie_pipe_clk_src,
2747*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2748*efe50430STaniya Das 		.name = "gcc_usb4_1_phy_pcie_pipe_clk_src",
2749*efe50430STaniya Das 		.parent_data = gcc_parent_data_11,
2750*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_11),
2751*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2752*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2753*efe50430STaniya Das 	},
2754*efe50430STaniya Das };
2755*efe50430STaniya Das 
2756*efe50430STaniya Das static const struct freq_tbl ftbl_gcc_usb4_1_phy_pll_pipe_clk_src[] = {
2757*efe50430STaniya Das 	F(100000000, P_GCC_GPLL0_OUT_EVEN, 3, 0, 0),
2758*efe50430STaniya Das 	F(311000000, P_GCC_GPLL5_OUT_MAIN, 3, 0, 0),
2759*efe50430STaniya Das 	{ }
2760*efe50430STaniya Das };
2761*efe50430STaniya Das 
2762*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_phy_pll_pipe_clk_src = {
2763*efe50430STaniya Das 	.cmd_rcgr = 0x2d0c8,
2764*efe50430STaniya Das 	.mnd_width = 0,
2765*efe50430STaniya Das 	.hid_width = 5,
2766*efe50430STaniya Das 	.parent_map = gcc_parent_map_41,
2767*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_1_phy_pll_pipe_clk_src,
2768*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2769*efe50430STaniya Das 		.name = "gcc_usb4_1_phy_pll_pipe_clk_src",
2770*efe50430STaniya Das 		.parent_data = gcc_parent_data_41,
2771*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_41),
2772*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2773*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2774*efe50430STaniya Das 	},
2775*efe50430STaniya Das };
2776*efe50430STaniya Das 
2777*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_sb_if_clk_src = {
2778*efe50430STaniya Das 	.cmd_rcgr = 0x2d0ac,
2779*efe50430STaniya Das 	.mnd_width = 0,
2780*efe50430STaniya Das 	.hid_width = 5,
2781*efe50430STaniya Das 	.parent_map = gcc_parent_map_5,
2782*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2783*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2784*efe50430STaniya Das 		.name = "gcc_usb4_1_sb_if_clk_src",
2785*efe50430STaniya Das 		.parent_data = gcc_parent_data_5,
2786*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_5),
2787*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2788*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2789*efe50430STaniya Das 	},
2790*efe50430STaniya Das };
2791*efe50430STaniya Das 
2792*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_1_tmu_clk_src = {
2793*efe50430STaniya Das 	.cmd_rcgr = 0x2d090,
2794*efe50430STaniya Das 	.mnd_width = 0,
2795*efe50430STaniya Das 	.hid_width = 5,
2796*efe50430STaniya Das 	.parent_map = gcc_parent_map_10,
2797*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src,
2798*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2799*efe50430STaniya Das 		.name = "gcc_usb4_1_tmu_clk_src",
2800*efe50430STaniya Das 		.parent_data = gcc_parent_data_10,
2801*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_10),
2802*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2803*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2804*efe50430STaniya Das 	},
2805*efe50430STaniya Das };
2806*efe50430STaniya Das 
2807*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_2_master_clk_src = {
2808*efe50430STaniya Das 	.cmd_rcgr = 0xe002c,
2809*efe50430STaniya Das 	.mnd_width = 8,
2810*efe50430STaniya Das 	.hid_width = 5,
2811*efe50430STaniya Das 	.parent_map = gcc_parent_map_9,
2812*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_master_clk_src,
2813*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2814*efe50430STaniya Das 		.name = "gcc_usb4_2_master_clk_src",
2815*efe50430STaniya Das 		.parent_data = gcc_parent_data_9,
2816*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_9),
2817*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2818*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2819*efe50430STaniya Das 	},
2820*efe50430STaniya Das };
2821*efe50430STaniya Das 
2822*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_2_phy_pcie_pipe_clk_src = {
2823*efe50430STaniya Das 	.cmd_rcgr = 0xe0108,
2824*efe50430STaniya Das 	.mnd_width = 0,
2825*efe50430STaniya Das 	.hid_width = 5,
2826*efe50430STaniya Das 	.parent_map = gcc_parent_map_11,
2827*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src,
2828*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2829*efe50430STaniya Das 		.name = "gcc_usb4_2_phy_pcie_pipe_clk_src",
2830*efe50430STaniya Das 		.parent_data = gcc_parent_data_11,
2831*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_11),
2832*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2833*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2834*efe50430STaniya Das 	},
2835*efe50430STaniya Das };
2836*efe50430STaniya Das 
2837*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_2_sb_if_clk_src = {
2838*efe50430STaniya Das 	.cmd_rcgr = 0xe00a4,
2839*efe50430STaniya Das 	.mnd_width = 0,
2840*efe50430STaniya Das 	.hid_width = 5,
2841*efe50430STaniya Das 	.parent_map = gcc_parent_map_5,
2842*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_pcie_0_aux_clk_src,
2843*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2844*efe50430STaniya Das 		.name = "gcc_usb4_2_sb_if_clk_src",
2845*efe50430STaniya Das 		.parent_data = gcc_parent_data_5,
2846*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_5),
2847*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2848*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2849*efe50430STaniya Das 	},
2850*efe50430STaniya Das };
2851*efe50430STaniya Das 
2852*efe50430STaniya Das static struct clk_rcg2 gcc_usb4_2_tmu_clk_src = {
2853*efe50430STaniya Das 	.cmd_rcgr = 0xe0088,
2854*efe50430STaniya Das 	.mnd_width = 0,
2855*efe50430STaniya Das 	.hid_width = 5,
2856*efe50430STaniya Das 	.parent_map = gcc_parent_map_10,
2857*efe50430STaniya Das 	.freq_tbl = ftbl_gcc_usb4_0_phy_pcie_pipe_clk_src,
2858*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2859*efe50430STaniya Das 		.name = "gcc_usb4_2_tmu_clk_src",
2860*efe50430STaniya Das 		.parent_data = gcc_parent_data_10,
2861*efe50430STaniya Das 		.num_parents = ARRAY_SIZE(gcc_parent_data_10),
2862*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2863*efe50430STaniya Das 		.ops = &clk_rcg2_shared_no_init_park_ops,
2864*efe50430STaniya Das 	},
2865*efe50430STaniya Das };
2866*efe50430STaniya Das 
2867*efe50430STaniya Das static struct clk_regmap_div gcc_pcie_3b_pipe_div_clk_src = {
2868*efe50430STaniya Das 	.reg = 0x94070,
2869*efe50430STaniya Das 	.shift = 0,
2870*efe50430STaniya Das 	.width = 4,
2871*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2872*efe50430STaniya Das 		.name = "gcc_pcie_3b_pipe_div_clk_src",
2873*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2874*efe50430STaniya Das 			&gcc_pcie_3b_pipe_clk_src.clkr.hw,
2875*efe50430STaniya Das 		},
2876*efe50430STaniya Das 		.num_parents = 1,
2877*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2878*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2879*efe50430STaniya Das 	},
2880*efe50430STaniya Das };
2881*efe50430STaniya Das 
2882*efe50430STaniya Das static struct clk_regmap_div gcc_pcie_4_pipe_div_clk_src = {
2883*efe50430STaniya Das 	.reg = 0x88060,
2884*efe50430STaniya Das 	.shift = 0,
2885*efe50430STaniya Das 	.width = 4,
2886*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2887*efe50430STaniya Das 		.name = "gcc_pcie_4_pipe_div_clk_src",
2888*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2889*efe50430STaniya Das 			&gcc_pcie_4_pipe_clk_src.clkr.hw,
2890*efe50430STaniya Das 		},
2891*efe50430STaniya Das 		.num_parents = 1,
2892*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2893*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2894*efe50430STaniya Das 	},
2895*efe50430STaniya Das };
2896*efe50430STaniya Das 
2897*efe50430STaniya Das static struct clk_regmap_div gcc_pcie_5_pipe_div_clk_src = {
2898*efe50430STaniya Das 	.reg = 0xc306c,
2899*efe50430STaniya Das 	.shift = 0,
2900*efe50430STaniya Das 	.width = 4,
2901*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2902*efe50430STaniya Das 		.name = "gcc_pcie_5_pipe_div_clk_src",
2903*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2904*efe50430STaniya Das 			&gcc_pcie_5_pipe_clk_src.clkr.hw,
2905*efe50430STaniya Das 		},
2906*efe50430STaniya Das 		.num_parents = 1,
2907*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2908*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2909*efe50430STaniya Das 	},
2910*efe50430STaniya Das };
2911*efe50430STaniya Das 
2912*efe50430STaniya Das static struct clk_regmap_div gcc_pcie_6_pipe_div_clk_src = {
2913*efe50430STaniya Das 	.reg = 0x8a060,
2914*efe50430STaniya Das 	.shift = 0,
2915*efe50430STaniya Das 	.width = 4,
2916*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2917*efe50430STaniya Das 		.name = "gcc_pcie_6_pipe_div_clk_src",
2918*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2919*efe50430STaniya Das 			&gcc_pcie_6_pipe_clk_src.clkr.hw,
2920*efe50430STaniya Das 		},
2921*efe50430STaniya Das 		.num_parents = 1,
2922*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2923*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2924*efe50430STaniya Das 	},
2925*efe50430STaniya Das };
2926*efe50430STaniya Das 
2927*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_oob_s0_clk_src = {
2928*efe50430STaniya Das 	.reg = 0xe7024,
2929*efe50430STaniya Das 	.shift = 0,
2930*efe50430STaniya Das 	.width = 4,
2931*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2932*efe50430STaniya Das 		.name = "gcc_qupv3_oob_s0_clk_src",
2933*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2934*efe50430STaniya Das 			&gcc_qupv3_oob_qspi_s0_clk_src.clkr.hw,
2935*efe50430STaniya Das 		},
2936*efe50430STaniya Das 		.num_parents = 1,
2937*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2938*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2939*efe50430STaniya Das 	},
2940*efe50430STaniya Das };
2941*efe50430STaniya Das 
2942*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_oob_s1_clk_src = {
2943*efe50430STaniya Das 	.reg = 0xe7038,
2944*efe50430STaniya Das 	.shift = 0,
2945*efe50430STaniya Das 	.width = 4,
2946*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2947*efe50430STaniya Das 		.name = "gcc_qupv3_oob_s1_clk_src",
2948*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2949*efe50430STaniya Das 			&gcc_qupv3_oob_qspi_s1_clk_src.clkr.hw,
2950*efe50430STaniya Das 		},
2951*efe50430STaniya Das 		.num_parents = 1,
2952*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2953*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2954*efe50430STaniya Das 	},
2955*efe50430STaniya Das };
2956*efe50430STaniya Das 
2957*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap0_s2_clk_src = {
2958*efe50430STaniya Das 	.reg = 0x2828c,
2959*efe50430STaniya Das 	.shift = 0,
2960*efe50430STaniya Das 	.width = 4,
2961*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2962*efe50430STaniya Das 		.name = "gcc_qupv3_wrap0_s2_clk_src",
2963*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2964*efe50430STaniya Das 			&gcc_qupv3_wrap0_qspi_s2_clk_src.clkr.hw,
2965*efe50430STaniya Das 		},
2966*efe50430STaniya Das 		.num_parents = 1,
2967*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2968*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2969*efe50430STaniya Das 	},
2970*efe50430STaniya Das };
2971*efe50430STaniya Das 
2972*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap0_s3_clk_src = {
2973*efe50430STaniya Das 	.reg = 0x282a0,
2974*efe50430STaniya Das 	.shift = 0,
2975*efe50430STaniya Das 	.width = 4,
2976*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2977*efe50430STaniya Das 		.name = "gcc_qupv3_wrap0_s3_clk_src",
2978*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2979*efe50430STaniya Das 			&gcc_qupv3_wrap0_qspi_s3_clk_src.clkr.hw,
2980*efe50430STaniya Das 		},
2981*efe50430STaniya Das 		.num_parents = 1,
2982*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2983*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2984*efe50430STaniya Das 	},
2985*efe50430STaniya Das };
2986*efe50430STaniya Das 
2987*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap0_s6_clk_src = {
2988*efe50430STaniya Das 	.reg = 0x2852c,
2989*efe50430STaniya Das 	.shift = 0,
2990*efe50430STaniya Das 	.width = 4,
2991*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
2992*efe50430STaniya Das 		.name = "gcc_qupv3_wrap0_s6_clk_src",
2993*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
2994*efe50430STaniya Das 			&gcc_qupv3_wrap0_qspi_s6_clk_src.clkr.hw,
2995*efe50430STaniya Das 		},
2996*efe50430STaniya Das 		.num_parents = 1,
2997*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
2998*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
2999*efe50430STaniya Das 	},
3000*efe50430STaniya Das };
3001*efe50430STaniya Das 
3002*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap1_s2_clk_src = {
3003*efe50430STaniya Das 	.reg = 0xb328c,
3004*efe50430STaniya Das 	.shift = 0,
3005*efe50430STaniya Das 	.width = 4,
3006*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3007*efe50430STaniya Das 		.name = "gcc_qupv3_wrap1_s2_clk_src",
3008*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3009*efe50430STaniya Das 			&gcc_qupv3_wrap1_qspi_s2_clk_src.clkr.hw,
3010*efe50430STaniya Das 		},
3011*efe50430STaniya Das 		.num_parents = 1,
3012*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3013*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3014*efe50430STaniya Das 	},
3015*efe50430STaniya Das };
3016*efe50430STaniya Das 
3017*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap1_s3_clk_src = {
3018*efe50430STaniya Das 	.reg = 0xb32a0,
3019*efe50430STaniya Das 	.shift = 0,
3020*efe50430STaniya Das 	.width = 4,
3021*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3022*efe50430STaniya Das 		.name = "gcc_qupv3_wrap1_s3_clk_src",
3023*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3024*efe50430STaniya Das 			&gcc_qupv3_wrap1_qspi_s3_clk_src.clkr.hw,
3025*efe50430STaniya Das 		},
3026*efe50430STaniya Das 		.num_parents = 1,
3027*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3028*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3029*efe50430STaniya Das 	},
3030*efe50430STaniya Das };
3031*efe50430STaniya Das 
3032*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap1_s6_clk_src = {
3033*efe50430STaniya Das 	.reg = 0xb352c,
3034*efe50430STaniya Das 	.shift = 0,
3035*efe50430STaniya Das 	.width = 4,
3036*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3037*efe50430STaniya Das 		.name = "gcc_qupv3_wrap1_s6_clk_src",
3038*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3039*efe50430STaniya Das 			&gcc_qupv3_wrap1_qspi_s6_clk_src.clkr.hw,
3040*efe50430STaniya Das 		},
3041*efe50430STaniya Das 		.num_parents = 1,
3042*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3043*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3044*efe50430STaniya Das 	},
3045*efe50430STaniya Das };
3046*efe50430STaniya Das 
3047*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap2_s2_clk_src = {
3048*efe50430STaniya Das 	.reg = 0xb428c,
3049*efe50430STaniya Das 	.shift = 0,
3050*efe50430STaniya Das 	.width = 4,
3051*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3052*efe50430STaniya Das 		.name = "gcc_qupv3_wrap2_s2_clk_src",
3053*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3054*efe50430STaniya Das 			&gcc_qupv3_wrap2_qspi_s2_clk_src.clkr.hw,
3055*efe50430STaniya Das 		},
3056*efe50430STaniya Das 		.num_parents = 1,
3057*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3058*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3059*efe50430STaniya Das 	},
3060*efe50430STaniya Das };
3061*efe50430STaniya Das 
3062*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap2_s3_clk_src = {
3063*efe50430STaniya Das 	.reg = 0xb42a0,
3064*efe50430STaniya Das 	.shift = 0,
3065*efe50430STaniya Das 	.width = 4,
3066*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3067*efe50430STaniya Das 		.name = "gcc_qupv3_wrap2_s3_clk_src",
3068*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3069*efe50430STaniya Das 			&gcc_qupv3_wrap2_qspi_s3_clk_src.clkr.hw,
3070*efe50430STaniya Das 		},
3071*efe50430STaniya Das 		.num_parents = 1,
3072*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3073*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3074*efe50430STaniya Das 	},
3075*efe50430STaniya Das };
3076*efe50430STaniya Das 
3077*efe50430STaniya Das static struct clk_regmap_div gcc_qupv3_wrap2_s6_clk_src = {
3078*efe50430STaniya Das 	.reg = 0xb452c,
3079*efe50430STaniya Das 	.shift = 0,
3080*efe50430STaniya Das 	.width = 4,
3081*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3082*efe50430STaniya Das 		.name = "gcc_qupv3_wrap2_s6_clk_src",
3083*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3084*efe50430STaniya Das 			&gcc_qupv3_wrap2_qspi_s6_clk_src.clkr.hw,
3085*efe50430STaniya Das 		},
3086*efe50430STaniya Das 		.num_parents = 1,
3087*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3088*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3089*efe50430STaniya Das 	},
3090*efe50430STaniya Das };
3091*efe50430STaniya Das 
3092*efe50430STaniya Das static struct clk_regmap_div gcc_usb20_mock_utmi_postdiv_clk_src = {
3093*efe50430STaniya Das 	.reg = 0xbc174,
3094*efe50430STaniya Das 	.shift = 0,
3095*efe50430STaniya Das 	.width = 4,
3096*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3097*efe50430STaniya Das 		.name = "gcc_usb20_mock_utmi_postdiv_clk_src",
3098*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3099*efe50430STaniya Das 			&gcc_usb20_mock_utmi_clk_src.clkr.hw,
3100*efe50430STaniya Das 		},
3101*efe50430STaniya Das 		.num_parents = 1,
3102*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3103*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3104*efe50430STaniya Das 	},
3105*efe50430STaniya Das };
3106*efe50430STaniya Das 
3107*efe50430STaniya Das static struct clk_regmap_div gcc_usb30_mp_mock_utmi_postdiv_clk_src = {
3108*efe50430STaniya Das 	.reg = 0x9a06c,
3109*efe50430STaniya Das 	.shift = 0,
3110*efe50430STaniya Das 	.width = 4,
3111*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3112*efe50430STaniya Das 		.name = "gcc_usb30_mp_mock_utmi_postdiv_clk_src",
3113*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3114*efe50430STaniya Das 			&gcc_usb30_mp_mock_utmi_clk_src.clkr.hw,
3115*efe50430STaniya Das 		},
3116*efe50430STaniya Das 		.num_parents = 1,
3117*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3118*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3119*efe50430STaniya Das 	},
3120*efe50430STaniya Das };
3121*efe50430STaniya Das 
3122*efe50430STaniya Das static struct clk_regmap_div gcc_usb30_prim_mock_utmi_postdiv_clk_src = {
3123*efe50430STaniya Das 	.reg = 0x3f07c,
3124*efe50430STaniya Das 	.shift = 0,
3125*efe50430STaniya Das 	.width = 4,
3126*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3127*efe50430STaniya Das 		.name = "gcc_usb30_prim_mock_utmi_postdiv_clk_src",
3128*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3129*efe50430STaniya Das 			&gcc_usb30_prim_mock_utmi_clk_src.clkr.hw,
3130*efe50430STaniya Das 		},
3131*efe50430STaniya Das 		.num_parents = 1,
3132*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3133*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3134*efe50430STaniya Das 	},
3135*efe50430STaniya Das };
3136*efe50430STaniya Das 
3137*efe50430STaniya Das static struct clk_regmap_div gcc_usb30_sec_mock_utmi_postdiv_clk_src = {
3138*efe50430STaniya Das 	.reg = 0xe206c,
3139*efe50430STaniya Das 	.shift = 0,
3140*efe50430STaniya Das 	.width = 4,
3141*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3142*efe50430STaniya Das 		.name = "gcc_usb30_sec_mock_utmi_postdiv_clk_src",
3143*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3144*efe50430STaniya Das 			&gcc_usb30_sec_mock_utmi_clk_src.clkr.hw,
3145*efe50430STaniya Das 		},
3146*efe50430STaniya Das 		.num_parents = 1,
3147*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3148*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3149*efe50430STaniya Das 	},
3150*efe50430STaniya Das };
3151*efe50430STaniya Das 
3152*efe50430STaniya Das static struct clk_regmap_div gcc_usb30_tert_mock_utmi_postdiv_clk_src = {
3153*efe50430STaniya Das 	.reg = 0xe106c,
3154*efe50430STaniya Das 	.shift = 0,
3155*efe50430STaniya Das 	.width = 4,
3156*efe50430STaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
3157*efe50430STaniya Das 		.name = "gcc_usb30_tert_mock_utmi_postdiv_clk_src",
3158*efe50430STaniya Das 		.parent_hws = (const struct clk_hw*[]) {
3159*efe50430STaniya Das 			&gcc_usb30_tert_mock_utmi_clk_src.clkr.hw,
3160*efe50430STaniya Das 		},
3161*efe50430STaniya Das 		.num_parents = 1,
3162*efe50430STaniya Das 		.flags = CLK_SET_RATE_PARENT,
3163*efe50430STaniya Das 		.ops = &clk_regmap_div_ro_ops,
3164*efe50430STaniya Das 	},
3165*efe50430STaniya Das };
3166*efe50430STaniya Das 
3167*efe50430STaniya Das static struct clk_branch gcc_aggre_noc_pcie_3a_west_sf_axi_clk = {
3168*efe50430STaniya Das 	.halt_reg = 0xdc0bc,
3169*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3170*efe50430STaniya Das 	.clkr = {
3171*efe50430STaniya Das 		.enable_reg = 0x62008,
3172*efe50430STaniya Das 		.enable_mask = BIT(27),
3173*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3174*efe50430STaniya Das 			.name = "gcc_aggre_noc_pcie_3a_west_sf_axi_clk",
3175*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3176*efe50430STaniya Das 		},
3177*efe50430STaniya Das 	},
3178*efe50430STaniya Das };
3179*efe50430STaniya Das 
3180*efe50430STaniya Das static struct clk_branch gcc_aggre_noc_pcie_3b_west_sf_axi_clk = {
3181*efe50430STaniya Das 	.halt_reg = 0x941ec,
3182*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3183*efe50430STaniya Das 	.clkr = {
3184*efe50430STaniya Das 		.enable_reg = 0x62008,
3185*efe50430STaniya Das 		.enable_mask = BIT(28),
3186*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3187*efe50430STaniya Das 			.name = "gcc_aggre_noc_pcie_3b_west_sf_axi_clk",
3188*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3189*efe50430STaniya Das 		},
3190*efe50430STaniya Das 	},
3191*efe50430STaniya Das };
3192*efe50430STaniya Das 
3193*efe50430STaniya Das static struct clk_branch gcc_aggre_noc_pcie_4_west_sf_axi_clk = {
3194*efe50430STaniya Das 	.halt_reg = 0x881d0,
3195*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3196*efe50430STaniya Das 	.clkr = {
3197*efe50430STaniya Das 		.enable_reg = 0x62008,
3198*efe50430STaniya Das 		.enable_mask = BIT(29),
3199*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3200*efe50430STaniya Das 			.name = "gcc_aggre_noc_pcie_4_west_sf_axi_clk",
3201*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3202*efe50430STaniya Das 		},
3203*efe50430STaniya Das 	},
3204*efe50430STaniya Das };
3205*efe50430STaniya Das 
3206*efe50430STaniya Das static struct clk_branch gcc_aggre_noc_pcie_5_east_sf_axi_clk = {
3207*efe50430STaniya Das 	.halt_reg = 0xc30d0,
3208*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3209*efe50430STaniya Das 	.clkr = {
3210*efe50430STaniya Das 		.enable_reg = 0x62008,
3211*efe50430STaniya Das 		.enable_mask = BIT(30),
3212*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3213*efe50430STaniya Das 			.name = "gcc_aggre_noc_pcie_5_east_sf_axi_clk",
3214*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3215*efe50430STaniya Das 		},
3216*efe50430STaniya Das 	},
3217*efe50430STaniya Das };
3218*efe50430STaniya Das 
3219*efe50430STaniya Das static struct clk_branch gcc_aggre_noc_pcie_6_west_sf_axi_clk = {
3220*efe50430STaniya Das 	.halt_reg = 0x8a1d0,
3221*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3222*efe50430STaniya Das 	.clkr = {
3223*efe50430STaniya Das 		.enable_reg = 0x62008,
3224*efe50430STaniya Das 		.enable_mask = BIT(31),
3225*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3226*efe50430STaniya Das 			.name = "gcc_aggre_noc_pcie_6_west_sf_axi_clk",
3227*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3228*efe50430STaniya Das 		},
3229*efe50430STaniya Das 	},
3230*efe50430STaniya Das };
3231*efe50430STaniya Das 
3232*efe50430STaniya Das static struct clk_branch gcc_aggre_ufs_phy_axi_clk = {
3233*efe50430STaniya Das 	.halt_reg = 0x77000,
3234*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3235*efe50430STaniya Das 	.hwcg_reg = 0x77000,
3236*efe50430STaniya Das 	.hwcg_bit = 1,
3237*efe50430STaniya Das 	.clkr = {
3238*efe50430STaniya Das 		.enable_reg = 0x77000,
3239*efe50430STaniya Das 		.enable_mask = BIT(0),
3240*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3241*efe50430STaniya Das 			.name = "gcc_aggre_ufs_phy_axi_clk",
3242*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3243*efe50430STaniya Das 				&gcc_ufs_phy_axi_clk_src.clkr.hw,
3244*efe50430STaniya Das 			},
3245*efe50430STaniya Das 			.num_parents = 1,
3246*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3247*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3248*efe50430STaniya Das 		},
3249*efe50430STaniya Das 	},
3250*efe50430STaniya Das };
3251*efe50430STaniya Das 
3252*efe50430STaniya Das static struct clk_branch gcc_aggre_usb2_prim_axi_clk = {
3253*efe50430STaniya Das 	.halt_reg = 0xbc17c,
3254*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3255*efe50430STaniya Das 	.hwcg_reg = 0xbc17c,
3256*efe50430STaniya Das 	.hwcg_bit = 1,
3257*efe50430STaniya Das 	.clkr = {
3258*efe50430STaniya Das 		.enable_reg = 0xbc17c,
3259*efe50430STaniya Das 		.enable_mask = BIT(0),
3260*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3261*efe50430STaniya Das 			.name = "gcc_aggre_usb2_prim_axi_clk",
3262*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3263*efe50430STaniya Das 				&gcc_usb20_master_clk_src.clkr.hw,
3264*efe50430STaniya Das 			},
3265*efe50430STaniya Das 			.num_parents = 1,
3266*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3267*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3268*efe50430STaniya Das 		},
3269*efe50430STaniya Das 	},
3270*efe50430STaniya Das };
3271*efe50430STaniya Das 
3272*efe50430STaniya Das static struct clk_branch gcc_aggre_usb3_mp_axi_clk = {
3273*efe50430STaniya Das 	.halt_reg = 0x9a004,
3274*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3275*efe50430STaniya Das 	.hwcg_reg = 0x9a004,
3276*efe50430STaniya Das 	.hwcg_bit = 1,
3277*efe50430STaniya Das 	.clkr = {
3278*efe50430STaniya Das 		.enable_reg = 0x9a004,
3279*efe50430STaniya Das 		.enable_mask = BIT(0),
3280*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3281*efe50430STaniya Das 			.name = "gcc_aggre_usb3_mp_axi_clk",
3282*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3283*efe50430STaniya Das 				&gcc_usb30_mp_master_clk_src.clkr.hw,
3284*efe50430STaniya Das 			},
3285*efe50430STaniya Das 			.num_parents = 1,
3286*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3287*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3288*efe50430STaniya Das 		},
3289*efe50430STaniya Das 	},
3290*efe50430STaniya Das };
3291*efe50430STaniya Das 
3292*efe50430STaniya Das static struct clk_branch gcc_aggre_usb3_prim_axi_clk = {
3293*efe50430STaniya Das 	.halt_reg = 0x3f00c,
3294*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3295*efe50430STaniya Das 	.hwcg_reg = 0x3f00c,
3296*efe50430STaniya Das 	.hwcg_bit = 1,
3297*efe50430STaniya Das 	.clkr = {
3298*efe50430STaniya Das 		.enable_reg = 0x3f00c,
3299*efe50430STaniya Das 		.enable_mask = BIT(0),
3300*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3301*efe50430STaniya Das 			.name = "gcc_aggre_usb3_prim_axi_clk",
3302*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3303*efe50430STaniya Das 				&gcc_usb30_prim_master_clk_src.clkr.hw,
3304*efe50430STaniya Das 			},
3305*efe50430STaniya Das 			.num_parents = 1,
3306*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3307*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3308*efe50430STaniya Das 		},
3309*efe50430STaniya Das 	},
3310*efe50430STaniya Das };
3311*efe50430STaniya Das 
3312*efe50430STaniya Das static struct clk_branch gcc_aggre_usb3_sec_axi_clk = {
3313*efe50430STaniya Das 	.halt_reg = 0xe2004,
3314*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3315*efe50430STaniya Das 	.hwcg_reg = 0xe2004,
3316*efe50430STaniya Das 	.hwcg_bit = 1,
3317*efe50430STaniya Das 	.clkr = {
3318*efe50430STaniya Das 		.enable_reg = 0xe2004,
3319*efe50430STaniya Das 		.enable_mask = BIT(0),
3320*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3321*efe50430STaniya Das 			.name = "gcc_aggre_usb3_sec_axi_clk",
3322*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3323*efe50430STaniya Das 				&gcc_usb30_sec_master_clk_src.clkr.hw,
3324*efe50430STaniya Das 			},
3325*efe50430STaniya Das 			.num_parents = 1,
3326*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3327*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3328*efe50430STaniya Das 		},
3329*efe50430STaniya Das 	},
3330*efe50430STaniya Das };
3331*efe50430STaniya Das 
3332*efe50430STaniya Das static struct clk_branch gcc_aggre_usb3_tert_axi_clk = {
3333*efe50430STaniya Das 	.halt_reg = 0xe1004,
3334*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3335*efe50430STaniya Das 	.hwcg_reg = 0xe1004,
3336*efe50430STaniya Das 	.hwcg_bit = 1,
3337*efe50430STaniya Das 	.clkr = {
3338*efe50430STaniya Das 		.enable_reg = 0xe1004,
3339*efe50430STaniya Das 		.enable_mask = BIT(0),
3340*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3341*efe50430STaniya Das 			.name = "gcc_aggre_usb3_tert_axi_clk",
3342*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3343*efe50430STaniya Das 				&gcc_usb30_tert_master_clk_src.clkr.hw,
3344*efe50430STaniya Das 			},
3345*efe50430STaniya Das 			.num_parents = 1,
3346*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3347*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3348*efe50430STaniya Das 		},
3349*efe50430STaniya Das 	},
3350*efe50430STaniya Das };
3351*efe50430STaniya Das 
3352*efe50430STaniya Das static struct clk_branch gcc_aggre_usb4_0_axi_clk = {
3353*efe50430STaniya Das 	.halt_reg = 0x2b000,
3354*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3355*efe50430STaniya Das 	.hwcg_reg = 0x2b000,
3356*efe50430STaniya Das 	.hwcg_bit = 1,
3357*efe50430STaniya Das 	.clkr = {
3358*efe50430STaniya Das 		.enable_reg = 0x2b000,
3359*efe50430STaniya Das 		.enable_mask = BIT(0),
3360*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3361*efe50430STaniya Das 			.name = "gcc_aggre_usb4_0_axi_clk",
3362*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3363*efe50430STaniya Das 				&gcc_usb4_0_master_clk_src.clkr.hw,
3364*efe50430STaniya Das 			},
3365*efe50430STaniya Das 			.num_parents = 1,
3366*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3367*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3368*efe50430STaniya Das 		},
3369*efe50430STaniya Das 	},
3370*efe50430STaniya Das };
3371*efe50430STaniya Das 
3372*efe50430STaniya Das static struct clk_branch gcc_aggre_usb4_1_axi_clk = {
3373*efe50430STaniya Das 	.halt_reg = 0x2d000,
3374*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3375*efe50430STaniya Das 	.hwcg_reg = 0x2d000,
3376*efe50430STaniya Das 	.hwcg_bit = 1,
3377*efe50430STaniya Das 	.clkr = {
3378*efe50430STaniya Das 		.enable_reg = 0x2d000,
3379*efe50430STaniya Das 		.enable_mask = BIT(0),
3380*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3381*efe50430STaniya Das 			.name = "gcc_aggre_usb4_1_axi_clk",
3382*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3383*efe50430STaniya Das 				&gcc_usb4_1_master_clk_src.clkr.hw,
3384*efe50430STaniya Das 			},
3385*efe50430STaniya Das 			.num_parents = 1,
3386*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3387*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3388*efe50430STaniya Das 		},
3389*efe50430STaniya Das 	},
3390*efe50430STaniya Das };
3391*efe50430STaniya Das 
3392*efe50430STaniya Das static struct clk_branch gcc_aggre_usb4_2_axi_clk = {
3393*efe50430STaniya Das 	.halt_reg = 0xe0000,
3394*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3395*efe50430STaniya Das 	.hwcg_reg = 0xe0000,
3396*efe50430STaniya Das 	.hwcg_bit = 1,
3397*efe50430STaniya Das 	.clkr = {
3398*efe50430STaniya Das 		.enable_reg = 0xe0000,
3399*efe50430STaniya Das 		.enable_mask = BIT(0),
3400*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3401*efe50430STaniya Das 			.name = "gcc_aggre_usb4_2_axi_clk",
3402*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3403*efe50430STaniya Das 				&gcc_usb4_2_master_clk_src.clkr.hw,
3404*efe50430STaniya Das 			},
3405*efe50430STaniya Das 			.num_parents = 1,
3406*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3407*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3408*efe50430STaniya Das 		},
3409*efe50430STaniya Das 	},
3410*efe50430STaniya Das };
3411*efe50430STaniya Das 
3412*efe50430STaniya Das static struct clk_branch gcc_av1e_ahb_clk = {
3413*efe50430STaniya Das 	.halt_reg = 0x9b02c,
3414*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3415*efe50430STaniya Das 	.hwcg_reg = 0x9b02c,
3416*efe50430STaniya Das 	.hwcg_bit = 1,
3417*efe50430STaniya Das 	.clkr = {
3418*efe50430STaniya Das 		.enable_reg = 0x9b02c,
3419*efe50430STaniya Das 		.enable_mask = BIT(0),
3420*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3421*efe50430STaniya Das 			.name = "gcc_av1e_ahb_clk",
3422*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3423*efe50430STaniya Das 		},
3424*efe50430STaniya Das 	},
3425*efe50430STaniya Das };
3426*efe50430STaniya Das 
3427*efe50430STaniya Das static struct clk_branch gcc_av1e_axi_clk = {
3428*efe50430STaniya Das 	.halt_reg = 0x9b030,
3429*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3430*efe50430STaniya Das 	.hwcg_reg = 0x9b030,
3431*efe50430STaniya Das 	.hwcg_bit = 1,
3432*efe50430STaniya Das 	.clkr = {
3433*efe50430STaniya Das 		.enable_reg = 0x9b030,
3434*efe50430STaniya Das 		.enable_mask = BIT(0),
3435*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3436*efe50430STaniya Das 			.name = "gcc_av1e_axi_clk",
3437*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3438*efe50430STaniya Das 		},
3439*efe50430STaniya Das 	},
3440*efe50430STaniya Das };
3441*efe50430STaniya Das 
3442*efe50430STaniya Das static struct clk_branch gcc_av1e_xo_clk = {
3443*efe50430STaniya Das 	.halt_reg = 0x9b044,
3444*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
3445*efe50430STaniya Das 	.clkr = {
3446*efe50430STaniya Das 		.enable_reg = 0x9b044,
3447*efe50430STaniya Das 		.enable_mask = BIT(0),
3448*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3449*efe50430STaniya Das 			.name = "gcc_av1e_xo_clk",
3450*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3451*efe50430STaniya Das 		},
3452*efe50430STaniya Das 	},
3453*efe50430STaniya Das };
3454*efe50430STaniya Das 
3455*efe50430STaniya Das static struct clk_branch gcc_boot_rom_ahb_clk = {
3456*efe50430STaniya Das 	.halt_reg = 0x34038,
3457*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3458*efe50430STaniya Das 	.hwcg_reg = 0x34038,
3459*efe50430STaniya Das 	.hwcg_bit = 1,
3460*efe50430STaniya Das 	.clkr = {
3461*efe50430STaniya Das 		.enable_reg = 0x62020,
3462*efe50430STaniya Das 		.enable_mask = BIT(27),
3463*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3464*efe50430STaniya Das 			.name = "gcc_boot_rom_ahb_clk",
3465*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3466*efe50430STaniya Das 		},
3467*efe50430STaniya Das 	},
3468*efe50430STaniya Das };
3469*efe50430STaniya Das 
3470*efe50430STaniya Das static struct clk_branch gcc_camera_hf_axi_clk = {
3471*efe50430STaniya Das 	.halt_reg = 0x26014,
3472*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3473*efe50430STaniya Das 	.hwcg_reg = 0x26014,
3474*efe50430STaniya Das 	.hwcg_bit = 1,
3475*efe50430STaniya Das 	.clkr = {
3476*efe50430STaniya Das 		.enable_reg = 0x26014,
3477*efe50430STaniya Das 		.enable_mask = BIT(0),
3478*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3479*efe50430STaniya Das 			.name = "gcc_camera_hf_axi_clk",
3480*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3481*efe50430STaniya Das 		},
3482*efe50430STaniya Das 	},
3483*efe50430STaniya Das };
3484*efe50430STaniya Das 
3485*efe50430STaniya Das static struct clk_branch gcc_camera_sf_axi_clk = {
3486*efe50430STaniya Das 	.halt_reg = 0x26028,
3487*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3488*efe50430STaniya Das 	.hwcg_reg = 0x26028,
3489*efe50430STaniya Das 	.hwcg_bit = 1,
3490*efe50430STaniya Das 	.clkr = {
3491*efe50430STaniya Das 		.enable_reg = 0x26028,
3492*efe50430STaniya Das 		.enable_mask = BIT(0),
3493*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3494*efe50430STaniya Das 			.name = "gcc_camera_sf_axi_clk",
3495*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3496*efe50430STaniya Das 		},
3497*efe50430STaniya Das 	},
3498*efe50430STaniya Das };
3499*efe50430STaniya Das 
3500*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_pcie_anoc_ahb_clk = {
3501*efe50430STaniya Das 	.halt_reg = 0x82004,
3502*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3503*efe50430STaniya Das 	.hwcg_reg = 0x82004,
3504*efe50430STaniya Das 	.hwcg_bit = 1,
3505*efe50430STaniya Das 	.clkr = {
3506*efe50430STaniya Das 		.enable_reg = 0x62008,
3507*efe50430STaniya Das 		.enable_mask = BIT(19),
3508*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3509*efe50430STaniya Das 			.name = "gcc_cfg_noc_pcie_anoc_ahb_clk",
3510*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3511*efe50430STaniya Das 		},
3512*efe50430STaniya Das 	},
3513*efe50430STaniya Das };
3514*efe50430STaniya Das 
3515*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_pcie_anoc_south_ahb_clk = {
3516*efe50430STaniya Das 	.halt_reg = 0xba2ec,
3517*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3518*efe50430STaniya Das 	.hwcg_reg = 0xba2ec,
3519*efe50430STaniya Das 	.hwcg_bit = 1,
3520*efe50430STaniya Das 	.clkr = {
3521*efe50430STaniya Das 		.enable_reg = 0x62008,
3522*efe50430STaniya Das 		.enable_mask = BIT(16),
3523*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3524*efe50430STaniya Das 			.name = "gcc_cfg_noc_pcie_anoc_south_ahb_clk",
3525*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3526*efe50430STaniya Das 		},
3527*efe50430STaniya Das 	},
3528*efe50430STaniya Das };
3529*efe50430STaniya Das 
3530*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb2_prim_axi_clk = {
3531*efe50430STaniya Das 	.halt_reg = 0xbc178,
3532*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3533*efe50430STaniya Das 	.hwcg_reg = 0xbc178,
3534*efe50430STaniya Das 	.hwcg_bit = 1,
3535*efe50430STaniya Das 	.clkr = {
3536*efe50430STaniya Das 		.enable_reg = 0xbc178,
3537*efe50430STaniya Das 		.enable_mask = BIT(0),
3538*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3539*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb2_prim_axi_clk",
3540*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3541*efe50430STaniya Das 				&gcc_usb20_master_clk_src.clkr.hw,
3542*efe50430STaniya Das 			},
3543*efe50430STaniya Das 			.num_parents = 1,
3544*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3545*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3546*efe50430STaniya Das 		},
3547*efe50430STaniya Das 	},
3548*efe50430STaniya Das };
3549*efe50430STaniya Das 
3550*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb3_mp_axi_clk = {
3551*efe50430STaniya Das 	.halt_reg = 0x9a000,
3552*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3553*efe50430STaniya Das 	.hwcg_reg = 0x9a000,
3554*efe50430STaniya Das 	.hwcg_bit = 1,
3555*efe50430STaniya Das 	.clkr = {
3556*efe50430STaniya Das 		.enable_reg = 0x9a000,
3557*efe50430STaniya Das 		.enable_mask = BIT(0),
3558*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3559*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb3_mp_axi_clk",
3560*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3561*efe50430STaniya Das 				&gcc_usb30_mp_master_clk_src.clkr.hw,
3562*efe50430STaniya Das 			},
3563*efe50430STaniya Das 			.num_parents = 1,
3564*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3565*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3566*efe50430STaniya Das 		},
3567*efe50430STaniya Das 	},
3568*efe50430STaniya Das };
3569*efe50430STaniya Das 
3570*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb3_prim_axi_clk = {
3571*efe50430STaniya Das 	.halt_reg = 0x3f000,
3572*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3573*efe50430STaniya Das 	.hwcg_reg = 0x3f000,
3574*efe50430STaniya Das 	.hwcg_bit = 1,
3575*efe50430STaniya Das 	.clkr = {
3576*efe50430STaniya Das 		.enable_reg = 0x3f000,
3577*efe50430STaniya Das 		.enable_mask = BIT(0),
3578*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3579*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb3_prim_axi_clk",
3580*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3581*efe50430STaniya Das 				&gcc_usb30_prim_master_clk_src.clkr.hw,
3582*efe50430STaniya Das 			},
3583*efe50430STaniya Das 			.num_parents = 1,
3584*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3585*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3586*efe50430STaniya Das 		},
3587*efe50430STaniya Das 	},
3588*efe50430STaniya Das };
3589*efe50430STaniya Das 
3590*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb3_sec_axi_clk = {
3591*efe50430STaniya Das 	.halt_reg = 0xe2000,
3592*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3593*efe50430STaniya Das 	.hwcg_reg = 0xe2000,
3594*efe50430STaniya Das 	.hwcg_bit = 1,
3595*efe50430STaniya Das 	.clkr = {
3596*efe50430STaniya Das 		.enable_reg = 0xe2000,
3597*efe50430STaniya Das 		.enable_mask = BIT(0),
3598*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3599*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb3_sec_axi_clk",
3600*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3601*efe50430STaniya Das 				&gcc_usb30_sec_master_clk_src.clkr.hw,
3602*efe50430STaniya Das 			},
3603*efe50430STaniya Das 			.num_parents = 1,
3604*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3605*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3606*efe50430STaniya Das 		},
3607*efe50430STaniya Das 	},
3608*efe50430STaniya Das };
3609*efe50430STaniya Das 
3610*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb3_tert_axi_clk = {
3611*efe50430STaniya Das 	.halt_reg = 0xe1000,
3612*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3613*efe50430STaniya Das 	.hwcg_reg = 0xe1000,
3614*efe50430STaniya Das 	.hwcg_bit = 1,
3615*efe50430STaniya Das 	.clkr = {
3616*efe50430STaniya Das 		.enable_reg = 0xe1000,
3617*efe50430STaniya Das 		.enable_mask = BIT(0),
3618*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3619*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb3_tert_axi_clk",
3620*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3621*efe50430STaniya Das 				&gcc_usb30_tert_master_clk_src.clkr.hw,
3622*efe50430STaniya Das 			},
3623*efe50430STaniya Das 			.num_parents = 1,
3624*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3625*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3626*efe50430STaniya Das 		},
3627*efe50430STaniya Das 	},
3628*efe50430STaniya Das };
3629*efe50430STaniya Das 
3630*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb_anoc_ahb_clk = {
3631*efe50430STaniya Das 	.halt_reg = 0x3f004,
3632*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3633*efe50430STaniya Das 	.hwcg_reg = 0x3f004,
3634*efe50430STaniya Das 	.hwcg_bit = 1,
3635*efe50430STaniya Das 	.clkr = {
3636*efe50430STaniya Das 		.enable_reg = 0x62008,
3637*efe50430STaniya Das 		.enable_mask = BIT(17),
3638*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3639*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb_anoc_ahb_clk",
3640*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3641*efe50430STaniya Das 		},
3642*efe50430STaniya Das 	},
3643*efe50430STaniya Das };
3644*efe50430STaniya Das 
3645*efe50430STaniya Das static struct clk_branch gcc_cfg_noc_usb_anoc_south_ahb_clk = {
3646*efe50430STaniya Das 	.halt_reg = 0x3f008,
3647*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3648*efe50430STaniya Das 	.hwcg_reg = 0x3f008,
3649*efe50430STaniya Das 	.hwcg_bit = 1,
3650*efe50430STaniya Das 	.clkr = {
3651*efe50430STaniya Das 		.enable_reg = 0x62008,
3652*efe50430STaniya Das 		.enable_mask = BIT(18),
3653*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3654*efe50430STaniya Das 			.name = "gcc_cfg_noc_usb_anoc_south_ahb_clk",
3655*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3656*efe50430STaniya Das 		},
3657*efe50430STaniya Das 	},
3658*efe50430STaniya Das };
3659*efe50430STaniya Das 
3660*efe50430STaniya Das static struct clk_branch gcc_disp_hf_axi_clk = {
3661*efe50430STaniya Das 	.halt_reg = 0x27008,
3662*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3663*efe50430STaniya Das 	.clkr = {
3664*efe50430STaniya Das 		.enable_reg = 0x27008,
3665*efe50430STaniya Das 		.enable_mask = BIT(0),
3666*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3667*efe50430STaniya Das 			.name = "gcc_disp_hf_axi_clk",
3668*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3669*efe50430STaniya Das 			.flags = CLK_IS_CRITICAL,
3670*efe50430STaniya Das 		},
3671*efe50430STaniya Das 	},
3672*efe50430STaniya Das };
3673*efe50430STaniya Das 
3674*efe50430STaniya Das static struct clk_branch gcc_eva_ahb_clk = {
3675*efe50430STaniya Das 	.halt_reg = 0x9b004,
3676*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3677*efe50430STaniya Das 	.hwcg_reg = 0x9b004,
3678*efe50430STaniya Das 	.hwcg_bit = 1,
3679*efe50430STaniya Das 	.clkr = {
3680*efe50430STaniya Das 		.enable_reg = 0x9b004,
3681*efe50430STaniya Das 		.enable_mask = BIT(0),
3682*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3683*efe50430STaniya Das 			.name = "gcc_eva_ahb_clk",
3684*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3685*efe50430STaniya Das 		},
3686*efe50430STaniya Das 	},
3687*efe50430STaniya Das };
3688*efe50430STaniya Das 
3689*efe50430STaniya Das static struct clk_branch gcc_eva_axi0_clk = {
3690*efe50430STaniya Das 	.halt_reg = 0x9b008,
3691*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3692*efe50430STaniya Das 	.hwcg_reg = 0x9b008,
3693*efe50430STaniya Das 	.hwcg_bit = 1,
3694*efe50430STaniya Das 	.clkr = {
3695*efe50430STaniya Das 		.enable_reg = 0x9b008,
3696*efe50430STaniya Das 		.enable_mask = BIT(0),
3697*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3698*efe50430STaniya Das 			.name = "gcc_eva_axi0_clk",
3699*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3700*efe50430STaniya Das 		},
3701*efe50430STaniya Das 	},
3702*efe50430STaniya Das };
3703*efe50430STaniya Das 
3704*efe50430STaniya Das static struct clk_branch gcc_eva_axi0c_clk = {
3705*efe50430STaniya Das 	.halt_reg = 0x9b01c,
3706*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3707*efe50430STaniya Das 	.hwcg_reg = 0x9b01c,
3708*efe50430STaniya Das 	.hwcg_bit = 1,
3709*efe50430STaniya Das 	.clkr = {
3710*efe50430STaniya Das 		.enable_reg = 0x9b01c,
3711*efe50430STaniya Das 		.enable_mask = BIT(0),
3712*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3713*efe50430STaniya Das 			.name = "gcc_eva_axi0c_clk",
3714*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3715*efe50430STaniya Das 		},
3716*efe50430STaniya Das 	},
3717*efe50430STaniya Das };
3718*efe50430STaniya Das 
3719*efe50430STaniya Das static struct clk_branch gcc_eva_xo_clk = {
3720*efe50430STaniya Das 	.halt_reg = 0x9b024,
3721*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
3722*efe50430STaniya Das 	.clkr = {
3723*efe50430STaniya Das 		.enable_reg = 0x9b024,
3724*efe50430STaniya Das 		.enable_mask = BIT(0),
3725*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3726*efe50430STaniya Das 			.name = "gcc_eva_xo_clk",
3727*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3728*efe50430STaniya Das 		},
3729*efe50430STaniya Das 	},
3730*efe50430STaniya Das };
3731*efe50430STaniya Das 
3732*efe50430STaniya Das static struct clk_branch gcc_gp1_clk = {
3733*efe50430STaniya Das 	.halt_reg = 0x64000,
3734*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
3735*efe50430STaniya Das 	.clkr = {
3736*efe50430STaniya Das 		.enable_reg = 0x64000,
3737*efe50430STaniya Das 		.enable_mask = BIT(0),
3738*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3739*efe50430STaniya Das 			.name = "gcc_gp1_clk",
3740*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3741*efe50430STaniya Das 				&gcc_gp1_clk_src.clkr.hw,
3742*efe50430STaniya Das 			},
3743*efe50430STaniya Das 			.num_parents = 1,
3744*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3745*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3746*efe50430STaniya Das 		},
3747*efe50430STaniya Das 	},
3748*efe50430STaniya Das };
3749*efe50430STaniya Das 
3750*efe50430STaniya Das static struct clk_branch gcc_gp2_clk = {
3751*efe50430STaniya Das 	.halt_reg = 0x92000,
3752*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
3753*efe50430STaniya Das 	.clkr = {
3754*efe50430STaniya Das 		.enable_reg = 0x92000,
3755*efe50430STaniya Das 		.enable_mask = BIT(0),
3756*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3757*efe50430STaniya Das 			.name = "gcc_gp2_clk",
3758*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3759*efe50430STaniya Das 				&gcc_gp2_clk_src.clkr.hw,
3760*efe50430STaniya Das 			},
3761*efe50430STaniya Das 			.num_parents = 1,
3762*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3763*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3764*efe50430STaniya Das 		},
3765*efe50430STaniya Das 	},
3766*efe50430STaniya Das };
3767*efe50430STaniya Das 
3768*efe50430STaniya Das static struct clk_branch gcc_gp3_clk = {
3769*efe50430STaniya Das 	.halt_reg = 0x93000,
3770*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
3771*efe50430STaniya Das 	.clkr = {
3772*efe50430STaniya Das 		.enable_reg = 0x93000,
3773*efe50430STaniya Das 		.enable_mask = BIT(0),
3774*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3775*efe50430STaniya Das 			.name = "gcc_gp3_clk",
3776*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3777*efe50430STaniya Das 				&gcc_gp3_clk_src.clkr.hw,
3778*efe50430STaniya Das 			},
3779*efe50430STaniya Das 			.num_parents = 1,
3780*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3781*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3782*efe50430STaniya Das 		},
3783*efe50430STaniya Das 	},
3784*efe50430STaniya Das };
3785*efe50430STaniya Das 
3786*efe50430STaniya Das static struct clk_branch gcc_gpu_gemnoc_gfx_clk = {
3787*efe50430STaniya Das 	.halt_reg = 0x71010,
3788*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3789*efe50430STaniya Das 	.hwcg_reg = 0x71010,
3790*efe50430STaniya Das 	.hwcg_bit = 1,
3791*efe50430STaniya Das 	.clkr = {
3792*efe50430STaniya Das 		.enable_reg = 0x71010,
3793*efe50430STaniya Das 		.enable_mask = BIT(0),
3794*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3795*efe50430STaniya Das 			.name = "gcc_gpu_gemnoc_gfx_clk",
3796*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3797*efe50430STaniya Das 		},
3798*efe50430STaniya Das 	},
3799*efe50430STaniya Das };
3800*efe50430STaniya Das 
3801*efe50430STaniya Das static struct clk_branch gcc_gpu_gpll0_clk_src = {
3802*efe50430STaniya Das 	.halt_reg = 0x71024,
3803*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3804*efe50430STaniya Das 	.hwcg_reg = 0x71024,
3805*efe50430STaniya Das 	.hwcg_bit = 1,
3806*efe50430STaniya Das 	.clkr = {
3807*efe50430STaniya Das 		.enable_reg = 0x62038,
3808*efe50430STaniya Das 		.enable_mask = BIT(0),
3809*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3810*efe50430STaniya Das 			.name = "gcc_gpu_gpll0_clk_src",
3811*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3812*efe50430STaniya Das 				&gcc_gpll0.clkr.hw,
3813*efe50430STaniya Das 			},
3814*efe50430STaniya Das 			.num_parents = 1,
3815*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3816*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3817*efe50430STaniya Das 		},
3818*efe50430STaniya Das 	},
3819*efe50430STaniya Das };
3820*efe50430STaniya Das 
3821*efe50430STaniya Das static struct clk_branch gcc_gpu_gpll0_div_clk_src = {
3822*efe50430STaniya Das 	.halt_reg = 0x7102c,
3823*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3824*efe50430STaniya Das 	.hwcg_reg = 0x7102c,
3825*efe50430STaniya Das 	.hwcg_bit = 1,
3826*efe50430STaniya Das 	.clkr = {
3827*efe50430STaniya Das 		.enable_reg = 0x62038,
3828*efe50430STaniya Das 		.enable_mask = BIT(1),
3829*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3830*efe50430STaniya Das 			.name = "gcc_gpu_gpll0_div_clk_src",
3831*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3832*efe50430STaniya Das 				&gcc_gpll0_out_even.clkr.hw,
3833*efe50430STaniya Das 			},
3834*efe50430STaniya Das 			.num_parents = 1,
3835*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3836*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3837*efe50430STaniya Das 		},
3838*efe50430STaniya Das 	},
3839*efe50430STaniya Das };
3840*efe50430STaniya Das 
3841*efe50430STaniya Das static struct clk_branch gcc_pcie_0_aux_clk = {
3842*efe50430STaniya Das 	.halt_reg = 0xc8018,
3843*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3844*efe50430STaniya Das 	.clkr = {
3845*efe50430STaniya Das 		.enable_reg = 0x62010,
3846*efe50430STaniya Das 		.enable_mask = BIT(25),
3847*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3848*efe50430STaniya Das 			.name = "gcc_pcie_0_aux_clk",
3849*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3850*efe50430STaniya Das 				&gcc_pcie_0_aux_clk_src.clkr.hw,
3851*efe50430STaniya Das 			},
3852*efe50430STaniya Das 			.num_parents = 1,
3853*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3854*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3855*efe50430STaniya Das 		},
3856*efe50430STaniya Das 	},
3857*efe50430STaniya Das };
3858*efe50430STaniya Das 
3859*efe50430STaniya Das static struct clk_branch gcc_pcie_0_cfg_ahb_clk = {
3860*efe50430STaniya Das 	.halt_reg = 0xba4a8,
3861*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3862*efe50430STaniya Das 	.hwcg_reg = 0xba4a8,
3863*efe50430STaniya Das 	.hwcg_bit = 1,
3864*efe50430STaniya Das 	.clkr = {
3865*efe50430STaniya Das 		.enable_reg = 0x62010,
3866*efe50430STaniya Das 		.enable_mask = BIT(24),
3867*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3868*efe50430STaniya Das 			.name = "gcc_pcie_0_cfg_ahb_clk",
3869*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3870*efe50430STaniya Das 		},
3871*efe50430STaniya Das 	},
3872*efe50430STaniya Das };
3873*efe50430STaniya Das 
3874*efe50430STaniya Das static struct clk_branch gcc_pcie_0_mstr_axi_clk = {
3875*efe50430STaniya Das 	.halt_reg = 0xba498,
3876*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3877*efe50430STaniya Das 	.hwcg_reg = 0xba498,
3878*efe50430STaniya Das 	.hwcg_bit = 1,
3879*efe50430STaniya Das 	.clkr = {
3880*efe50430STaniya Das 		.enable_reg = 0x62010,
3881*efe50430STaniya Das 		.enable_mask = BIT(23),
3882*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3883*efe50430STaniya Das 			.name = "gcc_pcie_0_mstr_axi_clk",
3884*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3885*efe50430STaniya Das 		},
3886*efe50430STaniya Das 	},
3887*efe50430STaniya Das };
3888*efe50430STaniya Das 
3889*efe50430STaniya Das static struct clk_branch gcc_pcie_0_phy_rchng_clk = {
3890*efe50430STaniya Das 	.halt_reg = 0xc8038,
3891*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3892*efe50430STaniya Das 	.clkr = {
3893*efe50430STaniya Das 		.enable_reg = 0x62010,
3894*efe50430STaniya Das 		.enable_mask = BIT(27),
3895*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3896*efe50430STaniya Das 			.name = "gcc_pcie_0_phy_rchng_clk",
3897*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3898*efe50430STaniya Das 				&gcc_pcie_0_phy_rchng_clk_src.clkr.hw,
3899*efe50430STaniya Das 			},
3900*efe50430STaniya Das 			.num_parents = 1,
3901*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3902*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3903*efe50430STaniya Das 		},
3904*efe50430STaniya Das 	},
3905*efe50430STaniya Das };
3906*efe50430STaniya Das 
3907*efe50430STaniya Das static struct clk_branch gcc_pcie_0_pipe_clk = {
3908*efe50430STaniya Das 	.halt_reg = 0xc8028,
3909*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3910*efe50430STaniya Das 	.clkr = {
3911*efe50430STaniya Das 		.enable_reg = 0x62010,
3912*efe50430STaniya Das 		.enable_mask = BIT(26),
3913*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3914*efe50430STaniya Das 			.name = "gcc_pcie_0_pipe_clk",
3915*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3916*efe50430STaniya Das 				&gcc_usb4_0_phy_pcie_pipe_mux_clk_src.clkr.hw,
3917*efe50430STaniya Das 			},
3918*efe50430STaniya Das 			.num_parents = 1,
3919*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3920*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3921*efe50430STaniya Das 		},
3922*efe50430STaniya Das 	},
3923*efe50430STaniya Das };
3924*efe50430STaniya Das 
3925*efe50430STaniya Das static struct clk_branch gcc_pcie_0_slv_axi_clk = {
3926*efe50430STaniya Das 	.halt_reg = 0xba488,
3927*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3928*efe50430STaniya Das 	.hwcg_reg = 0xba488,
3929*efe50430STaniya Das 	.hwcg_bit = 1,
3930*efe50430STaniya Das 	.clkr = {
3931*efe50430STaniya Das 		.enable_reg = 0x62010,
3932*efe50430STaniya Das 		.enable_mask = BIT(22),
3933*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3934*efe50430STaniya Das 			.name = "gcc_pcie_0_slv_axi_clk",
3935*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3936*efe50430STaniya Das 		},
3937*efe50430STaniya Das 	},
3938*efe50430STaniya Das };
3939*efe50430STaniya Das 
3940*efe50430STaniya Das static struct clk_branch gcc_pcie_0_slv_q2a_axi_clk = {
3941*efe50430STaniya Das 	.halt_reg = 0xba484,
3942*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3943*efe50430STaniya Das 	.clkr = {
3944*efe50430STaniya Das 		.enable_reg = 0x62010,
3945*efe50430STaniya Das 		.enable_mask = BIT(21),
3946*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3947*efe50430STaniya Das 			.name = "gcc_pcie_0_slv_q2a_axi_clk",
3948*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3949*efe50430STaniya Das 		},
3950*efe50430STaniya Das 	},
3951*efe50430STaniya Das };
3952*efe50430STaniya Das 
3953*efe50430STaniya Das static struct clk_branch gcc_pcie_1_aux_clk = {
3954*efe50430STaniya Das 	.halt_reg = 0x2e018,
3955*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3956*efe50430STaniya Das 	.clkr = {
3957*efe50430STaniya Das 		.enable_reg = 0x62010,
3958*efe50430STaniya Das 		.enable_mask = BIT(18),
3959*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3960*efe50430STaniya Das 			.name = "gcc_pcie_1_aux_clk",
3961*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
3962*efe50430STaniya Das 				&gcc_pcie_1_aux_clk_src.clkr.hw,
3963*efe50430STaniya Das 			},
3964*efe50430STaniya Das 			.num_parents = 1,
3965*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
3966*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3967*efe50430STaniya Das 		},
3968*efe50430STaniya Das 	},
3969*efe50430STaniya Das };
3970*efe50430STaniya Das 
3971*efe50430STaniya Das static struct clk_branch gcc_pcie_1_cfg_ahb_clk = {
3972*efe50430STaniya Das 	.halt_reg = 0xba480,
3973*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
3974*efe50430STaniya Das 	.hwcg_reg = 0xba480,
3975*efe50430STaniya Das 	.hwcg_bit = 1,
3976*efe50430STaniya Das 	.clkr = {
3977*efe50430STaniya Das 		.enable_reg = 0x62010,
3978*efe50430STaniya Das 		.enable_mask = BIT(17),
3979*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3980*efe50430STaniya Das 			.name = "gcc_pcie_1_cfg_ahb_clk",
3981*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3982*efe50430STaniya Das 		},
3983*efe50430STaniya Das 	},
3984*efe50430STaniya Das };
3985*efe50430STaniya Das 
3986*efe50430STaniya Das static struct clk_branch gcc_pcie_1_mstr_axi_clk = {
3987*efe50430STaniya Das 	.halt_reg = 0xba470,
3988*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
3989*efe50430STaniya Das 	.hwcg_reg = 0xba470,
3990*efe50430STaniya Das 	.hwcg_bit = 1,
3991*efe50430STaniya Das 	.clkr = {
3992*efe50430STaniya Das 		.enable_reg = 0x62010,
3993*efe50430STaniya Das 		.enable_mask = BIT(16),
3994*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
3995*efe50430STaniya Das 			.name = "gcc_pcie_1_mstr_axi_clk",
3996*efe50430STaniya Das 			.ops = &clk_branch2_ops,
3997*efe50430STaniya Das 		},
3998*efe50430STaniya Das 	},
3999*efe50430STaniya Das };
4000*efe50430STaniya Das 
4001*efe50430STaniya Das static struct clk_branch gcc_pcie_1_phy_rchng_clk = {
4002*efe50430STaniya Das 	.halt_reg = 0x2e038,
4003*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4004*efe50430STaniya Das 	.clkr = {
4005*efe50430STaniya Das 		.enable_reg = 0x62010,
4006*efe50430STaniya Das 		.enable_mask = BIT(20),
4007*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4008*efe50430STaniya Das 			.name = "gcc_pcie_1_phy_rchng_clk",
4009*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4010*efe50430STaniya Das 				&gcc_pcie_1_phy_rchng_clk_src.clkr.hw,
4011*efe50430STaniya Das 			},
4012*efe50430STaniya Das 			.num_parents = 1,
4013*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4014*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4015*efe50430STaniya Das 		},
4016*efe50430STaniya Das 	},
4017*efe50430STaniya Das };
4018*efe50430STaniya Das 
4019*efe50430STaniya Das static struct clk_branch gcc_pcie_1_pipe_clk = {
4020*efe50430STaniya Das 	.halt_reg = 0x2e028,
4021*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4022*efe50430STaniya Das 	.clkr = {
4023*efe50430STaniya Das 		.enable_reg = 0x62010,
4024*efe50430STaniya Das 		.enable_mask = BIT(19),
4025*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4026*efe50430STaniya Das 			.name = "gcc_pcie_1_pipe_clk",
4027*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4028*efe50430STaniya Das 				&gcc_usb4_1_phy_pcie_pipe_mux_clk_src.clkr.hw,
4029*efe50430STaniya Das 			},
4030*efe50430STaniya Das 			.num_parents = 1,
4031*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4032*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4033*efe50430STaniya Das 		},
4034*efe50430STaniya Das 	},
4035*efe50430STaniya Das };
4036*efe50430STaniya Das 
4037*efe50430STaniya Das static struct clk_branch gcc_pcie_1_slv_axi_clk = {
4038*efe50430STaniya Das 	.halt_reg = 0xba460,
4039*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4040*efe50430STaniya Das 	.hwcg_reg = 0xba460,
4041*efe50430STaniya Das 	.hwcg_bit = 1,
4042*efe50430STaniya Das 	.clkr = {
4043*efe50430STaniya Das 		.enable_reg = 0x62010,
4044*efe50430STaniya Das 		.enable_mask = BIT(15),
4045*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4046*efe50430STaniya Das 			.name = "gcc_pcie_1_slv_axi_clk",
4047*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4048*efe50430STaniya Das 		},
4049*efe50430STaniya Das 	},
4050*efe50430STaniya Das };
4051*efe50430STaniya Das 
4052*efe50430STaniya Das static struct clk_branch gcc_pcie_1_slv_q2a_axi_clk = {
4053*efe50430STaniya Das 	.halt_reg = 0xba45c,
4054*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4055*efe50430STaniya Das 	.clkr = {
4056*efe50430STaniya Das 		.enable_reg = 0x62010,
4057*efe50430STaniya Das 		.enable_mask = BIT(14),
4058*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4059*efe50430STaniya Das 			.name = "gcc_pcie_1_slv_q2a_axi_clk",
4060*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4061*efe50430STaniya Das 		},
4062*efe50430STaniya Das 	},
4063*efe50430STaniya Das };
4064*efe50430STaniya Das 
4065*efe50430STaniya Das static struct clk_branch gcc_pcie_2_aux_clk = {
4066*efe50430STaniya Das 	.halt_reg = 0xc0018,
4067*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4068*efe50430STaniya Das 	.clkr = {
4069*efe50430STaniya Das 		.enable_reg = 0x62018,
4070*efe50430STaniya Das 		.enable_mask = BIT(0),
4071*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4072*efe50430STaniya Das 			.name = "gcc_pcie_2_aux_clk",
4073*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4074*efe50430STaniya Das 				&gcc_pcie_2_aux_clk_src.clkr.hw,
4075*efe50430STaniya Das 			},
4076*efe50430STaniya Das 			.num_parents = 1,
4077*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4078*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4079*efe50430STaniya Das 		},
4080*efe50430STaniya Das 	},
4081*efe50430STaniya Das };
4082*efe50430STaniya Das 
4083*efe50430STaniya Das static struct clk_branch gcc_pcie_2_cfg_ahb_clk = {
4084*efe50430STaniya Das 	.halt_reg = 0xba4d0,
4085*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4086*efe50430STaniya Das 	.hwcg_reg = 0xba4d0,
4087*efe50430STaniya Das 	.hwcg_bit = 1,
4088*efe50430STaniya Das 	.clkr = {
4089*efe50430STaniya Das 		.enable_reg = 0x62010,
4090*efe50430STaniya Das 		.enable_mask = BIT(31),
4091*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4092*efe50430STaniya Das 			.name = "gcc_pcie_2_cfg_ahb_clk",
4093*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4094*efe50430STaniya Das 		},
4095*efe50430STaniya Das 	},
4096*efe50430STaniya Das };
4097*efe50430STaniya Das 
4098*efe50430STaniya Das static struct clk_branch gcc_pcie_2_mstr_axi_clk = {
4099*efe50430STaniya Das 	.halt_reg = 0xba4c0,
4100*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4101*efe50430STaniya Das 	.hwcg_reg = 0xba4c0,
4102*efe50430STaniya Das 	.hwcg_bit = 1,
4103*efe50430STaniya Das 	.clkr = {
4104*efe50430STaniya Das 		.enable_reg = 0x62010,
4105*efe50430STaniya Das 		.enable_mask = BIT(30),
4106*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4107*efe50430STaniya Das 			.name = "gcc_pcie_2_mstr_axi_clk",
4108*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4109*efe50430STaniya Das 		},
4110*efe50430STaniya Das 	},
4111*efe50430STaniya Das };
4112*efe50430STaniya Das 
4113*efe50430STaniya Das static struct clk_branch gcc_pcie_2_phy_rchng_clk = {
4114*efe50430STaniya Das 	.halt_reg = 0xc0038,
4115*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4116*efe50430STaniya Das 	.clkr = {
4117*efe50430STaniya Das 		.enable_reg = 0x62018,
4118*efe50430STaniya Das 		.enable_mask = BIT(2),
4119*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4120*efe50430STaniya Das 			.name = "gcc_pcie_2_phy_rchng_clk",
4121*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4122*efe50430STaniya Das 				&gcc_pcie_2_phy_rchng_clk_src.clkr.hw,
4123*efe50430STaniya Das 			},
4124*efe50430STaniya Das 			.num_parents = 1,
4125*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4126*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4127*efe50430STaniya Das 		},
4128*efe50430STaniya Das 	},
4129*efe50430STaniya Das };
4130*efe50430STaniya Das 
4131*efe50430STaniya Das static struct clk_branch gcc_pcie_2_pipe_clk = {
4132*efe50430STaniya Das 	.halt_reg = 0xc0028,
4133*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4134*efe50430STaniya Das 	.clkr = {
4135*efe50430STaniya Das 		.enable_reg = 0x62018,
4136*efe50430STaniya Das 		.enable_mask = BIT(1),
4137*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4138*efe50430STaniya Das 			.name = "gcc_pcie_2_pipe_clk",
4139*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4140*efe50430STaniya Das 				&gcc_usb4_2_phy_pcie_pipe_mux_clk_src.clkr.hw,
4141*efe50430STaniya Das 			},
4142*efe50430STaniya Das 			.num_parents = 1,
4143*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4144*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4145*efe50430STaniya Das 		},
4146*efe50430STaniya Das 	},
4147*efe50430STaniya Das };
4148*efe50430STaniya Das 
4149*efe50430STaniya Das static struct clk_branch gcc_pcie_2_slv_axi_clk = {
4150*efe50430STaniya Das 	.halt_reg = 0xba4b0,
4151*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4152*efe50430STaniya Das 	.hwcg_reg = 0xba4b0,
4153*efe50430STaniya Das 	.hwcg_bit = 1,
4154*efe50430STaniya Das 	.clkr = {
4155*efe50430STaniya Das 		.enable_reg = 0x62010,
4156*efe50430STaniya Das 		.enable_mask = BIT(29),
4157*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4158*efe50430STaniya Das 			.name = "gcc_pcie_2_slv_axi_clk",
4159*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4160*efe50430STaniya Das 		},
4161*efe50430STaniya Das 	},
4162*efe50430STaniya Das };
4163*efe50430STaniya Das 
4164*efe50430STaniya Das static struct clk_branch gcc_pcie_2_slv_q2a_axi_clk = {
4165*efe50430STaniya Das 	.halt_reg = 0xba4ac,
4166*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4167*efe50430STaniya Das 	.clkr = {
4168*efe50430STaniya Das 		.enable_reg = 0x62010,
4169*efe50430STaniya Das 		.enable_mask = BIT(28),
4170*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4171*efe50430STaniya Das 			.name = "gcc_pcie_2_slv_q2a_axi_clk",
4172*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4173*efe50430STaniya Das 		},
4174*efe50430STaniya Das 	},
4175*efe50430STaniya Das };
4176*efe50430STaniya Das 
4177*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_aux_clk = {
4178*efe50430STaniya Das 	.halt_reg = 0xdc04c,
4179*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4180*efe50430STaniya Das 	.hwcg_reg = 0xdc04c,
4181*efe50430STaniya Das 	.hwcg_bit = 1,
4182*efe50430STaniya Das 	.clkr = {
4183*efe50430STaniya Das 		.enable_reg = 0x62028,
4184*efe50430STaniya Das 		.enable_mask = BIT(16),
4185*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4186*efe50430STaniya Das 			.name = "gcc_pcie_3a_aux_clk",
4187*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4188*efe50430STaniya Das 				&gcc_pcie_3a_aux_clk_src.clkr.hw,
4189*efe50430STaniya Das 			},
4190*efe50430STaniya Das 			.num_parents = 1,
4191*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4192*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4193*efe50430STaniya Das 		},
4194*efe50430STaniya Das 	},
4195*efe50430STaniya Das };
4196*efe50430STaniya Das 
4197*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_cfg_ahb_clk = {
4198*efe50430STaniya Das 	.halt_reg = 0xba4f0,
4199*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4200*efe50430STaniya Das 	.hwcg_reg = 0xba4f0,
4201*efe50430STaniya Das 	.hwcg_bit = 1,
4202*efe50430STaniya Das 	.clkr = {
4203*efe50430STaniya Das 		.enable_reg = 0x62028,
4204*efe50430STaniya Das 		.enable_mask = BIT(15),
4205*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4206*efe50430STaniya Das 			.name = "gcc_pcie_3a_cfg_ahb_clk",
4207*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4208*efe50430STaniya Das 		},
4209*efe50430STaniya Das 	},
4210*efe50430STaniya Das };
4211*efe50430STaniya Das 
4212*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_mstr_axi_clk = {
4213*efe50430STaniya Das 	.halt_reg = 0xdc038,
4214*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4215*efe50430STaniya Das 	.hwcg_reg = 0xdc038,
4216*efe50430STaniya Das 	.hwcg_bit = 1,
4217*efe50430STaniya Das 	.clkr = {
4218*efe50430STaniya Das 		.enable_reg = 0x62028,
4219*efe50430STaniya Das 		.enable_mask = BIT(14),
4220*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4221*efe50430STaniya Das 			.name = "gcc_pcie_3a_mstr_axi_clk",
4222*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4223*efe50430STaniya Das 		},
4224*efe50430STaniya Das 	},
4225*efe50430STaniya Das };
4226*efe50430STaniya Das 
4227*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_phy_rchng_clk = {
4228*efe50430STaniya Das 	.halt_reg = 0xdc06c,
4229*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4230*efe50430STaniya Das 	.hwcg_reg = 0xdc06c,
4231*efe50430STaniya Das 	.hwcg_bit = 1,
4232*efe50430STaniya Das 	.clkr = {
4233*efe50430STaniya Das 		.enable_reg = 0x62028,
4234*efe50430STaniya Das 		.enable_mask = BIT(18),
4235*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4236*efe50430STaniya Das 			.name = "gcc_pcie_3a_phy_rchng_clk",
4237*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4238*efe50430STaniya Das 				&gcc_pcie_3a_phy_rchng_clk_src.clkr.hw,
4239*efe50430STaniya Das 			},
4240*efe50430STaniya Das 			.num_parents = 1,
4241*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4242*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4243*efe50430STaniya Das 		},
4244*efe50430STaniya Das 	},
4245*efe50430STaniya Das };
4246*efe50430STaniya Das 
4247*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_pipe_clk = {
4248*efe50430STaniya Das 	.halt_reg = 0xdc05c,
4249*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4250*efe50430STaniya Das 	.hwcg_reg = 0xdc05c,
4251*efe50430STaniya Das 	.hwcg_bit = 1,
4252*efe50430STaniya Das 	.clkr = {
4253*efe50430STaniya Das 		.enable_reg = 0x62028,
4254*efe50430STaniya Das 		.enable_mask = BIT(17),
4255*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4256*efe50430STaniya Das 			.name = "gcc_pcie_3a_pipe_clk",
4257*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4258*efe50430STaniya Das 				&gcc_pcie_3a_pipe_clk_src.clkr.hw,
4259*efe50430STaniya Das 			},
4260*efe50430STaniya Das 			.num_parents = 1,
4261*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4262*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4263*efe50430STaniya Das 		},
4264*efe50430STaniya Das 	},
4265*efe50430STaniya Das };
4266*efe50430STaniya Das 
4267*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_slv_axi_clk = {
4268*efe50430STaniya Das 	.halt_reg = 0xdc024,
4269*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4270*efe50430STaniya Das 	.hwcg_reg = 0xdc024,
4271*efe50430STaniya Das 	.hwcg_bit = 1,
4272*efe50430STaniya Das 	.clkr = {
4273*efe50430STaniya Das 		.enable_reg = 0x62028,
4274*efe50430STaniya Das 		.enable_mask = BIT(13),
4275*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4276*efe50430STaniya Das 			.name = "gcc_pcie_3a_slv_axi_clk",
4277*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4278*efe50430STaniya Das 		},
4279*efe50430STaniya Das 	},
4280*efe50430STaniya Das };
4281*efe50430STaniya Das 
4282*efe50430STaniya Das static struct clk_branch gcc_pcie_3a_slv_q2a_axi_clk = {
4283*efe50430STaniya Das 	.halt_reg = 0xdc01c,
4284*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4285*efe50430STaniya Das 	.hwcg_reg = 0xdc01c,
4286*efe50430STaniya Das 	.hwcg_bit = 1,
4287*efe50430STaniya Das 	.clkr = {
4288*efe50430STaniya Das 		.enable_reg = 0x62028,
4289*efe50430STaniya Das 		.enable_mask = BIT(12),
4290*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4291*efe50430STaniya Das 			.name = "gcc_pcie_3a_slv_q2a_axi_clk",
4292*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4293*efe50430STaniya Das 		},
4294*efe50430STaniya Das 	},
4295*efe50430STaniya Das };
4296*efe50430STaniya Das 
4297*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_aux_clk = {
4298*efe50430STaniya Das 	.halt_reg = 0x94050,
4299*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4300*efe50430STaniya Das 	.clkr = {
4301*efe50430STaniya Das 		.enable_reg = 0x62028,
4302*efe50430STaniya Das 		.enable_mask = BIT(25),
4303*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4304*efe50430STaniya Das 			.name = "gcc_pcie_3b_aux_clk",
4305*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4306*efe50430STaniya Das 				&gcc_pcie_3b_aux_clk_src.clkr.hw,
4307*efe50430STaniya Das 			},
4308*efe50430STaniya Das 			.num_parents = 1,
4309*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4310*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4311*efe50430STaniya Das 		},
4312*efe50430STaniya Das 	},
4313*efe50430STaniya Das };
4314*efe50430STaniya Das 
4315*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_cfg_ahb_clk = {
4316*efe50430STaniya Das 	.halt_reg = 0xba4f4,
4317*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4318*efe50430STaniya Das 	.hwcg_reg = 0xba4f4,
4319*efe50430STaniya Das 	.hwcg_bit = 1,
4320*efe50430STaniya Das 	.clkr = {
4321*efe50430STaniya Das 		.enable_reg = 0x62028,
4322*efe50430STaniya Das 		.enable_mask = BIT(24),
4323*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4324*efe50430STaniya Das 			.name = "gcc_pcie_3b_cfg_ahb_clk",
4325*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4326*efe50430STaniya Das 		},
4327*efe50430STaniya Das 	},
4328*efe50430STaniya Das };
4329*efe50430STaniya Das 
4330*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_mstr_axi_clk = {
4331*efe50430STaniya Das 	.halt_reg = 0x94038,
4332*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4333*efe50430STaniya Das 	.hwcg_reg = 0x94038,
4334*efe50430STaniya Das 	.hwcg_bit = 1,
4335*efe50430STaniya Das 	.clkr = {
4336*efe50430STaniya Das 		.enable_reg = 0x62028,
4337*efe50430STaniya Das 		.enable_mask = BIT(23),
4338*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4339*efe50430STaniya Das 			.name = "gcc_pcie_3b_mstr_axi_clk",
4340*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4341*efe50430STaniya Das 		},
4342*efe50430STaniya Das 	},
4343*efe50430STaniya Das };
4344*efe50430STaniya Das 
4345*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_phy_rchng_clk = {
4346*efe50430STaniya Das 	.halt_reg = 0x94084,
4347*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4348*efe50430STaniya Das 	.clkr = {
4349*efe50430STaniya Das 		.enable_reg = 0x62028,
4350*efe50430STaniya Das 		.enable_mask = BIT(28),
4351*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4352*efe50430STaniya Das 			.name = "gcc_pcie_3b_phy_rchng_clk",
4353*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4354*efe50430STaniya Das 				&gcc_pcie_3b_phy_rchng_clk_src.clkr.hw,
4355*efe50430STaniya Das 			},
4356*efe50430STaniya Das 			.num_parents = 1,
4357*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4358*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4359*efe50430STaniya Das 		},
4360*efe50430STaniya Das 	},
4361*efe50430STaniya Das };
4362*efe50430STaniya Das 
4363*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_pipe_clk = {
4364*efe50430STaniya Das 	.halt_reg = 0x94060,
4365*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4366*efe50430STaniya Das 	.clkr = {
4367*efe50430STaniya Das 		.enable_reg = 0x62028,
4368*efe50430STaniya Das 		.enable_mask = BIT(26),
4369*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4370*efe50430STaniya Das 			.name = "gcc_pcie_3b_pipe_clk",
4371*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4372*efe50430STaniya Das 				&gcc_pcie_3b_pipe_clk_src.clkr.hw,
4373*efe50430STaniya Das 			},
4374*efe50430STaniya Das 			.num_parents = 1,
4375*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4376*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4377*efe50430STaniya Das 		},
4378*efe50430STaniya Das 	},
4379*efe50430STaniya Das };
4380*efe50430STaniya Das 
4381*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_pipe_div2_clk = {
4382*efe50430STaniya Das 	.halt_reg = 0x94074,
4383*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4384*efe50430STaniya Das 	.clkr = {
4385*efe50430STaniya Das 		.enable_reg = 0x62028,
4386*efe50430STaniya Das 		.enable_mask = BIT(27),
4387*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4388*efe50430STaniya Das 			.name = "gcc_pcie_3b_pipe_div2_clk",
4389*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4390*efe50430STaniya Das 				&gcc_pcie_3b_pipe_div_clk_src.clkr.hw,
4391*efe50430STaniya Das 			},
4392*efe50430STaniya Das 			.num_parents = 1,
4393*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4394*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4395*efe50430STaniya Das 		},
4396*efe50430STaniya Das 	},
4397*efe50430STaniya Das };
4398*efe50430STaniya Das 
4399*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_slv_axi_clk = {
4400*efe50430STaniya Das 	.halt_reg = 0x94024,
4401*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4402*efe50430STaniya Das 	.hwcg_reg = 0x94024,
4403*efe50430STaniya Das 	.hwcg_bit = 1,
4404*efe50430STaniya Das 	.clkr = {
4405*efe50430STaniya Das 		.enable_reg = 0x62028,
4406*efe50430STaniya Das 		.enable_mask = BIT(22),
4407*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4408*efe50430STaniya Das 			.name = "gcc_pcie_3b_slv_axi_clk",
4409*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4410*efe50430STaniya Das 		},
4411*efe50430STaniya Das 	},
4412*efe50430STaniya Das };
4413*efe50430STaniya Das 
4414*efe50430STaniya Das static struct clk_branch gcc_pcie_3b_slv_q2a_axi_clk = {
4415*efe50430STaniya Das 	.halt_reg = 0x9401c,
4416*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4417*efe50430STaniya Das 	.clkr = {
4418*efe50430STaniya Das 		.enable_reg = 0x62028,
4419*efe50430STaniya Das 		.enable_mask = BIT(21),
4420*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4421*efe50430STaniya Das 			.name = "gcc_pcie_3b_slv_q2a_axi_clk",
4422*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4423*efe50430STaniya Das 		},
4424*efe50430STaniya Das 	},
4425*efe50430STaniya Das };
4426*efe50430STaniya Das 
4427*efe50430STaniya Das static struct clk_branch gcc_pcie_4_aux_clk = {
4428*efe50430STaniya Das 	.halt_reg = 0x88040,
4429*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4430*efe50430STaniya Das 	.clkr = {
4431*efe50430STaniya Das 		.enable_reg = 0x62030,
4432*efe50430STaniya Das 		.enable_mask = BIT(17),
4433*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4434*efe50430STaniya Das 			.name = "gcc_pcie_4_aux_clk",
4435*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4436*efe50430STaniya Das 				&gcc_pcie_4_aux_clk_src.clkr.hw,
4437*efe50430STaniya Das 			},
4438*efe50430STaniya Das 			.num_parents = 1,
4439*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4440*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4441*efe50430STaniya Das 		},
4442*efe50430STaniya Das 	},
4443*efe50430STaniya Das };
4444*efe50430STaniya Das 
4445*efe50430STaniya Das static struct clk_branch gcc_pcie_4_cfg_ahb_clk = {
4446*efe50430STaniya Das 	.halt_reg = 0xba4fc,
4447*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4448*efe50430STaniya Das 	.hwcg_reg = 0xba4fc,
4449*efe50430STaniya Das 	.hwcg_bit = 1,
4450*efe50430STaniya Das 	.clkr = {
4451*efe50430STaniya Das 		.enable_reg = 0x62030,
4452*efe50430STaniya Das 		.enable_mask = BIT(16),
4453*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4454*efe50430STaniya Das 			.name = "gcc_pcie_4_cfg_ahb_clk",
4455*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4456*efe50430STaniya Das 		},
4457*efe50430STaniya Das 	},
4458*efe50430STaniya Das };
4459*efe50430STaniya Das 
4460*efe50430STaniya Das static struct clk_branch gcc_pcie_4_mstr_axi_clk = {
4461*efe50430STaniya Das 	.halt_reg = 0x88030,
4462*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4463*efe50430STaniya Das 	.hwcg_reg = 0x88030,
4464*efe50430STaniya Das 	.hwcg_bit = 1,
4465*efe50430STaniya Das 	.clkr = {
4466*efe50430STaniya Das 		.enable_reg = 0x62030,
4467*efe50430STaniya Das 		.enable_mask = BIT(15),
4468*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4469*efe50430STaniya Das 			.name = "gcc_pcie_4_mstr_axi_clk",
4470*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4471*efe50430STaniya Das 		},
4472*efe50430STaniya Das 	},
4473*efe50430STaniya Das };
4474*efe50430STaniya Das 
4475*efe50430STaniya Das static struct clk_branch gcc_pcie_4_phy_rchng_clk = {
4476*efe50430STaniya Das 	.halt_reg = 0x88074,
4477*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4478*efe50430STaniya Das 	.clkr = {
4479*efe50430STaniya Das 		.enable_reg = 0x62030,
4480*efe50430STaniya Das 		.enable_mask = BIT(20),
4481*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4482*efe50430STaniya Das 			.name = "gcc_pcie_4_phy_rchng_clk",
4483*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4484*efe50430STaniya Das 				&gcc_pcie_4_phy_rchng_clk_src.clkr.hw,
4485*efe50430STaniya Das 			},
4486*efe50430STaniya Das 			.num_parents = 1,
4487*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4488*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4489*efe50430STaniya Das 		},
4490*efe50430STaniya Das 	},
4491*efe50430STaniya Das };
4492*efe50430STaniya Das 
4493*efe50430STaniya Das static struct clk_branch gcc_pcie_4_pipe_clk = {
4494*efe50430STaniya Das 	.halt_reg = 0x88050,
4495*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4496*efe50430STaniya Das 	.clkr = {
4497*efe50430STaniya Das 		.enable_reg = 0x62030,
4498*efe50430STaniya Das 		.enable_mask = BIT(18),
4499*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4500*efe50430STaniya Das 			.name = "gcc_pcie_4_pipe_clk",
4501*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4502*efe50430STaniya Das 				&gcc_pcie_4_pipe_clk_src.clkr.hw,
4503*efe50430STaniya Das 			},
4504*efe50430STaniya Das 			.num_parents = 1,
4505*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4506*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4507*efe50430STaniya Das 		},
4508*efe50430STaniya Das 	},
4509*efe50430STaniya Das };
4510*efe50430STaniya Das 
4511*efe50430STaniya Das static struct clk_branch gcc_pcie_4_pipe_div2_clk = {
4512*efe50430STaniya Das 	.halt_reg = 0x88064,
4513*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4514*efe50430STaniya Das 	.clkr = {
4515*efe50430STaniya Das 		.enable_reg = 0x62030,
4516*efe50430STaniya Das 		.enable_mask = BIT(19),
4517*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4518*efe50430STaniya Das 			.name = "gcc_pcie_4_pipe_div2_clk",
4519*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4520*efe50430STaniya Das 				&gcc_pcie_4_pipe_div_clk_src.clkr.hw,
4521*efe50430STaniya Das 			},
4522*efe50430STaniya Das 			.num_parents = 1,
4523*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4524*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4525*efe50430STaniya Das 		},
4526*efe50430STaniya Das 	},
4527*efe50430STaniya Das };
4528*efe50430STaniya Das 
4529*efe50430STaniya Das static struct clk_branch gcc_pcie_4_slv_axi_clk = {
4530*efe50430STaniya Das 	.halt_reg = 0x88020,
4531*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4532*efe50430STaniya Das 	.hwcg_reg = 0x88020,
4533*efe50430STaniya Das 	.hwcg_bit = 1,
4534*efe50430STaniya Das 	.clkr = {
4535*efe50430STaniya Das 		.enable_reg = 0x62030,
4536*efe50430STaniya Das 		.enable_mask = BIT(14),
4537*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4538*efe50430STaniya Das 			.name = "gcc_pcie_4_slv_axi_clk",
4539*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4540*efe50430STaniya Das 		},
4541*efe50430STaniya Das 	},
4542*efe50430STaniya Das };
4543*efe50430STaniya Das 
4544*efe50430STaniya Das static struct clk_branch gcc_pcie_4_slv_q2a_axi_clk = {
4545*efe50430STaniya Das 	.halt_reg = 0x8801c,
4546*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4547*efe50430STaniya Das 	.clkr = {
4548*efe50430STaniya Das 		.enable_reg = 0x62030,
4549*efe50430STaniya Das 		.enable_mask = BIT(13),
4550*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4551*efe50430STaniya Das 			.name = "gcc_pcie_4_slv_q2a_axi_clk",
4552*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4553*efe50430STaniya Das 		},
4554*efe50430STaniya Das 	},
4555*efe50430STaniya Das };
4556*efe50430STaniya Das 
4557*efe50430STaniya Das static struct clk_branch gcc_pcie_5_aux_clk = {
4558*efe50430STaniya Das 	.halt_reg = 0xc304c,
4559*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4560*efe50430STaniya Das 	.clkr = {
4561*efe50430STaniya Das 		.enable_reg = 0x62030,
4562*efe50430STaniya Das 		.enable_mask = BIT(5),
4563*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4564*efe50430STaniya Das 			.name = "gcc_pcie_5_aux_clk",
4565*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4566*efe50430STaniya Das 				&gcc_pcie_5_aux_clk_src.clkr.hw,
4567*efe50430STaniya Das 			},
4568*efe50430STaniya Das 			.num_parents = 1,
4569*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4570*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4571*efe50430STaniya Das 		},
4572*efe50430STaniya Das 	},
4573*efe50430STaniya Das };
4574*efe50430STaniya Das 
4575*efe50430STaniya Das static struct clk_branch gcc_pcie_5_cfg_ahb_clk = {
4576*efe50430STaniya Das 	.halt_reg = 0xba4f8,
4577*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4578*efe50430STaniya Das 	.hwcg_reg = 0xba4f8,
4579*efe50430STaniya Das 	.hwcg_bit = 1,
4580*efe50430STaniya Das 	.clkr = {
4581*efe50430STaniya Das 		.enable_reg = 0x62030,
4582*efe50430STaniya Das 		.enable_mask = BIT(4),
4583*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4584*efe50430STaniya Das 			.name = "gcc_pcie_5_cfg_ahb_clk",
4585*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4586*efe50430STaniya Das 		},
4587*efe50430STaniya Das 	},
4588*efe50430STaniya Das };
4589*efe50430STaniya Das 
4590*efe50430STaniya Das static struct clk_branch gcc_pcie_5_mstr_axi_clk = {
4591*efe50430STaniya Das 	.halt_reg = 0xc3038,
4592*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4593*efe50430STaniya Das 	.hwcg_reg = 0xc3038,
4594*efe50430STaniya Das 	.hwcg_bit = 1,
4595*efe50430STaniya Das 	.clkr = {
4596*efe50430STaniya Das 		.enable_reg = 0x62030,
4597*efe50430STaniya Das 		.enable_mask = BIT(3),
4598*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4599*efe50430STaniya Das 			.name = "gcc_pcie_5_mstr_axi_clk",
4600*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4601*efe50430STaniya Das 		},
4602*efe50430STaniya Das 	},
4603*efe50430STaniya Das };
4604*efe50430STaniya Das 
4605*efe50430STaniya Das static struct clk_branch gcc_pcie_5_phy_rchng_clk = {
4606*efe50430STaniya Das 	.halt_reg = 0xc3080,
4607*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4608*efe50430STaniya Das 	.clkr = {
4609*efe50430STaniya Das 		.enable_reg = 0x62030,
4610*efe50430STaniya Das 		.enable_mask = BIT(8),
4611*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4612*efe50430STaniya Das 			.name = "gcc_pcie_5_phy_rchng_clk",
4613*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4614*efe50430STaniya Das 				&gcc_pcie_5_phy_rchng_clk_src.clkr.hw,
4615*efe50430STaniya Das 			},
4616*efe50430STaniya Das 			.num_parents = 1,
4617*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4618*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4619*efe50430STaniya Das 		},
4620*efe50430STaniya Das 	},
4621*efe50430STaniya Das };
4622*efe50430STaniya Das 
4623*efe50430STaniya Das static struct clk_branch gcc_pcie_5_pipe_clk = {
4624*efe50430STaniya Das 	.halt_reg = 0xc305c,
4625*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4626*efe50430STaniya Das 	.clkr = {
4627*efe50430STaniya Das 		.enable_reg = 0x62030,
4628*efe50430STaniya Das 		.enable_mask = BIT(6),
4629*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4630*efe50430STaniya Das 			.name = "gcc_pcie_5_pipe_clk",
4631*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4632*efe50430STaniya Das 				&gcc_pcie_5_pipe_clk_src.clkr.hw,
4633*efe50430STaniya Das 			},
4634*efe50430STaniya Das 			.num_parents = 1,
4635*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4636*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4637*efe50430STaniya Das 		},
4638*efe50430STaniya Das 	},
4639*efe50430STaniya Das };
4640*efe50430STaniya Das 
4641*efe50430STaniya Das static struct clk_branch gcc_pcie_5_pipe_div2_clk = {
4642*efe50430STaniya Das 	.halt_reg = 0xc3070,
4643*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4644*efe50430STaniya Das 	.clkr = {
4645*efe50430STaniya Das 		.enable_reg = 0x62030,
4646*efe50430STaniya Das 		.enable_mask = BIT(7),
4647*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4648*efe50430STaniya Das 			.name = "gcc_pcie_5_pipe_div2_clk",
4649*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4650*efe50430STaniya Das 				&gcc_pcie_5_pipe_div_clk_src.clkr.hw,
4651*efe50430STaniya Das 			},
4652*efe50430STaniya Das 			.num_parents = 1,
4653*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4654*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4655*efe50430STaniya Das 		},
4656*efe50430STaniya Das 	},
4657*efe50430STaniya Das };
4658*efe50430STaniya Das 
4659*efe50430STaniya Das static struct clk_branch gcc_pcie_5_slv_axi_clk = {
4660*efe50430STaniya Das 	.halt_reg = 0xc3024,
4661*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4662*efe50430STaniya Das 	.hwcg_reg = 0xc3024,
4663*efe50430STaniya Das 	.hwcg_bit = 1,
4664*efe50430STaniya Das 	.clkr = {
4665*efe50430STaniya Das 		.enable_reg = 0x62030,
4666*efe50430STaniya Das 		.enable_mask = BIT(2),
4667*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4668*efe50430STaniya Das 			.name = "gcc_pcie_5_slv_axi_clk",
4669*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4670*efe50430STaniya Das 		},
4671*efe50430STaniya Das 	},
4672*efe50430STaniya Das };
4673*efe50430STaniya Das 
4674*efe50430STaniya Das static struct clk_branch gcc_pcie_5_slv_q2a_axi_clk = {
4675*efe50430STaniya Das 	.halt_reg = 0xc301c,
4676*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4677*efe50430STaniya Das 	.clkr = {
4678*efe50430STaniya Das 		.enable_reg = 0x62030,
4679*efe50430STaniya Das 		.enable_mask = BIT(1),
4680*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4681*efe50430STaniya Das 			.name = "gcc_pcie_5_slv_q2a_axi_clk",
4682*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4683*efe50430STaniya Das 		},
4684*efe50430STaniya Das 	},
4685*efe50430STaniya Das };
4686*efe50430STaniya Das 
4687*efe50430STaniya Das static struct clk_branch gcc_pcie_6_aux_clk = {
4688*efe50430STaniya Das 	.halt_reg = 0x8a040,
4689*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4690*efe50430STaniya Das 	.clkr = {
4691*efe50430STaniya Das 		.enable_reg = 0x62030,
4692*efe50430STaniya Das 		.enable_mask = BIT(27),
4693*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4694*efe50430STaniya Das 			.name = "gcc_pcie_6_aux_clk",
4695*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4696*efe50430STaniya Das 				&gcc_pcie_6_aux_clk_src.clkr.hw,
4697*efe50430STaniya Das 			},
4698*efe50430STaniya Das 			.num_parents = 1,
4699*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4700*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4701*efe50430STaniya Das 		},
4702*efe50430STaniya Das 	},
4703*efe50430STaniya Das };
4704*efe50430STaniya Das 
4705*efe50430STaniya Das static struct clk_branch gcc_pcie_6_cfg_ahb_clk = {
4706*efe50430STaniya Das 	.halt_reg = 0xba500,
4707*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4708*efe50430STaniya Das 	.hwcg_reg = 0xba500,
4709*efe50430STaniya Das 	.hwcg_bit = 1,
4710*efe50430STaniya Das 	.clkr = {
4711*efe50430STaniya Das 		.enable_reg = 0x62030,
4712*efe50430STaniya Das 		.enable_mask = BIT(26),
4713*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4714*efe50430STaniya Das 			.name = "gcc_pcie_6_cfg_ahb_clk",
4715*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4716*efe50430STaniya Das 		},
4717*efe50430STaniya Das 	},
4718*efe50430STaniya Das };
4719*efe50430STaniya Das 
4720*efe50430STaniya Das static struct clk_branch gcc_pcie_6_mstr_axi_clk = {
4721*efe50430STaniya Das 	.halt_reg = 0x8a030,
4722*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4723*efe50430STaniya Das 	.hwcg_reg = 0x8a030,
4724*efe50430STaniya Das 	.hwcg_bit = 1,
4725*efe50430STaniya Das 	.clkr = {
4726*efe50430STaniya Das 		.enable_reg = 0x62030,
4727*efe50430STaniya Das 		.enable_mask = BIT(25),
4728*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4729*efe50430STaniya Das 			.name = "gcc_pcie_6_mstr_axi_clk",
4730*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4731*efe50430STaniya Das 		},
4732*efe50430STaniya Das 	},
4733*efe50430STaniya Das };
4734*efe50430STaniya Das 
4735*efe50430STaniya Das static struct clk_branch gcc_pcie_6_phy_rchng_clk = {
4736*efe50430STaniya Das 	.halt_reg = 0x8a074,
4737*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4738*efe50430STaniya Das 	.clkr = {
4739*efe50430STaniya Das 		.enable_reg = 0x62030,
4740*efe50430STaniya Das 		.enable_mask = BIT(30),
4741*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4742*efe50430STaniya Das 			.name = "gcc_pcie_6_phy_rchng_clk",
4743*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4744*efe50430STaniya Das 				&gcc_pcie_6_phy_rchng_clk_src.clkr.hw,
4745*efe50430STaniya Das 			},
4746*efe50430STaniya Das 			.num_parents = 1,
4747*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4748*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4749*efe50430STaniya Das 		},
4750*efe50430STaniya Das 	},
4751*efe50430STaniya Das };
4752*efe50430STaniya Das 
4753*efe50430STaniya Das static struct clk_branch gcc_pcie_6_pipe_clk = {
4754*efe50430STaniya Das 	.halt_reg = 0x8a050,
4755*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4756*efe50430STaniya Das 	.clkr = {
4757*efe50430STaniya Das 		.enable_reg = 0x62030,
4758*efe50430STaniya Das 		.enable_mask = BIT(28),
4759*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4760*efe50430STaniya Das 			.name = "gcc_pcie_6_pipe_clk",
4761*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4762*efe50430STaniya Das 				&gcc_pcie_6_pipe_clk_src.clkr.hw,
4763*efe50430STaniya Das 			},
4764*efe50430STaniya Das 			.num_parents = 1,
4765*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4766*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4767*efe50430STaniya Das 		},
4768*efe50430STaniya Das 	},
4769*efe50430STaniya Das };
4770*efe50430STaniya Das 
4771*efe50430STaniya Das static struct clk_branch gcc_pcie_6_pipe_div2_clk = {
4772*efe50430STaniya Das 	.halt_reg = 0x8a064,
4773*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
4774*efe50430STaniya Das 	.clkr = {
4775*efe50430STaniya Das 		.enable_reg = 0x62030,
4776*efe50430STaniya Das 		.enable_mask = BIT(29),
4777*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4778*efe50430STaniya Das 			.name = "gcc_pcie_6_pipe_div2_clk",
4779*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4780*efe50430STaniya Das 				&gcc_pcie_6_pipe_div_clk_src.clkr.hw,
4781*efe50430STaniya Das 			},
4782*efe50430STaniya Das 			.num_parents = 1,
4783*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4784*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4785*efe50430STaniya Das 		},
4786*efe50430STaniya Das 	},
4787*efe50430STaniya Das };
4788*efe50430STaniya Das 
4789*efe50430STaniya Das static struct clk_branch gcc_pcie_6_slv_axi_clk = {
4790*efe50430STaniya Das 	.halt_reg = 0x8a020,
4791*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4792*efe50430STaniya Das 	.hwcg_reg = 0x8a020,
4793*efe50430STaniya Das 	.hwcg_bit = 1,
4794*efe50430STaniya Das 	.clkr = {
4795*efe50430STaniya Das 		.enable_reg = 0x62030,
4796*efe50430STaniya Das 		.enable_mask = BIT(24),
4797*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4798*efe50430STaniya Das 			.name = "gcc_pcie_6_slv_axi_clk",
4799*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4800*efe50430STaniya Das 		},
4801*efe50430STaniya Das 	},
4802*efe50430STaniya Das };
4803*efe50430STaniya Das 
4804*efe50430STaniya Das static struct clk_branch gcc_pcie_6_slv_q2a_axi_clk = {
4805*efe50430STaniya Das 	.halt_reg = 0x8a01c,
4806*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4807*efe50430STaniya Das 	.clkr = {
4808*efe50430STaniya Das 		.enable_reg = 0x62030,
4809*efe50430STaniya Das 		.enable_mask = BIT(23),
4810*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4811*efe50430STaniya Das 			.name = "gcc_pcie_6_slv_q2a_axi_clk",
4812*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4813*efe50430STaniya Das 		},
4814*efe50430STaniya Das 	},
4815*efe50430STaniya Das };
4816*efe50430STaniya Das 
4817*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_pwrctl_clk = {
4818*efe50430STaniya Das 	.halt_reg = 0xba2ac,
4819*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4820*efe50430STaniya Das 	.clkr = {
4821*efe50430STaniya Das 		.enable_reg = 0x62008,
4822*efe50430STaniya Das 		.enable_mask = BIT(7),
4823*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4824*efe50430STaniya Das 			.name = "gcc_pcie_noc_pwrctl_clk",
4825*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4826*efe50430STaniya Das 		},
4827*efe50430STaniya Das 	},
4828*efe50430STaniya Das };
4829*efe50430STaniya Das 
4830*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_qosgen_extref_clk = {
4831*efe50430STaniya Das 	.halt_reg = 0xba2a8,
4832*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4833*efe50430STaniya Das 	.clkr = {
4834*efe50430STaniya Das 		.enable_reg = 0x62008,
4835*efe50430STaniya Das 		.enable_mask = BIT(6),
4836*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4837*efe50430STaniya Das 			.name = "gcc_pcie_noc_qosgen_extref_clk",
4838*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4839*efe50430STaniya Das 		},
4840*efe50430STaniya Das 	},
4841*efe50430STaniya Das };
4842*efe50430STaniya Das 
4843*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_sf_center_clk = {
4844*efe50430STaniya Das 	.halt_reg = 0xba2b0,
4845*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4846*efe50430STaniya Das 	.hwcg_reg = 0xba2b0,
4847*efe50430STaniya Das 	.hwcg_bit = 1,
4848*efe50430STaniya Das 	.clkr = {
4849*efe50430STaniya Das 		.enable_reg = 0x62008,
4850*efe50430STaniya Das 		.enable_mask = BIT(8),
4851*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4852*efe50430STaniya Das 			.name = "gcc_pcie_noc_sf_center_clk",
4853*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4854*efe50430STaniya Das 		},
4855*efe50430STaniya Das 	},
4856*efe50430STaniya Das };
4857*efe50430STaniya Das 
4858*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_slave_sf_east_clk = {
4859*efe50430STaniya Das 	.halt_reg = 0xba2b8,
4860*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4861*efe50430STaniya Das 	.hwcg_reg = 0xba2b8,
4862*efe50430STaniya Das 	.hwcg_bit = 1,
4863*efe50430STaniya Das 	.clkr = {
4864*efe50430STaniya Das 		.enable_reg = 0x62008,
4865*efe50430STaniya Das 		.enable_mask = BIT(9),
4866*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4867*efe50430STaniya Das 			.name = "gcc_pcie_noc_slave_sf_east_clk",
4868*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4869*efe50430STaniya Das 		},
4870*efe50430STaniya Das 	},
4871*efe50430STaniya Das };
4872*efe50430STaniya Das 
4873*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_slave_sf_west_clk = {
4874*efe50430STaniya Das 	.halt_reg = 0xba2c0,
4875*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4876*efe50430STaniya Das 	.hwcg_reg = 0xba2c0,
4877*efe50430STaniya Das 	.hwcg_bit = 1,
4878*efe50430STaniya Das 	.clkr = {
4879*efe50430STaniya Das 		.enable_reg = 0x62008,
4880*efe50430STaniya Das 		.enable_mask = BIT(10),
4881*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4882*efe50430STaniya Das 			.name = "gcc_pcie_noc_slave_sf_west_clk",
4883*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4884*efe50430STaniya Das 		},
4885*efe50430STaniya Das 	},
4886*efe50430STaniya Das };
4887*efe50430STaniya Das 
4888*efe50430STaniya Das static struct clk_branch gcc_pcie_noc_tsctr_clk = {
4889*efe50430STaniya Das 	.halt_reg = 0xba2a4,
4890*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4891*efe50430STaniya Das 	.hwcg_reg = 0xba2a4,
4892*efe50430STaniya Das 	.hwcg_bit = 1,
4893*efe50430STaniya Das 	.clkr = {
4894*efe50430STaniya Das 		.enable_reg = 0x62008,
4895*efe50430STaniya Das 		.enable_mask = BIT(5),
4896*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4897*efe50430STaniya Das 			.name = "gcc_pcie_noc_tsctr_clk",
4898*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4899*efe50430STaniya Das 		},
4900*efe50430STaniya Das 	},
4901*efe50430STaniya Das };
4902*efe50430STaniya Das 
4903*efe50430STaniya Das static struct clk_branch gcc_pcie_phy_3a_aux_clk = {
4904*efe50430STaniya Das 	.halt_reg = 0x6c038,
4905*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4906*efe50430STaniya Das 	.hwcg_reg = 0x6c038,
4907*efe50430STaniya Das 	.hwcg_bit = 1,
4908*efe50430STaniya Das 	.clkr = {
4909*efe50430STaniya Das 		.enable_reg = 0x62028,
4910*efe50430STaniya Das 		.enable_mask = BIT(19),
4911*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4912*efe50430STaniya Das 			.name = "gcc_pcie_phy_3a_aux_clk",
4913*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4914*efe50430STaniya Das 				&gcc_pcie_phy_3a_aux_clk_src.clkr.hw,
4915*efe50430STaniya Das 			},
4916*efe50430STaniya Das 			.num_parents = 1,
4917*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4918*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4919*efe50430STaniya Das 		},
4920*efe50430STaniya Das 	},
4921*efe50430STaniya Das };
4922*efe50430STaniya Das 
4923*efe50430STaniya Das static struct clk_branch gcc_pcie_phy_3b_aux_clk = {
4924*efe50430STaniya Das 	.halt_reg = 0x75034,
4925*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4926*efe50430STaniya Das 	.clkr = {
4927*efe50430STaniya Das 		.enable_reg = 0x62028,
4928*efe50430STaniya Das 		.enable_mask = BIT(31),
4929*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4930*efe50430STaniya Das 			.name = "gcc_pcie_phy_3b_aux_clk",
4931*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4932*efe50430STaniya Das 				&gcc_pcie_phy_3b_aux_clk_src.clkr.hw,
4933*efe50430STaniya Das 			},
4934*efe50430STaniya Das 			.num_parents = 1,
4935*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4936*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4937*efe50430STaniya Das 		},
4938*efe50430STaniya Das 	},
4939*efe50430STaniya Das };
4940*efe50430STaniya Das 
4941*efe50430STaniya Das static struct clk_branch gcc_pcie_phy_4_aux_clk = {
4942*efe50430STaniya Das 	.halt_reg = 0xd3030,
4943*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4944*efe50430STaniya Das 	.clkr = {
4945*efe50430STaniya Das 		.enable_reg = 0x62030,
4946*efe50430STaniya Das 		.enable_mask = BIT(21),
4947*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4948*efe50430STaniya Das 			.name = "gcc_pcie_phy_4_aux_clk",
4949*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4950*efe50430STaniya Das 				&gcc_pcie_phy_4_aux_clk_src.clkr.hw,
4951*efe50430STaniya Das 			},
4952*efe50430STaniya Das 			.num_parents = 1,
4953*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4954*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4955*efe50430STaniya Das 		},
4956*efe50430STaniya Das 	},
4957*efe50430STaniya Das };
4958*efe50430STaniya Das 
4959*efe50430STaniya Das static struct clk_branch gcc_pcie_phy_5_aux_clk = {
4960*efe50430STaniya Das 	.halt_reg = 0xd2030,
4961*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4962*efe50430STaniya Das 	.clkr = {
4963*efe50430STaniya Das 		.enable_reg = 0x62030,
4964*efe50430STaniya Das 		.enable_mask = BIT(11),
4965*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4966*efe50430STaniya Das 			.name = "gcc_pcie_phy_5_aux_clk",
4967*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4968*efe50430STaniya Das 				&gcc_pcie_phy_5_aux_clk_src.clkr.hw,
4969*efe50430STaniya Das 			},
4970*efe50430STaniya Das 			.num_parents = 1,
4971*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4972*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4973*efe50430STaniya Das 		},
4974*efe50430STaniya Das 	},
4975*efe50430STaniya Das };
4976*efe50430STaniya Das 
4977*efe50430STaniya Das static struct clk_branch gcc_pcie_phy_6_aux_clk = {
4978*efe50430STaniya Das 	.halt_reg = 0xd4030,
4979*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4980*efe50430STaniya Das 	.clkr = {
4981*efe50430STaniya Das 		.enable_reg = 0x62030,
4982*efe50430STaniya Das 		.enable_mask = BIT(31),
4983*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
4984*efe50430STaniya Das 			.name = "gcc_pcie_phy_6_aux_clk",
4985*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
4986*efe50430STaniya Das 				&gcc_pcie_phy_6_aux_clk_src.clkr.hw,
4987*efe50430STaniya Das 			},
4988*efe50430STaniya Das 			.num_parents = 1,
4989*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
4990*efe50430STaniya Das 			.ops = &clk_branch2_ops,
4991*efe50430STaniya Das 		},
4992*efe50430STaniya Das 	},
4993*efe50430STaniya Das };
4994*efe50430STaniya Das 
4995*efe50430STaniya Das static struct clk_branch gcc_pcie_rscc_cfg_ahb_clk = {
4996*efe50430STaniya Das 	.halt_reg = 0xb8004,
4997*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
4998*efe50430STaniya Das 	.hwcg_reg = 0xb8004,
4999*efe50430STaniya Das 	.hwcg_bit = 1,
5000*efe50430STaniya Das 	.clkr = {
5001*efe50430STaniya Das 		.enable_reg = 0x62038,
5002*efe50430STaniya Das 		.enable_mask = BIT(2),
5003*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5004*efe50430STaniya Das 			.name = "gcc_pcie_rscc_cfg_ahb_clk",
5005*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5006*efe50430STaniya Das 		},
5007*efe50430STaniya Das 	},
5008*efe50430STaniya Das };
5009*efe50430STaniya Das 
5010*efe50430STaniya Das static struct clk_branch gcc_pcie_rscc_xo_clk = {
5011*efe50430STaniya Das 	.halt_reg = 0xb8008,
5012*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5013*efe50430STaniya Das 	.clkr = {
5014*efe50430STaniya Das 		.enable_reg = 0x62038,
5015*efe50430STaniya Das 		.enable_mask = BIT(3),
5016*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5017*efe50430STaniya Das 			.name = "gcc_pcie_rscc_xo_clk",
5018*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5019*efe50430STaniya Das 		},
5020*efe50430STaniya Das 	},
5021*efe50430STaniya Das };
5022*efe50430STaniya Das 
5023*efe50430STaniya Das static struct clk_branch gcc_pdm2_clk = {
5024*efe50430STaniya Das 	.halt_reg = 0x3300c,
5025*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
5026*efe50430STaniya Das 	.clkr = {
5027*efe50430STaniya Das 		.enable_reg = 0x3300c,
5028*efe50430STaniya Das 		.enable_mask = BIT(0),
5029*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5030*efe50430STaniya Das 			.name = "gcc_pdm2_clk",
5031*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5032*efe50430STaniya Das 				&gcc_pdm2_clk_src.clkr.hw,
5033*efe50430STaniya Das 			},
5034*efe50430STaniya Das 			.num_parents = 1,
5035*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5036*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5037*efe50430STaniya Das 		},
5038*efe50430STaniya Das 	},
5039*efe50430STaniya Das };
5040*efe50430STaniya Das 
5041*efe50430STaniya Das static struct clk_branch gcc_pdm_ahb_clk = {
5042*efe50430STaniya Das 	.halt_reg = 0x33004,
5043*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5044*efe50430STaniya Das 	.hwcg_reg = 0x33004,
5045*efe50430STaniya Das 	.hwcg_bit = 1,
5046*efe50430STaniya Das 	.clkr = {
5047*efe50430STaniya Das 		.enable_reg = 0x33004,
5048*efe50430STaniya Das 		.enable_mask = BIT(0),
5049*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5050*efe50430STaniya Das 			.name = "gcc_pdm_ahb_clk",
5051*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5052*efe50430STaniya Das 		},
5053*efe50430STaniya Das 	},
5054*efe50430STaniya Das };
5055*efe50430STaniya Das 
5056*efe50430STaniya Das static struct clk_branch gcc_pdm_xo4_clk = {
5057*efe50430STaniya Das 	.halt_reg = 0x33008,
5058*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
5059*efe50430STaniya Das 	.clkr = {
5060*efe50430STaniya Das 		.enable_reg = 0x33008,
5061*efe50430STaniya Das 		.enable_mask = BIT(0),
5062*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5063*efe50430STaniya Das 			.name = "gcc_pdm_xo4_clk",
5064*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5065*efe50430STaniya Das 		},
5066*efe50430STaniya Das 	},
5067*efe50430STaniya Das };
5068*efe50430STaniya Das 
5069*efe50430STaniya Das static struct clk_branch gcc_qmip_av1e_ahb_clk = {
5070*efe50430STaniya Das 	.halt_reg = 0x9b048,
5071*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5072*efe50430STaniya Das 	.hwcg_reg = 0x9b048,
5073*efe50430STaniya Das 	.hwcg_bit = 1,
5074*efe50430STaniya Das 	.clkr = {
5075*efe50430STaniya Das 		.enable_reg = 0x9b048,
5076*efe50430STaniya Das 		.enable_mask = BIT(0),
5077*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5078*efe50430STaniya Das 			.name = "gcc_qmip_av1e_ahb_clk",
5079*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5080*efe50430STaniya Das 		},
5081*efe50430STaniya Das 	},
5082*efe50430STaniya Das };
5083*efe50430STaniya Das 
5084*efe50430STaniya Das static struct clk_branch gcc_qmip_camera_cmd_ahb_clk = {
5085*efe50430STaniya Das 	.halt_reg = 0x26010,
5086*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5087*efe50430STaniya Das 	.hwcg_reg = 0x26010,
5088*efe50430STaniya Das 	.hwcg_bit = 1,
5089*efe50430STaniya Das 	.clkr = {
5090*efe50430STaniya Das 		.enable_reg = 0x26010,
5091*efe50430STaniya Das 		.enable_mask = BIT(0),
5092*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5093*efe50430STaniya Das 			.name = "gcc_qmip_camera_cmd_ahb_clk",
5094*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5095*efe50430STaniya Das 		},
5096*efe50430STaniya Das 	},
5097*efe50430STaniya Das };
5098*efe50430STaniya Das 
5099*efe50430STaniya Das static struct clk_branch gcc_qmip_camera_nrt_ahb_clk = {
5100*efe50430STaniya Das 	.halt_reg = 0x26008,
5101*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5102*efe50430STaniya Das 	.hwcg_reg = 0x26008,
5103*efe50430STaniya Das 	.hwcg_bit = 1,
5104*efe50430STaniya Das 	.clkr = {
5105*efe50430STaniya Das 		.enable_reg = 0x26008,
5106*efe50430STaniya Das 		.enable_mask = BIT(0),
5107*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5108*efe50430STaniya Das 			.name = "gcc_qmip_camera_nrt_ahb_clk",
5109*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5110*efe50430STaniya Das 		},
5111*efe50430STaniya Das 	},
5112*efe50430STaniya Das };
5113*efe50430STaniya Das 
5114*efe50430STaniya Das static struct clk_branch gcc_qmip_camera_rt_ahb_clk = {
5115*efe50430STaniya Das 	.halt_reg = 0x2600c,
5116*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5117*efe50430STaniya Das 	.hwcg_reg = 0x2600c,
5118*efe50430STaniya Das 	.hwcg_bit = 1,
5119*efe50430STaniya Das 	.clkr = {
5120*efe50430STaniya Das 		.enable_reg = 0x2600c,
5121*efe50430STaniya Das 		.enable_mask = BIT(0),
5122*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5123*efe50430STaniya Das 			.name = "gcc_qmip_camera_rt_ahb_clk",
5124*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5125*efe50430STaniya Das 		},
5126*efe50430STaniya Das 	},
5127*efe50430STaniya Das };
5128*efe50430STaniya Das 
5129*efe50430STaniya Das static struct clk_branch gcc_qmip_gpu_ahb_clk = {
5130*efe50430STaniya Das 	.halt_reg = 0x71008,
5131*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5132*efe50430STaniya Das 	.hwcg_reg = 0x71008,
5133*efe50430STaniya Das 	.hwcg_bit = 1,
5134*efe50430STaniya Das 	.clkr = {
5135*efe50430STaniya Das 		.enable_reg = 0x71008,
5136*efe50430STaniya Das 		.enable_mask = BIT(0),
5137*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5138*efe50430STaniya Das 			.name = "gcc_qmip_gpu_ahb_clk",
5139*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5140*efe50430STaniya Das 		},
5141*efe50430STaniya Das 	},
5142*efe50430STaniya Das };
5143*efe50430STaniya Das 
5144*efe50430STaniya Das static struct clk_branch gcc_qmip_pcie_3a_ahb_clk = {
5145*efe50430STaniya Das 	.halt_reg = 0xdc018,
5146*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5147*efe50430STaniya Das 	.hwcg_reg = 0xdc018,
5148*efe50430STaniya Das 	.hwcg_bit = 1,
5149*efe50430STaniya Das 	.clkr = {
5150*efe50430STaniya Das 		.enable_reg = 0x62028,
5151*efe50430STaniya Das 		.enable_mask = BIT(11),
5152*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5153*efe50430STaniya Das 			.name = "gcc_qmip_pcie_3a_ahb_clk",
5154*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5155*efe50430STaniya Das 		},
5156*efe50430STaniya Das 	},
5157*efe50430STaniya Das };
5158*efe50430STaniya Das 
5159*efe50430STaniya Das static struct clk_branch gcc_qmip_pcie_3b_ahb_clk = {
5160*efe50430STaniya Das 	.halt_reg = 0x94018,
5161*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5162*efe50430STaniya Das 	.hwcg_reg = 0x94018,
5163*efe50430STaniya Das 	.hwcg_bit = 1,
5164*efe50430STaniya Das 	.clkr = {
5165*efe50430STaniya Das 		.enable_reg = 0x62028,
5166*efe50430STaniya Das 		.enable_mask = BIT(20),
5167*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5168*efe50430STaniya Das 			.name = "gcc_qmip_pcie_3b_ahb_clk",
5169*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5170*efe50430STaniya Das 		},
5171*efe50430STaniya Das 	},
5172*efe50430STaniya Das };
5173*efe50430STaniya Das 
5174*efe50430STaniya Das static struct clk_branch gcc_qmip_pcie_4_ahb_clk = {
5175*efe50430STaniya Das 	.halt_reg = 0x88018,
5176*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5177*efe50430STaniya Das 	.hwcg_reg = 0x88018,
5178*efe50430STaniya Das 	.hwcg_bit = 1,
5179*efe50430STaniya Das 	.clkr = {
5180*efe50430STaniya Das 		.enable_reg = 0x62030,
5181*efe50430STaniya Das 		.enable_mask = BIT(12),
5182*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5183*efe50430STaniya Das 			.name = "gcc_qmip_pcie_4_ahb_clk",
5184*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5185*efe50430STaniya Das 		},
5186*efe50430STaniya Das 	},
5187*efe50430STaniya Das };
5188*efe50430STaniya Das 
5189*efe50430STaniya Das static struct clk_branch gcc_qmip_pcie_5_ahb_clk = {
5190*efe50430STaniya Das 	.halt_reg = 0xc3018,
5191*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5192*efe50430STaniya Das 	.hwcg_reg = 0xc3018,
5193*efe50430STaniya Das 	.hwcg_bit = 1,
5194*efe50430STaniya Das 	.clkr = {
5195*efe50430STaniya Das 		.enable_reg = 0x62030,
5196*efe50430STaniya Das 		.enable_mask = BIT(0),
5197*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5198*efe50430STaniya Das 			.name = "gcc_qmip_pcie_5_ahb_clk",
5199*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5200*efe50430STaniya Das 		},
5201*efe50430STaniya Das 	},
5202*efe50430STaniya Das };
5203*efe50430STaniya Das 
5204*efe50430STaniya Das static struct clk_branch gcc_qmip_pcie_6_ahb_clk = {
5205*efe50430STaniya Das 	.halt_reg = 0x8a018,
5206*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5207*efe50430STaniya Das 	.hwcg_reg = 0x8a018,
5208*efe50430STaniya Das 	.hwcg_bit = 1,
5209*efe50430STaniya Das 	.clkr = {
5210*efe50430STaniya Das 		.enable_reg = 0x62030,
5211*efe50430STaniya Das 		.enable_mask = BIT(22),
5212*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5213*efe50430STaniya Das 			.name = "gcc_qmip_pcie_6_ahb_clk",
5214*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5215*efe50430STaniya Das 		},
5216*efe50430STaniya Das 	},
5217*efe50430STaniya Das };
5218*efe50430STaniya Das 
5219*efe50430STaniya Das static struct clk_branch gcc_qmip_video_cv_cpu_ahb_clk = {
5220*efe50430STaniya Das 	.halt_reg = 0x32018,
5221*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5222*efe50430STaniya Das 	.hwcg_reg = 0x32018,
5223*efe50430STaniya Das 	.hwcg_bit = 1,
5224*efe50430STaniya Das 	.clkr = {
5225*efe50430STaniya Das 		.enable_reg = 0x32018,
5226*efe50430STaniya Das 		.enable_mask = BIT(0),
5227*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5228*efe50430STaniya Das 			.name = "gcc_qmip_video_cv_cpu_ahb_clk",
5229*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5230*efe50430STaniya Das 		},
5231*efe50430STaniya Das 	},
5232*efe50430STaniya Das };
5233*efe50430STaniya Das 
5234*efe50430STaniya Das static struct clk_branch gcc_qmip_video_cvp_ahb_clk = {
5235*efe50430STaniya Das 	.halt_reg = 0x32008,
5236*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5237*efe50430STaniya Das 	.hwcg_reg = 0x32008,
5238*efe50430STaniya Das 	.hwcg_bit = 1,
5239*efe50430STaniya Das 	.clkr = {
5240*efe50430STaniya Das 		.enable_reg = 0x32008,
5241*efe50430STaniya Das 		.enable_mask = BIT(0),
5242*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5243*efe50430STaniya Das 			.name = "gcc_qmip_video_cvp_ahb_clk",
5244*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5245*efe50430STaniya Das 		},
5246*efe50430STaniya Das 	},
5247*efe50430STaniya Das };
5248*efe50430STaniya Das 
5249*efe50430STaniya Das static struct clk_branch gcc_qmip_video_v_cpu_ahb_clk = {
5250*efe50430STaniya Das 	.halt_reg = 0x32014,
5251*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5252*efe50430STaniya Das 	.hwcg_reg = 0x32014,
5253*efe50430STaniya Das 	.hwcg_bit = 1,
5254*efe50430STaniya Das 	.clkr = {
5255*efe50430STaniya Das 		.enable_reg = 0x32014,
5256*efe50430STaniya Das 		.enable_mask = BIT(0),
5257*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5258*efe50430STaniya Das 			.name = "gcc_qmip_video_v_cpu_ahb_clk",
5259*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5260*efe50430STaniya Das 		},
5261*efe50430STaniya Das 	},
5262*efe50430STaniya Das };
5263*efe50430STaniya Das 
5264*efe50430STaniya Das static struct clk_branch gcc_qmip_video_vcodec1_ahb_clk = {
5265*efe50430STaniya Das 	.halt_reg = 0x32010,
5266*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5267*efe50430STaniya Das 	.hwcg_reg = 0x32010,
5268*efe50430STaniya Das 	.hwcg_bit = 1,
5269*efe50430STaniya Das 	.clkr = {
5270*efe50430STaniya Das 		.enable_reg = 0x32010,
5271*efe50430STaniya Das 		.enable_mask = BIT(0),
5272*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5273*efe50430STaniya Das 			.name = "gcc_qmip_video_vcodec1_ahb_clk",
5274*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5275*efe50430STaniya Das 		},
5276*efe50430STaniya Das 	},
5277*efe50430STaniya Das };
5278*efe50430STaniya Das 
5279*efe50430STaniya Das static struct clk_branch gcc_qmip_video_vcodec_ahb_clk = {
5280*efe50430STaniya Das 	.halt_reg = 0x3200c,
5281*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5282*efe50430STaniya Das 	.hwcg_reg = 0x3200c,
5283*efe50430STaniya Das 	.hwcg_bit = 1,
5284*efe50430STaniya Das 	.clkr = {
5285*efe50430STaniya Das 		.enable_reg = 0x3200c,
5286*efe50430STaniya Das 		.enable_mask = BIT(0),
5287*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5288*efe50430STaniya Das 			.name = "gcc_qmip_video_vcodec_ahb_clk",
5289*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5290*efe50430STaniya Das 		},
5291*efe50430STaniya Das 	},
5292*efe50430STaniya Das };
5293*efe50430STaniya Das 
5294*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_core_2x_clk = {
5295*efe50430STaniya Das 	.halt_reg = 0xc5040,
5296*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5297*efe50430STaniya Das 	.clkr = {
5298*efe50430STaniya Das 		.enable_reg = 0x62018,
5299*efe50430STaniya Das 		.enable_mask = BIT(5),
5300*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5301*efe50430STaniya Das 			.name = "gcc_qupv3_oob_core_2x_clk",
5302*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5303*efe50430STaniya Das 		},
5304*efe50430STaniya Das 	},
5305*efe50430STaniya Das };
5306*efe50430STaniya Das 
5307*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_core_clk = {
5308*efe50430STaniya Das 	.halt_reg = 0xc502c,
5309*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5310*efe50430STaniya Das 	.clkr = {
5311*efe50430STaniya Das 		.enable_reg = 0x62018,
5312*efe50430STaniya Das 		.enable_mask = BIT(4),
5313*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5314*efe50430STaniya Das 			.name = "gcc_qupv3_oob_core_clk",
5315*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5316*efe50430STaniya Das 		},
5317*efe50430STaniya Das 	},
5318*efe50430STaniya Das };
5319*efe50430STaniya Das 
5320*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_m_ahb_clk = {
5321*efe50430STaniya Das 	.halt_reg = 0xe7004,
5322*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5323*efe50430STaniya Das 	.hwcg_reg = 0xe7004,
5324*efe50430STaniya Das 	.hwcg_bit = 1,
5325*efe50430STaniya Das 	.clkr = {
5326*efe50430STaniya Das 		.enable_reg = 0xe7004,
5327*efe50430STaniya Das 		.enable_mask = BIT(0),
5328*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5329*efe50430STaniya Das 			.name = "gcc_qupv3_oob_m_ahb_clk",
5330*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5331*efe50430STaniya Das 		},
5332*efe50430STaniya Das 	},
5333*efe50430STaniya Das };
5334*efe50430STaniya Das 
5335*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_qspi_s0_clk = {
5336*efe50430STaniya Das 	.halt_reg = 0xe7040,
5337*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5338*efe50430STaniya Das 	.clkr = {
5339*efe50430STaniya Das 		.enable_reg = 0x62018,
5340*efe50430STaniya Das 		.enable_mask = BIT(9),
5341*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5342*efe50430STaniya Das 			.name = "gcc_qupv3_oob_qspi_s0_clk",
5343*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5344*efe50430STaniya Das 				&gcc_qupv3_oob_qspi_s0_clk_src.clkr.hw,
5345*efe50430STaniya Das 			},
5346*efe50430STaniya Das 			.num_parents = 1,
5347*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5348*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5349*efe50430STaniya Das 		},
5350*efe50430STaniya Das 	},
5351*efe50430STaniya Das };
5352*efe50430STaniya Das 
5353*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_qspi_s1_clk = {
5354*efe50430STaniya Das 	.halt_reg = 0xe729c,
5355*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5356*efe50430STaniya Das 	.clkr = {
5357*efe50430STaniya Das 		.enable_reg = 0x62018,
5358*efe50430STaniya Das 		.enable_mask = BIT(10),
5359*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5360*efe50430STaniya Das 			.name = "gcc_qupv3_oob_qspi_s1_clk",
5361*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5362*efe50430STaniya Das 				&gcc_qupv3_oob_qspi_s1_clk_src.clkr.hw,
5363*efe50430STaniya Das 			},
5364*efe50430STaniya Das 			.num_parents = 1,
5365*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5366*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5367*efe50430STaniya Das 		},
5368*efe50430STaniya Das 	},
5369*efe50430STaniya Das };
5370*efe50430STaniya Das 
5371*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_s0_clk = {
5372*efe50430STaniya Das 	.halt_reg = 0xe7014,
5373*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5374*efe50430STaniya Das 	.clkr = {
5375*efe50430STaniya Das 		.enable_reg = 0x62018,
5376*efe50430STaniya Das 		.enable_mask = BIT(6),
5377*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5378*efe50430STaniya Das 			.name = "gcc_qupv3_oob_s0_clk",
5379*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5380*efe50430STaniya Das 				&gcc_qupv3_oob_s0_clk_src.clkr.hw,
5381*efe50430STaniya Das 			},
5382*efe50430STaniya Das 			.num_parents = 1,
5383*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5384*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5385*efe50430STaniya Das 		},
5386*efe50430STaniya Das 	},
5387*efe50430STaniya Das };
5388*efe50430STaniya Das 
5389*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_s1_clk = {
5390*efe50430STaniya Das 	.halt_reg = 0xe7028,
5391*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5392*efe50430STaniya Das 	.clkr = {
5393*efe50430STaniya Das 		.enable_reg = 0x62018,
5394*efe50430STaniya Das 		.enable_mask = BIT(7),
5395*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5396*efe50430STaniya Das 			.name = "gcc_qupv3_oob_s1_clk",
5397*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5398*efe50430STaniya Das 				&gcc_qupv3_oob_s1_clk_src.clkr.hw,
5399*efe50430STaniya Das 			},
5400*efe50430STaniya Das 			.num_parents = 1,
5401*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5402*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5403*efe50430STaniya Das 		},
5404*efe50430STaniya Das 	},
5405*efe50430STaniya Das };
5406*efe50430STaniya Das 
5407*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_s_ahb_clk = {
5408*efe50430STaniya Das 	.halt_reg = 0xc5028,
5409*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5410*efe50430STaniya Das 	.hwcg_reg = 0xc5028,
5411*efe50430STaniya Das 	.hwcg_bit = 1,
5412*efe50430STaniya Das 	.clkr = {
5413*efe50430STaniya Das 		.enable_reg = 0x62018,
5414*efe50430STaniya Das 		.enable_mask = BIT(3),
5415*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5416*efe50430STaniya Das 			.name = "gcc_qupv3_oob_s_ahb_clk",
5417*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5418*efe50430STaniya Das 		},
5419*efe50430STaniya Das 	},
5420*efe50430STaniya Das };
5421*efe50430STaniya Das 
5422*efe50430STaniya Das static struct clk_branch gcc_qupv3_oob_tcxo_clk = {
5423*efe50430STaniya Das 	.halt_reg = 0xe703c,
5424*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5425*efe50430STaniya Das 	.clkr = {
5426*efe50430STaniya Das 		.enable_reg = 0x62018,
5427*efe50430STaniya Das 		.enable_mask = BIT(8),
5428*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5429*efe50430STaniya Das 			.name = "gcc_qupv3_oob_tcxo_clk",
5430*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5431*efe50430STaniya Das 		},
5432*efe50430STaniya Das 	},
5433*efe50430STaniya Das };
5434*efe50430STaniya Das 
5435*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_core_2x_clk = {
5436*efe50430STaniya Das 	.halt_reg = 0xc5448,
5437*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5438*efe50430STaniya Das 	.clkr = {
5439*efe50430STaniya Das 		.enable_reg = 0x62020,
5440*efe50430STaniya Das 		.enable_mask = BIT(12),
5441*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5442*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_core_2x_clk",
5443*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5444*efe50430STaniya Das 		},
5445*efe50430STaniya Das 	},
5446*efe50430STaniya Das };
5447*efe50430STaniya Das 
5448*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_core_clk = {
5449*efe50430STaniya Das 	.halt_reg = 0xc5434,
5450*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5451*efe50430STaniya Das 	.clkr = {
5452*efe50430STaniya Das 		.enable_reg = 0x62020,
5453*efe50430STaniya Das 		.enable_mask = BIT(11),
5454*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5455*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_core_clk",
5456*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5457*efe50430STaniya Das 		},
5458*efe50430STaniya Das 	},
5459*efe50430STaniya Das };
5460*efe50430STaniya Das 
5461*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_qspi_s2_clk = {
5462*efe50430STaniya Das 	.halt_reg = 0x2879c,
5463*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5464*efe50430STaniya Das 	.clkr = {
5465*efe50430STaniya Das 		.enable_reg = 0x62020,
5466*efe50430STaniya Das 		.enable_mask = BIT(22),
5467*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5468*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_qspi_s2_clk",
5469*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5470*efe50430STaniya Das 				&gcc_qupv3_wrap0_qspi_s2_clk_src.clkr.hw,
5471*efe50430STaniya Das 			},
5472*efe50430STaniya Das 			.num_parents = 1,
5473*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5474*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5475*efe50430STaniya Das 		},
5476*efe50430STaniya Das 	},
5477*efe50430STaniya Das };
5478*efe50430STaniya Das 
5479*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_qspi_s3_clk = {
5480*efe50430STaniya Das 	.halt_reg = 0x288cc,
5481*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5482*efe50430STaniya Das 	.clkr = {
5483*efe50430STaniya Das 		.enable_reg = 0x62020,
5484*efe50430STaniya Das 		.enable_mask = BIT(23),
5485*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5486*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_qspi_s3_clk",
5487*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5488*efe50430STaniya Das 				&gcc_qupv3_wrap0_qspi_s3_clk_src.clkr.hw,
5489*efe50430STaniya Das 			},
5490*efe50430STaniya Das 			.num_parents = 1,
5491*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5492*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5493*efe50430STaniya Das 		},
5494*efe50430STaniya Das 	},
5495*efe50430STaniya Das };
5496*efe50430STaniya Das 
5497*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_qspi_s6_clk = {
5498*efe50430STaniya Das 	.halt_reg = 0x28798,
5499*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5500*efe50430STaniya Das 	.clkr = {
5501*efe50430STaniya Das 		.enable_reg = 0x62020,
5502*efe50430STaniya Das 		.enable_mask = BIT(21),
5503*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5504*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_qspi_s6_clk",
5505*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5506*efe50430STaniya Das 				&gcc_qupv3_wrap0_qspi_s6_clk_src.clkr.hw,
5507*efe50430STaniya Das 			},
5508*efe50430STaniya Das 			.num_parents = 1,
5509*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5510*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5511*efe50430STaniya Das 		},
5512*efe50430STaniya Das 	},
5513*efe50430STaniya Das };
5514*efe50430STaniya Das 
5515*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s0_clk = {
5516*efe50430STaniya Das 	.halt_reg = 0x28004,
5517*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5518*efe50430STaniya Das 	.clkr = {
5519*efe50430STaniya Das 		.enable_reg = 0x62020,
5520*efe50430STaniya Das 		.enable_mask = BIT(13),
5521*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5522*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s0_clk",
5523*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5524*efe50430STaniya Das 				&gcc_qupv3_wrap0_s0_clk_src.clkr.hw,
5525*efe50430STaniya Das 			},
5526*efe50430STaniya Das 			.num_parents = 1,
5527*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5528*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5529*efe50430STaniya Das 		},
5530*efe50430STaniya Das 	},
5531*efe50430STaniya Das };
5532*efe50430STaniya Das 
5533*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s1_clk = {
5534*efe50430STaniya Das 	.halt_reg = 0x28140,
5535*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5536*efe50430STaniya Das 	.clkr = {
5537*efe50430STaniya Das 		.enable_reg = 0x62020,
5538*efe50430STaniya Das 		.enable_mask = BIT(14),
5539*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5540*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s1_clk",
5541*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5542*efe50430STaniya Das 				&gcc_qupv3_wrap0_s1_clk_src.clkr.hw,
5543*efe50430STaniya Das 			},
5544*efe50430STaniya Das 			.num_parents = 1,
5545*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5546*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5547*efe50430STaniya Das 		},
5548*efe50430STaniya Das 	},
5549*efe50430STaniya Das };
5550*efe50430STaniya Das 
5551*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s2_clk = {
5552*efe50430STaniya Das 	.halt_reg = 0x2827c,
5553*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5554*efe50430STaniya Das 	.clkr = {
5555*efe50430STaniya Das 		.enable_reg = 0x62020,
5556*efe50430STaniya Das 		.enable_mask = BIT(15),
5557*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5558*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s2_clk",
5559*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5560*efe50430STaniya Das 				&gcc_qupv3_wrap0_s2_clk_src.clkr.hw,
5561*efe50430STaniya Das 			},
5562*efe50430STaniya Das 			.num_parents = 1,
5563*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5564*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5565*efe50430STaniya Das 		},
5566*efe50430STaniya Das 	},
5567*efe50430STaniya Das };
5568*efe50430STaniya Das 
5569*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s3_clk = {
5570*efe50430STaniya Das 	.halt_reg = 0x28290,
5571*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5572*efe50430STaniya Das 	.clkr = {
5573*efe50430STaniya Das 		.enable_reg = 0x62020,
5574*efe50430STaniya Das 		.enable_mask = BIT(16),
5575*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5576*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s3_clk",
5577*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5578*efe50430STaniya Das 				&gcc_qupv3_wrap0_s3_clk_src.clkr.hw,
5579*efe50430STaniya Das 			},
5580*efe50430STaniya Das 			.num_parents = 1,
5581*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5582*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5583*efe50430STaniya Das 		},
5584*efe50430STaniya Das 	},
5585*efe50430STaniya Das };
5586*efe50430STaniya Das 
5587*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s4_clk = {
5588*efe50430STaniya Das 	.halt_reg = 0x282a4,
5589*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5590*efe50430STaniya Das 	.clkr = {
5591*efe50430STaniya Das 		.enable_reg = 0x62020,
5592*efe50430STaniya Das 		.enable_mask = BIT(17),
5593*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5594*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s4_clk",
5595*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5596*efe50430STaniya Das 				&gcc_qupv3_wrap0_s4_clk_src.clkr.hw,
5597*efe50430STaniya Das 			},
5598*efe50430STaniya Das 			.num_parents = 1,
5599*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5600*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5601*efe50430STaniya Das 		},
5602*efe50430STaniya Das 	},
5603*efe50430STaniya Das };
5604*efe50430STaniya Das 
5605*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s5_clk = {
5606*efe50430STaniya Das 	.halt_reg = 0x283e0,
5607*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5608*efe50430STaniya Das 	.clkr = {
5609*efe50430STaniya Das 		.enable_reg = 0x62020,
5610*efe50430STaniya Das 		.enable_mask = BIT(18),
5611*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5612*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s5_clk",
5613*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5614*efe50430STaniya Das 				&gcc_qupv3_wrap0_s5_clk_src.clkr.hw,
5615*efe50430STaniya Das 			},
5616*efe50430STaniya Das 			.num_parents = 1,
5617*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5618*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5619*efe50430STaniya Das 		},
5620*efe50430STaniya Das 	},
5621*efe50430STaniya Das };
5622*efe50430STaniya Das 
5623*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s6_clk = {
5624*efe50430STaniya Das 	.halt_reg = 0x2851c,
5625*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5626*efe50430STaniya Das 	.clkr = {
5627*efe50430STaniya Das 		.enable_reg = 0x62020,
5628*efe50430STaniya Das 		.enable_mask = BIT(19),
5629*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5630*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s6_clk",
5631*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5632*efe50430STaniya Das 				&gcc_qupv3_wrap0_s6_clk_src.clkr.hw,
5633*efe50430STaniya Das 			},
5634*efe50430STaniya Das 			.num_parents = 1,
5635*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5636*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5637*efe50430STaniya Das 		},
5638*efe50430STaniya Das 	},
5639*efe50430STaniya Das };
5640*efe50430STaniya Das 
5641*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap0_s7_clk = {
5642*efe50430STaniya Das 	.halt_reg = 0x28530,
5643*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5644*efe50430STaniya Das 	.clkr = {
5645*efe50430STaniya Das 		.enable_reg = 0x62020,
5646*efe50430STaniya Das 		.enable_mask = BIT(20),
5647*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5648*efe50430STaniya Das 			.name = "gcc_qupv3_wrap0_s7_clk",
5649*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5650*efe50430STaniya Das 				&gcc_qupv3_wrap0_s7_clk_src.clkr.hw,
5651*efe50430STaniya Das 			},
5652*efe50430STaniya Das 			.num_parents = 1,
5653*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5654*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5655*efe50430STaniya Das 		},
5656*efe50430STaniya Das 	},
5657*efe50430STaniya Das };
5658*efe50430STaniya Das 
5659*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_core_2x_clk = {
5660*efe50430STaniya Das 	.halt_reg = 0xc5198,
5661*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5662*efe50430STaniya Das 	.clkr = {
5663*efe50430STaniya Das 		.enable_reg = 0x62018,
5664*efe50430STaniya Das 		.enable_mask = BIT(14),
5665*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5666*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_core_2x_clk",
5667*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5668*efe50430STaniya Das 		},
5669*efe50430STaniya Das 	},
5670*efe50430STaniya Das };
5671*efe50430STaniya Das 
5672*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_core_clk = {
5673*efe50430STaniya Das 	.halt_reg = 0xc5184,
5674*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5675*efe50430STaniya Das 	.clkr = {
5676*efe50430STaniya Das 		.enable_reg = 0x62018,
5677*efe50430STaniya Das 		.enable_mask = BIT(13),
5678*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5679*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_core_clk",
5680*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5681*efe50430STaniya Das 		},
5682*efe50430STaniya Das 	},
5683*efe50430STaniya Das };
5684*efe50430STaniya Das 
5685*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_qspi_s2_clk = {
5686*efe50430STaniya Das 	.halt_reg = 0xb379c,
5687*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5688*efe50430STaniya Das 	.clkr = {
5689*efe50430STaniya Das 		.enable_reg = 0x62018,
5690*efe50430STaniya Das 		.enable_mask = BIT(24),
5691*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5692*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_qspi_s2_clk",
5693*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5694*efe50430STaniya Das 				&gcc_qupv3_wrap1_qspi_s2_clk_src.clkr.hw,
5695*efe50430STaniya Das 			},
5696*efe50430STaniya Das 			.num_parents = 1,
5697*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5698*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5699*efe50430STaniya Das 		},
5700*efe50430STaniya Das 	},
5701*efe50430STaniya Das };
5702*efe50430STaniya Das 
5703*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_qspi_s3_clk = {
5704*efe50430STaniya Das 	.halt_reg = 0xb38cc,
5705*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5706*efe50430STaniya Das 	.clkr = {
5707*efe50430STaniya Das 		.enable_reg = 0x62018,
5708*efe50430STaniya Das 		.enable_mask = BIT(25),
5709*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5710*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_qspi_s3_clk",
5711*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5712*efe50430STaniya Das 				&gcc_qupv3_wrap1_qspi_s3_clk_src.clkr.hw,
5713*efe50430STaniya Das 			},
5714*efe50430STaniya Das 			.num_parents = 1,
5715*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5716*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5717*efe50430STaniya Das 		},
5718*efe50430STaniya Das 	},
5719*efe50430STaniya Das };
5720*efe50430STaniya Das 
5721*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_qspi_s6_clk = {
5722*efe50430STaniya Das 	.halt_reg = 0xb3798,
5723*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5724*efe50430STaniya Das 	.clkr = {
5725*efe50430STaniya Das 		.enable_reg = 0x62018,
5726*efe50430STaniya Das 		.enable_mask = BIT(23),
5727*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5728*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_qspi_s6_clk",
5729*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5730*efe50430STaniya Das 				&gcc_qupv3_wrap1_qspi_s6_clk_src.clkr.hw,
5731*efe50430STaniya Das 			},
5732*efe50430STaniya Das 			.num_parents = 1,
5733*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5734*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5735*efe50430STaniya Das 		},
5736*efe50430STaniya Das 	},
5737*efe50430STaniya Das };
5738*efe50430STaniya Das 
5739*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s0_clk = {
5740*efe50430STaniya Das 	.halt_reg = 0xb3004,
5741*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5742*efe50430STaniya Das 	.clkr = {
5743*efe50430STaniya Das 		.enable_reg = 0x62018,
5744*efe50430STaniya Das 		.enable_mask = BIT(15),
5745*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5746*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s0_clk",
5747*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5748*efe50430STaniya Das 				&gcc_qupv3_wrap1_s0_clk_src.clkr.hw,
5749*efe50430STaniya Das 			},
5750*efe50430STaniya Das 			.num_parents = 1,
5751*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5752*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5753*efe50430STaniya Das 		},
5754*efe50430STaniya Das 	},
5755*efe50430STaniya Das };
5756*efe50430STaniya Das 
5757*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s1_clk = {
5758*efe50430STaniya Das 	.halt_reg = 0xb3140,
5759*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5760*efe50430STaniya Das 	.clkr = {
5761*efe50430STaniya Das 		.enable_reg = 0x62018,
5762*efe50430STaniya Das 		.enable_mask = BIT(16),
5763*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5764*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s1_clk",
5765*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5766*efe50430STaniya Das 				&gcc_qupv3_wrap1_s1_clk_src.clkr.hw,
5767*efe50430STaniya Das 			},
5768*efe50430STaniya Das 			.num_parents = 1,
5769*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5770*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5771*efe50430STaniya Das 		},
5772*efe50430STaniya Das 	},
5773*efe50430STaniya Das };
5774*efe50430STaniya Das 
5775*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s2_clk = {
5776*efe50430STaniya Das 	.halt_reg = 0xb327c,
5777*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5778*efe50430STaniya Das 	.clkr = {
5779*efe50430STaniya Das 		.enable_reg = 0x62018,
5780*efe50430STaniya Das 		.enable_mask = BIT(17),
5781*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5782*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s2_clk",
5783*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5784*efe50430STaniya Das 				&gcc_qupv3_wrap1_s2_clk_src.clkr.hw,
5785*efe50430STaniya Das 			},
5786*efe50430STaniya Das 			.num_parents = 1,
5787*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5788*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5789*efe50430STaniya Das 		},
5790*efe50430STaniya Das 	},
5791*efe50430STaniya Das };
5792*efe50430STaniya Das 
5793*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s3_clk = {
5794*efe50430STaniya Das 	.halt_reg = 0xb3290,
5795*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5796*efe50430STaniya Das 	.clkr = {
5797*efe50430STaniya Das 		.enable_reg = 0x62018,
5798*efe50430STaniya Das 		.enable_mask = BIT(18),
5799*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5800*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s3_clk",
5801*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5802*efe50430STaniya Das 				&gcc_qupv3_wrap1_s3_clk_src.clkr.hw,
5803*efe50430STaniya Das 			},
5804*efe50430STaniya Das 			.num_parents = 1,
5805*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5806*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5807*efe50430STaniya Das 		},
5808*efe50430STaniya Das 	},
5809*efe50430STaniya Das };
5810*efe50430STaniya Das 
5811*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s4_clk = {
5812*efe50430STaniya Das 	.halt_reg = 0xb32a4,
5813*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5814*efe50430STaniya Das 	.clkr = {
5815*efe50430STaniya Das 		.enable_reg = 0x62018,
5816*efe50430STaniya Das 		.enable_mask = BIT(19),
5817*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5818*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s4_clk",
5819*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5820*efe50430STaniya Das 				&gcc_qupv3_wrap1_s4_clk_src.clkr.hw,
5821*efe50430STaniya Das 			},
5822*efe50430STaniya Das 			.num_parents = 1,
5823*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5824*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5825*efe50430STaniya Das 		},
5826*efe50430STaniya Das 	},
5827*efe50430STaniya Das };
5828*efe50430STaniya Das 
5829*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s5_clk = {
5830*efe50430STaniya Das 	.halt_reg = 0xb33e0,
5831*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5832*efe50430STaniya Das 	.clkr = {
5833*efe50430STaniya Das 		.enable_reg = 0x62018,
5834*efe50430STaniya Das 		.enable_mask = BIT(20),
5835*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5836*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s5_clk",
5837*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5838*efe50430STaniya Das 				&gcc_qupv3_wrap1_s5_clk_src.clkr.hw,
5839*efe50430STaniya Das 			},
5840*efe50430STaniya Das 			.num_parents = 1,
5841*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5842*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5843*efe50430STaniya Das 		},
5844*efe50430STaniya Das 	},
5845*efe50430STaniya Das };
5846*efe50430STaniya Das 
5847*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s6_clk = {
5848*efe50430STaniya Das 	.halt_reg = 0xb351c,
5849*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5850*efe50430STaniya Das 	.clkr = {
5851*efe50430STaniya Das 		.enable_reg = 0x62018,
5852*efe50430STaniya Das 		.enable_mask = BIT(21),
5853*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5854*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s6_clk",
5855*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5856*efe50430STaniya Das 				&gcc_qupv3_wrap1_s6_clk_src.clkr.hw,
5857*efe50430STaniya Das 			},
5858*efe50430STaniya Das 			.num_parents = 1,
5859*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5860*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5861*efe50430STaniya Das 		},
5862*efe50430STaniya Das 	},
5863*efe50430STaniya Das };
5864*efe50430STaniya Das 
5865*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap1_s7_clk = {
5866*efe50430STaniya Das 	.halt_reg = 0xb3530,
5867*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5868*efe50430STaniya Das 	.clkr = {
5869*efe50430STaniya Das 		.enable_reg = 0x62018,
5870*efe50430STaniya Das 		.enable_mask = BIT(22),
5871*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5872*efe50430STaniya Das 			.name = "gcc_qupv3_wrap1_s7_clk",
5873*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5874*efe50430STaniya Das 				&gcc_qupv3_wrap1_s7_clk_src.clkr.hw,
5875*efe50430STaniya Das 			},
5876*efe50430STaniya Das 			.num_parents = 1,
5877*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5878*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5879*efe50430STaniya Das 		},
5880*efe50430STaniya Das 	},
5881*efe50430STaniya Das };
5882*efe50430STaniya Das 
5883*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_core_2x_clk = {
5884*efe50430STaniya Das 	.halt_reg = 0xc52f0,
5885*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5886*efe50430STaniya Das 	.clkr = {
5887*efe50430STaniya Das 		.enable_reg = 0x62018,
5888*efe50430STaniya Das 		.enable_mask = BIT(29),
5889*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5890*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_core_2x_clk",
5891*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5892*efe50430STaniya Das 		},
5893*efe50430STaniya Das 	},
5894*efe50430STaniya Das };
5895*efe50430STaniya Das 
5896*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_core_clk = {
5897*efe50430STaniya Das 	.halt_reg = 0xc52dc,
5898*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5899*efe50430STaniya Das 	.clkr = {
5900*efe50430STaniya Das 		.enable_reg = 0x62018,
5901*efe50430STaniya Das 		.enable_mask = BIT(28),
5902*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5903*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_core_clk",
5904*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5905*efe50430STaniya Das 		},
5906*efe50430STaniya Das 	},
5907*efe50430STaniya Das };
5908*efe50430STaniya Das 
5909*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_qspi_s2_clk = {
5910*efe50430STaniya Das 	.halt_reg = 0xb479c,
5911*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5912*efe50430STaniya Das 	.clkr = {
5913*efe50430STaniya Das 		.enable_reg = 0x62020,
5914*efe50430STaniya Das 		.enable_mask = BIT(7),
5915*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5916*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_qspi_s2_clk",
5917*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5918*efe50430STaniya Das 				&gcc_qupv3_wrap2_qspi_s2_clk_src.clkr.hw,
5919*efe50430STaniya Das 			},
5920*efe50430STaniya Das 			.num_parents = 1,
5921*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5922*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5923*efe50430STaniya Das 		},
5924*efe50430STaniya Das 	},
5925*efe50430STaniya Das };
5926*efe50430STaniya Das 
5927*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_qspi_s3_clk = {
5928*efe50430STaniya Das 	.halt_reg = 0xb48cc,
5929*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5930*efe50430STaniya Das 	.clkr = {
5931*efe50430STaniya Das 		.enable_reg = 0x62020,
5932*efe50430STaniya Das 		.enable_mask = BIT(8),
5933*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5934*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_qspi_s3_clk",
5935*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5936*efe50430STaniya Das 				&gcc_qupv3_wrap2_qspi_s3_clk_src.clkr.hw,
5937*efe50430STaniya Das 			},
5938*efe50430STaniya Das 			.num_parents = 1,
5939*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5940*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5941*efe50430STaniya Das 		},
5942*efe50430STaniya Das 	},
5943*efe50430STaniya Das };
5944*efe50430STaniya Das 
5945*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_qspi_s6_clk = {
5946*efe50430STaniya Das 	.halt_reg = 0xb4798,
5947*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5948*efe50430STaniya Das 	.clkr = {
5949*efe50430STaniya Das 		.enable_reg = 0x62020,
5950*efe50430STaniya Das 		.enable_mask = BIT(6),
5951*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5952*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_qspi_s6_clk",
5953*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5954*efe50430STaniya Das 				&gcc_qupv3_wrap2_qspi_s6_clk_src.clkr.hw,
5955*efe50430STaniya Das 			},
5956*efe50430STaniya Das 			.num_parents = 1,
5957*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5958*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5959*efe50430STaniya Das 		},
5960*efe50430STaniya Das 	},
5961*efe50430STaniya Das };
5962*efe50430STaniya Das 
5963*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s0_clk = {
5964*efe50430STaniya Das 	.halt_reg = 0xb4004,
5965*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5966*efe50430STaniya Das 	.clkr = {
5967*efe50430STaniya Das 		.enable_reg = 0x62018,
5968*efe50430STaniya Das 		.enable_mask = BIT(30),
5969*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5970*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s0_clk",
5971*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5972*efe50430STaniya Das 				&gcc_qupv3_wrap2_s0_clk_src.clkr.hw,
5973*efe50430STaniya Das 			},
5974*efe50430STaniya Das 			.num_parents = 1,
5975*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5976*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5977*efe50430STaniya Das 		},
5978*efe50430STaniya Das 	},
5979*efe50430STaniya Das };
5980*efe50430STaniya Das 
5981*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s1_clk = {
5982*efe50430STaniya Das 	.halt_reg = 0xb4140,
5983*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
5984*efe50430STaniya Das 	.clkr = {
5985*efe50430STaniya Das 		.enable_reg = 0x62018,
5986*efe50430STaniya Das 		.enable_mask = BIT(31),
5987*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
5988*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s1_clk",
5989*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
5990*efe50430STaniya Das 				&gcc_qupv3_wrap2_s1_clk_src.clkr.hw,
5991*efe50430STaniya Das 			},
5992*efe50430STaniya Das 			.num_parents = 1,
5993*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
5994*efe50430STaniya Das 			.ops = &clk_branch2_ops,
5995*efe50430STaniya Das 		},
5996*efe50430STaniya Das 	},
5997*efe50430STaniya Das };
5998*efe50430STaniya Das 
5999*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s2_clk = {
6000*efe50430STaniya Das 	.halt_reg = 0xb427c,
6001*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6002*efe50430STaniya Das 	.clkr = {
6003*efe50430STaniya Das 		.enable_reg = 0x62020,
6004*efe50430STaniya Das 		.enable_mask = BIT(0),
6005*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6006*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s2_clk",
6007*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6008*efe50430STaniya Das 				&gcc_qupv3_wrap2_s2_clk_src.clkr.hw,
6009*efe50430STaniya Das 			},
6010*efe50430STaniya Das 			.num_parents = 1,
6011*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6012*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6013*efe50430STaniya Das 		},
6014*efe50430STaniya Das 	},
6015*efe50430STaniya Das };
6016*efe50430STaniya Das 
6017*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s3_clk = {
6018*efe50430STaniya Das 	.halt_reg = 0xb4290,
6019*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6020*efe50430STaniya Das 	.clkr = {
6021*efe50430STaniya Das 		.enable_reg = 0x62020,
6022*efe50430STaniya Das 		.enable_mask = BIT(1),
6023*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6024*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s3_clk",
6025*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6026*efe50430STaniya Das 				&gcc_qupv3_wrap2_s3_clk_src.clkr.hw,
6027*efe50430STaniya Das 			},
6028*efe50430STaniya Das 			.num_parents = 1,
6029*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6030*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6031*efe50430STaniya Das 		},
6032*efe50430STaniya Das 	},
6033*efe50430STaniya Das };
6034*efe50430STaniya Das 
6035*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s4_clk = {
6036*efe50430STaniya Das 	.halt_reg = 0xb42a4,
6037*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6038*efe50430STaniya Das 	.clkr = {
6039*efe50430STaniya Das 		.enable_reg = 0x62020,
6040*efe50430STaniya Das 		.enable_mask = BIT(2),
6041*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6042*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s4_clk",
6043*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6044*efe50430STaniya Das 				&gcc_qupv3_wrap2_s4_clk_src.clkr.hw,
6045*efe50430STaniya Das 			},
6046*efe50430STaniya Das 			.num_parents = 1,
6047*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6048*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6049*efe50430STaniya Das 		},
6050*efe50430STaniya Das 	},
6051*efe50430STaniya Das };
6052*efe50430STaniya Das 
6053*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s5_clk = {
6054*efe50430STaniya Das 	.halt_reg = 0xb43e0,
6055*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6056*efe50430STaniya Das 	.clkr = {
6057*efe50430STaniya Das 		.enable_reg = 0x62020,
6058*efe50430STaniya Das 		.enable_mask = BIT(3),
6059*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6060*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s5_clk",
6061*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6062*efe50430STaniya Das 				&gcc_qupv3_wrap2_s5_clk_src.clkr.hw,
6063*efe50430STaniya Das 			},
6064*efe50430STaniya Das 			.num_parents = 1,
6065*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6066*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6067*efe50430STaniya Das 		},
6068*efe50430STaniya Das 	},
6069*efe50430STaniya Das };
6070*efe50430STaniya Das 
6071*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s6_clk = {
6072*efe50430STaniya Das 	.halt_reg = 0xb451c,
6073*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6074*efe50430STaniya Das 	.clkr = {
6075*efe50430STaniya Das 		.enable_reg = 0x62020,
6076*efe50430STaniya Das 		.enable_mask = BIT(4),
6077*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6078*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s6_clk",
6079*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6080*efe50430STaniya Das 				&gcc_qupv3_wrap2_s6_clk_src.clkr.hw,
6081*efe50430STaniya Das 			},
6082*efe50430STaniya Das 			.num_parents = 1,
6083*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6084*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6085*efe50430STaniya Das 		},
6086*efe50430STaniya Das 	},
6087*efe50430STaniya Das };
6088*efe50430STaniya Das 
6089*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap2_s7_clk = {
6090*efe50430STaniya Das 	.halt_reg = 0xb4530,
6091*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6092*efe50430STaniya Das 	.clkr = {
6093*efe50430STaniya Das 		.enable_reg = 0x62020,
6094*efe50430STaniya Das 		.enable_mask = BIT(5),
6095*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6096*efe50430STaniya Das 			.name = "gcc_qupv3_wrap2_s7_clk",
6097*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6098*efe50430STaniya Das 				&gcc_qupv3_wrap2_s7_clk_src.clkr.hw,
6099*efe50430STaniya Das 			},
6100*efe50430STaniya Das 			.num_parents = 1,
6101*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6102*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6103*efe50430STaniya Das 		},
6104*efe50430STaniya Das 	},
6105*efe50430STaniya Das };
6106*efe50430STaniya Das 
6107*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_0_m_ahb_clk = {
6108*efe50430STaniya Das 	.halt_reg = 0xc542c,
6109*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6110*efe50430STaniya Das 	.hwcg_reg = 0xc542c,
6111*efe50430STaniya Das 	.hwcg_bit = 1,
6112*efe50430STaniya Das 	.clkr = {
6113*efe50430STaniya Das 		.enable_reg = 0x62020,
6114*efe50430STaniya Das 		.enable_mask = BIT(9),
6115*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6116*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_0_m_ahb_clk",
6117*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6118*efe50430STaniya Das 		},
6119*efe50430STaniya Das 	},
6120*efe50430STaniya Das };
6121*efe50430STaniya Das 
6122*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_0_s_ahb_clk = {
6123*efe50430STaniya Das 	.halt_reg = 0xc5430,
6124*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6125*efe50430STaniya Das 	.hwcg_reg = 0xc5430,
6126*efe50430STaniya Das 	.hwcg_bit = 1,
6127*efe50430STaniya Das 	.clkr = {
6128*efe50430STaniya Das 		.enable_reg = 0x62020,
6129*efe50430STaniya Das 		.enable_mask = BIT(10),
6130*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6131*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_0_s_ahb_clk",
6132*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6133*efe50430STaniya Das 		},
6134*efe50430STaniya Das 	},
6135*efe50430STaniya Das };
6136*efe50430STaniya Das 
6137*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_1_m_ahb_clk = {
6138*efe50430STaniya Das 	.halt_reg = 0xc517c,
6139*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6140*efe50430STaniya Das 	.hwcg_reg = 0xc517c,
6141*efe50430STaniya Das 	.hwcg_bit = 1,
6142*efe50430STaniya Das 	.clkr = {
6143*efe50430STaniya Das 		.enable_reg = 0x62018,
6144*efe50430STaniya Das 		.enable_mask = BIT(11),
6145*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6146*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_1_m_ahb_clk",
6147*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6148*efe50430STaniya Das 		},
6149*efe50430STaniya Das 	},
6150*efe50430STaniya Das };
6151*efe50430STaniya Das 
6152*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_1_s_ahb_clk = {
6153*efe50430STaniya Das 	.halt_reg = 0xc5180,
6154*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6155*efe50430STaniya Das 	.hwcg_reg = 0xc5180,
6156*efe50430STaniya Das 	.hwcg_bit = 1,
6157*efe50430STaniya Das 	.clkr = {
6158*efe50430STaniya Das 		.enable_reg = 0x62018,
6159*efe50430STaniya Das 		.enable_mask = BIT(12),
6160*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6161*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_1_s_ahb_clk",
6162*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6163*efe50430STaniya Das 		},
6164*efe50430STaniya Das 	},
6165*efe50430STaniya Das };
6166*efe50430STaniya Das 
6167*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_2_m_ahb_clk = {
6168*efe50430STaniya Das 	.halt_reg = 0xc52d4,
6169*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6170*efe50430STaniya Das 	.hwcg_reg = 0xc52d4,
6171*efe50430STaniya Das 	.hwcg_bit = 1,
6172*efe50430STaniya Das 	.clkr = {
6173*efe50430STaniya Das 		.enable_reg = 0x62018,
6174*efe50430STaniya Das 		.enable_mask = BIT(26),
6175*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6176*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_2_m_ahb_clk",
6177*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6178*efe50430STaniya Das 		},
6179*efe50430STaniya Das 	},
6180*efe50430STaniya Das };
6181*efe50430STaniya Das 
6182*efe50430STaniya Das static struct clk_branch gcc_qupv3_wrap_2_s_ahb_clk = {
6183*efe50430STaniya Das 	.halt_reg = 0xc52d8,
6184*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6185*efe50430STaniya Das 	.hwcg_reg = 0xc52d8,
6186*efe50430STaniya Das 	.hwcg_bit = 1,
6187*efe50430STaniya Das 	.clkr = {
6188*efe50430STaniya Das 		.enable_reg = 0x62018,
6189*efe50430STaniya Das 		.enable_mask = BIT(27),
6190*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6191*efe50430STaniya Das 			.name = "gcc_qupv3_wrap_2_s_ahb_clk",
6192*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6193*efe50430STaniya Das 		},
6194*efe50430STaniya Das 	},
6195*efe50430STaniya Das };
6196*efe50430STaniya Das 
6197*efe50430STaniya Das static struct clk_branch gcc_sdcc2_ahb_clk = {
6198*efe50430STaniya Das 	.halt_reg = 0xb0014,
6199*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6200*efe50430STaniya Das 	.clkr = {
6201*efe50430STaniya Das 		.enable_reg = 0xb0014,
6202*efe50430STaniya Das 		.enable_mask = BIT(0),
6203*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6204*efe50430STaniya Das 			.name = "gcc_sdcc2_ahb_clk",
6205*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6206*efe50430STaniya Das 		},
6207*efe50430STaniya Das 	},
6208*efe50430STaniya Das };
6209*efe50430STaniya Das 
6210*efe50430STaniya Das static struct clk_branch gcc_sdcc2_apps_clk = {
6211*efe50430STaniya Das 	.halt_reg = 0xb0004,
6212*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6213*efe50430STaniya Das 	.clkr = {
6214*efe50430STaniya Das 		.enable_reg = 0xb0004,
6215*efe50430STaniya Das 		.enable_mask = BIT(0),
6216*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6217*efe50430STaniya Das 			.name = "gcc_sdcc2_apps_clk",
6218*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6219*efe50430STaniya Das 				&gcc_sdcc2_apps_clk_src.clkr.hw,
6220*efe50430STaniya Das 			},
6221*efe50430STaniya Das 			.num_parents = 1,
6222*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6223*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6224*efe50430STaniya Das 		},
6225*efe50430STaniya Das 	},
6226*efe50430STaniya Das };
6227*efe50430STaniya Das 
6228*efe50430STaniya Das static struct clk_branch gcc_sdcc4_ahb_clk = {
6229*efe50430STaniya Das 	.halt_reg = 0xdf014,
6230*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6231*efe50430STaniya Das 	.clkr = {
6232*efe50430STaniya Das 		.enable_reg = 0xdf014,
6233*efe50430STaniya Das 		.enable_mask = BIT(0),
6234*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6235*efe50430STaniya Das 			.name = "gcc_sdcc4_ahb_clk",
6236*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6237*efe50430STaniya Das 		},
6238*efe50430STaniya Das 	},
6239*efe50430STaniya Das };
6240*efe50430STaniya Das 
6241*efe50430STaniya Das static struct clk_branch gcc_sdcc4_apps_clk = {
6242*efe50430STaniya Das 	.halt_reg = 0xdf004,
6243*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6244*efe50430STaniya Das 	.clkr = {
6245*efe50430STaniya Das 		.enable_reg = 0xdf004,
6246*efe50430STaniya Das 		.enable_mask = BIT(0),
6247*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6248*efe50430STaniya Das 			.name = "gcc_sdcc4_apps_clk",
6249*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6250*efe50430STaniya Das 				&gcc_sdcc4_apps_clk_src.clkr.hw,
6251*efe50430STaniya Das 			},
6252*efe50430STaniya Das 			.num_parents = 1,
6253*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6254*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6255*efe50430STaniya Das 		},
6256*efe50430STaniya Das 	},
6257*efe50430STaniya Das };
6258*efe50430STaniya Das 
6259*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_ahb_clk = {
6260*efe50430STaniya Das 	.halt_reg = 0xba504,
6261*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6262*efe50430STaniya Das 	.hwcg_reg = 0xba504,
6263*efe50430STaniya Das 	.hwcg_bit = 1,
6264*efe50430STaniya Das 	.clkr = {
6265*efe50430STaniya Das 		.enable_reg = 0xba504,
6266*efe50430STaniya Das 		.enable_mask = BIT(0),
6267*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6268*efe50430STaniya Das 			.name = "gcc_ufs_phy_ahb_clk",
6269*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6270*efe50430STaniya Das 		},
6271*efe50430STaniya Das 	},
6272*efe50430STaniya Das };
6273*efe50430STaniya Das 
6274*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_axi_clk = {
6275*efe50430STaniya Das 	.halt_reg = 0x7701c,
6276*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6277*efe50430STaniya Das 	.hwcg_reg = 0x7701c,
6278*efe50430STaniya Das 	.hwcg_bit = 1,
6279*efe50430STaniya Das 	.clkr = {
6280*efe50430STaniya Das 		.enable_reg = 0x7701c,
6281*efe50430STaniya Das 		.enable_mask = BIT(0),
6282*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6283*efe50430STaniya Das 			.name = "gcc_ufs_phy_axi_clk",
6284*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6285*efe50430STaniya Das 				&gcc_ufs_phy_axi_clk_src.clkr.hw,
6286*efe50430STaniya Das 			},
6287*efe50430STaniya Das 			.num_parents = 1,
6288*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6289*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6290*efe50430STaniya Das 		},
6291*efe50430STaniya Das 	},
6292*efe50430STaniya Das };
6293*efe50430STaniya Das 
6294*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_ice_core_clk = {
6295*efe50430STaniya Das 	.halt_reg = 0x77080,
6296*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6297*efe50430STaniya Das 	.hwcg_reg = 0x77080,
6298*efe50430STaniya Das 	.hwcg_bit = 1,
6299*efe50430STaniya Das 	.clkr = {
6300*efe50430STaniya Das 		.enable_reg = 0x77080,
6301*efe50430STaniya Das 		.enable_mask = BIT(0),
6302*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6303*efe50430STaniya Das 			.name = "gcc_ufs_phy_ice_core_clk",
6304*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6305*efe50430STaniya Das 				&gcc_ufs_phy_ice_core_clk_src.clkr.hw,
6306*efe50430STaniya Das 			},
6307*efe50430STaniya Das 			.num_parents = 1,
6308*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6309*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6310*efe50430STaniya Das 		},
6311*efe50430STaniya Das 	},
6312*efe50430STaniya Das };
6313*efe50430STaniya Das 
6314*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_phy_aux_clk = {
6315*efe50430STaniya Das 	.halt_reg = 0x770c0,
6316*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6317*efe50430STaniya Das 	.hwcg_reg = 0x770c0,
6318*efe50430STaniya Das 	.hwcg_bit = 1,
6319*efe50430STaniya Das 	.clkr = {
6320*efe50430STaniya Das 		.enable_reg = 0x770c0,
6321*efe50430STaniya Das 		.enable_mask = BIT(0),
6322*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6323*efe50430STaniya Das 			.name = "gcc_ufs_phy_phy_aux_clk",
6324*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6325*efe50430STaniya Das 				&gcc_ufs_phy_phy_aux_clk_src.clkr.hw,
6326*efe50430STaniya Das 			},
6327*efe50430STaniya Das 			.num_parents = 1,
6328*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6329*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6330*efe50430STaniya Das 		},
6331*efe50430STaniya Das 	},
6332*efe50430STaniya Das };
6333*efe50430STaniya Das 
6334*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_rx_symbol_0_clk = {
6335*efe50430STaniya Das 	.halt_reg = 0x77034,
6336*efe50430STaniya Das 	.halt_check = BRANCH_HALT_DELAY,
6337*efe50430STaniya Das 	.clkr = {
6338*efe50430STaniya Das 		.enable_reg = 0x77034,
6339*efe50430STaniya Das 		.enable_mask = BIT(0),
6340*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6341*efe50430STaniya Das 			.name = "gcc_ufs_phy_rx_symbol_0_clk",
6342*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6343*efe50430STaniya Das 				&gcc_ufs_phy_rx_symbol_0_clk_src.clkr.hw,
6344*efe50430STaniya Das 			},
6345*efe50430STaniya Das 			.num_parents = 1,
6346*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6347*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6348*efe50430STaniya Das 		},
6349*efe50430STaniya Das 	},
6350*efe50430STaniya Das };
6351*efe50430STaniya Das 
6352*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_rx_symbol_1_clk = {
6353*efe50430STaniya Das 	.halt_reg = 0x770dc,
6354*efe50430STaniya Das 	.halt_check = BRANCH_HALT_DELAY,
6355*efe50430STaniya Das 	.clkr = {
6356*efe50430STaniya Das 		.enable_reg = 0x770dc,
6357*efe50430STaniya Das 		.enable_mask = BIT(0),
6358*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6359*efe50430STaniya Das 			.name = "gcc_ufs_phy_rx_symbol_1_clk",
6360*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6361*efe50430STaniya Das 				&gcc_ufs_phy_rx_symbol_1_clk_src.clkr.hw,
6362*efe50430STaniya Das 			},
6363*efe50430STaniya Das 			.num_parents = 1,
6364*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6365*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6366*efe50430STaniya Das 		},
6367*efe50430STaniya Das 	},
6368*efe50430STaniya Das };
6369*efe50430STaniya Das 
6370*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_tx_symbol_0_clk = {
6371*efe50430STaniya Das 	.halt_reg = 0x77030,
6372*efe50430STaniya Das 	.halt_check = BRANCH_HALT_DELAY,
6373*efe50430STaniya Das 	.clkr = {
6374*efe50430STaniya Das 		.enable_reg = 0x77030,
6375*efe50430STaniya Das 		.enable_mask = BIT(0),
6376*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6377*efe50430STaniya Das 			.name = "gcc_ufs_phy_tx_symbol_0_clk",
6378*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6379*efe50430STaniya Das 				&gcc_ufs_phy_tx_symbol_0_clk_src.clkr.hw,
6380*efe50430STaniya Das 			},
6381*efe50430STaniya Das 			.num_parents = 1,
6382*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6383*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6384*efe50430STaniya Das 		},
6385*efe50430STaniya Das 	},
6386*efe50430STaniya Das };
6387*efe50430STaniya Das 
6388*efe50430STaniya Das static struct clk_branch gcc_ufs_phy_unipro_core_clk = {
6389*efe50430STaniya Das 	.halt_reg = 0x77070,
6390*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6391*efe50430STaniya Das 	.hwcg_reg = 0x77070,
6392*efe50430STaniya Das 	.hwcg_bit = 1,
6393*efe50430STaniya Das 	.clkr = {
6394*efe50430STaniya Das 		.enable_reg = 0x77070,
6395*efe50430STaniya Das 		.enable_mask = BIT(0),
6396*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6397*efe50430STaniya Das 			.name = "gcc_ufs_phy_unipro_core_clk",
6398*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6399*efe50430STaniya Das 				&gcc_ufs_phy_unipro_core_clk_src.clkr.hw,
6400*efe50430STaniya Das 			},
6401*efe50430STaniya Das 			.num_parents = 1,
6402*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6403*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6404*efe50430STaniya Das 		},
6405*efe50430STaniya Das 	},
6406*efe50430STaniya Das };
6407*efe50430STaniya Das 
6408*efe50430STaniya Das static struct clk_branch gcc_usb20_master_clk = {
6409*efe50430STaniya Das 	.halt_reg = 0xbc018,
6410*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6411*efe50430STaniya Das 	.clkr = {
6412*efe50430STaniya Das 		.enable_reg = 0xbc018,
6413*efe50430STaniya Das 		.enable_mask = BIT(0),
6414*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6415*efe50430STaniya Das 			.name = "gcc_usb20_master_clk",
6416*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6417*efe50430STaniya Das 				&gcc_usb20_master_clk_src.clkr.hw,
6418*efe50430STaniya Das 			},
6419*efe50430STaniya Das 			.num_parents = 1,
6420*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6421*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6422*efe50430STaniya Das 		},
6423*efe50430STaniya Das 	},
6424*efe50430STaniya Das };
6425*efe50430STaniya Das 
6426*efe50430STaniya Das static struct clk_branch gcc_usb20_mock_utmi_clk = {
6427*efe50430STaniya Das 	.halt_reg = 0xbc02c,
6428*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6429*efe50430STaniya Das 	.clkr = {
6430*efe50430STaniya Das 		.enable_reg = 0xbc02c,
6431*efe50430STaniya Das 		.enable_mask = BIT(0),
6432*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6433*efe50430STaniya Das 			.name = "gcc_usb20_mock_utmi_clk",
6434*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6435*efe50430STaniya Das 				&gcc_usb20_mock_utmi_postdiv_clk_src.clkr.hw,
6436*efe50430STaniya Das 			},
6437*efe50430STaniya Das 			.num_parents = 1,
6438*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6439*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6440*efe50430STaniya Das 		},
6441*efe50430STaniya Das 	},
6442*efe50430STaniya Das };
6443*efe50430STaniya Das 
6444*efe50430STaniya Das static struct clk_branch gcc_usb20_sleep_clk = {
6445*efe50430STaniya Das 	.halt_reg = 0xbc028,
6446*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6447*efe50430STaniya Das 	.clkr = {
6448*efe50430STaniya Das 		.enable_reg = 0xbc028,
6449*efe50430STaniya Das 		.enable_mask = BIT(0),
6450*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6451*efe50430STaniya Das 			.name = "gcc_usb20_sleep_clk",
6452*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6453*efe50430STaniya Das 		},
6454*efe50430STaniya Das 	},
6455*efe50430STaniya Das };
6456*efe50430STaniya Das 
6457*efe50430STaniya Das static struct clk_branch gcc_usb30_mp_master_clk = {
6458*efe50430STaniya Das 	.halt_reg = 0x9a024,
6459*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6460*efe50430STaniya Das 	.clkr = {
6461*efe50430STaniya Das 		.enable_reg = 0x9a024,
6462*efe50430STaniya Das 		.enable_mask = BIT(0),
6463*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6464*efe50430STaniya Das 			.name = "gcc_usb30_mp_master_clk",
6465*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6466*efe50430STaniya Das 				&gcc_usb30_mp_master_clk_src.clkr.hw,
6467*efe50430STaniya Das 			},
6468*efe50430STaniya Das 			.num_parents = 1,
6469*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6470*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6471*efe50430STaniya Das 		},
6472*efe50430STaniya Das 	},
6473*efe50430STaniya Das };
6474*efe50430STaniya Das 
6475*efe50430STaniya Das static struct clk_branch gcc_usb30_mp_mock_utmi_clk = {
6476*efe50430STaniya Das 	.halt_reg = 0x9a038,
6477*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6478*efe50430STaniya Das 	.clkr = {
6479*efe50430STaniya Das 		.enable_reg = 0x9a038,
6480*efe50430STaniya Das 		.enable_mask = BIT(0),
6481*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6482*efe50430STaniya Das 			.name = "gcc_usb30_mp_mock_utmi_clk",
6483*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6484*efe50430STaniya Das 				&gcc_usb30_mp_mock_utmi_postdiv_clk_src.clkr.hw,
6485*efe50430STaniya Das 			},
6486*efe50430STaniya Das 			.num_parents = 1,
6487*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6488*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6489*efe50430STaniya Das 		},
6490*efe50430STaniya Das 	},
6491*efe50430STaniya Das };
6492*efe50430STaniya Das 
6493*efe50430STaniya Das static struct clk_branch gcc_usb30_mp_sleep_clk = {
6494*efe50430STaniya Das 	.halt_reg = 0x9a034,
6495*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6496*efe50430STaniya Das 	.clkr = {
6497*efe50430STaniya Das 		.enable_reg = 0x9a034,
6498*efe50430STaniya Das 		.enable_mask = BIT(0),
6499*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6500*efe50430STaniya Das 			.name = "gcc_usb30_mp_sleep_clk",
6501*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6502*efe50430STaniya Das 		},
6503*efe50430STaniya Das 	},
6504*efe50430STaniya Das };
6505*efe50430STaniya Das 
6506*efe50430STaniya Das static struct clk_branch gcc_usb30_prim_master_clk = {
6507*efe50430STaniya Das 	.halt_reg = 0x3f030,
6508*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6509*efe50430STaniya Das 	.clkr = {
6510*efe50430STaniya Das 		.enable_reg = 0x3f030,
6511*efe50430STaniya Das 		.enable_mask = BIT(0),
6512*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6513*efe50430STaniya Das 			.name = "gcc_usb30_prim_master_clk",
6514*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6515*efe50430STaniya Das 				&gcc_usb30_prim_master_clk_src.clkr.hw,
6516*efe50430STaniya Das 			},
6517*efe50430STaniya Das 			.num_parents = 1,
6518*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6519*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6520*efe50430STaniya Das 		},
6521*efe50430STaniya Das 	},
6522*efe50430STaniya Das };
6523*efe50430STaniya Das 
6524*efe50430STaniya Das static struct clk_branch gcc_usb30_prim_mock_utmi_clk = {
6525*efe50430STaniya Das 	.halt_reg = 0x3f048,
6526*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6527*efe50430STaniya Das 	.clkr = {
6528*efe50430STaniya Das 		.enable_reg = 0x3f048,
6529*efe50430STaniya Das 		.enable_mask = BIT(0),
6530*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6531*efe50430STaniya Das 			.name = "gcc_usb30_prim_mock_utmi_clk",
6532*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6533*efe50430STaniya Das 				&gcc_usb30_prim_mock_utmi_postdiv_clk_src.clkr.hw,
6534*efe50430STaniya Das 			},
6535*efe50430STaniya Das 			.num_parents = 1,
6536*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6537*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6538*efe50430STaniya Das 		},
6539*efe50430STaniya Das 	},
6540*efe50430STaniya Das };
6541*efe50430STaniya Das 
6542*efe50430STaniya Das static struct clk_branch gcc_usb30_prim_sleep_clk = {
6543*efe50430STaniya Das 	.halt_reg = 0x3f044,
6544*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6545*efe50430STaniya Das 	.clkr = {
6546*efe50430STaniya Das 		.enable_reg = 0x3f044,
6547*efe50430STaniya Das 		.enable_mask = BIT(0),
6548*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6549*efe50430STaniya Das 			.name = "gcc_usb30_prim_sleep_clk",
6550*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6551*efe50430STaniya Das 		},
6552*efe50430STaniya Das 	},
6553*efe50430STaniya Das };
6554*efe50430STaniya Das 
6555*efe50430STaniya Das static struct clk_branch gcc_usb30_sec_master_clk = {
6556*efe50430STaniya Das 	.halt_reg = 0xe2024,
6557*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6558*efe50430STaniya Das 	.clkr = {
6559*efe50430STaniya Das 		.enable_reg = 0xe2024,
6560*efe50430STaniya Das 		.enable_mask = BIT(0),
6561*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6562*efe50430STaniya Das 			.name = "gcc_usb30_sec_master_clk",
6563*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6564*efe50430STaniya Das 				&gcc_usb30_sec_master_clk_src.clkr.hw,
6565*efe50430STaniya Das 			},
6566*efe50430STaniya Das 			.num_parents = 1,
6567*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6568*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6569*efe50430STaniya Das 		},
6570*efe50430STaniya Das 	},
6571*efe50430STaniya Das };
6572*efe50430STaniya Das 
6573*efe50430STaniya Das static struct clk_branch gcc_usb30_sec_mock_utmi_clk = {
6574*efe50430STaniya Das 	.halt_reg = 0xe2038,
6575*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6576*efe50430STaniya Das 	.clkr = {
6577*efe50430STaniya Das 		.enable_reg = 0xe2038,
6578*efe50430STaniya Das 		.enable_mask = BIT(0),
6579*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6580*efe50430STaniya Das 			.name = "gcc_usb30_sec_mock_utmi_clk",
6581*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6582*efe50430STaniya Das 				&gcc_usb30_sec_mock_utmi_postdiv_clk_src.clkr.hw,
6583*efe50430STaniya Das 			},
6584*efe50430STaniya Das 			.num_parents = 1,
6585*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6586*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6587*efe50430STaniya Das 		},
6588*efe50430STaniya Das 	},
6589*efe50430STaniya Das };
6590*efe50430STaniya Das 
6591*efe50430STaniya Das static struct clk_branch gcc_usb30_sec_sleep_clk = {
6592*efe50430STaniya Das 	.halt_reg = 0xe2034,
6593*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6594*efe50430STaniya Das 	.clkr = {
6595*efe50430STaniya Das 		.enable_reg = 0xe2034,
6596*efe50430STaniya Das 		.enable_mask = BIT(0),
6597*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6598*efe50430STaniya Das 			.name = "gcc_usb30_sec_sleep_clk",
6599*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6600*efe50430STaniya Das 		},
6601*efe50430STaniya Das 	},
6602*efe50430STaniya Das };
6603*efe50430STaniya Das 
6604*efe50430STaniya Das static struct clk_branch gcc_usb30_tert_master_clk = {
6605*efe50430STaniya Das 	.halt_reg = 0xe1024,
6606*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6607*efe50430STaniya Das 	.clkr = {
6608*efe50430STaniya Das 		.enable_reg = 0xe1024,
6609*efe50430STaniya Das 		.enable_mask = BIT(0),
6610*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6611*efe50430STaniya Das 			.name = "gcc_usb30_tert_master_clk",
6612*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6613*efe50430STaniya Das 				&gcc_usb30_tert_master_clk_src.clkr.hw,
6614*efe50430STaniya Das 			},
6615*efe50430STaniya Das 			.num_parents = 1,
6616*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6617*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6618*efe50430STaniya Das 		},
6619*efe50430STaniya Das 	},
6620*efe50430STaniya Das };
6621*efe50430STaniya Das 
6622*efe50430STaniya Das static struct clk_branch gcc_usb30_tert_mock_utmi_clk = {
6623*efe50430STaniya Das 	.halt_reg = 0xe1038,
6624*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6625*efe50430STaniya Das 	.clkr = {
6626*efe50430STaniya Das 		.enable_reg = 0xe1038,
6627*efe50430STaniya Das 		.enable_mask = BIT(0),
6628*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6629*efe50430STaniya Das 			.name = "gcc_usb30_tert_mock_utmi_clk",
6630*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6631*efe50430STaniya Das 				&gcc_usb30_tert_mock_utmi_postdiv_clk_src.clkr.hw,
6632*efe50430STaniya Das 			},
6633*efe50430STaniya Das 			.num_parents = 1,
6634*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6635*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6636*efe50430STaniya Das 		},
6637*efe50430STaniya Das 	},
6638*efe50430STaniya Das };
6639*efe50430STaniya Das 
6640*efe50430STaniya Das static struct clk_branch gcc_usb30_tert_sleep_clk = {
6641*efe50430STaniya Das 	.halt_reg = 0xe1034,
6642*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6643*efe50430STaniya Das 	.clkr = {
6644*efe50430STaniya Das 		.enable_reg = 0xe1034,
6645*efe50430STaniya Das 		.enable_mask = BIT(0),
6646*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6647*efe50430STaniya Das 			.name = "gcc_usb30_tert_sleep_clk",
6648*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6649*efe50430STaniya Das 		},
6650*efe50430STaniya Das 	},
6651*efe50430STaniya Das };
6652*efe50430STaniya Das 
6653*efe50430STaniya Das static struct clk_branch gcc_usb3_mp_phy_aux_clk = {
6654*efe50430STaniya Das 	.halt_reg = 0x9a070,
6655*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6656*efe50430STaniya Das 	.clkr = {
6657*efe50430STaniya Das 		.enable_reg = 0x9a070,
6658*efe50430STaniya Das 		.enable_mask = BIT(0),
6659*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6660*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_aux_clk",
6661*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6662*efe50430STaniya Das 				&gcc_usb3_mp_phy_aux_clk_src.clkr.hw,
6663*efe50430STaniya Das 			},
6664*efe50430STaniya Das 			.num_parents = 1,
6665*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6666*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6667*efe50430STaniya Das 		},
6668*efe50430STaniya Das 	},
6669*efe50430STaniya Das };
6670*efe50430STaniya Das 
6671*efe50430STaniya Das static struct clk_branch gcc_usb3_mp_phy_com_aux_clk = {
6672*efe50430STaniya Das 	.halt_reg = 0x9a074,
6673*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6674*efe50430STaniya Das 	.clkr = {
6675*efe50430STaniya Das 		.enable_reg = 0x9a074,
6676*efe50430STaniya Das 		.enable_mask = BIT(0),
6677*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6678*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_com_aux_clk",
6679*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6680*efe50430STaniya Das 				&gcc_usb3_mp_phy_aux_clk_src.clkr.hw,
6681*efe50430STaniya Das 			},
6682*efe50430STaniya Das 			.num_parents = 1,
6683*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6684*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6685*efe50430STaniya Das 		},
6686*efe50430STaniya Das 	},
6687*efe50430STaniya Das };
6688*efe50430STaniya Das 
6689*efe50430STaniya Das static struct clk_branch gcc_usb3_mp_phy_pipe_0_clk = {
6690*efe50430STaniya Das 	.halt_reg = 0x9a078,
6691*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
6692*efe50430STaniya Das 	.clkr = {
6693*efe50430STaniya Das 		.enable_reg = 0x9a078,
6694*efe50430STaniya Das 		.enable_mask = BIT(0),
6695*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6696*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_pipe_0_clk",
6697*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6698*efe50430STaniya Das 				&gcc_usb3_mp_phy_pipe_0_clk_src.clkr.hw,
6699*efe50430STaniya Das 			},
6700*efe50430STaniya Das 			.num_parents = 1,
6701*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6702*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6703*efe50430STaniya Das 		},
6704*efe50430STaniya Das 	},
6705*efe50430STaniya Das };
6706*efe50430STaniya Das 
6707*efe50430STaniya Das static struct clk_branch gcc_usb3_mp_phy_pipe_1_clk = {
6708*efe50430STaniya Das 	.halt_reg = 0x9a080,
6709*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
6710*efe50430STaniya Das 	.clkr = {
6711*efe50430STaniya Das 		.enable_reg = 0x9a080,
6712*efe50430STaniya Das 		.enable_mask = BIT(0),
6713*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6714*efe50430STaniya Das 			.name = "gcc_usb3_mp_phy_pipe_1_clk",
6715*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6716*efe50430STaniya Das 				&gcc_usb3_mp_phy_pipe_1_clk_src.clkr.hw,
6717*efe50430STaniya Das 			},
6718*efe50430STaniya Das 			.num_parents = 1,
6719*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6720*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6721*efe50430STaniya Das 		},
6722*efe50430STaniya Das 	},
6723*efe50430STaniya Das };
6724*efe50430STaniya Das 
6725*efe50430STaniya Das static struct clk_branch gcc_usb3_prim_phy_aux_clk = {
6726*efe50430STaniya Das 	.halt_reg = 0x3f080,
6727*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6728*efe50430STaniya Das 	.clkr = {
6729*efe50430STaniya Das 		.enable_reg = 0x3f080,
6730*efe50430STaniya Das 		.enable_mask = BIT(0),
6731*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6732*efe50430STaniya Das 			.name = "gcc_usb3_prim_phy_aux_clk",
6733*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6734*efe50430STaniya Das 				&gcc_usb3_prim_phy_aux_clk_src.clkr.hw,
6735*efe50430STaniya Das 			},
6736*efe50430STaniya Das 			.num_parents = 1,
6737*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6738*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6739*efe50430STaniya Das 		},
6740*efe50430STaniya Das 	},
6741*efe50430STaniya Das };
6742*efe50430STaniya Das 
6743*efe50430STaniya Das static struct clk_branch gcc_usb3_prim_phy_com_aux_clk = {
6744*efe50430STaniya Das 	.halt_reg = 0x3f084,
6745*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6746*efe50430STaniya Das 	.clkr = {
6747*efe50430STaniya Das 		.enable_reg = 0x3f084,
6748*efe50430STaniya Das 		.enable_mask = BIT(0),
6749*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6750*efe50430STaniya Das 			.name = "gcc_usb3_prim_phy_com_aux_clk",
6751*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6752*efe50430STaniya Das 				&gcc_usb3_prim_phy_aux_clk_src.clkr.hw,
6753*efe50430STaniya Das 			},
6754*efe50430STaniya Das 			.num_parents = 1,
6755*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6756*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6757*efe50430STaniya Das 		},
6758*efe50430STaniya Das 	},
6759*efe50430STaniya Das };
6760*efe50430STaniya Das 
6761*efe50430STaniya Das static struct clk_branch gcc_usb3_prim_phy_pipe_clk = {
6762*efe50430STaniya Das 	.halt_reg = 0x3f088,
6763*efe50430STaniya Das 	.halt_check = BRANCH_HALT_DELAY,
6764*efe50430STaniya Das 	.hwcg_reg = 0x3f088,
6765*efe50430STaniya Das 	.hwcg_bit = 1,
6766*efe50430STaniya Das 	.clkr = {
6767*efe50430STaniya Das 		.enable_reg = 0x3f088,
6768*efe50430STaniya Das 		.enable_mask = BIT(0),
6769*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6770*efe50430STaniya Das 			.name = "gcc_usb3_prim_phy_pipe_clk",
6771*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6772*efe50430STaniya Das 				&gcc_usb34_prim_phy_pipe_clk_src.clkr.hw,
6773*efe50430STaniya Das 			},
6774*efe50430STaniya Das 			.num_parents = 1,
6775*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6776*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6777*efe50430STaniya Das 		},
6778*efe50430STaniya Das 	},
6779*efe50430STaniya Das };
6780*efe50430STaniya Das 
6781*efe50430STaniya Das static struct clk_branch gcc_usb3_sec_phy_aux_clk = {
6782*efe50430STaniya Das 	.halt_reg = 0xe2070,
6783*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6784*efe50430STaniya Das 	.clkr = {
6785*efe50430STaniya Das 		.enable_reg = 0xe2070,
6786*efe50430STaniya Das 		.enable_mask = BIT(0),
6787*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6788*efe50430STaniya Das 			.name = "gcc_usb3_sec_phy_aux_clk",
6789*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6790*efe50430STaniya Das 				&gcc_usb3_sec_phy_aux_clk_src.clkr.hw,
6791*efe50430STaniya Das 			},
6792*efe50430STaniya Das 			.num_parents = 1,
6793*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6794*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6795*efe50430STaniya Das 		},
6796*efe50430STaniya Das 	},
6797*efe50430STaniya Das };
6798*efe50430STaniya Das 
6799*efe50430STaniya Das static struct clk_branch gcc_usb3_sec_phy_com_aux_clk = {
6800*efe50430STaniya Das 	.halt_reg = 0xe2074,
6801*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6802*efe50430STaniya Das 	.clkr = {
6803*efe50430STaniya Das 		.enable_reg = 0xe2074,
6804*efe50430STaniya Das 		.enable_mask = BIT(0),
6805*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6806*efe50430STaniya Das 			.name = "gcc_usb3_sec_phy_com_aux_clk",
6807*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6808*efe50430STaniya Das 				&gcc_usb3_sec_phy_aux_clk_src.clkr.hw,
6809*efe50430STaniya Das 			},
6810*efe50430STaniya Das 			.num_parents = 1,
6811*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6812*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6813*efe50430STaniya Das 		},
6814*efe50430STaniya Das 	},
6815*efe50430STaniya Das };
6816*efe50430STaniya Das 
6817*efe50430STaniya Das static struct clk_branch gcc_usb3_sec_phy_pipe_clk = {
6818*efe50430STaniya Das 	.halt_reg = 0xe2078,
6819*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6820*efe50430STaniya Das 	.hwcg_reg = 0xe2078,
6821*efe50430STaniya Das 	.hwcg_bit = 1,
6822*efe50430STaniya Das 	.clkr = {
6823*efe50430STaniya Das 		.enable_reg = 0xe2078,
6824*efe50430STaniya Das 		.enable_mask = BIT(0),
6825*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6826*efe50430STaniya Das 			.name = "gcc_usb3_sec_phy_pipe_clk",
6827*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6828*efe50430STaniya Das 				&gcc_usb34_sec_phy_pipe_clk_src.clkr.hw,
6829*efe50430STaniya Das 			},
6830*efe50430STaniya Das 			.num_parents = 1,
6831*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6832*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6833*efe50430STaniya Das 		},
6834*efe50430STaniya Das 	},
6835*efe50430STaniya Das };
6836*efe50430STaniya Das 
6837*efe50430STaniya Das static struct clk_branch gcc_usb3_tert_phy_aux_clk = {
6838*efe50430STaniya Das 	.halt_reg = 0xe1070,
6839*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6840*efe50430STaniya Das 	.clkr = {
6841*efe50430STaniya Das 		.enable_reg = 0xe1070,
6842*efe50430STaniya Das 		.enable_mask = BIT(0),
6843*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6844*efe50430STaniya Das 			.name = "gcc_usb3_tert_phy_aux_clk",
6845*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6846*efe50430STaniya Das 				&gcc_usb3_tert_phy_aux_clk_src.clkr.hw,
6847*efe50430STaniya Das 			},
6848*efe50430STaniya Das 			.num_parents = 1,
6849*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6850*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6851*efe50430STaniya Das 		},
6852*efe50430STaniya Das 	},
6853*efe50430STaniya Das };
6854*efe50430STaniya Das 
6855*efe50430STaniya Das static struct clk_branch gcc_usb3_tert_phy_com_aux_clk = {
6856*efe50430STaniya Das 	.halt_reg = 0xe1074,
6857*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6858*efe50430STaniya Das 	.clkr = {
6859*efe50430STaniya Das 		.enable_reg = 0xe1074,
6860*efe50430STaniya Das 		.enable_mask = BIT(0),
6861*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6862*efe50430STaniya Das 			.name = "gcc_usb3_tert_phy_com_aux_clk",
6863*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6864*efe50430STaniya Das 				&gcc_usb3_tert_phy_aux_clk_src.clkr.hw,
6865*efe50430STaniya Das 			},
6866*efe50430STaniya Das 			.num_parents = 1,
6867*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6868*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6869*efe50430STaniya Das 		},
6870*efe50430STaniya Das 	},
6871*efe50430STaniya Das };
6872*efe50430STaniya Das 
6873*efe50430STaniya Das static struct clk_branch gcc_usb3_tert_phy_pipe_clk = {
6874*efe50430STaniya Das 	.halt_reg = 0xe1078,
6875*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6876*efe50430STaniya Das 	.hwcg_reg = 0xe1078,
6877*efe50430STaniya Das 	.hwcg_bit = 1,
6878*efe50430STaniya Das 	.clkr = {
6879*efe50430STaniya Das 		.enable_reg = 0xe1078,
6880*efe50430STaniya Das 		.enable_mask = BIT(0),
6881*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6882*efe50430STaniya Das 			.name = "gcc_usb3_tert_phy_pipe_clk",
6883*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6884*efe50430STaniya Das 				&gcc_usb34_tert_phy_pipe_clk_src.clkr.hw,
6885*efe50430STaniya Das 			},
6886*efe50430STaniya Das 			.num_parents = 1,
6887*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6888*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6889*efe50430STaniya Das 		},
6890*efe50430STaniya Das 	},
6891*efe50430STaniya Das };
6892*efe50430STaniya Das 
6893*efe50430STaniya Das static struct clk_branch gcc_usb4_0_cfg_ahb_clk = {
6894*efe50430STaniya Das 	.halt_reg = 0xba450,
6895*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6896*efe50430STaniya Das 	.hwcg_reg = 0xba450,
6897*efe50430STaniya Das 	.hwcg_bit = 1,
6898*efe50430STaniya Das 	.clkr = {
6899*efe50430STaniya Das 		.enable_reg = 0xba450,
6900*efe50430STaniya Das 		.enable_mask = BIT(0),
6901*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6902*efe50430STaniya Das 			.name = "gcc_usb4_0_cfg_ahb_clk",
6903*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6904*efe50430STaniya Das 		},
6905*efe50430STaniya Das 	},
6906*efe50430STaniya Das };
6907*efe50430STaniya Das 
6908*efe50430STaniya Das static struct clk_branch gcc_usb4_0_dp0_clk = {
6909*efe50430STaniya Das 	.halt_reg = 0x2b070,
6910*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6911*efe50430STaniya Das 	.clkr = {
6912*efe50430STaniya Das 		.enable_reg = 0x2b070,
6913*efe50430STaniya Das 		.enable_mask = BIT(0),
6914*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6915*efe50430STaniya Das 			.name = "gcc_usb4_0_dp0_clk",
6916*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6917*efe50430STaniya Das 				&gcc_usb4_0_phy_dp0_clk_src.clkr.hw,
6918*efe50430STaniya Das 			},
6919*efe50430STaniya Das 			.num_parents = 1,
6920*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6921*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6922*efe50430STaniya Das 		},
6923*efe50430STaniya Das 	},
6924*efe50430STaniya Das };
6925*efe50430STaniya Das 
6926*efe50430STaniya Das static struct clk_branch gcc_usb4_0_dp1_clk = {
6927*efe50430STaniya Das 	.halt_reg = 0x2b124,
6928*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6929*efe50430STaniya Das 	.clkr = {
6930*efe50430STaniya Das 		.enable_reg = 0x2b124,
6931*efe50430STaniya Das 		.enable_mask = BIT(0),
6932*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6933*efe50430STaniya Das 			.name = "gcc_usb4_0_dp1_clk",
6934*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6935*efe50430STaniya Das 				&gcc_usb4_0_phy_dp1_clk_src.clkr.hw,
6936*efe50430STaniya Das 			},
6937*efe50430STaniya Das 			.num_parents = 1,
6938*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6939*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6940*efe50430STaniya Das 		},
6941*efe50430STaniya Das 	},
6942*efe50430STaniya Das };
6943*efe50430STaniya Das 
6944*efe50430STaniya Das static struct clk_branch gcc_usb4_0_master_clk = {
6945*efe50430STaniya Das 	.halt_reg = 0x2b01c,
6946*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6947*efe50430STaniya Das 	.clkr = {
6948*efe50430STaniya Das 		.enable_reg = 0x2b01c,
6949*efe50430STaniya Das 		.enable_mask = BIT(0),
6950*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6951*efe50430STaniya Das 			.name = "gcc_usb4_0_master_clk",
6952*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6953*efe50430STaniya Das 				&gcc_usb4_0_master_clk_src.clkr.hw,
6954*efe50430STaniya Das 			},
6955*efe50430STaniya Das 			.num_parents = 1,
6956*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6957*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6958*efe50430STaniya Das 		},
6959*efe50430STaniya Das 	},
6960*efe50430STaniya Das };
6961*efe50430STaniya Das 
6962*efe50430STaniya Das static struct clk_branch gcc_usb4_0_phy_p2rr2p_pipe_clk = {
6963*efe50430STaniya Das 	.halt_reg = 0x2b0f4,
6964*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
6965*efe50430STaniya Das 	.clkr = {
6966*efe50430STaniya Das 		.enable_reg = 0x2b0f4,
6967*efe50430STaniya Das 		.enable_mask = BIT(0),
6968*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6969*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_p2rr2p_pipe_clk",
6970*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6971*efe50430STaniya Das 				&gcc_usb4_0_phy_p2rr2p_pipe_clk_src.clkr.hw,
6972*efe50430STaniya Das 			},
6973*efe50430STaniya Das 			.num_parents = 1,
6974*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6975*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6976*efe50430STaniya Das 		},
6977*efe50430STaniya Das 	},
6978*efe50430STaniya Das };
6979*efe50430STaniya Das 
6980*efe50430STaniya Das static struct clk_branch gcc_usb4_0_phy_pcie_pipe_clk = {
6981*efe50430STaniya Das 	.halt_reg = 0x2b04c,
6982*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
6983*efe50430STaniya Das 	.clkr = {
6984*efe50430STaniya Das 		.enable_reg = 0x62010,
6985*efe50430STaniya Das 		.enable_mask = BIT(11),
6986*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
6987*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_pcie_pipe_clk",
6988*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
6989*efe50430STaniya Das 				&gcc_usb4_0_phy_pcie_pipe_mux_clk_src.clkr.hw,
6990*efe50430STaniya Das 			},
6991*efe50430STaniya Das 			.num_parents = 1,
6992*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
6993*efe50430STaniya Das 			.ops = &clk_branch2_ops,
6994*efe50430STaniya Das 		},
6995*efe50430STaniya Das 	},
6996*efe50430STaniya Das };
6997*efe50430STaniya Das 
6998*efe50430STaniya Das static struct clk_branch gcc_usb4_0_phy_rx0_clk = {
6999*efe50430STaniya Das 	.halt_reg = 0x2b0c4,
7000*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7001*efe50430STaniya Das 	.clkr = {
7002*efe50430STaniya Das 		.enable_reg = 0x2b0c4,
7003*efe50430STaniya Das 		.enable_mask = BIT(0),
7004*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7005*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_rx0_clk",
7006*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7007*efe50430STaniya Das 				&gcc_usb4_0_phy_rx0_clk_src.clkr.hw,
7008*efe50430STaniya Das 			},
7009*efe50430STaniya Das 			.num_parents = 1,
7010*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7011*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7012*efe50430STaniya Das 		},
7013*efe50430STaniya Das 	},
7014*efe50430STaniya Das };
7015*efe50430STaniya Das 
7016*efe50430STaniya Das static struct clk_branch gcc_usb4_0_phy_rx1_clk = {
7017*efe50430STaniya Das 	.halt_reg = 0x2b0d8,
7018*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7019*efe50430STaniya Das 	.clkr = {
7020*efe50430STaniya Das 		.enable_reg = 0x2b0d8,
7021*efe50430STaniya Das 		.enable_mask = BIT(0),
7022*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7023*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_rx1_clk",
7024*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7025*efe50430STaniya Das 				&gcc_usb4_0_phy_rx1_clk_src.clkr.hw,
7026*efe50430STaniya Das 			},
7027*efe50430STaniya Das 			.num_parents = 1,
7028*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7029*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7030*efe50430STaniya Das 		},
7031*efe50430STaniya Das 	},
7032*efe50430STaniya Das };
7033*efe50430STaniya Das 
7034*efe50430STaniya Das static struct clk_branch gcc_usb4_0_phy_usb_pipe_clk = {
7035*efe50430STaniya Das 	.halt_reg = 0x2b0bc,
7036*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7037*efe50430STaniya Das 	.hwcg_reg = 0x2b0bc,
7038*efe50430STaniya Das 	.hwcg_bit = 1,
7039*efe50430STaniya Das 	.clkr = {
7040*efe50430STaniya Das 		.enable_reg = 0x2b0bc,
7041*efe50430STaniya Das 		.enable_mask = BIT(0),
7042*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7043*efe50430STaniya Das 			.name = "gcc_usb4_0_phy_usb_pipe_clk",
7044*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7045*efe50430STaniya Das 				&gcc_usb34_prim_phy_pipe_clk_src.clkr.hw,
7046*efe50430STaniya Das 			},
7047*efe50430STaniya Das 			.num_parents = 1,
7048*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7049*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7050*efe50430STaniya Das 		},
7051*efe50430STaniya Das 	},
7052*efe50430STaniya Das };
7053*efe50430STaniya Das 
7054*efe50430STaniya Das static struct clk_branch gcc_usb4_0_sb_if_clk = {
7055*efe50430STaniya Das 	.halt_reg = 0x2b048,
7056*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7057*efe50430STaniya Das 	.clkr = {
7058*efe50430STaniya Das 		.enable_reg = 0x2b048,
7059*efe50430STaniya Das 		.enable_mask = BIT(0),
7060*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7061*efe50430STaniya Das 			.name = "gcc_usb4_0_sb_if_clk",
7062*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7063*efe50430STaniya Das 				&gcc_usb4_0_sb_if_clk_src.clkr.hw,
7064*efe50430STaniya Das 			},
7065*efe50430STaniya Das 			.num_parents = 1,
7066*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7067*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7068*efe50430STaniya Das 		},
7069*efe50430STaniya Das 	},
7070*efe50430STaniya Das };
7071*efe50430STaniya Das 
7072*efe50430STaniya Das static struct clk_branch gcc_usb4_0_sys_clk = {
7073*efe50430STaniya Das 	.halt_reg = 0x2b05c,
7074*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7075*efe50430STaniya Das 	.clkr = {
7076*efe50430STaniya Das 		.enable_reg = 0x2b05c,
7077*efe50430STaniya Das 		.enable_mask = BIT(0),
7078*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7079*efe50430STaniya Das 			.name = "gcc_usb4_0_sys_clk",
7080*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7081*efe50430STaniya Das 				&gcc_usb4_0_phy_sys_clk_src.clkr.hw,
7082*efe50430STaniya Das 			},
7083*efe50430STaniya Das 			.num_parents = 1,
7084*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7085*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7086*efe50430STaniya Das 		},
7087*efe50430STaniya Das 	},
7088*efe50430STaniya Das };
7089*efe50430STaniya Das 
7090*efe50430STaniya Das static struct clk_branch gcc_usb4_0_tmu_clk = {
7091*efe50430STaniya Das 	.halt_reg = 0x2b09c,
7092*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7093*efe50430STaniya Das 	.hwcg_reg = 0x2b09c,
7094*efe50430STaniya Das 	.hwcg_bit = 1,
7095*efe50430STaniya Das 	.clkr = {
7096*efe50430STaniya Das 		.enable_reg = 0x2b09c,
7097*efe50430STaniya Das 		.enable_mask = BIT(0),
7098*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7099*efe50430STaniya Das 			.name = "gcc_usb4_0_tmu_clk",
7100*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7101*efe50430STaniya Das 				&gcc_usb4_0_tmu_clk_src.clkr.hw,
7102*efe50430STaniya Das 			},
7103*efe50430STaniya Das 			.num_parents = 1,
7104*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7105*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7106*efe50430STaniya Das 		},
7107*efe50430STaniya Das 	},
7108*efe50430STaniya Das };
7109*efe50430STaniya Das 
7110*efe50430STaniya Das static struct clk_branch gcc_usb4_0_uc_hrr_clk = {
7111*efe50430STaniya Das 	.halt_reg = 0x2b06c,
7112*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7113*efe50430STaniya Das 	.clkr = {
7114*efe50430STaniya Das 		.enable_reg = 0x2b06c,
7115*efe50430STaniya Das 		.enable_mask = BIT(0),
7116*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7117*efe50430STaniya Das 			.name = "gcc_usb4_0_uc_hrr_clk",
7118*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7119*efe50430STaniya Das 				&gcc_usb4_0_phy_sys_clk_src.clkr.hw,
7120*efe50430STaniya Das 			},
7121*efe50430STaniya Das 			.num_parents = 1,
7122*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7123*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7124*efe50430STaniya Das 		},
7125*efe50430STaniya Das 	},
7126*efe50430STaniya Das };
7127*efe50430STaniya Das 
7128*efe50430STaniya Das static struct clk_branch gcc_usb4_1_cfg_ahb_clk = {
7129*efe50430STaniya Das 	.halt_reg = 0xba454,
7130*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7131*efe50430STaniya Das 	.hwcg_reg = 0xba454,
7132*efe50430STaniya Das 	.hwcg_bit = 1,
7133*efe50430STaniya Das 	.clkr = {
7134*efe50430STaniya Das 		.enable_reg = 0xba454,
7135*efe50430STaniya Das 		.enable_mask = BIT(0),
7136*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7137*efe50430STaniya Das 			.name = "gcc_usb4_1_cfg_ahb_clk",
7138*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7139*efe50430STaniya Das 		},
7140*efe50430STaniya Das 	},
7141*efe50430STaniya Das };
7142*efe50430STaniya Das 
7143*efe50430STaniya Das static struct clk_branch gcc_usb4_1_dp0_clk = {
7144*efe50430STaniya Das 	.halt_reg = 0x2d07c,
7145*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7146*efe50430STaniya Das 	.clkr = {
7147*efe50430STaniya Das 		.enable_reg = 0x2d07c,
7148*efe50430STaniya Das 		.enable_mask = BIT(0),
7149*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7150*efe50430STaniya Das 			.name = "gcc_usb4_1_dp0_clk",
7151*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7152*efe50430STaniya Das 				&gcc_usb4_1_phy_dp0_clk_src.clkr.hw,
7153*efe50430STaniya Das 			},
7154*efe50430STaniya Das 			.num_parents = 1,
7155*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7156*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7157*efe50430STaniya Das 		},
7158*efe50430STaniya Das 	},
7159*efe50430STaniya Das };
7160*efe50430STaniya Das 
7161*efe50430STaniya Das static struct clk_branch gcc_usb4_1_dp1_clk = {
7162*efe50430STaniya Das 	.halt_reg = 0x2d144,
7163*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7164*efe50430STaniya Das 	.clkr = {
7165*efe50430STaniya Das 		.enable_reg = 0x2d144,
7166*efe50430STaniya Das 		.enable_mask = BIT(0),
7167*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7168*efe50430STaniya Das 			.name = "gcc_usb4_1_dp1_clk",
7169*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7170*efe50430STaniya Das 				&gcc_usb4_1_phy_dp1_clk_src.clkr.hw,
7171*efe50430STaniya Das 			},
7172*efe50430STaniya Das 			.num_parents = 1,
7173*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7174*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7175*efe50430STaniya Das 		},
7176*efe50430STaniya Das 	},
7177*efe50430STaniya Das };
7178*efe50430STaniya Das 
7179*efe50430STaniya Das static struct clk_branch gcc_usb4_1_master_clk = {
7180*efe50430STaniya Das 	.halt_reg = 0x2d01c,
7181*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7182*efe50430STaniya Das 	.clkr = {
7183*efe50430STaniya Das 		.enable_reg = 0x2d01c,
7184*efe50430STaniya Das 		.enable_mask = BIT(0),
7185*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7186*efe50430STaniya Das 			.name = "gcc_usb4_1_master_clk",
7187*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7188*efe50430STaniya Das 				&gcc_usb4_1_master_clk_src.clkr.hw,
7189*efe50430STaniya Das 			},
7190*efe50430STaniya Das 			.num_parents = 1,
7191*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7192*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7193*efe50430STaniya Das 		},
7194*efe50430STaniya Das 	},
7195*efe50430STaniya Das };
7196*efe50430STaniya Das 
7197*efe50430STaniya Das static struct clk_branch gcc_usb4_1_phy_p2rr2p_pipe_clk = {
7198*efe50430STaniya Das 	.halt_reg = 0x2d118,
7199*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7200*efe50430STaniya Das 	.clkr = {
7201*efe50430STaniya Das 		.enable_reg = 0x2d118,
7202*efe50430STaniya Das 		.enable_mask = BIT(0),
7203*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7204*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_p2rr2p_pipe_clk",
7205*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7206*efe50430STaniya Das 				&gcc_usb4_1_phy_p2rr2p_pipe_clk_src.clkr.hw,
7207*efe50430STaniya Das 			},
7208*efe50430STaniya Das 			.num_parents = 1,
7209*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7210*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7211*efe50430STaniya Das 		},
7212*efe50430STaniya Das 	},
7213*efe50430STaniya Das };
7214*efe50430STaniya Das 
7215*efe50430STaniya Das static struct clk_branch gcc_usb4_1_phy_pcie_pipe_clk = {
7216*efe50430STaniya Das 	.halt_reg = 0x2d04c,
7217*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7218*efe50430STaniya Das 	.clkr = {
7219*efe50430STaniya Das 		.enable_reg = 0x62010,
7220*efe50430STaniya Das 		.enable_mask = BIT(12),
7221*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7222*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_pcie_pipe_clk",
7223*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7224*efe50430STaniya Das 				&gcc_usb4_1_phy_pcie_pipe_mux_clk_src.clkr.hw,
7225*efe50430STaniya Das 			},
7226*efe50430STaniya Das 			.num_parents = 1,
7227*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7228*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7229*efe50430STaniya Das 		},
7230*efe50430STaniya Das 	},
7231*efe50430STaniya Das };
7232*efe50430STaniya Das 
7233*efe50430STaniya Das static struct clk_branch gcc_usb4_1_phy_rx0_clk = {
7234*efe50430STaniya Das 	.halt_reg = 0x2d0e8,
7235*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7236*efe50430STaniya Das 	.clkr = {
7237*efe50430STaniya Das 		.enable_reg = 0x2d0e8,
7238*efe50430STaniya Das 		.enable_mask = BIT(0),
7239*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7240*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_rx0_clk",
7241*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7242*efe50430STaniya Das 				&gcc_usb4_1_phy_rx0_clk_src.clkr.hw,
7243*efe50430STaniya Das 			},
7244*efe50430STaniya Das 			.num_parents = 1,
7245*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7246*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7247*efe50430STaniya Das 		},
7248*efe50430STaniya Das 	},
7249*efe50430STaniya Das };
7250*efe50430STaniya Das 
7251*efe50430STaniya Das static struct clk_branch gcc_usb4_1_phy_rx1_clk = {
7252*efe50430STaniya Das 	.halt_reg = 0x2d0fc,
7253*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7254*efe50430STaniya Das 	.clkr = {
7255*efe50430STaniya Das 		.enable_reg = 0x2d0fc,
7256*efe50430STaniya Das 		.enable_mask = BIT(0),
7257*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7258*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_rx1_clk",
7259*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7260*efe50430STaniya Das 				&gcc_usb4_1_phy_rx1_clk_src.clkr.hw,
7261*efe50430STaniya Das 			},
7262*efe50430STaniya Das 			.num_parents = 1,
7263*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7264*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7265*efe50430STaniya Das 		},
7266*efe50430STaniya Das 	},
7267*efe50430STaniya Das };
7268*efe50430STaniya Das 
7269*efe50430STaniya Das static struct clk_branch gcc_usb4_1_phy_usb_pipe_clk = {
7270*efe50430STaniya Das 	.halt_reg = 0x2d0e0,
7271*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7272*efe50430STaniya Das 	.hwcg_reg = 0x2d0e0,
7273*efe50430STaniya Das 	.hwcg_bit = 1,
7274*efe50430STaniya Das 	.clkr = {
7275*efe50430STaniya Das 		.enable_reg = 0x2d0e0,
7276*efe50430STaniya Das 		.enable_mask = BIT(0),
7277*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7278*efe50430STaniya Das 			.name = "gcc_usb4_1_phy_usb_pipe_clk",
7279*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7280*efe50430STaniya Das 				&gcc_usb34_sec_phy_pipe_clk_src.clkr.hw,
7281*efe50430STaniya Das 			},
7282*efe50430STaniya Das 			.num_parents = 1,
7283*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7284*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7285*efe50430STaniya Das 		},
7286*efe50430STaniya Das 	},
7287*efe50430STaniya Das };
7288*efe50430STaniya Das 
7289*efe50430STaniya Das static struct clk_branch gcc_usb4_1_sb_if_clk = {
7290*efe50430STaniya Das 	.halt_reg = 0x2d048,
7291*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7292*efe50430STaniya Das 	.clkr = {
7293*efe50430STaniya Das 		.enable_reg = 0x2d048,
7294*efe50430STaniya Das 		.enable_mask = BIT(0),
7295*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7296*efe50430STaniya Das 			.name = "gcc_usb4_1_sb_if_clk",
7297*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7298*efe50430STaniya Das 				&gcc_usb4_1_sb_if_clk_src.clkr.hw,
7299*efe50430STaniya Das 			},
7300*efe50430STaniya Das 			.num_parents = 1,
7301*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7302*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7303*efe50430STaniya Das 		},
7304*efe50430STaniya Das 	},
7305*efe50430STaniya Das };
7306*efe50430STaniya Das 
7307*efe50430STaniya Das static struct clk_branch gcc_usb4_1_sys_clk = {
7308*efe50430STaniya Das 	.halt_reg = 0x2d05c,
7309*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7310*efe50430STaniya Das 	.clkr = {
7311*efe50430STaniya Das 		.enable_reg = 0x2d05c,
7312*efe50430STaniya Das 		.enable_mask = BIT(0),
7313*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7314*efe50430STaniya Das 			.name = "gcc_usb4_1_sys_clk",
7315*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7316*efe50430STaniya Das 				&gcc_usb4_1_phy_sys_clk_src.clkr.hw,
7317*efe50430STaniya Das 			},
7318*efe50430STaniya Das 			.num_parents = 1,
7319*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7320*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7321*efe50430STaniya Das 		},
7322*efe50430STaniya Das 	},
7323*efe50430STaniya Das };
7324*efe50430STaniya Das 
7325*efe50430STaniya Das static struct clk_branch gcc_usb4_1_tmu_clk = {
7326*efe50430STaniya Das 	.halt_reg = 0x2d0a8,
7327*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7328*efe50430STaniya Das 	.hwcg_reg = 0x2d0a8,
7329*efe50430STaniya Das 	.hwcg_bit = 1,
7330*efe50430STaniya Das 	.clkr = {
7331*efe50430STaniya Das 		.enable_reg = 0x2d0a8,
7332*efe50430STaniya Das 		.enable_mask = BIT(0),
7333*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7334*efe50430STaniya Das 			.name = "gcc_usb4_1_tmu_clk",
7335*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7336*efe50430STaniya Das 				&gcc_usb4_1_tmu_clk_src.clkr.hw,
7337*efe50430STaniya Das 			},
7338*efe50430STaniya Das 			.num_parents = 1,
7339*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7340*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7341*efe50430STaniya Das 		},
7342*efe50430STaniya Das 	},
7343*efe50430STaniya Das };
7344*efe50430STaniya Das 
7345*efe50430STaniya Das static struct clk_branch gcc_usb4_1_uc_hrr_clk = {
7346*efe50430STaniya Das 	.halt_reg = 0x2d06c,
7347*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7348*efe50430STaniya Das 	.clkr = {
7349*efe50430STaniya Das 		.enable_reg = 0x2d06c,
7350*efe50430STaniya Das 		.enable_mask = BIT(0),
7351*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7352*efe50430STaniya Das 			.name = "gcc_usb4_1_uc_hrr_clk",
7353*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7354*efe50430STaniya Das 				&gcc_usb4_1_phy_sys_clk_src.clkr.hw,
7355*efe50430STaniya Das 			},
7356*efe50430STaniya Das 			.num_parents = 1,
7357*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7358*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7359*efe50430STaniya Das 		},
7360*efe50430STaniya Das 	},
7361*efe50430STaniya Das };
7362*efe50430STaniya Das 
7363*efe50430STaniya Das static struct clk_branch gcc_usb4_2_cfg_ahb_clk = {
7364*efe50430STaniya Das 	.halt_reg = 0xba458,
7365*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7366*efe50430STaniya Das 	.hwcg_reg = 0xba458,
7367*efe50430STaniya Das 	.hwcg_bit = 1,
7368*efe50430STaniya Das 	.clkr = {
7369*efe50430STaniya Das 		.enable_reg = 0xba458,
7370*efe50430STaniya Das 		.enable_mask = BIT(0),
7371*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7372*efe50430STaniya Das 			.name = "gcc_usb4_2_cfg_ahb_clk",
7373*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7374*efe50430STaniya Das 		},
7375*efe50430STaniya Das 	},
7376*efe50430STaniya Das };
7377*efe50430STaniya Das 
7378*efe50430STaniya Das static struct clk_branch gcc_usb4_2_dp0_clk = {
7379*efe50430STaniya Das 	.halt_reg = 0xe0070,
7380*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7381*efe50430STaniya Das 	.clkr = {
7382*efe50430STaniya Das 		.enable_reg = 0xe0070,
7383*efe50430STaniya Das 		.enable_mask = BIT(0),
7384*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7385*efe50430STaniya Das 			.name = "gcc_usb4_2_dp0_clk",
7386*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7387*efe50430STaniya Das 				&gcc_usb4_2_phy_dp0_clk_src.clkr.hw,
7388*efe50430STaniya Das 			},
7389*efe50430STaniya Das 			.num_parents = 1,
7390*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7391*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7392*efe50430STaniya Das 		},
7393*efe50430STaniya Das 	},
7394*efe50430STaniya Das };
7395*efe50430STaniya Das 
7396*efe50430STaniya Das static struct clk_branch gcc_usb4_2_dp1_clk = {
7397*efe50430STaniya Das 	.halt_reg = 0xe0128,
7398*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7399*efe50430STaniya Das 	.clkr = {
7400*efe50430STaniya Das 		.enable_reg = 0xe0128,
7401*efe50430STaniya Das 		.enable_mask = BIT(0),
7402*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7403*efe50430STaniya Das 			.name = "gcc_usb4_2_dp1_clk",
7404*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7405*efe50430STaniya Das 				&gcc_usb4_2_phy_dp1_clk_src.clkr.hw,
7406*efe50430STaniya Das 			},
7407*efe50430STaniya Das 			.num_parents = 1,
7408*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7409*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7410*efe50430STaniya Das 		},
7411*efe50430STaniya Das 	},
7412*efe50430STaniya Das };
7413*efe50430STaniya Das 
7414*efe50430STaniya Das static struct clk_branch gcc_usb4_2_master_clk = {
7415*efe50430STaniya Das 	.halt_reg = 0xe001c,
7416*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7417*efe50430STaniya Das 	.clkr = {
7418*efe50430STaniya Das 		.enable_reg = 0xe001c,
7419*efe50430STaniya Das 		.enable_mask = BIT(0),
7420*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7421*efe50430STaniya Das 			.name = "gcc_usb4_2_master_clk",
7422*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7423*efe50430STaniya Das 				&gcc_usb4_2_master_clk_src.clkr.hw,
7424*efe50430STaniya Das 			},
7425*efe50430STaniya Das 			.num_parents = 1,
7426*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7427*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7428*efe50430STaniya Das 		},
7429*efe50430STaniya Das 	},
7430*efe50430STaniya Das };
7431*efe50430STaniya Das 
7432*efe50430STaniya Das static struct clk_branch gcc_usb4_2_phy_p2rr2p_pipe_clk = {
7433*efe50430STaniya Das 	.halt_reg = 0xe00f8,
7434*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7435*efe50430STaniya Das 	.clkr = {
7436*efe50430STaniya Das 		.enable_reg = 0xe00f8,
7437*efe50430STaniya Das 		.enable_mask = BIT(0),
7438*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7439*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_p2rr2p_pipe_clk",
7440*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7441*efe50430STaniya Das 				&gcc_usb4_2_phy_p2rr2p_pipe_clk_src.clkr.hw,
7442*efe50430STaniya Das 			},
7443*efe50430STaniya Das 			.num_parents = 1,
7444*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7445*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7446*efe50430STaniya Das 		},
7447*efe50430STaniya Das 	},
7448*efe50430STaniya Das };
7449*efe50430STaniya Das 
7450*efe50430STaniya Das static struct clk_branch gcc_usb4_2_phy_pcie_pipe_clk = {
7451*efe50430STaniya Das 	.halt_reg = 0xe004c,
7452*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7453*efe50430STaniya Das 	.clkr = {
7454*efe50430STaniya Das 		.enable_reg = 0x62010,
7455*efe50430STaniya Das 		.enable_mask = BIT(13),
7456*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7457*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_pcie_pipe_clk",
7458*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7459*efe50430STaniya Das 				&gcc_usb4_2_phy_pcie_pipe_mux_clk_src.clkr.hw,
7460*efe50430STaniya Das 			},
7461*efe50430STaniya Das 			.num_parents = 1,
7462*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7463*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7464*efe50430STaniya Das 		},
7465*efe50430STaniya Das 	},
7466*efe50430STaniya Das };
7467*efe50430STaniya Das 
7468*efe50430STaniya Das static struct clk_branch gcc_usb4_2_phy_rx0_clk = {
7469*efe50430STaniya Das 	.halt_reg = 0xe00c8,
7470*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7471*efe50430STaniya Das 	.clkr = {
7472*efe50430STaniya Das 		.enable_reg = 0xe00c8,
7473*efe50430STaniya Das 		.enable_mask = BIT(0),
7474*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7475*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_rx0_clk",
7476*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7477*efe50430STaniya Das 				&gcc_usb4_2_phy_rx0_clk_src.clkr.hw,
7478*efe50430STaniya Das 			},
7479*efe50430STaniya Das 			.num_parents = 1,
7480*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7481*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7482*efe50430STaniya Das 		},
7483*efe50430STaniya Das 	},
7484*efe50430STaniya Das };
7485*efe50430STaniya Das 
7486*efe50430STaniya Das static struct clk_branch gcc_usb4_2_phy_rx1_clk = {
7487*efe50430STaniya Das 	.halt_reg = 0xe00dc,
7488*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7489*efe50430STaniya Das 	.clkr = {
7490*efe50430STaniya Das 		.enable_reg = 0xe00dc,
7491*efe50430STaniya Das 		.enable_mask = BIT(0),
7492*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7493*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_rx1_clk",
7494*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7495*efe50430STaniya Das 				&gcc_usb4_2_phy_rx1_clk_src.clkr.hw,
7496*efe50430STaniya Das 			},
7497*efe50430STaniya Das 			.num_parents = 1,
7498*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7499*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7500*efe50430STaniya Das 		},
7501*efe50430STaniya Das 	},
7502*efe50430STaniya Das };
7503*efe50430STaniya Das 
7504*efe50430STaniya Das static struct clk_branch gcc_usb4_2_phy_usb_pipe_clk = {
7505*efe50430STaniya Das 	.halt_reg = 0xe00c0,
7506*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7507*efe50430STaniya Das 	.hwcg_reg = 0xe00c0,
7508*efe50430STaniya Das 	.hwcg_bit = 1,
7509*efe50430STaniya Das 	.clkr = {
7510*efe50430STaniya Das 		.enable_reg = 0xe00c0,
7511*efe50430STaniya Das 		.enable_mask = BIT(0),
7512*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7513*efe50430STaniya Das 			.name = "gcc_usb4_2_phy_usb_pipe_clk",
7514*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7515*efe50430STaniya Das 				&gcc_usb34_tert_phy_pipe_clk_src.clkr.hw,
7516*efe50430STaniya Das 			},
7517*efe50430STaniya Das 			.num_parents = 1,
7518*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7519*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7520*efe50430STaniya Das 		},
7521*efe50430STaniya Das 	},
7522*efe50430STaniya Das };
7523*efe50430STaniya Das 
7524*efe50430STaniya Das static struct clk_branch gcc_usb4_2_sb_if_clk = {
7525*efe50430STaniya Das 	.halt_reg = 0xe0048,
7526*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7527*efe50430STaniya Das 	.clkr = {
7528*efe50430STaniya Das 		.enable_reg = 0xe0048,
7529*efe50430STaniya Das 		.enable_mask = BIT(0),
7530*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7531*efe50430STaniya Das 			.name = "gcc_usb4_2_sb_if_clk",
7532*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7533*efe50430STaniya Das 				&gcc_usb4_2_sb_if_clk_src.clkr.hw,
7534*efe50430STaniya Das 			},
7535*efe50430STaniya Das 			.num_parents = 1,
7536*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7537*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7538*efe50430STaniya Das 		},
7539*efe50430STaniya Das 	},
7540*efe50430STaniya Das };
7541*efe50430STaniya Das 
7542*efe50430STaniya Das static struct clk_branch gcc_usb4_2_sys_clk = {
7543*efe50430STaniya Das 	.halt_reg = 0xe005c,
7544*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7545*efe50430STaniya Das 	.clkr = {
7546*efe50430STaniya Das 		.enable_reg = 0xe005c,
7547*efe50430STaniya Das 		.enable_mask = BIT(0),
7548*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7549*efe50430STaniya Das 			.name = "gcc_usb4_2_sys_clk",
7550*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7551*efe50430STaniya Das 				&gcc_usb4_2_phy_sys_clk_src.clkr.hw,
7552*efe50430STaniya Das 			},
7553*efe50430STaniya Das 			.num_parents = 1,
7554*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7555*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7556*efe50430STaniya Das 		},
7557*efe50430STaniya Das 	},
7558*efe50430STaniya Das };
7559*efe50430STaniya Das 
7560*efe50430STaniya Das static struct clk_branch gcc_usb4_2_tmu_clk = {
7561*efe50430STaniya Das 	.halt_reg = 0xe00a0,
7562*efe50430STaniya Das 	.halt_check = BRANCH_HALT_VOTED,
7563*efe50430STaniya Das 	.hwcg_reg = 0xe00a0,
7564*efe50430STaniya Das 	.hwcg_bit = 1,
7565*efe50430STaniya Das 	.clkr = {
7566*efe50430STaniya Das 		.enable_reg = 0xe00a0,
7567*efe50430STaniya Das 		.enable_mask = BIT(0),
7568*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7569*efe50430STaniya Das 			.name = "gcc_usb4_2_tmu_clk",
7570*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7571*efe50430STaniya Das 				&gcc_usb4_2_tmu_clk_src.clkr.hw,
7572*efe50430STaniya Das 			},
7573*efe50430STaniya Das 			.num_parents = 1,
7574*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7575*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7576*efe50430STaniya Das 		},
7577*efe50430STaniya Das 	},
7578*efe50430STaniya Das };
7579*efe50430STaniya Das 
7580*efe50430STaniya Das static struct clk_branch gcc_usb4_2_uc_hrr_clk = {
7581*efe50430STaniya Das 	.halt_reg = 0xe006c,
7582*efe50430STaniya Das 	.halt_check = BRANCH_HALT,
7583*efe50430STaniya Das 	.clkr = {
7584*efe50430STaniya Das 		.enable_reg = 0xe006c,
7585*efe50430STaniya Das 		.enable_mask = BIT(0),
7586*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7587*efe50430STaniya Das 			.name = "gcc_usb4_2_uc_hrr_clk",
7588*efe50430STaniya Das 			.parent_hws = (const struct clk_hw*[]) {
7589*efe50430STaniya Das 				&gcc_usb4_2_phy_sys_clk_src.clkr.hw,
7590*efe50430STaniya Das 			},
7591*efe50430STaniya Das 			.num_parents = 1,
7592*efe50430STaniya Das 			.flags = CLK_SET_RATE_PARENT,
7593*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7594*efe50430STaniya Das 		},
7595*efe50430STaniya Das 	},
7596*efe50430STaniya Das };
7597*efe50430STaniya Das 
7598*efe50430STaniya Das static struct clk_branch gcc_video_axi0_clk = {
7599*efe50430STaniya Das 	.halt_reg = 0x3201c,
7600*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
7601*efe50430STaniya Das 	.hwcg_reg = 0x3201c,
7602*efe50430STaniya Das 	.hwcg_bit = 1,
7603*efe50430STaniya Das 	.clkr = {
7604*efe50430STaniya Das 		.enable_reg = 0x3201c,
7605*efe50430STaniya Das 		.enable_mask = BIT(0),
7606*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7607*efe50430STaniya Das 			.name = "gcc_video_axi0_clk",
7608*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7609*efe50430STaniya Das 		},
7610*efe50430STaniya Das 	},
7611*efe50430STaniya Das };
7612*efe50430STaniya Das 
7613*efe50430STaniya Das static struct clk_branch gcc_video_axi0c_clk = {
7614*efe50430STaniya Das 	.halt_reg = 0x32030,
7615*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
7616*efe50430STaniya Das 	.hwcg_reg = 0x32030,
7617*efe50430STaniya Das 	.hwcg_bit = 1,
7618*efe50430STaniya Das 	.clkr = {
7619*efe50430STaniya Das 		.enable_reg = 0x32030,
7620*efe50430STaniya Das 		.enable_mask = BIT(0),
7621*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7622*efe50430STaniya Das 			.name = "gcc_video_axi0c_clk",
7623*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7624*efe50430STaniya Das 		},
7625*efe50430STaniya Das 	},
7626*efe50430STaniya Das };
7627*efe50430STaniya Das 
7628*efe50430STaniya Das static struct clk_branch gcc_video_axi1_clk = {
7629*efe50430STaniya Das 	.halt_reg = 0x32044,
7630*efe50430STaniya Das 	.halt_check = BRANCH_HALT_SKIP,
7631*efe50430STaniya Das 	.hwcg_reg = 0x32044,
7632*efe50430STaniya Das 	.hwcg_bit = 1,
7633*efe50430STaniya Das 	.clkr = {
7634*efe50430STaniya Das 		.enable_reg = 0x32044,
7635*efe50430STaniya Das 		.enable_mask = BIT(0),
7636*efe50430STaniya Das 		.hw.init = &(const struct clk_init_data) {
7637*efe50430STaniya Das 			.name = "gcc_video_axi1_clk",
7638*efe50430STaniya Das 			.ops = &clk_branch2_ops,
7639*efe50430STaniya Das 		},
7640*efe50430STaniya Das 	},
7641*efe50430STaniya Das };
7642*efe50430STaniya Das 
7643*efe50430STaniya Das static struct gdsc gcc_pcie_0_tunnel_gdsc = {
7644*efe50430STaniya Das 	.gdscr = 0xc8004,
7645*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7646*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7647*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7648*efe50430STaniya Das 	.pd = {
7649*efe50430STaniya Das 		.name = "gcc_pcie_0_tunnel_gdsc",
7650*efe50430STaniya Das 	},
7651*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7652*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7653*efe50430STaniya Das };
7654*efe50430STaniya Das 
7655*efe50430STaniya Das static struct gdsc gcc_pcie_1_tunnel_gdsc = {
7656*efe50430STaniya Das 	.gdscr = 0x2e004,
7657*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7658*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7659*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7660*efe50430STaniya Das 	.pd = {
7661*efe50430STaniya Das 		.name = "gcc_pcie_1_tunnel_gdsc",
7662*efe50430STaniya Das 	},
7663*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7664*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7665*efe50430STaniya Das };
7666*efe50430STaniya Das 
7667*efe50430STaniya Das static struct gdsc gcc_pcie_2_tunnel_gdsc = {
7668*efe50430STaniya Das 	.gdscr = 0xc0004,
7669*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7670*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7671*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7672*efe50430STaniya Das 	.pd = {
7673*efe50430STaniya Das 		.name = "gcc_pcie_2_tunnel_gdsc",
7674*efe50430STaniya Das 	},
7675*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7676*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7677*efe50430STaniya Das };
7678*efe50430STaniya Das 
7679*efe50430STaniya Das static struct gdsc gcc_pcie_3a_gdsc = {
7680*efe50430STaniya Das 	.gdscr = 0xdc004,
7681*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7682*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7683*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7684*efe50430STaniya Das 	.pd = {
7685*efe50430STaniya Das 		.name = "gcc_pcie_3a_gdsc",
7686*efe50430STaniya Das 	},
7687*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7688*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7689*efe50430STaniya Das };
7690*efe50430STaniya Das 
7691*efe50430STaniya Das static struct gdsc gcc_pcie_3a_phy_gdsc = {
7692*efe50430STaniya Das 	.gdscr = 0x6c004,
7693*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7694*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7695*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7696*efe50430STaniya Das 	.pd = {
7697*efe50430STaniya Das 		.name = "gcc_pcie_3a_phy_gdsc",
7698*efe50430STaniya Das 	},
7699*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7700*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7701*efe50430STaniya Das };
7702*efe50430STaniya Das 
7703*efe50430STaniya Das static struct gdsc gcc_pcie_3b_gdsc = {
7704*efe50430STaniya Das 	.gdscr = 0x94004,
7705*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7706*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7707*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7708*efe50430STaniya Das 	.pd = {
7709*efe50430STaniya Das 		.name = "gcc_pcie_3b_gdsc",
7710*efe50430STaniya Das 	},
7711*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7712*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7713*efe50430STaniya Das };
7714*efe50430STaniya Das 
7715*efe50430STaniya Das static struct gdsc gcc_pcie_3b_phy_gdsc = {
7716*efe50430STaniya Das 	.gdscr = 0x75004,
7717*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7718*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7719*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7720*efe50430STaniya Das 	.pd = {
7721*efe50430STaniya Das 		.name = "gcc_pcie_3b_phy_gdsc",
7722*efe50430STaniya Das 	},
7723*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7724*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7725*efe50430STaniya Das };
7726*efe50430STaniya Das 
7727*efe50430STaniya Das static struct gdsc gcc_pcie_4_gdsc = {
7728*efe50430STaniya Das 	.gdscr = 0x88004,
7729*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7730*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7731*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7732*efe50430STaniya Das 	.pd = {
7733*efe50430STaniya Das 		.name = "gcc_pcie_4_gdsc",
7734*efe50430STaniya Das 	},
7735*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7736*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7737*efe50430STaniya Das };
7738*efe50430STaniya Das 
7739*efe50430STaniya Das static struct gdsc gcc_pcie_4_phy_gdsc = {
7740*efe50430STaniya Das 	.gdscr = 0xd3004,
7741*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7742*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7743*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7744*efe50430STaniya Das 	.pd = {
7745*efe50430STaniya Das 		.name = "gcc_pcie_4_phy_gdsc",
7746*efe50430STaniya Das 	},
7747*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7748*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7749*efe50430STaniya Das };
7750*efe50430STaniya Das 
7751*efe50430STaniya Das static struct gdsc gcc_pcie_5_gdsc = {
7752*efe50430STaniya Das 	.gdscr = 0xc3004,
7753*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7754*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7755*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7756*efe50430STaniya Das 	.pd = {
7757*efe50430STaniya Das 		.name = "gcc_pcie_5_gdsc",
7758*efe50430STaniya Das 	},
7759*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7760*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7761*efe50430STaniya Das };
7762*efe50430STaniya Das 
7763*efe50430STaniya Das static struct gdsc gcc_pcie_5_phy_gdsc = {
7764*efe50430STaniya Das 	.gdscr = 0xd2004,
7765*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7766*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7767*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7768*efe50430STaniya Das 	.pd = {
7769*efe50430STaniya Das 		.name = "gcc_pcie_5_phy_gdsc",
7770*efe50430STaniya Das 	},
7771*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7772*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7773*efe50430STaniya Das };
7774*efe50430STaniya Das 
7775*efe50430STaniya Das static struct gdsc gcc_pcie_6_gdsc = {
7776*efe50430STaniya Das 	.gdscr = 0x8a004,
7777*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7778*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7779*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7780*efe50430STaniya Das 	.pd = {
7781*efe50430STaniya Das 		.name = "gcc_pcie_6_gdsc",
7782*efe50430STaniya Das 	},
7783*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7784*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7785*efe50430STaniya Das };
7786*efe50430STaniya Das 
7787*efe50430STaniya Das static struct gdsc gcc_pcie_6_phy_gdsc = {
7788*efe50430STaniya Das 	.gdscr = 0xd4004,
7789*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7790*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7791*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7792*efe50430STaniya Das 	.pd = {
7793*efe50430STaniya Das 		.name = "gcc_pcie_6_phy_gdsc",
7794*efe50430STaniya Das 	},
7795*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7796*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE | VOTABLE,
7797*efe50430STaniya Das };
7798*efe50430STaniya Das 
7799*efe50430STaniya Das static struct gdsc gcc_ufs_phy_gdsc = {
7800*efe50430STaniya Das 	.gdscr = 0x77008,
7801*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7802*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7803*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7804*efe50430STaniya Das 	.pd = {
7805*efe50430STaniya Das 		.name = "gcc_ufs_phy_gdsc",
7806*efe50430STaniya Das 	},
7807*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7808*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7809*efe50430STaniya Das };
7810*efe50430STaniya Das 
7811*efe50430STaniya Das static struct gdsc gcc_usb20_prim_gdsc = {
7812*efe50430STaniya Das 	.gdscr = 0xbc004,
7813*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7814*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7815*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7816*efe50430STaniya Das 	.pd = {
7817*efe50430STaniya Das 		.name = "gcc_usb20_prim_gdsc",
7818*efe50430STaniya Das 	},
7819*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7820*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7821*efe50430STaniya Das };
7822*efe50430STaniya Das 
7823*efe50430STaniya Das static struct gdsc gcc_usb30_mp_gdsc = {
7824*efe50430STaniya Das 	.gdscr = 0x9a010,
7825*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7826*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7827*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7828*efe50430STaniya Das 	.pd = {
7829*efe50430STaniya Das 		.name = "gcc_usb30_mp_gdsc",
7830*efe50430STaniya Das 	},
7831*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7832*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7833*efe50430STaniya Das };
7834*efe50430STaniya Das 
7835*efe50430STaniya Das static struct gdsc gcc_usb30_prim_gdsc = {
7836*efe50430STaniya Das 	.gdscr = 0x3f01c,
7837*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7838*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7839*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7840*efe50430STaniya Das 	.pd = {
7841*efe50430STaniya Das 		.name = "gcc_usb30_prim_gdsc",
7842*efe50430STaniya Das 	},
7843*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7844*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7845*efe50430STaniya Das };
7846*efe50430STaniya Das 
7847*efe50430STaniya Das static struct gdsc gcc_usb30_sec_gdsc = {
7848*efe50430STaniya Das 	.gdscr = 0xe2010,
7849*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7850*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7851*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7852*efe50430STaniya Das 	.pd = {
7853*efe50430STaniya Das 		.name = "gcc_usb30_sec_gdsc",
7854*efe50430STaniya Das 	},
7855*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7856*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7857*efe50430STaniya Das };
7858*efe50430STaniya Das 
7859*efe50430STaniya Das static struct gdsc gcc_usb30_tert_gdsc = {
7860*efe50430STaniya Das 	.gdscr = 0xe1010,
7861*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7862*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7863*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7864*efe50430STaniya Das 	.pd = {
7865*efe50430STaniya Das 		.name = "gcc_usb30_tert_gdsc",
7866*efe50430STaniya Das 	},
7867*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7868*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7869*efe50430STaniya Das };
7870*efe50430STaniya Das 
7871*efe50430STaniya Das static struct gdsc gcc_usb3_mp_ss0_phy_gdsc = {
7872*efe50430STaniya Das 	.gdscr = 0x5400c,
7873*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7874*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7875*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7876*efe50430STaniya Das 	.pd = {
7877*efe50430STaniya Das 		.name = "gcc_usb3_mp_ss0_phy_gdsc",
7878*efe50430STaniya Das 	},
7879*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7880*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7881*efe50430STaniya Das };
7882*efe50430STaniya Das 
7883*efe50430STaniya Das static struct gdsc gcc_usb3_mp_ss1_phy_gdsc = {
7884*efe50430STaniya Das 	.gdscr = 0x5402c,
7885*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7886*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7887*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7888*efe50430STaniya Das 	.pd = {
7889*efe50430STaniya Das 		.name = "gcc_usb3_mp_ss1_phy_gdsc",
7890*efe50430STaniya Das 	},
7891*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7892*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7893*efe50430STaniya Das };
7894*efe50430STaniya Das 
7895*efe50430STaniya Das static struct gdsc gcc_usb4_0_gdsc = {
7896*efe50430STaniya Das 	.gdscr = 0x2b008,
7897*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7898*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7899*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7900*efe50430STaniya Das 	.pd = {
7901*efe50430STaniya Das 		.name = "gcc_usb4_0_gdsc",
7902*efe50430STaniya Das 	},
7903*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7904*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7905*efe50430STaniya Das };
7906*efe50430STaniya Das 
7907*efe50430STaniya Das static struct gdsc gcc_usb4_1_gdsc = {
7908*efe50430STaniya Das 	.gdscr = 0x2d008,
7909*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7910*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7911*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7912*efe50430STaniya Das 	.pd = {
7913*efe50430STaniya Das 		.name = "gcc_usb4_1_gdsc",
7914*efe50430STaniya Das 	},
7915*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7916*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7917*efe50430STaniya Das };
7918*efe50430STaniya Das 
7919*efe50430STaniya Das static struct gdsc gcc_usb4_2_gdsc = {
7920*efe50430STaniya Das 	.gdscr = 0xe0008,
7921*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7922*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7923*efe50430STaniya Das 	.clk_dis_wait_val = 0xf,
7924*efe50430STaniya Das 	.pd = {
7925*efe50430STaniya Das 		.name = "gcc_usb4_2_gdsc",
7926*efe50430STaniya Das 	},
7927*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7928*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7929*efe50430STaniya Das };
7930*efe50430STaniya Das 
7931*efe50430STaniya Das static struct gdsc gcc_usb_0_phy_gdsc = {
7932*efe50430STaniya Das 	.gdscr = 0xdb024,
7933*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7934*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7935*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7936*efe50430STaniya Das 	.pd = {
7937*efe50430STaniya Das 		.name = "gcc_usb_0_phy_gdsc",
7938*efe50430STaniya Das 	},
7939*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7940*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7941*efe50430STaniya Das };
7942*efe50430STaniya Das 
7943*efe50430STaniya Das static struct gdsc gcc_usb_1_phy_gdsc = {
7944*efe50430STaniya Das 	.gdscr = 0x2c024,
7945*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7946*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7947*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7948*efe50430STaniya Das 	.pd = {
7949*efe50430STaniya Das 		.name = "gcc_usb_1_phy_gdsc",
7950*efe50430STaniya Das 	},
7951*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7952*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7953*efe50430STaniya Das };
7954*efe50430STaniya Das 
7955*efe50430STaniya Das static struct gdsc gcc_usb_2_phy_gdsc = {
7956*efe50430STaniya Das 	.gdscr = 0xbe024,
7957*efe50430STaniya Das 	.en_rest_wait_val = 0x2,
7958*efe50430STaniya Das 	.en_few_wait_val = 0x2,
7959*efe50430STaniya Das 	.clk_dis_wait_val = 0x2,
7960*efe50430STaniya Das 	.pd = {
7961*efe50430STaniya Das 		.name = "gcc_usb_2_phy_gdsc",
7962*efe50430STaniya Das 	},
7963*efe50430STaniya Das 	.pwrsts = PWRSTS_OFF_ON,
7964*efe50430STaniya Das 	.flags = POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
7965*efe50430STaniya Das };
7966*efe50430STaniya Das 
7967*efe50430STaniya Das static struct clk_regmap *gcc_glymur_clocks[] = {
7968*efe50430STaniya Das 	[GCC_AGGRE_NOC_PCIE_3A_WEST_SF_AXI_CLK] = &gcc_aggre_noc_pcie_3a_west_sf_axi_clk.clkr,
7969*efe50430STaniya Das 	[GCC_AGGRE_NOC_PCIE_3B_WEST_SF_AXI_CLK] = &gcc_aggre_noc_pcie_3b_west_sf_axi_clk.clkr,
7970*efe50430STaniya Das 	[GCC_AGGRE_NOC_PCIE_4_WEST_SF_AXI_CLK] = &gcc_aggre_noc_pcie_4_west_sf_axi_clk.clkr,
7971*efe50430STaniya Das 	[GCC_AGGRE_NOC_PCIE_5_EAST_SF_AXI_CLK] = &gcc_aggre_noc_pcie_5_east_sf_axi_clk.clkr,
7972*efe50430STaniya Das 	[GCC_AGGRE_NOC_PCIE_6_WEST_SF_AXI_CLK] = &gcc_aggre_noc_pcie_6_west_sf_axi_clk.clkr,
7973*efe50430STaniya Das 	[GCC_AGGRE_UFS_PHY_AXI_CLK] = &gcc_aggre_ufs_phy_axi_clk.clkr,
7974*efe50430STaniya Das 	[GCC_AGGRE_USB2_PRIM_AXI_CLK] = &gcc_aggre_usb2_prim_axi_clk.clkr,
7975*efe50430STaniya Das 	[GCC_AGGRE_USB3_MP_AXI_CLK] = &gcc_aggre_usb3_mp_axi_clk.clkr,
7976*efe50430STaniya Das 	[GCC_AGGRE_USB3_PRIM_AXI_CLK] = &gcc_aggre_usb3_prim_axi_clk.clkr,
7977*efe50430STaniya Das 	[GCC_AGGRE_USB3_SEC_AXI_CLK] = &gcc_aggre_usb3_sec_axi_clk.clkr,
7978*efe50430STaniya Das 	[GCC_AGGRE_USB3_TERT_AXI_CLK] = &gcc_aggre_usb3_tert_axi_clk.clkr,
7979*efe50430STaniya Das 	[GCC_AGGRE_USB4_0_AXI_CLK] = &gcc_aggre_usb4_0_axi_clk.clkr,
7980*efe50430STaniya Das 	[GCC_AGGRE_USB4_1_AXI_CLK] = &gcc_aggre_usb4_1_axi_clk.clkr,
7981*efe50430STaniya Das 	[GCC_AGGRE_USB4_2_AXI_CLK] = &gcc_aggre_usb4_2_axi_clk.clkr,
7982*efe50430STaniya Das 	[GCC_AV1E_AHB_CLK] = &gcc_av1e_ahb_clk.clkr,
7983*efe50430STaniya Das 	[GCC_AV1E_AXI_CLK] = &gcc_av1e_axi_clk.clkr,
7984*efe50430STaniya Das 	[GCC_AV1E_XO_CLK] = &gcc_av1e_xo_clk.clkr,
7985*efe50430STaniya Das 	[GCC_BOOT_ROM_AHB_CLK] = &gcc_boot_rom_ahb_clk.clkr,
7986*efe50430STaniya Das 	[GCC_CAMERA_HF_AXI_CLK] = &gcc_camera_hf_axi_clk.clkr,
7987*efe50430STaniya Das 	[GCC_CAMERA_SF_AXI_CLK] = &gcc_camera_sf_axi_clk.clkr,
7988*efe50430STaniya Das 	[GCC_CFG_NOC_PCIE_ANOC_AHB_CLK] = &gcc_cfg_noc_pcie_anoc_ahb_clk.clkr,
7989*efe50430STaniya Das 	[GCC_CFG_NOC_PCIE_ANOC_SOUTH_AHB_CLK] = &gcc_cfg_noc_pcie_anoc_south_ahb_clk.clkr,
7990*efe50430STaniya Das 	[GCC_CFG_NOC_USB2_PRIM_AXI_CLK] = &gcc_cfg_noc_usb2_prim_axi_clk.clkr,
7991*efe50430STaniya Das 	[GCC_CFG_NOC_USB3_MP_AXI_CLK] = &gcc_cfg_noc_usb3_mp_axi_clk.clkr,
7992*efe50430STaniya Das 	[GCC_CFG_NOC_USB3_PRIM_AXI_CLK] = &gcc_cfg_noc_usb3_prim_axi_clk.clkr,
7993*efe50430STaniya Das 	[GCC_CFG_NOC_USB3_SEC_AXI_CLK] = &gcc_cfg_noc_usb3_sec_axi_clk.clkr,
7994*efe50430STaniya Das 	[GCC_CFG_NOC_USB3_TERT_AXI_CLK] = &gcc_cfg_noc_usb3_tert_axi_clk.clkr,
7995*efe50430STaniya Das 	[GCC_CFG_NOC_USB_ANOC_AHB_CLK] = &gcc_cfg_noc_usb_anoc_ahb_clk.clkr,
7996*efe50430STaniya Das 	[GCC_CFG_NOC_USB_ANOC_SOUTH_AHB_CLK] = &gcc_cfg_noc_usb_anoc_south_ahb_clk.clkr,
7997*efe50430STaniya Das 	[GCC_DISP_HF_AXI_CLK] = &gcc_disp_hf_axi_clk.clkr,
7998*efe50430STaniya Das 	[GCC_EVA_AHB_CLK] = &gcc_eva_ahb_clk.clkr,
7999*efe50430STaniya Das 	[GCC_EVA_AXI0_CLK] = &gcc_eva_axi0_clk.clkr,
8000*efe50430STaniya Das 	[GCC_EVA_AXI0C_CLK] = &gcc_eva_axi0c_clk.clkr,
8001*efe50430STaniya Das 	[GCC_EVA_XO_CLK] = &gcc_eva_xo_clk.clkr,
8002*efe50430STaniya Das 	[GCC_GP1_CLK] = &gcc_gp1_clk.clkr,
8003*efe50430STaniya Das 	[GCC_GP1_CLK_SRC] = &gcc_gp1_clk_src.clkr,
8004*efe50430STaniya Das 	[GCC_GP2_CLK] = &gcc_gp2_clk.clkr,
8005*efe50430STaniya Das 	[GCC_GP2_CLK_SRC] = &gcc_gp2_clk_src.clkr,
8006*efe50430STaniya Das 	[GCC_GP3_CLK] = &gcc_gp3_clk.clkr,
8007*efe50430STaniya Das 	[GCC_GP3_CLK_SRC] = &gcc_gp3_clk_src.clkr,
8008*efe50430STaniya Das 	[GCC_GPLL0] = &gcc_gpll0.clkr,
8009*efe50430STaniya Das 	[GCC_GPLL0_OUT_EVEN] = &gcc_gpll0_out_even.clkr,
8010*efe50430STaniya Das 	[GCC_GPLL1] = &gcc_gpll1.clkr,
8011*efe50430STaniya Das 	[GCC_GPLL14] = &gcc_gpll14.clkr,
8012*efe50430STaniya Das 	[GCC_GPLL14_OUT_EVEN] = &gcc_gpll14_out_even.clkr,
8013*efe50430STaniya Das 	[GCC_GPLL4] = &gcc_gpll4.clkr,
8014*efe50430STaniya Das 	[GCC_GPLL5] = &gcc_gpll5.clkr,
8015*efe50430STaniya Das 	[GCC_GPLL7] = &gcc_gpll7.clkr,
8016*efe50430STaniya Das 	[GCC_GPLL8] = &gcc_gpll8.clkr,
8017*efe50430STaniya Das 	[GCC_GPLL9] = &gcc_gpll9.clkr,
8018*efe50430STaniya Das 	[GCC_GPU_GEMNOC_GFX_CLK] = &gcc_gpu_gemnoc_gfx_clk.clkr,
8019*efe50430STaniya Das 	[GCC_GPU_GPLL0_CLK_SRC] = &gcc_gpu_gpll0_clk_src.clkr,
8020*efe50430STaniya Das 	[GCC_GPU_GPLL0_DIV_CLK_SRC] = &gcc_gpu_gpll0_div_clk_src.clkr,
8021*efe50430STaniya Das 	[GCC_PCIE_0_AUX_CLK] = &gcc_pcie_0_aux_clk.clkr,
8022*efe50430STaniya Das 	[GCC_PCIE_0_AUX_CLK_SRC] = &gcc_pcie_0_aux_clk_src.clkr,
8023*efe50430STaniya Das 	[GCC_PCIE_0_CFG_AHB_CLK] = &gcc_pcie_0_cfg_ahb_clk.clkr,
8024*efe50430STaniya Das 	[GCC_PCIE_0_MSTR_AXI_CLK] = &gcc_pcie_0_mstr_axi_clk.clkr,
8025*efe50430STaniya Das 	[GCC_PCIE_0_PHY_RCHNG_CLK] = &gcc_pcie_0_phy_rchng_clk.clkr,
8026*efe50430STaniya Das 	[GCC_PCIE_0_PHY_RCHNG_CLK_SRC] = &gcc_pcie_0_phy_rchng_clk_src.clkr,
8027*efe50430STaniya Das 	[GCC_PCIE_0_PIPE_CLK] = &gcc_pcie_0_pipe_clk.clkr,
8028*efe50430STaniya Das 	[GCC_PCIE_0_SLV_AXI_CLK] = &gcc_pcie_0_slv_axi_clk.clkr,
8029*efe50430STaniya Das 	[GCC_PCIE_0_SLV_Q2A_AXI_CLK] = &gcc_pcie_0_slv_q2a_axi_clk.clkr,
8030*efe50430STaniya Das 	[GCC_PCIE_1_AUX_CLK] = &gcc_pcie_1_aux_clk.clkr,
8031*efe50430STaniya Das 	[GCC_PCIE_1_AUX_CLK_SRC] = &gcc_pcie_1_aux_clk_src.clkr,
8032*efe50430STaniya Das 	[GCC_PCIE_1_CFG_AHB_CLK] = &gcc_pcie_1_cfg_ahb_clk.clkr,
8033*efe50430STaniya Das 	[GCC_PCIE_1_MSTR_AXI_CLK] = &gcc_pcie_1_mstr_axi_clk.clkr,
8034*efe50430STaniya Das 	[GCC_PCIE_1_PHY_RCHNG_CLK] = &gcc_pcie_1_phy_rchng_clk.clkr,
8035*efe50430STaniya Das 	[GCC_PCIE_1_PHY_RCHNG_CLK_SRC] = &gcc_pcie_1_phy_rchng_clk_src.clkr,
8036*efe50430STaniya Das 	[GCC_PCIE_1_PIPE_CLK] = &gcc_pcie_1_pipe_clk.clkr,
8037*efe50430STaniya Das 	[GCC_PCIE_1_SLV_AXI_CLK] = &gcc_pcie_1_slv_axi_clk.clkr,
8038*efe50430STaniya Das 	[GCC_PCIE_1_SLV_Q2A_AXI_CLK] = &gcc_pcie_1_slv_q2a_axi_clk.clkr,
8039*efe50430STaniya Das 	[GCC_PCIE_2_AUX_CLK] = &gcc_pcie_2_aux_clk.clkr,
8040*efe50430STaniya Das 	[GCC_PCIE_2_AUX_CLK_SRC] = &gcc_pcie_2_aux_clk_src.clkr,
8041*efe50430STaniya Das 	[GCC_PCIE_2_CFG_AHB_CLK] = &gcc_pcie_2_cfg_ahb_clk.clkr,
8042*efe50430STaniya Das 	[GCC_PCIE_2_MSTR_AXI_CLK] = &gcc_pcie_2_mstr_axi_clk.clkr,
8043*efe50430STaniya Das 	[GCC_PCIE_2_PHY_RCHNG_CLK] = &gcc_pcie_2_phy_rchng_clk.clkr,
8044*efe50430STaniya Das 	[GCC_PCIE_2_PHY_RCHNG_CLK_SRC] = &gcc_pcie_2_phy_rchng_clk_src.clkr,
8045*efe50430STaniya Das 	[GCC_PCIE_2_PIPE_CLK] = &gcc_pcie_2_pipe_clk.clkr,
8046*efe50430STaniya Das 	[GCC_PCIE_2_SLV_AXI_CLK] = &gcc_pcie_2_slv_axi_clk.clkr,
8047*efe50430STaniya Das 	[GCC_PCIE_2_SLV_Q2A_AXI_CLK] = &gcc_pcie_2_slv_q2a_axi_clk.clkr,
8048*efe50430STaniya Das 	[GCC_PCIE_3A_AUX_CLK] = &gcc_pcie_3a_aux_clk.clkr,
8049*efe50430STaniya Das 	[GCC_PCIE_3A_AUX_CLK_SRC] = &gcc_pcie_3a_aux_clk_src.clkr,
8050*efe50430STaniya Das 	[GCC_PCIE_3A_CFG_AHB_CLK] = &gcc_pcie_3a_cfg_ahb_clk.clkr,
8051*efe50430STaniya Das 	[GCC_PCIE_3A_MSTR_AXI_CLK] = &gcc_pcie_3a_mstr_axi_clk.clkr,
8052*efe50430STaniya Das 	[GCC_PCIE_3A_PHY_RCHNG_CLK] = &gcc_pcie_3a_phy_rchng_clk.clkr,
8053*efe50430STaniya Das 	[GCC_PCIE_3A_PHY_RCHNG_CLK_SRC] = &gcc_pcie_3a_phy_rchng_clk_src.clkr,
8054*efe50430STaniya Das 	[GCC_PCIE_3A_PIPE_CLK] = &gcc_pcie_3a_pipe_clk.clkr,
8055*efe50430STaniya Das 	[GCC_PCIE_3A_PIPE_CLK_SRC] = &gcc_pcie_3a_pipe_clk_src.clkr,
8056*efe50430STaniya Das 	[GCC_PCIE_3A_SLV_AXI_CLK] = &gcc_pcie_3a_slv_axi_clk.clkr,
8057*efe50430STaniya Das 	[GCC_PCIE_3A_SLV_Q2A_AXI_CLK] = &gcc_pcie_3a_slv_q2a_axi_clk.clkr,
8058*efe50430STaniya Das 	[GCC_PCIE_3B_AUX_CLK] = &gcc_pcie_3b_aux_clk.clkr,
8059*efe50430STaniya Das 	[GCC_PCIE_3B_AUX_CLK_SRC] = &gcc_pcie_3b_aux_clk_src.clkr,
8060*efe50430STaniya Das 	[GCC_PCIE_3B_CFG_AHB_CLK] = &gcc_pcie_3b_cfg_ahb_clk.clkr,
8061*efe50430STaniya Das 	[GCC_PCIE_3B_MSTR_AXI_CLK] = &gcc_pcie_3b_mstr_axi_clk.clkr,
8062*efe50430STaniya Das 	[GCC_PCIE_3B_PHY_RCHNG_CLK] = &gcc_pcie_3b_phy_rchng_clk.clkr,
8063*efe50430STaniya Das 	[GCC_PCIE_3B_PHY_RCHNG_CLK_SRC] = &gcc_pcie_3b_phy_rchng_clk_src.clkr,
8064*efe50430STaniya Das 	[GCC_PCIE_3B_PIPE_CLK] = &gcc_pcie_3b_pipe_clk.clkr,
8065*efe50430STaniya Das 	[GCC_PCIE_3B_PIPE_CLK_SRC] = &gcc_pcie_3b_pipe_clk_src.clkr,
8066*efe50430STaniya Das 	[GCC_PCIE_3B_PIPE_DIV2_CLK] = &gcc_pcie_3b_pipe_div2_clk.clkr,
8067*efe50430STaniya Das 	[GCC_PCIE_3B_PIPE_DIV_CLK_SRC] = &gcc_pcie_3b_pipe_div_clk_src.clkr,
8068*efe50430STaniya Das 	[GCC_PCIE_3B_SLV_AXI_CLK] = &gcc_pcie_3b_slv_axi_clk.clkr,
8069*efe50430STaniya Das 	[GCC_PCIE_3B_SLV_Q2A_AXI_CLK] = &gcc_pcie_3b_slv_q2a_axi_clk.clkr,
8070*efe50430STaniya Das 	[GCC_PCIE_4_AUX_CLK] = &gcc_pcie_4_aux_clk.clkr,
8071*efe50430STaniya Das 	[GCC_PCIE_4_AUX_CLK_SRC] = &gcc_pcie_4_aux_clk_src.clkr,
8072*efe50430STaniya Das 	[GCC_PCIE_4_CFG_AHB_CLK] = &gcc_pcie_4_cfg_ahb_clk.clkr,
8073*efe50430STaniya Das 	[GCC_PCIE_4_MSTR_AXI_CLK] = &gcc_pcie_4_mstr_axi_clk.clkr,
8074*efe50430STaniya Das 	[GCC_PCIE_4_PHY_RCHNG_CLK] = &gcc_pcie_4_phy_rchng_clk.clkr,
8075*efe50430STaniya Das 	[GCC_PCIE_4_PHY_RCHNG_CLK_SRC] = &gcc_pcie_4_phy_rchng_clk_src.clkr,
8076*efe50430STaniya Das 	[GCC_PCIE_4_PIPE_CLK] = &gcc_pcie_4_pipe_clk.clkr,
8077*efe50430STaniya Das 	[GCC_PCIE_4_PIPE_CLK_SRC] = &gcc_pcie_4_pipe_clk_src.clkr,
8078*efe50430STaniya Das 	[GCC_PCIE_4_PIPE_DIV2_CLK] = &gcc_pcie_4_pipe_div2_clk.clkr,
8079*efe50430STaniya Das 	[GCC_PCIE_4_PIPE_DIV_CLK_SRC] = &gcc_pcie_4_pipe_div_clk_src.clkr,
8080*efe50430STaniya Das 	[GCC_PCIE_4_SLV_AXI_CLK] = &gcc_pcie_4_slv_axi_clk.clkr,
8081*efe50430STaniya Das 	[GCC_PCIE_4_SLV_Q2A_AXI_CLK] = &gcc_pcie_4_slv_q2a_axi_clk.clkr,
8082*efe50430STaniya Das 	[GCC_PCIE_5_AUX_CLK] = &gcc_pcie_5_aux_clk.clkr,
8083*efe50430STaniya Das 	[GCC_PCIE_5_AUX_CLK_SRC] = &gcc_pcie_5_aux_clk_src.clkr,
8084*efe50430STaniya Das 	[GCC_PCIE_5_CFG_AHB_CLK] = &gcc_pcie_5_cfg_ahb_clk.clkr,
8085*efe50430STaniya Das 	[GCC_PCIE_5_MSTR_AXI_CLK] = &gcc_pcie_5_mstr_axi_clk.clkr,
8086*efe50430STaniya Das 	[GCC_PCIE_5_PHY_RCHNG_CLK] = &gcc_pcie_5_phy_rchng_clk.clkr,
8087*efe50430STaniya Das 	[GCC_PCIE_5_PHY_RCHNG_CLK_SRC] = &gcc_pcie_5_phy_rchng_clk_src.clkr,
8088*efe50430STaniya Das 	[GCC_PCIE_5_PIPE_CLK] = &gcc_pcie_5_pipe_clk.clkr,
8089*efe50430STaniya Das 	[GCC_PCIE_5_PIPE_CLK_SRC] = &gcc_pcie_5_pipe_clk_src.clkr,
8090*efe50430STaniya Das 	[GCC_PCIE_5_PIPE_DIV2_CLK] = &gcc_pcie_5_pipe_div2_clk.clkr,
8091*efe50430STaniya Das 	[GCC_PCIE_5_PIPE_DIV_CLK_SRC] = &gcc_pcie_5_pipe_div_clk_src.clkr,
8092*efe50430STaniya Das 	[GCC_PCIE_5_SLV_AXI_CLK] = &gcc_pcie_5_slv_axi_clk.clkr,
8093*efe50430STaniya Das 	[GCC_PCIE_5_SLV_Q2A_AXI_CLK] = &gcc_pcie_5_slv_q2a_axi_clk.clkr,
8094*efe50430STaniya Das 	[GCC_PCIE_6_AUX_CLK] = &gcc_pcie_6_aux_clk.clkr,
8095*efe50430STaniya Das 	[GCC_PCIE_6_AUX_CLK_SRC] = &gcc_pcie_6_aux_clk_src.clkr,
8096*efe50430STaniya Das 	[GCC_PCIE_6_CFG_AHB_CLK] = &gcc_pcie_6_cfg_ahb_clk.clkr,
8097*efe50430STaniya Das 	[GCC_PCIE_6_MSTR_AXI_CLK] = &gcc_pcie_6_mstr_axi_clk.clkr,
8098*efe50430STaniya Das 	[GCC_PCIE_6_PHY_RCHNG_CLK] = &gcc_pcie_6_phy_rchng_clk.clkr,
8099*efe50430STaniya Das 	[GCC_PCIE_6_PHY_RCHNG_CLK_SRC] = &gcc_pcie_6_phy_rchng_clk_src.clkr,
8100*efe50430STaniya Das 	[GCC_PCIE_6_PIPE_CLK] = &gcc_pcie_6_pipe_clk.clkr,
8101*efe50430STaniya Das 	[GCC_PCIE_6_PIPE_CLK_SRC] = &gcc_pcie_6_pipe_clk_src.clkr,
8102*efe50430STaniya Das 	[GCC_PCIE_6_PIPE_DIV2_CLK] = &gcc_pcie_6_pipe_div2_clk.clkr,
8103*efe50430STaniya Das 	[GCC_PCIE_6_PIPE_DIV_CLK_SRC] = &gcc_pcie_6_pipe_div_clk_src.clkr,
8104*efe50430STaniya Das 	[GCC_PCIE_6_SLV_AXI_CLK] = &gcc_pcie_6_slv_axi_clk.clkr,
8105*efe50430STaniya Das 	[GCC_PCIE_6_SLV_Q2A_AXI_CLK] = &gcc_pcie_6_slv_q2a_axi_clk.clkr,
8106*efe50430STaniya Das 	[GCC_PCIE_NOC_PWRCTL_CLK] = &gcc_pcie_noc_pwrctl_clk.clkr,
8107*efe50430STaniya Das 	[GCC_PCIE_NOC_QOSGEN_EXTREF_CLK] = &gcc_pcie_noc_qosgen_extref_clk.clkr,
8108*efe50430STaniya Das 	[GCC_PCIE_NOC_SF_CENTER_CLK] = &gcc_pcie_noc_sf_center_clk.clkr,
8109*efe50430STaniya Das 	[GCC_PCIE_NOC_SLAVE_SF_EAST_CLK] = &gcc_pcie_noc_slave_sf_east_clk.clkr,
8110*efe50430STaniya Das 	[GCC_PCIE_NOC_SLAVE_SF_WEST_CLK] = &gcc_pcie_noc_slave_sf_west_clk.clkr,
8111*efe50430STaniya Das 	[GCC_PCIE_NOC_TSCTR_CLK] = &gcc_pcie_noc_tsctr_clk.clkr,
8112*efe50430STaniya Das 	[GCC_PCIE_PHY_3A_AUX_CLK] = &gcc_pcie_phy_3a_aux_clk.clkr,
8113*efe50430STaniya Das 	[GCC_PCIE_PHY_3A_AUX_CLK_SRC] = &gcc_pcie_phy_3a_aux_clk_src.clkr,
8114*efe50430STaniya Das 	[GCC_PCIE_PHY_3B_AUX_CLK] = &gcc_pcie_phy_3b_aux_clk.clkr,
8115*efe50430STaniya Das 	[GCC_PCIE_PHY_3B_AUX_CLK_SRC] = &gcc_pcie_phy_3b_aux_clk_src.clkr,
8116*efe50430STaniya Das 	[GCC_PCIE_PHY_4_AUX_CLK] = &gcc_pcie_phy_4_aux_clk.clkr,
8117*efe50430STaniya Das 	[GCC_PCIE_PHY_4_AUX_CLK_SRC] = &gcc_pcie_phy_4_aux_clk_src.clkr,
8118*efe50430STaniya Das 	[GCC_PCIE_PHY_5_AUX_CLK] = &gcc_pcie_phy_5_aux_clk.clkr,
8119*efe50430STaniya Das 	[GCC_PCIE_PHY_5_AUX_CLK_SRC] = &gcc_pcie_phy_5_aux_clk_src.clkr,
8120*efe50430STaniya Das 	[GCC_PCIE_PHY_6_AUX_CLK] = &gcc_pcie_phy_6_aux_clk.clkr,
8121*efe50430STaniya Das 	[GCC_PCIE_PHY_6_AUX_CLK_SRC] = &gcc_pcie_phy_6_aux_clk_src.clkr,
8122*efe50430STaniya Das 	[GCC_PCIE_RSCC_CFG_AHB_CLK] = &gcc_pcie_rscc_cfg_ahb_clk.clkr,
8123*efe50430STaniya Das 	[GCC_PCIE_RSCC_XO_CLK] = &gcc_pcie_rscc_xo_clk.clkr,
8124*efe50430STaniya Das 	[GCC_PDM2_CLK] = &gcc_pdm2_clk.clkr,
8125*efe50430STaniya Das 	[GCC_PDM2_CLK_SRC] = &gcc_pdm2_clk_src.clkr,
8126*efe50430STaniya Das 	[GCC_PDM_AHB_CLK] = &gcc_pdm_ahb_clk.clkr,
8127*efe50430STaniya Das 	[GCC_PDM_XO4_CLK] = &gcc_pdm_xo4_clk.clkr,
8128*efe50430STaniya Das 	[GCC_QMIP_AV1E_AHB_CLK] = &gcc_qmip_av1e_ahb_clk.clkr,
8129*efe50430STaniya Das 	[GCC_QMIP_CAMERA_CMD_AHB_CLK] = &gcc_qmip_camera_cmd_ahb_clk.clkr,
8130*efe50430STaniya Das 	[GCC_QMIP_CAMERA_NRT_AHB_CLK] = &gcc_qmip_camera_nrt_ahb_clk.clkr,
8131*efe50430STaniya Das 	[GCC_QMIP_CAMERA_RT_AHB_CLK] = &gcc_qmip_camera_rt_ahb_clk.clkr,
8132*efe50430STaniya Das 	[GCC_QMIP_GPU_AHB_CLK] = &gcc_qmip_gpu_ahb_clk.clkr,
8133*efe50430STaniya Das 	[GCC_QMIP_PCIE_3A_AHB_CLK] = &gcc_qmip_pcie_3a_ahb_clk.clkr,
8134*efe50430STaniya Das 	[GCC_QMIP_PCIE_3B_AHB_CLK] = &gcc_qmip_pcie_3b_ahb_clk.clkr,
8135*efe50430STaniya Das 	[GCC_QMIP_PCIE_4_AHB_CLK] = &gcc_qmip_pcie_4_ahb_clk.clkr,
8136*efe50430STaniya Das 	[GCC_QMIP_PCIE_5_AHB_CLK] = &gcc_qmip_pcie_5_ahb_clk.clkr,
8137*efe50430STaniya Das 	[GCC_QMIP_PCIE_6_AHB_CLK] = &gcc_qmip_pcie_6_ahb_clk.clkr,
8138*efe50430STaniya Das 	[GCC_QMIP_VIDEO_CV_CPU_AHB_CLK] = &gcc_qmip_video_cv_cpu_ahb_clk.clkr,
8139*efe50430STaniya Das 	[GCC_QMIP_VIDEO_CVP_AHB_CLK] = &gcc_qmip_video_cvp_ahb_clk.clkr,
8140*efe50430STaniya Das 	[GCC_QMIP_VIDEO_V_CPU_AHB_CLK] = &gcc_qmip_video_v_cpu_ahb_clk.clkr,
8141*efe50430STaniya Das 	[GCC_QMIP_VIDEO_VCODEC1_AHB_CLK] = &gcc_qmip_video_vcodec1_ahb_clk.clkr,
8142*efe50430STaniya Das 	[GCC_QMIP_VIDEO_VCODEC_AHB_CLK] = &gcc_qmip_video_vcodec_ahb_clk.clkr,
8143*efe50430STaniya Das 	[GCC_QUPV3_OOB_CORE_2X_CLK] = &gcc_qupv3_oob_core_2x_clk.clkr,
8144*efe50430STaniya Das 	[GCC_QUPV3_OOB_CORE_CLK] = &gcc_qupv3_oob_core_clk.clkr,
8145*efe50430STaniya Das 	[GCC_QUPV3_OOB_M_AHB_CLK] = &gcc_qupv3_oob_m_ahb_clk.clkr,
8146*efe50430STaniya Das 	[GCC_QUPV3_OOB_QSPI_S0_CLK] = &gcc_qupv3_oob_qspi_s0_clk.clkr,
8147*efe50430STaniya Das 	[GCC_QUPV3_OOB_QSPI_S0_CLK_SRC] = &gcc_qupv3_oob_qspi_s0_clk_src.clkr,
8148*efe50430STaniya Das 	[GCC_QUPV3_OOB_QSPI_S1_CLK] = &gcc_qupv3_oob_qspi_s1_clk.clkr,
8149*efe50430STaniya Das 	[GCC_QUPV3_OOB_QSPI_S1_CLK_SRC] = &gcc_qupv3_oob_qspi_s1_clk_src.clkr,
8150*efe50430STaniya Das 	[GCC_QUPV3_OOB_S0_CLK] = &gcc_qupv3_oob_s0_clk.clkr,
8151*efe50430STaniya Das 	[GCC_QUPV3_OOB_S0_CLK_SRC] = &gcc_qupv3_oob_s0_clk_src.clkr,
8152*efe50430STaniya Das 	[GCC_QUPV3_OOB_S1_CLK] = &gcc_qupv3_oob_s1_clk.clkr,
8153*efe50430STaniya Das 	[GCC_QUPV3_OOB_S1_CLK_SRC] = &gcc_qupv3_oob_s1_clk_src.clkr,
8154*efe50430STaniya Das 	[GCC_QUPV3_OOB_S_AHB_CLK] = &gcc_qupv3_oob_s_ahb_clk.clkr,
8155*efe50430STaniya Das 	[GCC_QUPV3_OOB_TCXO_CLK] = &gcc_qupv3_oob_tcxo_clk.clkr,
8156*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_CORE_2X_CLK] = &gcc_qupv3_wrap0_core_2x_clk.clkr,
8157*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_CORE_CLK] = &gcc_qupv3_wrap0_core_clk.clkr,
8158*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S2_CLK] = &gcc_qupv3_wrap0_qspi_s2_clk.clkr,
8159*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S2_CLK_SRC] = &gcc_qupv3_wrap0_qspi_s2_clk_src.clkr,
8160*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S3_CLK] = &gcc_qupv3_wrap0_qspi_s3_clk.clkr,
8161*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S3_CLK_SRC] = &gcc_qupv3_wrap0_qspi_s3_clk_src.clkr,
8162*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S6_CLK] = &gcc_qupv3_wrap0_qspi_s6_clk.clkr,
8163*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_QSPI_S6_CLK_SRC] = &gcc_qupv3_wrap0_qspi_s6_clk_src.clkr,
8164*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S0_CLK] = &gcc_qupv3_wrap0_s0_clk.clkr,
8165*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S0_CLK_SRC] = &gcc_qupv3_wrap0_s0_clk_src.clkr,
8166*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S1_CLK] = &gcc_qupv3_wrap0_s1_clk.clkr,
8167*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S1_CLK_SRC] = &gcc_qupv3_wrap0_s1_clk_src.clkr,
8168*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S2_CLK] = &gcc_qupv3_wrap0_s2_clk.clkr,
8169*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S2_CLK_SRC] = &gcc_qupv3_wrap0_s2_clk_src.clkr,
8170*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S3_CLK] = &gcc_qupv3_wrap0_s3_clk.clkr,
8171*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S3_CLK_SRC] = &gcc_qupv3_wrap0_s3_clk_src.clkr,
8172*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S4_CLK] = &gcc_qupv3_wrap0_s4_clk.clkr,
8173*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S4_CLK_SRC] = &gcc_qupv3_wrap0_s4_clk_src.clkr,
8174*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S5_CLK] = &gcc_qupv3_wrap0_s5_clk.clkr,
8175*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S5_CLK_SRC] = &gcc_qupv3_wrap0_s5_clk_src.clkr,
8176*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S6_CLK] = &gcc_qupv3_wrap0_s6_clk.clkr,
8177*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S6_CLK_SRC] = &gcc_qupv3_wrap0_s6_clk_src.clkr,
8178*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S7_CLK] = &gcc_qupv3_wrap0_s7_clk.clkr,
8179*efe50430STaniya Das 	[GCC_QUPV3_WRAP0_S7_CLK_SRC] = &gcc_qupv3_wrap0_s7_clk_src.clkr,
8180*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_CORE_2X_CLK] = &gcc_qupv3_wrap1_core_2x_clk.clkr,
8181*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_CORE_CLK] = &gcc_qupv3_wrap1_core_clk.clkr,
8182*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S2_CLK] = &gcc_qupv3_wrap1_qspi_s2_clk.clkr,
8183*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S2_CLK_SRC] = &gcc_qupv3_wrap1_qspi_s2_clk_src.clkr,
8184*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S3_CLK] = &gcc_qupv3_wrap1_qspi_s3_clk.clkr,
8185*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S3_CLK_SRC] = &gcc_qupv3_wrap1_qspi_s3_clk_src.clkr,
8186*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S6_CLK] = &gcc_qupv3_wrap1_qspi_s6_clk.clkr,
8187*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_QSPI_S6_CLK_SRC] = &gcc_qupv3_wrap1_qspi_s6_clk_src.clkr,
8188*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S0_CLK] = &gcc_qupv3_wrap1_s0_clk.clkr,
8189*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S0_CLK_SRC] = &gcc_qupv3_wrap1_s0_clk_src.clkr,
8190*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S1_CLK] = &gcc_qupv3_wrap1_s1_clk.clkr,
8191*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S1_CLK_SRC] = &gcc_qupv3_wrap1_s1_clk_src.clkr,
8192*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S2_CLK] = &gcc_qupv3_wrap1_s2_clk.clkr,
8193*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S2_CLK_SRC] = &gcc_qupv3_wrap1_s2_clk_src.clkr,
8194*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S3_CLK] = &gcc_qupv3_wrap1_s3_clk.clkr,
8195*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S3_CLK_SRC] = &gcc_qupv3_wrap1_s3_clk_src.clkr,
8196*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S4_CLK] = &gcc_qupv3_wrap1_s4_clk.clkr,
8197*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S4_CLK_SRC] = &gcc_qupv3_wrap1_s4_clk_src.clkr,
8198*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S5_CLK] = &gcc_qupv3_wrap1_s5_clk.clkr,
8199*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S5_CLK_SRC] = &gcc_qupv3_wrap1_s5_clk_src.clkr,
8200*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S6_CLK] = &gcc_qupv3_wrap1_s6_clk.clkr,
8201*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S6_CLK_SRC] = &gcc_qupv3_wrap1_s6_clk_src.clkr,
8202*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S7_CLK] = &gcc_qupv3_wrap1_s7_clk.clkr,
8203*efe50430STaniya Das 	[GCC_QUPV3_WRAP1_S7_CLK_SRC] = &gcc_qupv3_wrap1_s7_clk_src.clkr,
8204*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_CORE_2X_CLK] = &gcc_qupv3_wrap2_core_2x_clk.clkr,
8205*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_CORE_CLK] = &gcc_qupv3_wrap2_core_clk.clkr,
8206*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S2_CLK] = &gcc_qupv3_wrap2_qspi_s2_clk.clkr,
8207*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S2_CLK_SRC] = &gcc_qupv3_wrap2_qspi_s2_clk_src.clkr,
8208*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S3_CLK] = &gcc_qupv3_wrap2_qspi_s3_clk.clkr,
8209*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S3_CLK_SRC] = &gcc_qupv3_wrap2_qspi_s3_clk_src.clkr,
8210*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S6_CLK] = &gcc_qupv3_wrap2_qspi_s6_clk.clkr,
8211*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_QSPI_S6_CLK_SRC] = &gcc_qupv3_wrap2_qspi_s6_clk_src.clkr,
8212*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S0_CLK] = &gcc_qupv3_wrap2_s0_clk.clkr,
8213*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S0_CLK_SRC] = &gcc_qupv3_wrap2_s0_clk_src.clkr,
8214*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S1_CLK] = &gcc_qupv3_wrap2_s1_clk.clkr,
8215*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S1_CLK_SRC] = &gcc_qupv3_wrap2_s1_clk_src.clkr,
8216*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S2_CLK] = &gcc_qupv3_wrap2_s2_clk.clkr,
8217*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S2_CLK_SRC] = &gcc_qupv3_wrap2_s2_clk_src.clkr,
8218*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S3_CLK] = &gcc_qupv3_wrap2_s3_clk.clkr,
8219*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S3_CLK_SRC] = &gcc_qupv3_wrap2_s3_clk_src.clkr,
8220*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S4_CLK] = &gcc_qupv3_wrap2_s4_clk.clkr,
8221*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S4_CLK_SRC] = &gcc_qupv3_wrap2_s4_clk_src.clkr,
8222*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S5_CLK] = &gcc_qupv3_wrap2_s5_clk.clkr,
8223*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S5_CLK_SRC] = &gcc_qupv3_wrap2_s5_clk_src.clkr,
8224*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S6_CLK] = &gcc_qupv3_wrap2_s6_clk.clkr,
8225*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S6_CLK_SRC] = &gcc_qupv3_wrap2_s6_clk_src.clkr,
8226*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S7_CLK] = &gcc_qupv3_wrap2_s7_clk.clkr,
8227*efe50430STaniya Das 	[GCC_QUPV3_WRAP2_S7_CLK_SRC] = &gcc_qupv3_wrap2_s7_clk_src.clkr,
8228*efe50430STaniya Das 	[GCC_QUPV3_WRAP_0_M_AHB_CLK] = &gcc_qupv3_wrap_0_m_ahb_clk.clkr,
8229*efe50430STaniya Das 	[GCC_QUPV3_WRAP_0_S_AHB_CLK] = &gcc_qupv3_wrap_0_s_ahb_clk.clkr,
8230*efe50430STaniya Das 	[GCC_QUPV3_WRAP_1_M_AHB_CLK] = &gcc_qupv3_wrap_1_m_ahb_clk.clkr,
8231*efe50430STaniya Das 	[GCC_QUPV3_WRAP_1_S_AHB_CLK] = &gcc_qupv3_wrap_1_s_ahb_clk.clkr,
8232*efe50430STaniya Das 	[GCC_QUPV3_WRAP_2_M_AHB_CLK] = &gcc_qupv3_wrap_2_m_ahb_clk.clkr,
8233*efe50430STaniya Das 	[GCC_QUPV3_WRAP_2_S_AHB_CLK] = &gcc_qupv3_wrap_2_s_ahb_clk.clkr,
8234*efe50430STaniya Das 	[GCC_SDCC2_AHB_CLK] = &gcc_sdcc2_ahb_clk.clkr,
8235*efe50430STaniya Das 	[GCC_SDCC2_APPS_CLK] = &gcc_sdcc2_apps_clk.clkr,
8236*efe50430STaniya Das 	[GCC_SDCC2_APPS_CLK_SRC] = &gcc_sdcc2_apps_clk_src.clkr,
8237*efe50430STaniya Das 	[GCC_SDCC4_AHB_CLK] = &gcc_sdcc4_ahb_clk.clkr,
8238*efe50430STaniya Das 	[GCC_SDCC4_APPS_CLK] = &gcc_sdcc4_apps_clk.clkr,
8239*efe50430STaniya Das 	[GCC_SDCC4_APPS_CLK_SRC] = &gcc_sdcc4_apps_clk_src.clkr,
8240*efe50430STaniya Das 	[GCC_UFS_PHY_AHB_CLK] = &gcc_ufs_phy_ahb_clk.clkr,
8241*efe50430STaniya Das 	[GCC_UFS_PHY_AXI_CLK] = &gcc_ufs_phy_axi_clk.clkr,
8242*efe50430STaniya Das 	[GCC_UFS_PHY_AXI_CLK_SRC] = &gcc_ufs_phy_axi_clk_src.clkr,
8243*efe50430STaniya Das 	[GCC_UFS_PHY_ICE_CORE_CLK] = &gcc_ufs_phy_ice_core_clk.clkr,
8244*efe50430STaniya Das 	[GCC_UFS_PHY_ICE_CORE_CLK_SRC] = &gcc_ufs_phy_ice_core_clk_src.clkr,
8245*efe50430STaniya Das 	[GCC_UFS_PHY_PHY_AUX_CLK] = &gcc_ufs_phy_phy_aux_clk.clkr,
8246*efe50430STaniya Das 	[GCC_UFS_PHY_PHY_AUX_CLK_SRC] = &gcc_ufs_phy_phy_aux_clk_src.clkr,
8247*efe50430STaniya Das 	[GCC_UFS_PHY_RX_SYMBOL_0_CLK] = &gcc_ufs_phy_rx_symbol_0_clk.clkr,
8248*efe50430STaniya Das 	[GCC_UFS_PHY_RX_SYMBOL_0_CLK_SRC] = &gcc_ufs_phy_rx_symbol_0_clk_src.clkr,
8249*efe50430STaniya Das 	[GCC_UFS_PHY_RX_SYMBOL_1_CLK] = &gcc_ufs_phy_rx_symbol_1_clk.clkr,
8250*efe50430STaniya Das 	[GCC_UFS_PHY_RX_SYMBOL_1_CLK_SRC] = &gcc_ufs_phy_rx_symbol_1_clk_src.clkr,
8251*efe50430STaniya Das 	[GCC_UFS_PHY_TX_SYMBOL_0_CLK] = &gcc_ufs_phy_tx_symbol_0_clk.clkr,
8252*efe50430STaniya Das 	[GCC_UFS_PHY_TX_SYMBOL_0_CLK_SRC] = &gcc_ufs_phy_tx_symbol_0_clk_src.clkr,
8253*efe50430STaniya Das 	[GCC_UFS_PHY_UNIPRO_CORE_CLK] = &gcc_ufs_phy_unipro_core_clk.clkr,
8254*efe50430STaniya Das 	[GCC_UFS_PHY_UNIPRO_CORE_CLK_SRC] = &gcc_ufs_phy_unipro_core_clk_src.clkr,
8255*efe50430STaniya Das 	[GCC_USB20_MASTER_CLK] = &gcc_usb20_master_clk.clkr,
8256*efe50430STaniya Das 	[GCC_USB20_MASTER_CLK_SRC] = &gcc_usb20_master_clk_src.clkr,
8257*efe50430STaniya Das 	[GCC_USB20_MOCK_UTMI_CLK] = &gcc_usb20_mock_utmi_clk.clkr,
8258*efe50430STaniya Das 	[GCC_USB20_MOCK_UTMI_CLK_SRC] = &gcc_usb20_mock_utmi_clk_src.clkr,
8259*efe50430STaniya Das 	[GCC_USB20_MOCK_UTMI_POSTDIV_CLK_SRC] = &gcc_usb20_mock_utmi_postdiv_clk_src.clkr,
8260*efe50430STaniya Das 	[GCC_USB20_SLEEP_CLK] = &gcc_usb20_sleep_clk.clkr,
8261*efe50430STaniya Das 	[GCC_USB30_MP_MASTER_CLK] = &gcc_usb30_mp_master_clk.clkr,
8262*efe50430STaniya Das 	[GCC_USB30_MP_MASTER_CLK_SRC] = &gcc_usb30_mp_master_clk_src.clkr,
8263*efe50430STaniya Das 	[GCC_USB30_MP_MOCK_UTMI_CLK] = &gcc_usb30_mp_mock_utmi_clk.clkr,
8264*efe50430STaniya Das 	[GCC_USB30_MP_MOCK_UTMI_CLK_SRC] = &gcc_usb30_mp_mock_utmi_clk_src.clkr,
8265*efe50430STaniya Das 	[GCC_USB30_MP_MOCK_UTMI_POSTDIV_CLK_SRC] = &gcc_usb30_mp_mock_utmi_postdiv_clk_src.clkr,
8266*efe50430STaniya Das 	[GCC_USB30_MP_SLEEP_CLK] = &gcc_usb30_mp_sleep_clk.clkr,
8267*efe50430STaniya Das 	[GCC_USB30_PRIM_MASTER_CLK] = &gcc_usb30_prim_master_clk.clkr,
8268*efe50430STaniya Das 	[GCC_USB30_PRIM_MASTER_CLK_SRC] = &gcc_usb30_prim_master_clk_src.clkr,
8269*efe50430STaniya Das 	[GCC_USB30_PRIM_MOCK_UTMI_CLK] = &gcc_usb30_prim_mock_utmi_clk.clkr,
8270*efe50430STaniya Das 	[GCC_USB30_PRIM_MOCK_UTMI_CLK_SRC] = &gcc_usb30_prim_mock_utmi_clk_src.clkr,
8271*efe50430STaniya Das 	[GCC_USB30_PRIM_MOCK_UTMI_POSTDIV_CLK_SRC] = &gcc_usb30_prim_mock_utmi_postdiv_clk_src.clkr,
8272*efe50430STaniya Das 	[GCC_USB30_PRIM_SLEEP_CLK] = &gcc_usb30_prim_sleep_clk.clkr,
8273*efe50430STaniya Das 	[GCC_USB30_SEC_MASTER_CLK] = &gcc_usb30_sec_master_clk.clkr,
8274*efe50430STaniya Das 	[GCC_USB30_SEC_MASTER_CLK_SRC] = &gcc_usb30_sec_master_clk_src.clkr,
8275*efe50430STaniya Das 	[GCC_USB30_SEC_MOCK_UTMI_CLK] = &gcc_usb30_sec_mock_utmi_clk.clkr,
8276*efe50430STaniya Das 	[GCC_USB30_SEC_MOCK_UTMI_CLK_SRC] = &gcc_usb30_sec_mock_utmi_clk_src.clkr,
8277*efe50430STaniya Das 	[GCC_USB30_SEC_MOCK_UTMI_POSTDIV_CLK_SRC] = &gcc_usb30_sec_mock_utmi_postdiv_clk_src.clkr,
8278*efe50430STaniya Das 	[GCC_USB30_SEC_SLEEP_CLK] = &gcc_usb30_sec_sleep_clk.clkr,
8279*efe50430STaniya Das 	[GCC_USB30_TERT_MASTER_CLK] = &gcc_usb30_tert_master_clk.clkr,
8280*efe50430STaniya Das 	[GCC_USB30_TERT_MASTER_CLK_SRC] = &gcc_usb30_tert_master_clk_src.clkr,
8281*efe50430STaniya Das 	[GCC_USB30_TERT_MOCK_UTMI_CLK] = &gcc_usb30_tert_mock_utmi_clk.clkr,
8282*efe50430STaniya Das 	[GCC_USB30_TERT_MOCK_UTMI_CLK_SRC] = &gcc_usb30_tert_mock_utmi_clk_src.clkr,
8283*efe50430STaniya Das 	[GCC_USB30_TERT_MOCK_UTMI_POSTDIV_CLK_SRC] = &gcc_usb30_tert_mock_utmi_postdiv_clk_src.clkr,
8284*efe50430STaniya Das 	[GCC_USB30_TERT_SLEEP_CLK] = &gcc_usb30_tert_sleep_clk.clkr,
8285*efe50430STaniya Das 	[GCC_USB34_PRIM_PHY_PIPE_CLK_SRC] = &gcc_usb34_prim_phy_pipe_clk_src.clkr,
8286*efe50430STaniya Das 	[GCC_USB34_SEC_PHY_PIPE_CLK_SRC] = &gcc_usb34_sec_phy_pipe_clk_src.clkr,
8287*efe50430STaniya Das 	[GCC_USB34_TERT_PHY_PIPE_CLK_SRC] = &gcc_usb34_tert_phy_pipe_clk_src.clkr,
8288*efe50430STaniya Das 	[GCC_USB3_MP_PHY_AUX_CLK] = &gcc_usb3_mp_phy_aux_clk.clkr,
8289*efe50430STaniya Das 	[GCC_USB3_MP_PHY_AUX_CLK_SRC] = &gcc_usb3_mp_phy_aux_clk_src.clkr,
8290*efe50430STaniya Das 	[GCC_USB3_MP_PHY_COM_AUX_CLK] = &gcc_usb3_mp_phy_com_aux_clk.clkr,
8291*efe50430STaniya Das 	[GCC_USB3_MP_PHY_PIPE_0_CLK] = &gcc_usb3_mp_phy_pipe_0_clk.clkr,
8292*efe50430STaniya Das 	[GCC_USB3_MP_PHY_PIPE_0_CLK_SRC] = &gcc_usb3_mp_phy_pipe_0_clk_src.clkr,
8293*efe50430STaniya Das 	[GCC_USB3_MP_PHY_PIPE_1_CLK] = &gcc_usb3_mp_phy_pipe_1_clk.clkr,
8294*efe50430STaniya Das 	[GCC_USB3_MP_PHY_PIPE_1_CLK_SRC] = &gcc_usb3_mp_phy_pipe_1_clk_src.clkr,
8295*efe50430STaniya Das 	[GCC_USB3_PRIM_PHY_AUX_CLK] = &gcc_usb3_prim_phy_aux_clk.clkr,
8296*efe50430STaniya Das 	[GCC_USB3_PRIM_PHY_AUX_CLK_SRC] = &gcc_usb3_prim_phy_aux_clk_src.clkr,
8297*efe50430STaniya Das 	[GCC_USB3_PRIM_PHY_COM_AUX_CLK] = &gcc_usb3_prim_phy_com_aux_clk.clkr,
8298*efe50430STaniya Das 	[GCC_USB3_PRIM_PHY_PIPE_CLK] = &gcc_usb3_prim_phy_pipe_clk.clkr,
8299*efe50430STaniya Das 	[GCC_USB3_PRIM_PHY_PIPE_CLK_SRC] = &gcc_usb3_prim_phy_pipe_clk_src.clkr,
8300*efe50430STaniya Das 	[GCC_USB3_SEC_PHY_AUX_CLK] = &gcc_usb3_sec_phy_aux_clk.clkr,
8301*efe50430STaniya Das 	[GCC_USB3_SEC_PHY_AUX_CLK_SRC] = &gcc_usb3_sec_phy_aux_clk_src.clkr,
8302*efe50430STaniya Das 	[GCC_USB3_SEC_PHY_COM_AUX_CLK] = &gcc_usb3_sec_phy_com_aux_clk.clkr,
8303*efe50430STaniya Das 	[GCC_USB3_SEC_PHY_PIPE_CLK] = &gcc_usb3_sec_phy_pipe_clk.clkr,
8304*efe50430STaniya Das 	[GCC_USB3_SEC_PHY_PIPE_CLK_SRC] = &gcc_usb3_sec_phy_pipe_clk_src.clkr,
8305*efe50430STaniya Das 	[GCC_USB3_TERT_PHY_AUX_CLK] = &gcc_usb3_tert_phy_aux_clk.clkr,
8306*efe50430STaniya Das 	[GCC_USB3_TERT_PHY_AUX_CLK_SRC] = &gcc_usb3_tert_phy_aux_clk_src.clkr,
8307*efe50430STaniya Das 	[GCC_USB3_TERT_PHY_COM_AUX_CLK] = &gcc_usb3_tert_phy_com_aux_clk.clkr,
8308*efe50430STaniya Das 	[GCC_USB3_TERT_PHY_PIPE_CLK] = &gcc_usb3_tert_phy_pipe_clk.clkr,
8309*efe50430STaniya Das 	[GCC_USB3_TERT_PHY_PIPE_CLK_SRC] = &gcc_usb3_tert_phy_pipe_clk_src.clkr,
8310*efe50430STaniya Das 	[GCC_USB4_0_CFG_AHB_CLK] = &gcc_usb4_0_cfg_ahb_clk.clkr,
8311*efe50430STaniya Das 	[GCC_USB4_0_DP0_CLK] = &gcc_usb4_0_dp0_clk.clkr,
8312*efe50430STaniya Das 	[GCC_USB4_0_DP1_CLK] = &gcc_usb4_0_dp1_clk.clkr,
8313*efe50430STaniya Das 	[GCC_USB4_0_MASTER_CLK] = &gcc_usb4_0_master_clk.clkr,
8314*efe50430STaniya Das 	[GCC_USB4_0_MASTER_CLK_SRC] = &gcc_usb4_0_master_clk_src.clkr,
8315*efe50430STaniya Das 	[GCC_USB4_0_PHY_DP0_CLK_SRC] = &gcc_usb4_0_phy_dp0_clk_src.clkr,
8316*efe50430STaniya Das 	[GCC_USB4_0_PHY_DP1_CLK_SRC] = &gcc_usb4_0_phy_dp1_clk_src.clkr,
8317*efe50430STaniya Das 	[GCC_USB4_0_PHY_P2RR2P_PIPE_CLK] = &gcc_usb4_0_phy_p2rr2p_pipe_clk.clkr,
8318*efe50430STaniya Das 	[GCC_USB4_0_PHY_P2RR2P_PIPE_CLK_SRC] = &gcc_usb4_0_phy_p2rr2p_pipe_clk_src.clkr,
8319*efe50430STaniya Das 	[GCC_USB4_0_PHY_PCIE_PIPE_CLK] = &gcc_usb4_0_phy_pcie_pipe_clk.clkr,
8320*efe50430STaniya Das 	[GCC_USB4_0_PHY_PCIE_PIPE_CLK_SRC] = &gcc_usb4_0_phy_pcie_pipe_clk_src.clkr,
8321*efe50430STaniya Das 	[GCC_USB4_0_PHY_PCIE_PIPE_MUX_CLK_SRC] = &gcc_usb4_0_phy_pcie_pipe_mux_clk_src.clkr,
8322*efe50430STaniya Das 	[GCC_USB4_0_PHY_RX0_CLK] = &gcc_usb4_0_phy_rx0_clk.clkr,
8323*efe50430STaniya Das 	[GCC_USB4_0_PHY_RX0_CLK_SRC] = &gcc_usb4_0_phy_rx0_clk_src.clkr,
8324*efe50430STaniya Das 	[GCC_USB4_0_PHY_RX1_CLK] = &gcc_usb4_0_phy_rx1_clk.clkr,
8325*efe50430STaniya Das 	[GCC_USB4_0_PHY_RX1_CLK_SRC] = &gcc_usb4_0_phy_rx1_clk_src.clkr,
8326*efe50430STaniya Das 	[GCC_USB4_0_PHY_SYS_CLK_SRC] = &gcc_usb4_0_phy_sys_clk_src.clkr,
8327*efe50430STaniya Das 	[GCC_USB4_0_PHY_USB_PIPE_CLK] = &gcc_usb4_0_phy_usb_pipe_clk.clkr,
8328*efe50430STaniya Das 	[GCC_USB4_0_SB_IF_CLK] = &gcc_usb4_0_sb_if_clk.clkr,
8329*efe50430STaniya Das 	[GCC_USB4_0_SB_IF_CLK_SRC] = &gcc_usb4_0_sb_if_clk_src.clkr,
8330*efe50430STaniya Das 	[GCC_USB4_0_SYS_CLK] = &gcc_usb4_0_sys_clk.clkr,
8331*efe50430STaniya Das 	[GCC_USB4_0_TMU_CLK] = &gcc_usb4_0_tmu_clk.clkr,
8332*efe50430STaniya Das 	[GCC_USB4_0_TMU_CLK_SRC] = &gcc_usb4_0_tmu_clk_src.clkr,
8333*efe50430STaniya Das 	[GCC_USB4_0_UC_HRR_CLK] = &gcc_usb4_0_uc_hrr_clk.clkr,
8334*efe50430STaniya Das 	[GCC_USB4_1_CFG_AHB_CLK] = &gcc_usb4_1_cfg_ahb_clk.clkr,
8335*efe50430STaniya Das 	[GCC_USB4_1_DP0_CLK] = &gcc_usb4_1_dp0_clk.clkr,
8336*efe50430STaniya Das 	[GCC_USB4_1_DP1_CLK] = &gcc_usb4_1_dp1_clk.clkr,
8337*efe50430STaniya Das 	[GCC_USB4_1_MASTER_CLK] = &gcc_usb4_1_master_clk.clkr,
8338*efe50430STaniya Das 	[GCC_USB4_1_MASTER_CLK_SRC] = &gcc_usb4_1_master_clk_src.clkr,
8339*efe50430STaniya Das 	[GCC_USB4_1_PHY_DP0_CLK_SRC] = &gcc_usb4_1_phy_dp0_clk_src.clkr,
8340*efe50430STaniya Das 	[GCC_USB4_1_PHY_DP1_CLK_SRC] = &gcc_usb4_1_phy_dp1_clk_src.clkr,
8341*efe50430STaniya Das 	[GCC_USB4_1_PHY_P2RR2P_PIPE_CLK] = &gcc_usb4_1_phy_p2rr2p_pipe_clk.clkr,
8342*efe50430STaniya Das 	[GCC_USB4_1_PHY_P2RR2P_PIPE_CLK_SRC] = &gcc_usb4_1_phy_p2rr2p_pipe_clk_src.clkr,
8343*efe50430STaniya Das 	[GCC_USB4_1_PHY_PCIE_PIPE_CLK] = &gcc_usb4_1_phy_pcie_pipe_clk.clkr,
8344*efe50430STaniya Das 	[GCC_USB4_1_PHY_PCIE_PIPE_CLK_SRC] = &gcc_usb4_1_phy_pcie_pipe_clk_src.clkr,
8345*efe50430STaniya Das 	[GCC_USB4_1_PHY_PCIE_PIPE_MUX_CLK_SRC] = &gcc_usb4_1_phy_pcie_pipe_mux_clk_src.clkr,
8346*efe50430STaniya Das 	[GCC_USB4_1_PHY_PLL_PIPE_CLK_SRC] = &gcc_usb4_1_phy_pll_pipe_clk_src.clkr,
8347*efe50430STaniya Das 	[GCC_USB4_1_PHY_RX0_CLK] = &gcc_usb4_1_phy_rx0_clk.clkr,
8348*efe50430STaniya Das 	[GCC_USB4_1_PHY_RX0_CLK_SRC] = &gcc_usb4_1_phy_rx0_clk_src.clkr,
8349*efe50430STaniya Das 	[GCC_USB4_1_PHY_RX1_CLK] = &gcc_usb4_1_phy_rx1_clk.clkr,
8350*efe50430STaniya Das 	[GCC_USB4_1_PHY_RX1_CLK_SRC] = &gcc_usb4_1_phy_rx1_clk_src.clkr,
8351*efe50430STaniya Das 	[GCC_USB4_1_PHY_SYS_CLK_SRC] = &gcc_usb4_1_phy_sys_clk_src.clkr,
8352*efe50430STaniya Das 	[GCC_USB4_1_PHY_USB_PIPE_CLK] = &gcc_usb4_1_phy_usb_pipe_clk.clkr,
8353*efe50430STaniya Das 	[GCC_USB4_1_SB_IF_CLK] = &gcc_usb4_1_sb_if_clk.clkr,
8354*efe50430STaniya Das 	[GCC_USB4_1_SB_IF_CLK_SRC] = &gcc_usb4_1_sb_if_clk_src.clkr,
8355*efe50430STaniya Das 	[GCC_USB4_1_SYS_CLK] = &gcc_usb4_1_sys_clk.clkr,
8356*efe50430STaniya Das 	[GCC_USB4_1_TMU_CLK] = &gcc_usb4_1_tmu_clk.clkr,
8357*efe50430STaniya Das 	[GCC_USB4_1_TMU_CLK_SRC] = &gcc_usb4_1_tmu_clk_src.clkr,
8358*efe50430STaniya Das 	[GCC_USB4_1_UC_HRR_CLK] = &gcc_usb4_1_uc_hrr_clk.clkr,
8359*efe50430STaniya Das 	[GCC_USB4_2_CFG_AHB_CLK] = &gcc_usb4_2_cfg_ahb_clk.clkr,
8360*efe50430STaniya Das 	[GCC_USB4_2_DP0_CLK] = &gcc_usb4_2_dp0_clk.clkr,
8361*efe50430STaniya Das 	[GCC_USB4_2_DP1_CLK] = &gcc_usb4_2_dp1_clk.clkr,
8362*efe50430STaniya Das 	[GCC_USB4_2_MASTER_CLK] = &gcc_usb4_2_master_clk.clkr,
8363*efe50430STaniya Das 	[GCC_USB4_2_MASTER_CLK_SRC] = &gcc_usb4_2_master_clk_src.clkr,
8364*efe50430STaniya Das 	[GCC_USB4_2_PHY_DP0_CLK_SRC] = &gcc_usb4_2_phy_dp0_clk_src.clkr,
8365*efe50430STaniya Das 	[GCC_USB4_2_PHY_DP1_CLK_SRC] = &gcc_usb4_2_phy_dp1_clk_src.clkr,
8366*efe50430STaniya Das 	[GCC_USB4_2_PHY_P2RR2P_PIPE_CLK] = &gcc_usb4_2_phy_p2rr2p_pipe_clk.clkr,
8367*efe50430STaniya Das 	[GCC_USB4_2_PHY_P2RR2P_PIPE_CLK_SRC] = &gcc_usb4_2_phy_p2rr2p_pipe_clk_src.clkr,
8368*efe50430STaniya Das 	[GCC_USB4_2_PHY_PCIE_PIPE_CLK] = &gcc_usb4_2_phy_pcie_pipe_clk.clkr,
8369*efe50430STaniya Das 	[GCC_USB4_2_PHY_PCIE_PIPE_CLK_SRC] = &gcc_usb4_2_phy_pcie_pipe_clk_src.clkr,
8370*efe50430STaniya Das 	[GCC_USB4_2_PHY_PCIE_PIPE_MUX_CLK_SRC] = &gcc_usb4_2_phy_pcie_pipe_mux_clk_src.clkr,
8371*efe50430STaniya Das 	[GCC_USB4_2_PHY_RX0_CLK] = &gcc_usb4_2_phy_rx0_clk.clkr,
8372*efe50430STaniya Das 	[GCC_USB4_2_PHY_RX0_CLK_SRC] = &gcc_usb4_2_phy_rx0_clk_src.clkr,
8373*efe50430STaniya Das 	[GCC_USB4_2_PHY_RX1_CLK] = &gcc_usb4_2_phy_rx1_clk.clkr,
8374*efe50430STaniya Das 	[GCC_USB4_2_PHY_RX1_CLK_SRC] = &gcc_usb4_2_phy_rx1_clk_src.clkr,
8375*efe50430STaniya Das 	[GCC_USB4_2_PHY_SYS_CLK_SRC] = &gcc_usb4_2_phy_sys_clk_src.clkr,
8376*efe50430STaniya Das 	[GCC_USB4_2_PHY_USB_PIPE_CLK] = &gcc_usb4_2_phy_usb_pipe_clk.clkr,
8377*efe50430STaniya Das 	[GCC_USB4_2_SB_IF_CLK] = &gcc_usb4_2_sb_if_clk.clkr,
8378*efe50430STaniya Das 	[GCC_USB4_2_SB_IF_CLK_SRC] = &gcc_usb4_2_sb_if_clk_src.clkr,
8379*efe50430STaniya Das 	[GCC_USB4_2_SYS_CLK] = &gcc_usb4_2_sys_clk.clkr,
8380*efe50430STaniya Das 	[GCC_USB4_2_TMU_CLK] = &gcc_usb4_2_tmu_clk.clkr,
8381*efe50430STaniya Das 	[GCC_USB4_2_TMU_CLK_SRC] = &gcc_usb4_2_tmu_clk_src.clkr,
8382*efe50430STaniya Das 	[GCC_USB4_2_UC_HRR_CLK] = &gcc_usb4_2_uc_hrr_clk.clkr,
8383*efe50430STaniya Das 	[GCC_VIDEO_AXI0_CLK] = &gcc_video_axi0_clk.clkr,
8384*efe50430STaniya Das 	[GCC_VIDEO_AXI0C_CLK] = &gcc_video_axi0c_clk.clkr,
8385*efe50430STaniya Das 	[GCC_VIDEO_AXI1_CLK] = &gcc_video_axi1_clk.clkr,
8386*efe50430STaniya Das };
8387*efe50430STaniya Das 
8388*efe50430STaniya Das static struct gdsc *gcc_glymur_gdscs[] = {
8389*efe50430STaniya Das 	[GCC_PCIE_0_TUNNEL_GDSC] = &gcc_pcie_0_tunnel_gdsc,
8390*efe50430STaniya Das 	[GCC_PCIE_1_TUNNEL_GDSC] = &gcc_pcie_1_tunnel_gdsc,
8391*efe50430STaniya Das 	[GCC_PCIE_2_TUNNEL_GDSC] = &gcc_pcie_2_tunnel_gdsc,
8392*efe50430STaniya Das 	[GCC_PCIE_3A_GDSC] = &gcc_pcie_3a_gdsc,
8393*efe50430STaniya Das 	[GCC_PCIE_3A_PHY_GDSC] = &gcc_pcie_3a_phy_gdsc,
8394*efe50430STaniya Das 	[GCC_PCIE_3B_GDSC] = &gcc_pcie_3b_gdsc,
8395*efe50430STaniya Das 	[GCC_PCIE_3B_PHY_GDSC] = &gcc_pcie_3b_phy_gdsc,
8396*efe50430STaniya Das 	[GCC_PCIE_4_GDSC] = &gcc_pcie_4_gdsc,
8397*efe50430STaniya Das 	[GCC_PCIE_4_PHY_GDSC] = &gcc_pcie_4_phy_gdsc,
8398*efe50430STaniya Das 	[GCC_PCIE_5_GDSC] = &gcc_pcie_5_gdsc,
8399*efe50430STaniya Das 	[GCC_PCIE_5_PHY_GDSC] = &gcc_pcie_5_phy_gdsc,
8400*efe50430STaniya Das 	[GCC_PCIE_6_GDSC] = &gcc_pcie_6_gdsc,
8401*efe50430STaniya Das 	[GCC_PCIE_6_PHY_GDSC] = &gcc_pcie_6_phy_gdsc,
8402*efe50430STaniya Das 	[GCC_UFS_PHY_GDSC] = &gcc_ufs_phy_gdsc,
8403*efe50430STaniya Das 	[GCC_USB20_PRIM_GDSC] = &gcc_usb20_prim_gdsc,
8404*efe50430STaniya Das 	[GCC_USB30_MP_GDSC] = &gcc_usb30_mp_gdsc,
8405*efe50430STaniya Das 	[GCC_USB30_PRIM_GDSC] = &gcc_usb30_prim_gdsc,
8406*efe50430STaniya Das 	[GCC_USB30_SEC_GDSC] = &gcc_usb30_sec_gdsc,
8407*efe50430STaniya Das 	[GCC_USB30_TERT_GDSC] = &gcc_usb30_tert_gdsc,
8408*efe50430STaniya Das 	[GCC_USB3_MP_SS0_PHY_GDSC] = &gcc_usb3_mp_ss0_phy_gdsc,
8409*efe50430STaniya Das 	[GCC_USB3_MP_SS1_PHY_GDSC] = &gcc_usb3_mp_ss1_phy_gdsc,
8410*efe50430STaniya Das 	[GCC_USB4_0_GDSC] = &gcc_usb4_0_gdsc,
8411*efe50430STaniya Das 	[GCC_USB4_1_GDSC] = &gcc_usb4_1_gdsc,
8412*efe50430STaniya Das 	[GCC_USB4_2_GDSC] = &gcc_usb4_2_gdsc,
8413*efe50430STaniya Das 	[GCC_USB_0_PHY_GDSC] = &gcc_usb_0_phy_gdsc,
8414*efe50430STaniya Das 	[GCC_USB_1_PHY_GDSC] = &gcc_usb_1_phy_gdsc,
8415*efe50430STaniya Das 	[GCC_USB_2_PHY_GDSC] = &gcc_usb_2_phy_gdsc,
8416*efe50430STaniya Das };
8417*efe50430STaniya Das 
8418*efe50430STaniya Das static const struct qcom_reset_map gcc_glymur_resets[] = {
8419*efe50430STaniya Das 	[GCC_AV1E_BCR] = { 0x9b028 },
8420*efe50430STaniya Das 	[GCC_CAMERA_BCR] = { 0x26000 },
8421*efe50430STaniya Das 	[GCC_DISPLAY_BCR] = { 0x27000 },
8422*efe50430STaniya Das 	[GCC_EVA_BCR] = { 0x9b000 },
8423*efe50430STaniya Das 	[GCC_GPU_BCR] = { 0x71000 },
8424*efe50430STaniya Das 	[GCC_PCIE_0_LINK_DOWN_BCR] = { 0xbc2d0 },
8425*efe50430STaniya Das 	[GCC_PCIE_0_NOCSR_COM_PHY_BCR] = { 0xbc2dc },
8426*efe50430STaniya Das 	[GCC_PCIE_0_PHY_BCR] = { 0xbc2d8 },
8427*efe50430STaniya Das 	[GCC_PCIE_0_PHY_NOCSR_COM_PHY_BCR] = { 0xbc2e0 },
8428*efe50430STaniya Das 	[GCC_PCIE_0_TUNNEL_BCR] = { 0xc8000 },
8429*efe50430STaniya Das 	[GCC_PCIE_1_LINK_DOWN_BCR] = { 0x7f018 },
8430*efe50430STaniya Das 	[GCC_PCIE_1_NOCSR_COM_PHY_BCR] = { 0x7f024 },
8431*efe50430STaniya Das 	[GCC_PCIE_1_PHY_BCR] = { 0x7f020 },
8432*efe50430STaniya Das 	[GCC_PCIE_1_PHY_NOCSR_COM_PHY_BCR] = { 0x7f028 },
8433*efe50430STaniya Das 	[GCC_PCIE_1_TUNNEL_BCR] = { 0x2e000 },
8434*efe50430STaniya Das 	[GCC_PCIE_2_LINK_DOWN_BCR] = { 0x281d0 },
8435*efe50430STaniya Das 	[GCC_PCIE_2_NOCSR_COM_PHY_BCR] = { 0x281dc },
8436*efe50430STaniya Das 	[GCC_PCIE_2_PHY_BCR] = { 0x281d8 },
8437*efe50430STaniya Das 	[GCC_PCIE_2_PHY_NOCSR_COM_PHY_BCR] = { 0x281e0 },
8438*efe50430STaniya Das 	[GCC_PCIE_2_TUNNEL_BCR] = { 0xc0000 },
8439*efe50430STaniya Das 	[GCC_PCIE_3A_BCR] = { 0xdc000 },
8440*efe50430STaniya Das 	[GCC_PCIE_3A_LINK_DOWN_BCR] = { 0x7b0a0 },
8441*efe50430STaniya Das 	[GCC_PCIE_3A_NOCSR_COM_PHY_BCR] = { 0x7b0ac },
8442*efe50430STaniya Das 	[GCC_PCIE_3A_PHY_BCR] = { 0x6c000 },
8443*efe50430STaniya Das 	[GCC_PCIE_3A_PHY_NOCSR_COM_PHY_BCR] = { 0x7b0b0 },
8444*efe50430STaniya Das 	[GCC_PCIE_3B_BCR] = { 0x94000 },
8445*efe50430STaniya Das 	[GCC_PCIE_3B_LINK_DOWN_BCR] = { 0x7a0c0 },
8446*efe50430STaniya Das 	[GCC_PCIE_3B_NOCSR_COM_PHY_BCR] = { 0x7a0cc },
8447*efe50430STaniya Das 	[GCC_PCIE_3B_PHY_BCR] = { 0x75000 },
8448*efe50430STaniya Das 	[GCC_PCIE_3B_PHY_NOCSR_COM_PHY_BCR] = { 0x7a0c8 },
8449*efe50430STaniya Das 	[GCC_PCIE_4_BCR] = { 0x88000 },
8450*efe50430STaniya Das 	[GCC_PCIE_4_LINK_DOWN_BCR] = { 0x980c0 },
8451*efe50430STaniya Das 	[GCC_PCIE_4_NOCSR_COM_PHY_BCR] = { 0x980cc },
8452*efe50430STaniya Das 	[GCC_PCIE_4_PHY_BCR] = { 0xd3000 },
8453*efe50430STaniya Das 	[GCC_PCIE_4_PHY_NOCSR_COM_PHY_BCR] = { 0x980d0 },
8454*efe50430STaniya Das 	[GCC_PCIE_5_BCR] = { 0xc3000 },
8455*efe50430STaniya Das 	[GCC_PCIE_5_LINK_DOWN_BCR] = { 0x850c0 },
8456*efe50430STaniya Das 	[GCC_PCIE_5_NOCSR_COM_PHY_BCR] = { 0x850cc },
8457*efe50430STaniya Das 	[GCC_PCIE_5_PHY_BCR] = { 0xd2000 },
8458*efe50430STaniya Das 	[GCC_PCIE_5_PHY_NOCSR_COM_PHY_BCR] = { 0x850d0 },
8459*efe50430STaniya Das 	[GCC_PCIE_6_BCR] = { 0x8a000 },
8460*efe50430STaniya Das 	[GCC_PCIE_6_LINK_DOWN_BCR] = { 0x3a0b0 },
8461*efe50430STaniya Das 	[GCC_PCIE_6_NOCSR_COM_PHY_BCR] = { 0x3a0bc },
8462*efe50430STaniya Das 	[GCC_PCIE_6_PHY_BCR] = { 0xd4000 },
8463*efe50430STaniya Das 	[GCC_PCIE_6_PHY_NOCSR_COM_PHY_BCR] = { 0x3a0c0 },
8464*efe50430STaniya Das 	[GCC_PCIE_NOC_BCR] = { 0xba294 },
8465*efe50430STaniya Das 	[GCC_PCIE_PHY_BCR] = { 0x6f000 },
8466*efe50430STaniya Das 	[GCC_PCIE_PHY_CFG_AHB_BCR] = { 0x7f00c },
8467*efe50430STaniya Das 	[GCC_PCIE_PHY_COM_BCR] = { 0x7f010 },
8468*efe50430STaniya Das 	[GCC_PCIE_RSCC_BCR] = { 0xb8000 },
8469*efe50430STaniya Das 	[GCC_PDM_BCR] = { 0x33000 },
8470*efe50430STaniya Das 	[GCC_QUPV3_WRAPPER_0_BCR] = { 0x28000 },
8471*efe50430STaniya Das 	[GCC_QUPV3_WRAPPER_1_BCR] = { 0xb3000 },
8472*efe50430STaniya Das 	[GCC_QUPV3_WRAPPER_2_BCR] = { 0xb4000 },
8473*efe50430STaniya Das 	[GCC_QUPV3_WRAPPER_OOB_BCR] = { 0xe7000 },
8474*efe50430STaniya Das 	[GCC_QUSB2PHY_HS0_MP_BCR] = { 0xca000 },
8475*efe50430STaniya Das 	[GCC_QUSB2PHY_HS1_MP_BCR] = { 0xe6000 },
8476*efe50430STaniya Das 	[GCC_QUSB2PHY_PRIM_BCR] = { 0xad024 },
8477*efe50430STaniya Das 	[GCC_QUSB2PHY_SEC_BCR] = { 0xae000 },
8478*efe50430STaniya Das 	[GCC_QUSB2PHY_TERT_BCR] = { 0xc9000 },
8479*efe50430STaniya Das 	[GCC_QUSB2PHY_USB20_HS_BCR] = { 0xe9000 },
8480*efe50430STaniya Das 	[GCC_SDCC2_BCR] = { 0xb0000 },
8481*efe50430STaniya Das 	[GCC_SDCC4_BCR] = { 0xdf000 },
8482*efe50430STaniya Das 	[GCC_TCSR_PCIE_BCR] = { 0x281e4 },
8483*efe50430STaniya Das 	[GCC_UFS_PHY_BCR] = { 0x77004 },
8484*efe50430STaniya Das 	[GCC_USB20_PRIM_BCR] = { 0xbc000 },
8485*efe50430STaniya Das 	[GCC_USB30_MP_BCR] = { 0x9a00c },
8486*efe50430STaniya Das 	[GCC_USB30_PRIM_BCR] = { 0x3f018 },
8487*efe50430STaniya Das 	[GCC_USB30_SEC_BCR] = { 0xe200c },
8488*efe50430STaniya Das 	[GCC_USB30_TERT_BCR] = { 0xe100c },
8489*efe50430STaniya Das 	[GCC_USB3_MP_SS0_PHY_BCR] = { 0x54008 },
8490*efe50430STaniya Das 	[GCC_USB3_MP_SS1_PHY_BCR] = { 0x54028 },
8491*efe50430STaniya Das 	[GCC_USB3_PHY_PRIM_BCR] = { 0xdb000 },
8492*efe50430STaniya Das 	[GCC_USB3_PHY_SEC_BCR] = { 0x2c000 },
8493*efe50430STaniya Das 	[GCC_USB3_PHY_TERT_BCR] = { 0xbe000 },
8494*efe50430STaniya Das 	[GCC_USB3_UNIPHY_MP0_BCR] = { 0x54000 },
8495*efe50430STaniya Das 	[GCC_USB3_UNIPHY_MP1_BCR] = { 0x54020 },
8496*efe50430STaniya Das 	[GCC_USB3PHY_PHY_PRIM_BCR] = { 0xdb004 },
8497*efe50430STaniya Das 	[GCC_USB3PHY_PHY_SEC_BCR] = { 0x2c004 },
8498*efe50430STaniya Das 	[GCC_USB3PHY_PHY_TERT_BCR] = { 0xbe004 },
8499*efe50430STaniya Das 	[GCC_USB3UNIPHY_PHY_MP0_BCR] = { 0x54004 },
8500*efe50430STaniya Das 	[GCC_USB3UNIPHY_PHY_MP1_BCR] = { 0x54024 },
8501*efe50430STaniya Das 	[GCC_USB4_0_BCR] = { 0x2b004 },
8502*efe50430STaniya Das 	[GCC_USB4_0_DP0_PHY_PRIM_BCR] = { 0xdb010 },
8503*efe50430STaniya Das 	[GCC_USB4_1_BCR] = { 0x2d004 },
8504*efe50430STaniya Das 	[GCC_USB4_2_BCR] = { 0xe0004 },
8505*efe50430STaniya Das 	[GCC_USB_0_PHY_BCR] = { 0xdb020 },
8506*efe50430STaniya Das 	[GCC_USB_1_PHY_BCR] = { 0x2c020 },
8507*efe50430STaniya Das 	[GCC_USB_2_PHY_BCR] = { 0xbe020 },
8508*efe50430STaniya Das 	[GCC_VIDEO_AXI0_CLK_ARES] = { 0x3201c, 2 },
8509*efe50430STaniya Das 	[GCC_VIDEO_AXI1_CLK_ARES] = { 0x32044, 2 },
8510*efe50430STaniya Das 	[GCC_VIDEO_BCR] = { 0x32000 },
8511*efe50430STaniya Das };
8512*efe50430STaniya Das 
8513*efe50430STaniya Das static const struct clk_rcg_dfs_data gcc_dfs_clocks[] = {
8514*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_oob_qspi_s0_clk_src),
8515*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_oob_qspi_s1_clk_src),
8516*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_qspi_s2_clk_src),
8517*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_qspi_s3_clk_src),
8518*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_qspi_s6_clk_src),
8519*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_s0_clk_src),
8520*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_s1_clk_src),
8521*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_s4_clk_src),
8522*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_s5_clk_src),
8523*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap0_s7_clk_src),
8524*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_qspi_s2_clk_src),
8525*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_qspi_s3_clk_src),
8526*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_qspi_s6_clk_src),
8527*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_s0_clk_src),
8528*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_s1_clk_src),
8529*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_s4_clk_src),
8530*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_s5_clk_src),
8531*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap1_s7_clk_src),
8532*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_qspi_s2_clk_src),
8533*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_qspi_s3_clk_src),
8534*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_qspi_s6_clk_src),
8535*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_s0_clk_src),
8536*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_s1_clk_src),
8537*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_s4_clk_src),
8538*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_s5_clk_src),
8539*efe50430STaniya Das 	DEFINE_RCG_DFS(gcc_qupv3_wrap2_s7_clk_src),
8540*efe50430STaniya Das };
8541*efe50430STaniya Das 
8542*efe50430STaniya Das static u32 gcc_glymur_critical_cbcrs[] = {
8543*efe50430STaniya Das 	0x26004, /* GCC_CAMERA_AHB_CLK */
8544*efe50430STaniya Das 	0x26040, /* GCC_CAMERA_XO_CLK */
8545*efe50430STaniya Das 	0x27004, /* GCC_DISP_AHB_CLK */
8546*efe50430STaniya Das 	0x71004, /* GCC_GPU_CFG_AHB_CLK */
8547*efe50430STaniya Das 	0x32004, /* GCC_VIDEO_AHB_CLK */
8548*efe50430STaniya Das 	0x32058, /* GCC_VIDEO_XO_CLK */
8549*efe50430STaniya Das };
8550*efe50430STaniya Das 
8551*efe50430STaniya Das static const struct regmap_config gcc_glymur_regmap_config = {
8552*efe50430STaniya Das 	.reg_bits = 32,
8553*efe50430STaniya Das 	.reg_stride = 4,
8554*efe50430STaniya Das 	.val_bits = 32,
8555*efe50430STaniya Das 	.max_register = 0x1f8ff0,
8556*efe50430STaniya Das 	.fast_io = true,
8557*efe50430STaniya Das };
8558*efe50430STaniya Das 
clk_glymur_regs_configure(struct device * dev,struct regmap * regmap)8559*efe50430STaniya Das static void clk_glymur_regs_configure(struct device *dev, struct regmap *regmap)
8560*efe50430STaniya Das {
8561*efe50430STaniya Das 	/* FORCE_MEM_CORE_ON for ufs phy ice core clocks */
8562*efe50430STaniya Das 	qcom_branch_set_force_mem_core(regmap, gcc_ufs_phy_ice_core_clk, true);
8563*efe50430STaniya Das }
8564*efe50430STaniya Das 
8565*efe50430STaniya Das static struct qcom_cc_driver_data gcc_glymur_driver_data = {
8566*efe50430STaniya Das 	.clk_cbcrs = gcc_glymur_critical_cbcrs,
8567*efe50430STaniya Das 	.num_clk_cbcrs = ARRAY_SIZE(gcc_glymur_critical_cbcrs),
8568*efe50430STaniya Das 	.dfs_rcgs = gcc_dfs_clocks,
8569*efe50430STaniya Das 	.num_dfs_rcgs = ARRAY_SIZE(gcc_dfs_clocks),
8570*efe50430STaniya Das 	.clk_regs_configure = clk_glymur_regs_configure,
8571*efe50430STaniya Das };
8572*efe50430STaniya Das 
8573*efe50430STaniya Das static const struct qcom_cc_desc gcc_glymur_desc = {
8574*efe50430STaniya Das 	.config = &gcc_glymur_regmap_config,
8575*efe50430STaniya Das 	.clks = gcc_glymur_clocks,
8576*efe50430STaniya Das 	.num_clks = ARRAY_SIZE(gcc_glymur_clocks),
8577*efe50430STaniya Das 	.resets = gcc_glymur_resets,
8578*efe50430STaniya Das 	.num_resets = ARRAY_SIZE(gcc_glymur_resets),
8579*efe50430STaniya Das 	.gdscs = gcc_glymur_gdscs,
8580*efe50430STaniya Das 	.num_gdscs = ARRAY_SIZE(gcc_glymur_gdscs),
8581*efe50430STaniya Das 	.driver_data = &gcc_glymur_driver_data,
8582*efe50430STaniya Das };
8583*efe50430STaniya Das 
8584*efe50430STaniya Das static const struct of_device_id gcc_glymur_match_table[] = {
8585*efe50430STaniya Das 	{ .compatible = "qcom,glymur-gcc" },
8586*efe50430STaniya Das 	{ }
8587*efe50430STaniya Das };
8588*efe50430STaniya Das MODULE_DEVICE_TABLE(of, gcc_glymur_match_table);
8589*efe50430STaniya Das 
gcc_glymur_probe(struct platform_device * pdev)8590*efe50430STaniya Das static int gcc_glymur_probe(struct platform_device *pdev)
8591*efe50430STaniya Das {
8592*efe50430STaniya Das 	return qcom_cc_probe(pdev, &gcc_glymur_desc);
8593*efe50430STaniya Das }
8594*efe50430STaniya Das 
8595*efe50430STaniya Das static struct platform_driver gcc_glymur_driver = {
8596*efe50430STaniya Das 	.probe = gcc_glymur_probe,
8597*efe50430STaniya Das 	.driver = {
8598*efe50430STaniya Das 		.name = "gcc-glymur",
8599*efe50430STaniya Das 		.of_match_table = gcc_glymur_match_table,
8600*efe50430STaniya Das 	},
8601*efe50430STaniya Das };
8602*efe50430STaniya Das 
gcc_glymur_init(void)8603*efe50430STaniya Das static int __init gcc_glymur_init(void)
8604*efe50430STaniya Das {
8605*efe50430STaniya Das 	return platform_driver_register(&gcc_glymur_driver);
8606*efe50430STaniya Das }
8607*efe50430STaniya Das subsys_initcall(gcc_glymur_init);
8608*efe50430STaniya Das 
gcc_glymur_exit(void)8609*efe50430STaniya Das static void __exit gcc_glymur_exit(void)
8610*efe50430STaniya Das {
8611*efe50430STaniya Das 	platform_driver_unregister(&gcc_glymur_driver);
8612*efe50430STaniya Das }
8613*efe50430STaniya Das module_exit(gcc_glymur_exit);
8614*efe50430STaniya Das 
8615*efe50430STaniya Das MODULE_DESCRIPTION("QTI GCC GLYMUR Driver");
8616*efe50430STaniya Das MODULE_LICENSE("GPL");
8617