xref: /linux/drivers/clk/qcom/dispcc1-nord.c (revision 502d45774af09f1c681c754c4b7cdfb5d7f72fd9)
1*9dcc782eSTaniya Das // SPDX-License-Identifier: GPL-2.0-only
2*9dcc782eSTaniya Das /*
3*9dcc782eSTaniya Das  * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4*9dcc782eSTaniya Das  */
5*9dcc782eSTaniya Das 
6*9dcc782eSTaniya Das #include <linux/clk-provider.h>
7*9dcc782eSTaniya Das #include <linux/module.h>
8*9dcc782eSTaniya Das #include <linux/platform_device.h>
9*9dcc782eSTaniya Das #include <linux/regmap.h>
10*9dcc782eSTaniya Das 
11*9dcc782eSTaniya Das #include <dt-bindings/clock/qcom,nord-dispcc.h>
12*9dcc782eSTaniya Das 
13*9dcc782eSTaniya Das #include "clk-alpha-pll.h"
14*9dcc782eSTaniya Das #include "clk-branch.h"
15*9dcc782eSTaniya Das #include "clk-pll.h"
16*9dcc782eSTaniya Das #include "clk-rcg.h"
17*9dcc782eSTaniya Das #include "clk-regmap.h"
18*9dcc782eSTaniya Das #include "clk-regmap-divider.h"
19*9dcc782eSTaniya Das #include "clk-regmap-mux.h"
20*9dcc782eSTaniya Das #include "common.h"
21*9dcc782eSTaniya Das #include "gdsc.h"
22*9dcc782eSTaniya Das #include "reset.h"
23*9dcc782eSTaniya Das 
24*9dcc782eSTaniya Das enum {
25*9dcc782eSTaniya Das 	DT_BI_TCXO,
26*9dcc782eSTaniya Das 	DT_BI_TCXO_AO,
27*9dcc782eSTaniya Das 	DT_AHB_CLK,
28*9dcc782eSTaniya Das 	DT_SLEEP_CLK,
29*9dcc782eSTaniya Das 
30*9dcc782eSTaniya Das 	DT_DSI0_PHY_PLL_OUT_BYTECLK,
31*9dcc782eSTaniya Das 	DT_DSI0_PHY_PLL_OUT_DSICLK,
32*9dcc782eSTaniya Das 	DT_DSI1_PHY_PLL_OUT_BYTECLK,
33*9dcc782eSTaniya Das 	DT_DSI1_PHY_PLL_OUT_DSICLK,
34*9dcc782eSTaniya Das 
35*9dcc782eSTaniya Das 	DT_DP0_PHY_PLL_LINK_CLK,
36*9dcc782eSTaniya Das 	DT_DP0_PHY_PLL_VCO_DIV_CLK,
37*9dcc782eSTaniya Das 	DT_DP1_PHY_PLL_LINK_CLK,
38*9dcc782eSTaniya Das 	DT_DP1_PHY_PLL_VCO_DIV_CLK,
39*9dcc782eSTaniya Das 	DT_DP2_PHY_PLL_LINK_CLK,
40*9dcc782eSTaniya Das 	DT_DP2_PHY_PLL_VCO_DIV_CLK,
41*9dcc782eSTaniya Das 	DT_DP3_PHY_PLL_LINK_CLK,
42*9dcc782eSTaniya Das 	DT_DP3_PHY_PLL_VCO_DIV_CLK,
43*9dcc782eSTaniya Das };
44*9dcc782eSTaniya Das 
45*9dcc782eSTaniya Das enum {
46*9dcc782eSTaniya Das 	P_BI_TCXO,
47*9dcc782eSTaniya Das 	P_MDSS_1_DISP_CC_PLL0_OUT_MAIN,
48*9dcc782eSTaniya Das 	P_MDSS_1_DISP_CC_PLL1_OUT_EVEN,
49*9dcc782eSTaniya Das 	P_MDSS_1_DISP_CC_PLL1_OUT_MAIN,
50*9dcc782eSTaniya Das 	P_MDSS_1_DISP_CC_PLL2_OUT_MAIN,
51*9dcc782eSTaniya Das 	P_MDSS_1_DISP_CC_PLL3_OUT_MAIN,
52*9dcc782eSTaniya Das 	P_DP0_PHY_PLL_LINK_CLK,
53*9dcc782eSTaniya Das 	P_DP0_PHY_PLL_VCO_DIV_CLK,
54*9dcc782eSTaniya Das 	P_DP1_PHY_PLL_LINK_CLK,
55*9dcc782eSTaniya Das 	P_DP1_PHY_PLL_VCO_DIV_CLK,
56*9dcc782eSTaniya Das 	P_DP2_PHY_PLL_LINK_CLK,
57*9dcc782eSTaniya Das 	P_DP2_PHY_PLL_VCO_DIV_CLK,
58*9dcc782eSTaniya Das 	P_DP3_PHY_PLL_LINK_CLK,
59*9dcc782eSTaniya Das 	P_DP3_PHY_PLL_VCO_DIV_CLK,
60*9dcc782eSTaniya Das 	P_DSI0_PHY_PLL_OUT_BYTECLK,
61*9dcc782eSTaniya Das 	P_DSI0_PHY_PLL_OUT_DSICLK,
62*9dcc782eSTaniya Das 	P_DSI1_PHY_PLL_OUT_BYTECLK,
63*9dcc782eSTaniya Das 	P_DSI1_PHY_PLL_OUT_DSICLK,
64*9dcc782eSTaniya Das 	P_SLEEP_CLK,
65*9dcc782eSTaniya Das };
66*9dcc782eSTaniya Das 
67*9dcc782eSTaniya Das static const struct pll_vco lucid_ole_vco[] = {
68*9dcc782eSTaniya Das 	{ 249600000, 2300000000, 0 },
69*9dcc782eSTaniya Das };
70*9dcc782eSTaniya Das 
71*9dcc782eSTaniya Das static const struct pll_vco zonda_ole_vco[] = {
72*9dcc782eSTaniya Das 	{ 700000000, 3600000000, 0 },
73*9dcc782eSTaniya Das };
74*9dcc782eSTaniya Das 
75*9dcc782eSTaniya Das /* 900.0 MHz Configuration */
76*9dcc782eSTaniya Das static const struct alpha_pll_config mdss_1_disp_cc_pll0_config = {
77*9dcc782eSTaniya Das 	.l = 0x2e,
78*9dcc782eSTaniya Das 	.alpha = 0xe000,
79*9dcc782eSTaniya Das 	.config_ctl_val = 0x20485699,
80*9dcc782eSTaniya Das 	.config_ctl_hi_val = 0x00182261,
81*9dcc782eSTaniya Das 	.config_ctl_hi1_val = 0x82aa299c,
82*9dcc782eSTaniya Das 	.test_ctl_val = 0x00000000,
83*9dcc782eSTaniya Das 	.test_ctl_hi_val = 0x00000003,
84*9dcc782eSTaniya Das 	.test_ctl_hi1_val = 0x00009000,
85*9dcc782eSTaniya Das 	.test_ctl_hi2_val = 0x00000034,
86*9dcc782eSTaniya Das 	.user_ctl_val = 0x00000000,
87*9dcc782eSTaniya Das 	.user_ctl_hi_val = 0x00400005,
88*9dcc782eSTaniya Das };
89*9dcc782eSTaniya Das 
90*9dcc782eSTaniya Das static struct clk_alpha_pll mdss_1_disp_cc_pll0 = {
91*9dcc782eSTaniya Das 	.offset = 0x0,
92*9dcc782eSTaniya Das 	.config = &mdss_1_disp_cc_pll0_config,
93*9dcc782eSTaniya Das 	.vco_table = lucid_ole_vco,
94*9dcc782eSTaniya Das 	.num_vco = ARRAY_SIZE(lucid_ole_vco),
95*9dcc782eSTaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_LUCID_OLE],
96*9dcc782eSTaniya Das 	.clkr = {
97*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
98*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_pll0",
99*9dcc782eSTaniya Das 			.parent_data = &(const struct clk_parent_data) {
100*9dcc782eSTaniya Das 				.index = DT_BI_TCXO,
101*9dcc782eSTaniya Das 			},
102*9dcc782eSTaniya Das 			.num_parents = 1,
103*9dcc782eSTaniya Das 			.ops = &clk_alpha_pll_lucid_evo_ops,
104*9dcc782eSTaniya Das 		},
105*9dcc782eSTaniya Das 	},
106*9dcc782eSTaniya Das };
107*9dcc782eSTaniya Das 
108*9dcc782eSTaniya Das /* 600.0 MHz Configuration */
109*9dcc782eSTaniya Das static const struct alpha_pll_config mdss_1_disp_cc_pll1_config = {
110*9dcc782eSTaniya Das 	.l = 0x1f,
111*9dcc782eSTaniya Das 	.alpha = 0x4000,
112*9dcc782eSTaniya Das 	.config_ctl_val = 0x20485699,
113*9dcc782eSTaniya Das 	.config_ctl_hi_val = 0x00182261,
114*9dcc782eSTaniya Das 	.config_ctl_hi1_val = 0x82aa299c,
115*9dcc782eSTaniya Das 	.test_ctl_val = 0x00000000,
116*9dcc782eSTaniya Das 	.test_ctl_hi_val = 0x00000003,
117*9dcc782eSTaniya Das 	.test_ctl_hi1_val = 0x00009000,
118*9dcc782eSTaniya Das 	.test_ctl_hi2_val = 0x00000034,
119*9dcc782eSTaniya Das 	.user_ctl_val = 0x00000000,
120*9dcc782eSTaniya Das 	.user_ctl_hi_val = 0x00400005,
121*9dcc782eSTaniya Das };
122*9dcc782eSTaniya Das 
123*9dcc782eSTaniya Das static struct clk_alpha_pll mdss_1_disp_cc_pll1 = {
124*9dcc782eSTaniya Das 	.offset = 0x1000,
125*9dcc782eSTaniya Das 	.config = &mdss_1_disp_cc_pll1_config,
126*9dcc782eSTaniya Das 	.vco_table = lucid_ole_vco,
127*9dcc782eSTaniya Das 	.num_vco = ARRAY_SIZE(lucid_ole_vco),
128*9dcc782eSTaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_LUCID_OLE],
129*9dcc782eSTaniya Das 	.clkr = {
130*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
131*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_pll1",
132*9dcc782eSTaniya Das 			.parent_data = &(const struct clk_parent_data) {
133*9dcc782eSTaniya Das 				.index = DT_BI_TCXO,
134*9dcc782eSTaniya Das 			},
135*9dcc782eSTaniya Das 			.num_parents = 1,
136*9dcc782eSTaniya Das 			.ops = &clk_alpha_pll_lucid_evo_ops,
137*9dcc782eSTaniya Das 		},
138*9dcc782eSTaniya Das 	},
139*9dcc782eSTaniya Das };
140*9dcc782eSTaniya Das 
141*9dcc782eSTaniya Das /* 1363.2 MHz Configuration */
142*9dcc782eSTaniya Das static const struct alpha_pll_config mdss_1_disp_cc_pll2_config = {
143*9dcc782eSTaniya Das 	.l = 0x47,
144*9dcc782eSTaniya Das 	.alpha = 0x0,
145*9dcc782eSTaniya Das 	.config_ctl_val = 0x08240800,
146*9dcc782eSTaniya Das 	.config_ctl_hi_val = 0x05008001,
147*9dcc782eSTaniya Das 	.config_ctl_hi1_val = 0x00000000,
148*9dcc782eSTaniya Das 	.config_ctl_hi2_val = 0x00000000,
149*9dcc782eSTaniya Das 	.user_ctl_val = 0x00000000,
150*9dcc782eSTaniya Das 	.user_ctl_hi_val = 0x00000080,
151*9dcc782eSTaniya Das };
152*9dcc782eSTaniya Das 
153*9dcc782eSTaniya Das static struct clk_alpha_pll mdss_1_disp_cc_pll2 = {
154*9dcc782eSTaniya Das 	.offset = 0x2000,
155*9dcc782eSTaniya Das 	.config = &mdss_1_disp_cc_pll2_config,
156*9dcc782eSTaniya Das 	.vco_table = zonda_ole_vco,
157*9dcc782eSTaniya Das 	.num_vco = ARRAY_SIZE(zonda_ole_vco),
158*9dcc782eSTaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_ZONDA_OLE],
159*9dcc782eSTaniya Das 	.clkr = {
160*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
161*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_pll2",
162*9dcc782eSTaniya Das 			.parent_data = &(const struct clk_parent_data) {
163*9dcc782eSTaniya Das 				.index = DT_BI_TCXO,
164*9dcc782eSTaniya Das 			},
165*9dcc782eSTaniya Das 			.num_parents = 1,
166*9dcc782eSTaniya Das 			.ops = &clk_alpha_pll_zonda_ole_ops,
167*9dcc782eSTaniya Das 		},
168*9dcc782eSTaniya Das 	},
169*9dcc782eSTaniya Das };
170*9dcc782eSTaniya Das 
171*9dcc782eSTaniya Das /* 1363.2 MHz Configuration */
172*9dcc782eSTaniya Das static const struct alpha_pll_config mdss_1_disp_cc_pll3_config = {
173*9dcc782eSTaniya Das 	.l = 0x47,
174*9dcc782eSTaniya Das 	.alpha = 0x0,
175*9dcc782eSTaniya Das 	.config_ctl_val = 0x08240800,
176*9dcc782eSTaniya Das 	.config_ctl_hi_val = 0x05008001,
177*9dcc782eSTaniya Das 	.config_ctl_hi1_val = 0x00000000,
178*9dcc782eSTaniya Das 	.config_ctl_hi2_val = 0x00000000,
179*9dcc782eSTaniya Das 	.user_ctl_val = 0x00000000,
180*9dcc782eSTaniya Das 	.user_ctl_hi_val = 0x00000080,
181*9dcc782eSTaniya Das };
182*9dcc782eSTaniya Das 
183*9dcc782eSTaniya Das static struct clk_alpha_pll mdss_1_disp_cc_pll3 = {
184*9dcc782eSTaniya Das 	.offset = 0x3000,
185*9dcc782eSTaniya Das 	.config = &mdss_1_disp_cc_pll3_config,
186*9dcc782eSTaniya Das 	.vco_table = zonda_ole_vco,
187*9dcc782eSTaniya Das 	.num_vco = ARRAY_SIZE(zonda_ole_vco),
188*9dcc782eSTaniya Das 	.regs = clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_ZONDA_OLE],
189*9dcc782eSTaniya Das 	.clkr = {
190*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
191*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_pll3",
192*9dcc782eSTaniya Das 			.parent_data = &(const struct clk_parent_data) {
193*9dcc782eSTaniya Das 				.index = DT_BI_TCXO,
194*9dcc782eSTaniya Das 			},
195*9dcc782eSTaniya Das 			.num_parents = 1,
196*9dcc782eSTaniya Das 			.ops = &clk_alpha_pll_zonda_ole_ops,
197*9dcc782eSTaniya Das 		},
198*9dcc782eSTaniya Das 	},
199*9dcc782eSTaniya Das };
200*9dcc782eSTaniya Das 
201*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_0[] = {
202*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
203*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL2_OUT_MAIN, 1 },
204*9dcc782eSTaniya Das 	{ P_DP0_PHY_PLL_VCO_DIV_CLK, 2 },
205*9dcc782eSTaniya Das 	{ P_DP3_PHY_PLL_VCO_DIV_CLK, 3 },
206*9dcc782eSTaniya Das 	{ P_DP1_PHY_PLL_VCO_DIV_CLK, 4 },
207*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL3_OUT_MAIN, 5 },
208*9dcc782eSTaniya Das 	{ P_DP2_PHY_PLL_VCO_DIV_CLK, 6 },
209*9dcc782eSTaniya Das };
210*9dcc782eSTaniya Das 
211*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_0[] = {
212*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
213*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll2.clkr.hw },
214*9dcc782eSTaniya Das 	{ .index = DT_DP0_PHY_PLL_VCO_DIV_CLK },
215*9dcc782eSTaniya Das 	{ .index = DT_DP3_PHY_PLL_VCO_DIV_CLK },
216*9dcc782eSTaniya Das 	{ .index = DT_DP1_PHY_PLL_VCO_DIV_CLK },
217*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll3.clkr.hw },
218*9dcc782eSTaniya Das 	{ .index = DT_DP2_PHY_PLL_VCO_DIV_CLK },
219*9dcc782eSTaniya Das };
220*9dcc782eSTaniya Das 
221*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_1[] = {
222*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
223*9dcc782eSTaniya Das };
224*9dcc782eSTaniya Das 
225*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_1[] = {
226*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
227*9dcc782eSTaniya Das };
228*9dcc782eSTaniya Das 
229*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_2[] = {
230*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
231*9dcc782eSTaniya Das 	{ P_DSI0_PHY_PLL_OUT_DSICLK, 1 },
232*9dcc782eSTaniya Das 	{ P_DSI0_PHY_PLL_OUT_BYTECLK, 2 },
233*9dcc782eSTaniya Das 	{ P_DSI1_PHY_PLL_OUT_DSICLK, 3 },
234*9dcc782eSTaniya Das 	{ P_DSI1_PHY_PLL_OUT_BYTECLK, 4 },
235*9dcc782eSTaniya Das };
236*9dcc782eSTaniya Das 
237*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_2[] = {
238*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
239*9dcc782eSTaniya Das 	{ .index = DT_DSI0_PHY_PLL_OUT_DSICLK },
240*9dcc782eSTaniya Das 	{ .index = DT_DSI0_PHY_PLL_OUT_BYTECLK },
241*9dcc782eSTaniya Das 	{ .index = DT_DSI1_PHY_PLL_OUT_DSICLK },
242*9dcc782eSTaniya Das 	{ .index = DT_DSI1_PHY_PLL_OUT_BYTECLK },
243*9dcc782eSTaniya Das };
244*9dcc782eSTaniya Das 
245*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_3[] = {
246*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
247*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL2_OUT_MAIN, 1 },
248*9dcc782eSTaniya Das 	{ P_DP3_PHY_PLL_VCO_DIV_CLK, 3 },
249*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL3_OUT_MAIN, 5 },
250*9dcc782eSTaniya Das 	{ P_DP2_PHY_PLL_VCO_DIV_CLK, 6 },
251*9dcc782eSTaniya Das };
252*9dcc782eSTaniya Das 
253*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_3[] = {
254*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
255*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll2.clkr.hw },
256*9dcc782eSTaniya Das 	{ .index = DT_DP3_PHY_PLL_VCO_DIV_CLK },
257*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll3.clkr.hw },
258*9dcc782eSTaniya Das 	{ .index = DT_DP2_PHY_PLL_VCO_DIV_CLK },
259*9dcc782eSTaniya Das };
260*9dcc782eSTaniya Das 
261*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_4[] = {
262*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
263*9dcc782eSTaniya Das 	{ P_DP0_PHY_PLL_LINK_CLK, 1 },
264*9dcc782eSTaniya Das 	{ P_DP1_PHY_PLL_LINK_CLK, 2 },
265*9dcc782eSTaniya Das 	{ P_DP2_PHY_PLL_LINK_CLK, 3 },
266*9dcc782eSTaniya Das 	{ P_DP3_PHY_PLL_LINK_CLK, 4 },
267*9dcc782eSTaniya Das };
268*9dcc782eSTaniya Das 
269*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_4[] = {
270*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
271*9dcc782eSTaniya Das 	{ .index = DT_DP0_PHY_PLL_LINK_CLK },
272*9dcc782eSTaniya Das 	{ .index = DT_DP1_PHY_PLL_LINK_CLK },
273*9dcc782eSTaniya Das 	{ .index = DT_DP2_PHY_PLL_LINK_CLK },
274*9dcc782eSTaniya Das 	{ .index = DT_DP3_PHY_PLL_LINK_CLK },
275*9dcc782eSTaniya Das };
276*9dcc782eSTaniya Das 
277*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_5[] = {
278*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
279*9dcc782eSTaniya Das 	{ P_DP2_PHY_PLL_LINK_CLK, 3 },
280*9dcc782eSTaniya Das 	{ P_DP3_PHY_PLL_LINK_CLK, 4 },
281*9dcc782eSTaniya Das };
282*9dcc782eSTaniya Das 
283*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_5[] = {
284*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
285*9dcc782eSTaniya Das 	{ .index = DT_DP2_PHY_PLL_LINK_CLK },
286*9dcc782eSTaniya Das 	{ .index = DT_DP3_PHY_PLL_LINK_CLK },
287*9dcc782eSTaniya Das };
288*9dcc782eSTaniya Das 
289*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_6[] = {
290*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
291*9dcc782eSTaniya Das 	{ P_DSI0_PHY_PLL_OUT_BYTECLK, 2 },
292*9dcc782eSTaniya Das 	{ P_DSI1_PHY_PLL_OUT_BYTECLK, 4 },
293*9dcc782eSTaniya Das };
294*9dcc782eSTaniya Das 
295*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_6[] = {
296*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
297*9dcc782eSTaniya Das 	{ .index = DT_DSI0_PHY_PLL_OUT_BYTECLK },
298*9dcc782eSTaniya Das 	{ .index = DT_DSI1_PHY_PLL_OUT_BYTECLK },
299*9dcc782eSTaniya Das };
300*9dcc782eSTaniya Das 
301*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_7[] = {
302*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
303*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL1_OUT_MAIN, 4 },
304*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL1_OUT_EVEN, 6 },
305*9dcc782eSTaniya Das };
306*9dcc782eSTaniya Das 
307*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_7[] = {
308*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
309*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll1.clkr.hw },
310*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll1.clkr.hw },
311*9dcc782eSTaniya Das };
312*9dcc782eSTaniya Das 
313*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_8[] = {
314*9dcc782eSTaniya Das 	{ P_BI_TCXO, 0 },
315*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 1 },
316*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL1_OUT_MAIN, 4 },
317*9dcc782eSTaniya Das 	{ P_MDSS_1_DISP_CC_PLL1_OUT_EVEN, 6 },
318*9dcc782eSTaniya Das };
319*9dcc782eSTaniya Das 
320*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_8[] = {
321*9dcc782eSTaniya Das 	{ .index = DT_BI_TCXO },
322*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll0.clkr.hw },
323*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll1.clkr.hw },
324*9dcc782eSTaniya Das 	{ .hw = &mdss_1_disp_cc_pll1.clkr.hw },
325*9dcc782eSTaniya Das };
326*9dcc782eSTaniya Das 
327*9dcc782eSTaniya Das static const struct parent_map disp_cc_1_parent_map_9[] = {
328*9dcc782eSTaniya Das 	{ P_SLEEP_CLK, 0 },
329*9dcc782eSTaniya Das };
330*9dcc782eSTaniya Das 
331*9dcc782eSTaniya Das static const struct clk_parent_data disp_cc_1_parent_data_9[] = {
332*9dcc782eSTaniya Das 	{ .index = DT_SLEEP_CLK },
333*9dcc782eSTaniya Das };
334*9dcc782eSTaniya Das 
335*9dcc782eSTaniya Das static const struct freq_tbl ftbl_mdss_1_disp_cc_mdss_ahb_clk_src[] = {
336*9dcc782eSTaniya Das 	F(37500000, P_MDSS_1_DISP_CC_PLL1_OUT_MAIN, 16, 0, 0),
337*9dcc782eSTaniya Das 	F(75000000, P_MDSS_1_DISP_CC_PLL1_OUT_MAIN, 8, 0, 0),
338*9dcc782eSTaniya Das 	{ }
339*9dcc782eSTaniya Das };
340*9dcc782eSTaniya Das 
341*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_ahb_clk_src = {
342*9dcc782eSTaniya Das 	.cmd_rcgr = 0x837c,
343*9dcc782eSTaniya Das 	.mnd_width = 0,
344*9dcc782eSTaniya Das 	.hid_width = 5,
345*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_7,
346*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_ahb_clk_src,
347*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
348*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
349*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_ahb_clk_src",
350*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_7,
351*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_7),
352*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
353*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
354*9dcc782eSTaniya Das 	},
355*9dcc782eSTaniya Das };
356*9dcc782eSTaniya Das 
357*9dcc782eSTaniya Das static const struct freq_tbl ftbl_mdss_1_disp_cc_mdss_byte0_clk_src[] = {
358*9dcc782eSTaniya Das 	F(19200000, P_BI_TCXO, 1, 0, 0),
359*9dcc782eSTaniya Das 	{ }
360*9dcc782eSTaniya Das };
361*9dcc782eSTaniya Das 
362*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_byte0_clk_src = {
363*9dcc782eSTaniya Das 	.cmd_rcgr = 0x813c,
364*9dcc782eSTaniya Das 	.mnd_width = 0,
365*9dcc782eSTaniya Das 	.hid_width = 5,
366*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_2,
367*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
368*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
369*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
370*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_byte0_clk_src",
371*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_2,
372*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_2),
373*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
374*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
375*9dcc782eSTaniya Das 	},
376*9dcc782eSTaniya Das };
377*9dcc782eSTaniya Das 
378*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_byte1_clk_src = {
379*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8158,
380*9dcc782eSTaniya Das 	.mnd_width = 0,
381*9dcc782eSTaniya Das 	.hid_width = 5,
382*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_2,
383*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
384*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
385*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
386*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_byte1_clk_src",
387*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_2,
388*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_2),
389*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
390*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
391*9dcc782eSTaniya Das 	},
392*9dcc782eSTaniya Das };
393*9dcc782eSTaniya Das 
394*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_aux_clk_src = {
395*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8220,
396*9dcc782eSTaniya Das 	.mnd_width = 0,
397*9dcc782eSTaniya Das 	.hid_width = 5,
398*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
399*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
400*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
401*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
402*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_aux_clk_src",
403*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
404*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
405*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
406*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
407*9dcc782eSTaniya Das 	},
408*9dcc782eSTaniya Das };
409*9dcc782eSTaniya Das 
410*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_link_clk_src = {
411*9dcc782eSTaniya Das 	.cmd_rcgr = 0x81a4,
412*9dcc782eSTaniya Das 	.mnd_width = 0,
413*9dcc782eSTaniya Das 	.hid_width = 5,
414*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_4,
415*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
416*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
417*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
418*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_link_clk_src",
419*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_4,
420*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_4),
421*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
422*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
423*9dcc782eSTaniya Das 	},
424*9dcc782eSTaniya Das };
425*9dcc782eSTaniya Das 
426*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_pixel0_clk_src = {
427*9dcc782eSTaniya Das 	.cmd_rcgr = 0x81c0,
428*9dcc782eSTaniya Das 	.mnd_width = 16,
429*9dcc782eSTaniya Das 	.hid_width = 5,
430*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
431*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
432*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
433*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
434*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_pixel0_clk_src",
435*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
436*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
437*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
438*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
439*9dcc782eSTaniya Das 	},
440*9dcc782eSTaniya Das };
441*9dcc782eSTaniya Das 
442*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_pixel1_clk_src = {
443*9dcc782eSTaniya Das 	.cmd_rcgr = 0x81d8,
444*9dcc782eSTaniya Das 	.mnd_width = 16,
445*9dcc782eSTaniya Das 	.hid_width = 5,
446*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
447*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
448*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
449*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
450*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_pixel1_clk_src",
451*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
452*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
453*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
454*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
455*9dcc782eSTaniya Das 	},
456*9dcc782eSTaniya Das };
457*9dcc782eSTaniya Das 
458*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_pixel2_clk_src = {
459*9dcc782eSTaniya Das 	.cmd_rcgr = 0x81f0,
460*9dcc782eSTaniya Das 	.mnd_width = 16,
461*9dcc782eSTaniya Das 	.hid_width = 5,
462*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
463*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
464*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
465*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
466*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_pixel2_clk_src",
467*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
468*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
469*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
470*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
471*9dcc782eSTaniya Das 	},
472*9dcc782eSTaniya Das };
473*9dcc782eSTaniya Das 
474*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx0_pixel3_clk_src = {
475*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8208,
476*9dcc782eSTaniya Das 	.mnd_width = 16,
477*9dcc782eSTaniya Das 	.hid_width = 5,
478*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
479*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
480*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
481*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
482*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_pixel3_clk_src",
483*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
484*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
485*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
486*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
487*9dcc782eSTaniya Das 	},
488*9dcc782eSTaniya Das };
489*9dcc782eSTaniya Das 
490*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_aux_clk_src = {
491*9dcc782eSTaniya Das 	.cmd_rcgr = 0x82b4,
492*9dcc782eSTaniya Das 	.mnd_width = 0,
493*9dcc782eSTaniya Das 	.hid_width = 5,
494*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
495*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
496*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
497*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
498*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_aux_clk_src",
499*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
500*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
501*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
502*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
503*9dcc782eSTaniya Das 	},
504*9dcc782eSTaniya Das };
505*9dcc782eSTaniya Das 
506*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_link_clk_src = {
507*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8298,
508*9dcc782eSTaniya Das 	.mnd_width = 0,
509*9dcc782eSTaniya Das 	.hid_width = 5,
510*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_4,
511*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
512*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
513*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
514*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_link_clk_src",
515*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_4,
516*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_4),
517*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
518*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
519*9dcc782eSTaniya Das 	},
520*9dcc782eSTaniya Das };
521*9dcc782eSTaniya Das 
522*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_pixel0_clk_src = {
523*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8238,
524*9dcc782eSTaniya Das 	.mnd_width = 16,
525*9dcc782eSTaniya Das 	.hid_width = 5,
526*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
527*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
528*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
529*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
530*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_pixel0_clk_src",
531*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
532*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
533*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
534*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
535*9dcc782eSTaniya Das 	},
536*9dcc782eSTaniya Das };
537*9dcc782eSTaniya Das 
538*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_pixel1_clk_src = {
539*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8250,
540*9dcc782eSTaniya Das 	.mnd_width = 16,
541*9dcc782eSTaniya Das 	.hid_width = 5,
542*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
543*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
544*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
545*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
546*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_pixel1_clk_src",
547*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
548*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
549*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
550*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
551*9dcc782eSTaniya Das 	},
552*9dcc782eSTaniya Das };
553*9dcc782eSTaniya Das 
554*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_pixel2_clk_src = {
555*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8268,
556*9dcc782eSTaniya Das 	.mnd_width = 16,
557*9dcc782eSTaniya Das 	.hid_width = 5,
558*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
559*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
560*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
561*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
562*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_pixel2_clk_src",
563*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
564*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
565*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
566*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
567*9dcc782eSTaniya Das 	},
568*9dcc782eSTaniya Das };
569*9dcc782eSTaniya Das 
570*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx1_pixel3_clk_src = {
571*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8280,
572*9dcc782eSTaniya Das 	.mnd_width = 16,
573*9dcc782eSTaniya Das 	.hid_width = 5,
574*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_0,
575*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
576*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
577*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
578*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_pixel3_clk_src",
579*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_0,
580*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_0),
581*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
582*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
583*9dcc782eSTaniya Das 	},
584*9dcc782eSTaniya Das };
585*9dcc782eSTaniya Das 
586*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx2_aux_clk_src = {
587*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8318,
588*9dcc782eSTaniya Das 	.mnd_width = 0,
589*9dcc782eSTaniya Das 	.hid_width = 5,
590*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
591*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
592*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
593*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
594*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx2_aux_clk_src",
595*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
596*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
597*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
598*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
599*9dcc782eSTaniya Das 	},
600*9dcc782eSTaniya Das };
601*9dcc782eSTaniya Das 
602*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx2_link_clk_src = {
603*9dcc782eSTaniya Das 	.cmd_rcgr = 0x82cc,
604*9dcc782eSTaniya Das 	.mnd_width = 0,
605*9dcc782eSTaniya Das 	.hid_width = 5,
606*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_5,
607*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
608*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
609*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
610*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx2_link_clk_src",
611*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_5,
612*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_5),
613*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
614*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
615*9dcc782eSTaniya Das 	},
616*9dcc782eSTaniya Das };
617*9dcc782eSTaniya Das 
618*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx2_pixel0_clk_src = {
619*9dcc782eSTaniya Das 	.cmd_rcgr = 0x82e8,
620*9dcc782eSTaniya Das 	.mnd_width = 16,
621*9dcc782eSTaniya Das 	.hid_width = 5,
622*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_3,
623*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
624*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
625*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
626*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx2_pixel0_clk_src",
627*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_3,
628*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_3),
629*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
630*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
631*9dcc782eSTaniya Das 	},
632*9dcc782eSTaniya Das };
633*9dcc782eSTaniya Das 
634*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx2_pixel1_clk_src = {
635*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8300,
636*9dcc782eSTaniya Das 	.mnd_width = 16,
637*9dcc782eSTaniya Das 	.hid_width = 5,
638*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_3,
639*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
640*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
641*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
642*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx2_pixel1_clk_src",
643*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_3,
644*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_3),
645*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
646*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
647*9dcc782eSTaniya Das 	},
648*9dcc782eSTaniya Das };
649*9dcc782eSTaniya Das 
650*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx3_aux_clk_src = {
651*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8364,
652*9dcc782eSTaniya Das 	.mnd_width = 0,
653*9dcc782eSTaniya Das 	.hid_width = 5,
654*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
655*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
656*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
657*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
658*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx3_aux_clk_src",
659*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
660*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
661*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
662*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
663*9dcc782eSTaniya Das 	},
664*9dcc782eSTaniya Das };
665*9dcc782eSTaniya Das 
666*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx3_link_clk_src = {
667*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8348,
668*9dcc782eSTaniya Das 	.mnd_width = 0,
669*9dcc782eSTaniya Das 	.hid_width = 5,
670*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_5,
671*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
672*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
673*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
674*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx3_link_clk_src",
675*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_5,
676*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_5),
677*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
678*9dcc782eSTaniya Das 		.ops = &clk_byte2_ops,
679*9dcc782eSTaniya Das 	},
680*9dcc782eSTaniya Das };
681*9dcc782eSTaniya Das 
682*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_dptx3_pixel0_clk_src = {
683*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8330,
684*9dcc782eSTaniya Das 	.mnd_width = 16,
685*9dcc782eSTaniya Das 	.hid_width = 5,
686*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_3,
687*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
688*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
689*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
690*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx3_pixel0_clk_src",
691*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_3,
692*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_3),
693*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
694*9dcc782eSTaniya Das 		.ops = &clk_dp_ops,
695*9dcc782eSTaniya Das 	},
696*9dcc782eSTaniya Das };
697*9dcc782eSTaniya Das 
698*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_esc0_clk_src = {
699*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8174,
700*9dcc782eSTaniya Das 	.mnd_width = 0,
701*9dcc782eSTaniya Das 	.hid_width = 5,
702*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_6,
703*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
704*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
705*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
706*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_esc0_clk_src",
707*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_6,
708*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_6),
709*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
710*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
711*9dcc782eSTaniya Das 	},
712*9dcc782eSTaniya Das };
713*9dcc782eSTaniya Das 
714*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_esc1_clk_src = {
715*9dcc782eSTaniya Das 	.cmd_rcgr = 0x818c,
716*9dcc782eSTaniya Das 	.mnd_width = 0,
717*9dcc782eSTaniya Das 	.hid_width = 5,
718*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_6,
719*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
720*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
721*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
722*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_esc1_clk_src",
723*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_6,
724*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_6),
725*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
726*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
727*9dcc782eSTaniya Das 	},
728*9dcc782eSTaniya Das };
729*9dcc782eSTaniya Das 
730*9dcc782eSTaniya Das static const struct freq_tbl ftbl_mdss_1_disp_cc_mdss_mdp_clk_src[] = {
731*9dcc782eSTaniya Das 	F(300000000, P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 3, 0, 0),
732*9dcc782eSTaniya Das 	F(417000000, P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 3, 0, 0),
733*9dcc782eSTaniya Das 	F(532000000, P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 3, 0, 0),
734*9dcc782eSTaniya Das 	F(650000000, P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 3, 0, 0),
735*9dcc782eSTaniya Das 	F(710000000, P_MDSS_1_DISP_CC_PLL0_OUT_MAIN, 3, 0, 0),
736*9dcc782eSTaniya Das 	{ }
737*9dcc782eSTaniya Das };
738*9dcc782eSTaniya Das 
739*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_mdp_clk_src = {
740*9dcc782eSTaniya Das 	.cmd_rcgr = 0x810c,
741*9dcc782eSTaniya Das 	.mnd_width = 0,
742*9dcc782eSTaniya Das 	.hid_width = 5,
743*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_8,
744*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_mdp_clk_src,
745*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
746*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
747*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_mdp_clk_src",
748*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_8,
749*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_8),
750*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
751*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
752*9dcc782eSTaniya Das 	},
753*9dcc782eSTaniya Das };
754*9dcc782eSTaniya Das 
755*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_pclk0_clk_src = {
756*9dcc782eSTaniya Das 	.cmd_rcgr = 0x80c4,
757*9dcc782eSTaniya Das 	.mnd_width = 8,
758*9dcc782eSTaniya Das 	.hid_width = 5,
759*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_2,
760*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
761*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
762*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
763*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_pclk0_clk_src",
764*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_2,
765*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_2),
766*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
767*9dcc782eSTaniya Das 		.ops = &clk_pixel_ops,
768*9dcc782eSTaniya Das 	},
769*9dcc782eSTaniya Das };
770*9dcc782eSTaniya Das 
771*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_pclk1_clk_src = {
772*9dcc782eSTaniya Das 	.cmd_rcgr = 0x80dc,
773*9dcc782eSTaniya Das 	.mnd_width = 8,
774*9dcc782eSTaniya Das 	.hid_width = 5,
775*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_2,
776*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
777*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
778*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
779*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_pclk1_clk_src",
780*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_2,
781*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_2),
782*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
783*9dcc782eSTaniya Das 		.ops = &clk_pixel_ops,
784*9dcc782eSTaniya Das 	},
785*9dcc782eSTaniya Das };
786*9dcc782eSTaniya Das 
787*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_pclk2_clk_src = {
788*9dcc782eSTaniya Das 	.cmd_rcgr = 0x80f4,
789*9dcc782eSTaniya Das 	.mnd_width = 8,
790*9dcc782eSTaniya Das 	.hid_width = 5,
791*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_2,
792*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
793*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
794*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
795*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_pclk2_clk_src",
796*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_2,
797*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_2),
798*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
799*9dcc782eSTaniya Das 		.ops = &clk_pixel_ops,
800*9dcc782eSTaniya Das 	},
801*9dcc782eSTaniya Das };
802*9dcc782eSTaniya Das 
803*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_mdss_vsync_clk_src = {
804*9dcc782eSTaniya Das 	.cmd_rcgr = 0x8124,
805*9dcc782eSTaniya Das 	.mnd_width = 0,
806*9dcc782eSTaniya Das 	.hid_width = 5,
807*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
808*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
809*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
810*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
811*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_vsync_clk_src",
812*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
813*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
814*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
815*9dcc782eSTaniya Das 		.ops = &clk_rcg2_shared_ops,
816*9dcc782eSTaniya Das 	},
817*9dcc782eSTaniya Das };
818*9dcc782eSTaniya Das 
819*9dcc782eSTaniya Das static const struct freq_tbl ftbl_mdss_1_disp_cc_sleep_clk_src[] = {
820*9dcc782eSTaniya Das 	F(32000, P_SLEEP_CLK, 1, 0, 0),
821*9dcc782eSTaniya Das 	{ }
822*9dcc782eSTaniya Das };
823*9dcc782eSTaniya Das 
824*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_sleep_clk_src = {
825*9dcc782eSTaniya Das 	.cmd_rcgr = 0xe064,
826*9dcc782eSTaniya Das 	.mnd_width = 0,
827*9dcc782eSTaniya Das 	.hid_width = 5,
828*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_9,
829*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_sleep_clk_src,
830*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
831*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
832*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_sleep_clk_src",
833*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_9,
834*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_9),
835*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
836*9dcc782eSTaniya Das 		.ops = &clk_rcg2_ops,
837*9dcc782eSTaniya Das 	},
838*9dcc782eSTaniya Das };
839*9dcc782eSTaniya Das 
840*9dcc782eSTaniya Das static struct clk_rcg2 mdss_1_disp_cc_xo_clk_src = {
841*9dcc782eSTaniya Das 	.cmd_rcgr = 0xe044,
842*9dcc782eSTaniya Das 	.mnd_width = 0,
843*9dcc782eSTaniya Das 	.hid_width = 5,
844*9dcc782eSTaniya Das 	.parent_map = disp_cc_1_parent_map_1,
845*9dcc782eSTaniya Das 	.freq_tbl = ftbl_mdss_1_disp_cc_mdss_byte0_clk_src,
846*9dcc782eSTaniya Das 	.hw_clk_ctrl = true,
847*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
848*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_xo_clk_src",
849*9dcc782eSTaniya Das 		.parent_data = disp_cc_1_parent_data_1,
850*9dcc782eSTaniya Das 		.num_parents = ARRAY_SIZE(disp_cc_1_parent_data_1),
851*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
852*9dcc782eSTaniya Das 		.ops = &clk_rcg2_ops,
853*9dcc782eSTaniya Das 	},
854*9dcc782eSTaniya Das };
855*9dcc782eSTaniya Das 
856*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_byte0_div_clk_src = {
857*9dcc782eSTaniya Das 	.reg = 0x8154,
858*9dcc782eSTaniya Das 	.shift = 0,
859*9dcc782eSTaniya Das 	.width = 4,
860*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
861*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_byte0_div_clk_src",
862*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
863*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_byte0_clk_src.clkr.hw,
864*9dcc782eSTaniya Das 		},
865*9dcc782eSTaniya Das 		.num_parents = 1,
866*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
867*9dcc782eSTaniya Das 	},
868*9dcc782eSTaniya Das };
869*9dcc782eSTaniya Das 
870*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_byte1_div_clk_src = {
871*9dcc782eSTaniya Das 	.reg = 0x8170,
872*9dcc782eSTaniya Das 	.shift = 0,
873*9dcc782eSTaniya Das 	.width = 4,
874*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
875*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_byte1_div_clk_src",
876*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
877*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_byte1_clk_src.clkr.hw,
878*9dcc782eSTaniya Das 		},
879*9dcc782eSTaniya Das 		.num_parents = 1,
880*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
881*9dcc782eSTaniya Das 	},
882*9dcc782eSTaniya Das };
883*9dcc782eSTaniya Das 
884*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_dptx0_link_div_clk_src = {
885*9dcc782eSTaniya Das 	.reg = 0x81bc,
886*9dcc782eSTaniya Das 	.shift = 0,
887*9dcc782eSTaniya Das 	.width = 4,
888*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
889*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx0_link_div_clk_src",
890*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
891*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_dptx0_link_clk_src.clkr.hw,
892*9dcc782eSTaniya Das 		},
893*9dcc782eSTaniya Das 		.num_parents = 1,
894*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
895*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
896*9dcc782eSTaniya Das 	},
897*9dcc782eSTaniya Das };
898*9dcc782eSTaniya Das 
899*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_dptx1_link_div_clk_src = {
900*9dcc782eSTaniya Das 	.reg = 0x82b0,
901*9dcc782eSTaniya Das 	.shift = 0,
902*9dcc782eSTaniya Das 	.width = 4,
903*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
904*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx1_link_div_clk_src",
905*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
906*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_dptx1_link_clk_src.clkr.hw,
907*9dcc782eSTaniya Das 		},
908*9dcc782eSTaniya Das 		.num_parents = 1,
909*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
910*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
911*9dcc782eSTaniya Das 	},
912*9dcc782eSTaniya Das };
913*9dcc782eSTaniya Das 
914*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_dptx2_link_div_clk_src = {
915*9dcc782eSTaniya Das 	.reg = 0x82e4,
916*9dcc782eSTaniya Das 	.shift = 0,
917*9dcc782eSTaniya Das 	.width = 4,
918*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
919*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx2_link_div_clk_src",
920*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
921*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_dptx2_link_clk_src.clkr.hw,
922*9dcc782eSTaniya Das 		},
923*9dcc782eSTaniya Das 		.num_parents = 1,
924*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
925*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
926*9dcc782eSTaniya Das 	},
927*9dcc782eSTaniya Das };
928*9dcc782eSTaniya Das 
929*9dcc782eSTaniya Das static struct clk_regmap_div mdss_1_disp_cc_mdss_dptx3_link_div_clk_src = {
930*9dcc782eSTaniya Das 	.reg = 0x8360,
931*9dcc782eSTaniya Das 	.shift = 0,
932*9dcc782eSTaniya Das 	.width = 4,
933*9dcc782eSTaniya Das 	.clkr.hw.init = &(const struct clk_init_data) {
934*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_dptx3_link_div_clk_src",
935*9dcc782eSTaniya Das 		.parent_hws = (const struct clk_hw*[]) {
936*9dcc782eSTaniya Das 			&mdss_1_disp_cc_mdss_dptx3_link_clk_src.clkr.hw,
937*9dcc782eSTaniya Das 		},
938*9dcc782eSTaniya Das 		.num_parents = 1,
939*9dcc782eSTaniya Das 		.flags = CLK_SET_RATE_PARENT,
940*9dcc782eSTaniya Das 		.ops = &clk_regmap_div_ro_ops,
941*9dcc782eSTaniya Das 	},
942*9dcc782eSTaniya Das };
943*9dcc782eSTaniya Das 
944*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_accu_shift_clk = {
945*9dcc782eSTaniya Das 	.halt_reg = 0xe060,
946*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
947*9dcc782eSTaniya Das 	.clkr = {
948*9dcc782eSTaniya Das 		.enable_reg = 0xe060,
949*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
950*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
951*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_accu_shift_clk",
952*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
953*9dcc782eSTaniya Das 				&mdss_1_disp_cc_xo_clk_src.clkr.hw,
954*9dcc782eSTaniya Das 			},
955*9dcc782eSTaniya Das 			.num_parents = 1,
956*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
957*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
958*9dcc782eSTaniya Das 		},
959*9dcc782eSTaniya Das 	},
960*9dcc782eSTaniya Das };
961*9dcc782eSTaniya Das 
962*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_ahb1_clk = {
963*9dcc782eSTaniya Das 	.halt_reg = 0xa028,
964*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
965*9dcc782eSTaniya Das 	.clkr = {
966*9dcc782eSTaniya Das 		.enable_reg = 0xa028,
967*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
968*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
969*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_ahb1_clk",
970*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
971*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_ahb_clk_src.clkr.hw,
972*9dcc782eSTaniya Das 			},
973*9dcc782eSTaniya Das 			.num_parents = 1,
974*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
975*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
976*9dcc782eSTaniya Das 		},
977*9dcc782eSTaniya Das 	},
978*9dcc782eSTaniya Das };
979*9dcc782eSTaniya Das 
980*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_ahb_clk = {
981*9dcc782eSTaniya Das 	.halt_reg = 0x80c0,
982*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
983*9dcc782eSTaniya Das 	.clkr = {
984*9dcc782eSTaniya Das 		.enable_reg = 0x80c0,
985*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
986*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
987*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_ahb_clk",
988*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
989*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_ahb_clk_src.clkr.hw,
990*9dcc782eSTaniya Das 			},
991*9dcc782eSTaniya Das 			.num_parents = 1,
992*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
993*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
994*9dcc782eSTaniya Das 		},
995*9dcc782eSTaniya Das 	},
996*9dcc782eSTaniya Das };
997*9dcc782eSTaniya Das 
998*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_byte0_clk = {
999*9dcc782eSTaniya Das 	.halt_reg = 0x8034,
1000*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1001*9dcc782eSTaniya Das 	.clkr = {
1002*9dcc782eSTaniya Das 		.enable_reg = 0x8034,
1003*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1004*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1005*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_byte0_clk",
1006*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1007*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_byte0_clk_src.clkr.hw,
1008*9dcc782eSTaniya Das 			},
1009*9dcc782eSTaniya Das 			.num_parents = 1,
1010*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1011*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1012*9dcc782eSTaniya Das 		},
1013*9dcc782eSTaniya Das 	},
1014*9dcc782eSTaniya Das };
1015*9dcc782eSTaniya Das 
1016*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_byte0_intf_clk = {
1017*9dcc782eSTaniya Das 	.halt_reg = 0x8038,
1018*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1019*9dcc782eSTaniya Das 	.clkr = {
1020*9dcc782eSTaniya Das 		.enable_reg = 0x8038,
1021*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1022*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1023*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_byte0_intf_clk",
1024*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1025*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_byte0_div_clk_src.clkr.hw,
1026*9dcc782eSTaniya Das 			},
1027*9dcc782eSTaniya Das 			.num_parents = 1,
1028*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1029*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1030*9dcc782eSTaniya Das 		},
1031*9dcc782eSTaniya Das 	},
1032*9dcc782eSTaniya Das };
1033*9dcc782eSTaniya Das 
1034*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_byte1_clk = {
1035*9dcc782eSTaniya Das 	.halt_reg = 0x803c,
1036*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1037*9dcc782eSTaniya Das 	.clkr = {
1038*9dcc782eSTaniya Das 		.enable_reg = 0x803c,
1039*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1040*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1041*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_byte1_clk",
1042*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1043*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_byte1_clk_src.clkr.hw,
1044*9dcc782eSTaniya Das 			},
1045*9dcc782eSTaniya Das 			.num_parents = 1,
1046*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1047*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1048*9dcc782eSTaniya Das 		},
1049*9dcc782eSTaniya Das 	},
1050*9dcc782eSTaniya Das };
1051*9dcc782eSTaniya Das 
1052*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_byte1_intf_clk = {
1053*9dcc782eSTaniya Das 	.halt_reg = 0x8040,
1054*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1055*9dcc782eSTaniya Das 	.clkr = {
1056*9dcc782eSTaniya Das 		.enable_reg = 0x8040,
1057*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1058*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1059*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_byte1_intf_clk",
1060*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1061*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_byte1_div_clk_src.clkr.hw,
1062*9dcc782eSTaniya Das 			},
1063*9dcc782eSTaniya Das 			.num_parents = 1,
1064*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1065*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1066*9dcc782eSTaniya Das 		},
1067*9dcc782eSTaniya Das 	},
1068*9dcc782eSTaniya Das };
1069*9dcc782eSTaniya Das 
1070*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_aux_clk = {
1071*9dcc782eSTaniya Das 	.halt_reg = 0x806c,
1072*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1073*9dcc782eSTaniya Das 	.clkr = {
1074*9dcc782eSTaniya Das 		.enable_reg = 0x806c,
1075*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1076*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1077*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_aux_clk",
1078*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1079*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_aux_clk_src.clkr.hw,
1080*9dcc782eSTaniya Das 			},
1081*9dcc782eSTaniya Das 			.num_parents = 1,
1082*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1083*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1084*9dcc782eSTaniya Das 		},
1085*9dcc782eSTaniya Das 	},
1086*9dcc782eSTaniya Das };
1087*9dcc782eSTaniya Das 
1088*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_crypto_clk = {
1089*9dcc782eSTaniya Das 	.halt_reg = 0x8058,
1090*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1091*9dcc782eSTaniya Das 	.clkr = {
1092*9dcc782eSTaniya Das 		.enable_reg = 0x8058,
1093*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1094*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1095*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_crypto_clk",
1096*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1097*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_link_clk_src.clkr.hw,
1098*9dcc782eSTaniya Das 			},
1099*9dcc782eSTaniya Das 			.num_parents = 1,
1100*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1101*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1102*9dcc782eSTaniya Das 		},
1103*9dcc782eSTaniya Das 	},
1104*9dcc782eSTaniya Das };
1105*9dcc782eSTaniya Das 
1106*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_link_clk = {
1107*9dcc782eSTaniya Das 	.halt_reg = 0x804c,
1108*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1109*9dcc782eSTaniya Das 	.clkr = {
1110*9dcc782eSTaniya Das 		.enable_reg = 0x804c,
1111*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1112*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1113*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_link_clk",
1114*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1115*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_link_clk_src.clkr.hw,
1116*9dcc782eSTaniya Das 			},
1117*9dcc782eSTaniya Das 			.num_parents = 1,
1118*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1119*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1120*9dcc782eSTaniya Das 		},
1121*9dcc782eSTaniya Das 	},
1122*9dcc782eSTaniya Das };
1123*9dcc782eSTaniya Das 
1124*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_link_intf_clk = {
1125*9dcc782eSTaniya Das 	.halt_reg = 0x8054,
1126*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1127*9dcc782eSTaniya Das 	.clkr = {
1128*9dcc782eSTaniya Das 		.enable_reg = 0x8054,
1129*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1130*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1131*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_link_intf_clk",
1132*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1133*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_link_div_clk_src.clkr.hw,
1134*9dcc782eSTaniya Das 			},
1135*9dcc782eSTaniya Das 			.num_parents = 1,
1136*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1137*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1138*9dcc782eSTaniya Das 		},
1139*9dcc782eSTaniya Das 	},
1140*9dcc782eSTaniya Das };
1141*9dcc782eSTaniya Das 
1142*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_pixel0_clk = {
1143*9dcc782eSTaniya Das 	.halt_reg = 0x805c,
1144*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1145*9dcc782eSTaniya Das 	.clkr = {
1146*9dcc782eSTaniya Das 		.enable_reg = 0x805c,
1147*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1148*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1149*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_pixel0_clk",
1150*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1151*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_pixel0_clk_src.clkr.hw,
1152*9dcc782eSTaniya Das 			},
1153*9dcc782eSTaniya Das 			.num_parents = 1,
1154*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1155*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1156*9dcc782eSTaniya Das 		},
1157*9dcc782eSTaniya Das 	},
1158*9dcc782eSTaniya Das };
1159*9dcc782eSTaniya Das 
1160*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_pixel1_clk = {
1161*9dcc782eSTaniya Das 	.halt_reg = 0x8060,
1162*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1163*9dcc782eSTaniya Das 	.clkr = {
1164*9dcc782eSTaniya Das 		.enable_reg = 0x8060,
1165*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1166*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1167*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_pixel1_clk",
1168*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1169*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_pixel1_clk_src.clkr.hw,
1170*9dcc782eSTaniya Das 			},
1171*9dcc782eSTaniya Das 			.num_parents = 1,
1172*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1173*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1174*9dcc782eSTaniya Das 		},
1175*9dcc782eSTaniya Das 	},
1176*9dcc782eSTaniya Das };
1177*9dcc782eSTaniya Das 
1178*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_pixel2_clk = {
1179*9dcc782eSTaniya Das 	.halt_reg = 0x8064,
1180*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1181*9dcc782eSTaniya Das 	.clkr = {
1182*9dcc782eSTaniya Das 		.enable_reg = 0x8064,
1183*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1184*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1185*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_pixel2_clk",
1186*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1187*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_pixel2_clk_src.clkr.hw,
1188*9dcc782eSTaniya Das 			},
1189*9dcc782eSTaniya Das 			.num_parents = 1,
1190*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1191*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1192*9dcc782eSTaniya Das 		},
1193*9dcc782eSTaniya Das 	},
1194*9dcc782eSTaniya Das };
1195*9dcc782eSTaniya Das 
1196*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_pixel3_clk = {
1197*9dcc782eSTaniya Das 	.halt_reg = 0x8068,
1198*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1199*9dcc782eSTaniya Das 	.clkr = {
1200*9dcc782eSTaniya Das 		.enable_reg = 0x8068,
1201*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1202*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1203*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_pixel3_clk",
1204*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1205*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_pixel3_clk_src.clkr.hw,
1206*9dcc782eSTaniya Das 			},
1207*9dcc782eSTaniya Das 			.num_parents = 1,
1208*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1209*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1210*9dcc782eSTaniya Das 		},
1211*9dcc782eSTaniya Das 	},
1212*9dcc782eSTaniya Das };
1213*9dcc782eSTaniya Das 
1214*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx0_usb_router_link_intf_clk = {
1215*9dcc782eSTaniya Das 	.halt_reg = 0x8050,
1216*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1217*9dcc782eSTaniya Das 	.clkr = {
1218*9dcc782eSTaniya Das 		.enable_reg = 0x8050,
1219*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1220*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1221*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx0_usb_router_link_intf_clk",
1222*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1223*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx0_link_div_clk_src.clkr.hw,
1224*9dcc782eSTaniya Das 			},
1225*9dcc782eSTaniya Das 			.num_parents = 1,
1226*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1227*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1228*9dcc782eSTaniya Das 		},
1229*9dcc782eSTaniya Das 	},
1230*9dcc782eSTaniya Das };
1231*9dcc782eSTaniya Das 
1232*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_aux_clk = {
1233*9dcc782eSTaniya Das 	.halt_reg = 0x8090,
1234*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1235*9dcc782eSTaniya Das 	.clkr = {
1236*9dcc782eSTaniya Das 		.enable_reg = 0x8090,
1237*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1238*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1239*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_aux_clk",
1240*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1241*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_aux_clk_src.clkr.hw,
1242*9dcc782eSTaniya Das 			},
1243*9dcc782eSTaniya Das 			.num_parents = 1,
1244*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1245*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1246*9dcc782eSTaniya Das 		},
1247*9dcc782eSTaniya Das 	},
1248*9dcc782eSTaniya Das };
1249*9dcc782eSTaniya Das 
1250*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_crypto_clk = {
1251*9dcc782eSTaniya Das 	.halt_reg = 0x808c,
1252*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1253*9dcc782eSTaniya Das 	.clkr = {
1254*9dcc782eSTaniya Das 		.enable_reg = 0x808c,
1255*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1256*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1257*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_crypto_clk",
1258*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1259*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_link_clk_src.clkr.hw,
1260*9dcc782eSTaniya Das 			},
1261*9dcc782eSTaniya Das 			.num_parents = 1,
1262*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1263*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1264*9dcc782eSTaniya Das 		},
1265*9dcc782eSTaniya Das 	},
1266*9dcc782eSTaniya Das };
1267*9dcc782eSTaniya Das 
1268*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_link_clk = {
1269*9dcc782eSTaniya Das 	.halt_reg = 0x8080,
1270*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1271*9dcc782eSTaniya Das 	.clkr = {
1272*9dcc782eSTaniya Das 		.enable_reg = 0x8080,
1273*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1274*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1275*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_link_clk",
1276*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1277*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_link_clk_src.clkr.hw,
1278*9dcc782eSTaniya Das 			},
1279*9dcc782eSTaniya Das 			.num_parents = 1,
1280*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1281*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1282*9dcc782eSTaniya Das 		},
1283*9dcc782eSTaniya Das 	},
1284*9dcc782eSTaniya Das };
1285*9dcc782eSTaniya Das 
1286*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_link_intf_clk = {
1287*9dcc782eSTaniya Das 	.halt_reg = 0x8088,
1288*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1289*9dcc782eSTaniya Das 	.clkr = {
1290*9dcc782eSTaniya Das 		.enable_reg = 0x8088,
1291*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1292*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1293*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_link_intf_clk",
1294*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1295*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_link_div_clk_src.clkr.hw,
1296*9dcc782eSTaniya Das 			},
1297*9dcc782eSTaniya Das 			.num_parents = 1,
1298*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1299*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1300*9dcc782eSTaniya Das 		},
1301*9dcc782eSTaniya Das 	},
1302*9dcc782eSTaniya Das };
1303*9dcc782eSTaniya Das 
1304*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_pixel0_clk = {
1305*9dcc782eSTaniya Das 	.halt_reg = 0x8070,
1306*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1307*9dcc782eSTaniya Das 	.clkr = {
1308*9dcc782eSTaniya Das 		.enable_reg = 0x8070,
1309*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1310*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1311*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_pixel0_clk",
1312*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1313*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_pixel0_clk_src.clkr.hw,
1314*9dcc782eSTaniya Das 			},
1315*9dcc782eSTaniya Das 			.num_parents = 1,
1316*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1317*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1318*9dcc782eSTaniya Das 		},
1319*9dcc782eSTaniya Das 	},
1320*9dcc782eSTaniya Das };
1321*9dcc782eSTaniya Das 
1322*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_pixel1_clk = {
1323*9dcc782eSTaniya Das 	.halt_reg = 0x8074,
1324*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1325*9dcc782eSTaniya Das 	.clkr = {
1326*9dcc782eSTaniya Das 		.enable_reg = 0x8074,
1327*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1328*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1329*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_pixel1_clk",
1330*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1331*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_pixel1_clk_src.clkr.hw,
1332*9dcc782eSTaniya Das 			},
1333*9dcc782eSTaniya Das 			.num_parents = 1,
1334*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1335*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1336*9dcc782eSTaniya Das 		},
1337*9dcc782eSTaniya Das 	},
1338*9dcc782eSTaniya Das };
1339*9dcc782eSTaniya Das 
1340*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_pixel2_clk = {
1341*9dcc782eSTaniya Das 	.halt_reg = 0x8078,
1342*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1343*9dcc782eSTaniya Das 	.clkr = {
1344*9dcc782eSTaniya Das 		.enable_reg = 0x8078,
1345*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1346*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1347*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_pixel2_clk",
1348*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1349*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_pixel2_clk_src.clkr.hw,
1350*9dcc782eSTaniya Das 			},
1351*9dcc782eSTaniya Das 			.num_parents = 1,
1352*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1353*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1354*9dcc782eSTaniya Das 		},
1355*9dcc782eSTaniya Das 	},
1356*9dcc782eSTaniya Das };
1357*9dcc782eSTaniya Das 
1358*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_pixel3_clk = {
1359*9dcc782eSTaniya Das 	.halt_reg = 0x807c,
1360*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1361*9dcc782eSTaniya Das 	.clkr = {
1362*9dcc782eSTaniya Das 		.enable_reg = 0x807c,
1363*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1364*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1365*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_pixel3_clk",
1366*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1367*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_pixel3_clk_src.clkr.hw,
1368*9dcc782eSTaniya Das 			},
1369*9dcc782eSTaniya Das 			.num_parents = 1,
1370*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1371*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1372*9dcc782eSTaniya Das 		},
1373*9dcc782eSTaniya Das 	},
1374*9dcc782eSTaniya Das };
1375*9dcc782eSTaniya Das 
1376*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx1_usb_router_link_intf_clk = {
1377*9dcc782eSTaniya Das 	.halt_reg = 0x8084,
1378*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1379*9dcc782eSTaniya Das 	.clkr = {
1380*9dcc782eSTaniya Das 		.enable_reg = 0x8084,
1381*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1382*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1383*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx1_usb_router_link_intf_clk",
1384*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1385*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx1_link_div_clk_src.clkr.hw,
1386*9dcc782eSTaniya Das 			},
1387*9dcc782eSTaniya Das 			.num_parents = 1,
1388*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1389*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1390*9dcc782eSTaniya Das 		},
1391*9dcc782eSTaniya Das 	},
1392*9dcc782eSTaniya Das };
1393*9dcc782eSTaniya Das 
1394*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_aux_clk = {
1395*9dcc782eSTaniya Das 	.halt_reg = 0x80a8,
1396*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1397*9dcc782eSTaniya Das 	.clkr = {
1398*9dcc782eSTaniya Das 		.enable_reg = 0x80a8,
1399*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1400*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1401*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_aux_clk",
1402*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1403*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_aux_clk_src.clkr.hw,
1404*9dcc782eSTaniya Das 			},
1405*9dcc782eSTaniya Das 			.num_parents = 1,
1406*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1407*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1408*9dcc782eSTaniya Das 		},
1409*9dcc782eSTaniya Das 	},
1410*9dcc782eSTaniya Das };
1411*9dcc782eSTaniya Das 
1412*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_crypto_clk = {
1413*9dcc782eSTaniya Das 	.halt_reg = 0x80a4,
1414*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1415*9dcc782eSTaniya Das 	.clkr = {
1416*9dcc782eSTaniya Das 		.enable_reg = 0x80a4,
1417*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1418*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1419*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_crypto_clk",
1420*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1421*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_link_clk_src.clkr.hw,
1422*9dcc782eSTaniya Das 			},
1423*9dcc782eSTaniya Das 			.num_parents = 1,
1424*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1425*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1426*9dcc782eSTaniya Das 		},
1427*9dcc782eSTaniya Das 	},
1428*9dcc782eSTaniya Das };
1429*9dcc782eSTaniya Das 
1430*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_link_clk = {
1431*9dcc782eSTaniya Das 	.halt_reg = 0x809c,
1432*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1433*9dcc782eSTaniya Das 	.clkr = {
1434*9dcc782eSTaniya Das 		.enable_reg = 0x809c,
1435*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1436*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1437*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_link_clk",
1438*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1439*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_link_clk_src.clkr.hw,
1440*9dcc782eSTaniya Das 			},
1441*9dcc782eSTaniya Das 			.num_parents = 1,
1442*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1443*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1444*9dcc782eSTaniya Das 		},
1445*9dcc782eSTaniya Das 	},
1446*9dcc782eSTaniya Das };
1447*9dcc782eSTaniya Das 
1448*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_link_intf_clk = {
1449*9dcc782eSTaniya Das 	.halt_reg = 0x80a0,
1450*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1451*9dcc782eSTaniya Das 	.clkr = {
1452*9dcc782eSTaniya Das 		.enable_reg = 0x80a0,
1453*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1454*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1455*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_link_intf_clk",
1456*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1457*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_link_div_clk_src.clkr.hw,
1458*9dcc782eSTaniya Das 			},
1459*9dcc782eSTaniya Das 			.num_parents = 1,
1460*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1461*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1462*9dcc782eSTaniya Das 		},
1463*9dcc782eSTaniya Das 	},
1464*9dcc782eSTaniya Das };
1465*9dcc782eSTaniya Das 
1466*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_pixel0_clk = {
1467*9dcc782eSTaniya Das 	.halt_reg = 0x8094,
1468*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1469*9dcc782eSTaniya Das 	.clkr = {
1470*9dcc782eSTaniya Das 		.enable_reg = 0x8094,
1471*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1472*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1473*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_pixel0_clk",
1474*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1475*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_pixel0_clk_src.clkr.hw,
1476*9dcc782eSTaniya Das 			},
1477*9dcc782eSTaniya Das 			.num_parents = 1,
1478*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1479*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1480*9dcc782eSTaniya Das 		},
1481*9dcc782eSTaniya Das 	},
1482*9dcc782eSTaniya Das };
1483*9dcc782eSTaniya Das 
1484*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx2_pixel1_clk = {
1485*9dcc782eSTaniya Das 	.halt_reg = 0x8098,
1486*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1487*9dcc782eSTaniya Das 	.clkr = {
1488*9dcc782eSTaniya Das 		.enable_reg = 0x8098,
1489*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1490*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1491*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx2_pixel1_clk",
1492*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1493*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx2_pixel1_clk_src.clkr.hw,
1494*9dcc782eSTaniya Das 			},
1495*9dcc782eSTaniya Das 			.num_parents = 1,
1496*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1497*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1498*9dcc782eSTaniya Das 		},
1499*9dcc782eSTaniya Das 	},
1500*9dcc782eSTaniya Das };
1501*9dcc782eSTaniya Das 
1502*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx3_aux_clk = {
1503*9dcc782eSTaniya Das 	.halt_reg = 0x80b8,
1504*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1505*9dcc782eSTaniya Das 	.clkr = {
1506*9dcc782eSTaniya Das 		.enable_reg = 0x80b8,
1507*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1508*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1509*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx3_aux_clk",
1510*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1511*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx3_aux_clk_src.clkr.hw,
1512*9dcc782eSTaniya Das 			},
1513*9dcc782eSTaniya Das 			.num_parents = 1,
1514*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1515*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1516*9dcc782eSTaniya Das 		},
1517*9dcc782eSTaniya Das 	},
1518*9dcc782eSTaniya Das };
1519*9dcc782eSTaniya Das 
1520*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx3_crypto_clk = {
1521*9dcc782eSTaniya Das 	.halt_reg = 0x80bc,
1522*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1523*9dcc782eSTaniya Das 	.clkr = {
1524*9dcc782eSTaniya Das 		.enable_reg = 0x80bc,
1525*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1526*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1527*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx3_crypto_clk",
1528*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1529*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx3_link_clk_src.clkr.hw,
1530*9dcc782eSTaniya Das 			},
1531*9dcc782eSTaniya Das 			.num_parents = 1,
1532*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1533*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1534*9dcc782eSTaniya Das 		},
1535*9dcc782eSTaniya Das 	},
1536*9dcc782eSTaniya Das };
1537*9dcc782eSTaniya Das 
1538*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx3_link_clk = {
1539*9dcc782eSTaniya Das 	.halt_reg = 0x80b0,
1540*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1541*9dcc782eSTaniya Das 	.clkr = {
1542*9dcc782eSTaniya Das 		.enable_reg = 0x80b0,
1543*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1544*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1545*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx3_link_clk",
1546*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1547*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx3_link_clk_src.clkr.hw,
1548*9dcc782eSTaniya Das 			},
1549*9dcc782eSTaniya Das 			.num_parents = 1,
1550*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1551*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1552*9dcc782eSTaniya Das 		},
1553*9dcc782eSTaniya Das 	},
1554*9dcc782eSTaniya Das };
1555*9dcc782eSTaniya Das 
1556*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx3_link_intf_clk = {
1557*9dcc782eSTaniya Das 	.halt_reg = 0x80b4,
1558*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1559*9dcc782eSTaniya Das 	.clkr = {
1560*9dcc782eSTaniya Das 		.enable_reg = 0x80b4,
1561*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1562*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1563*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx3_link_intf_clk",
1564*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1565*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx3_link_div_clk_src.clkr.hw,
1566*9dcc782eSTaniya Das 			},
1567*9dcc782eSTaniya Das 			.num_parents = 1,
1568*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1569*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1570*9dcc782eSTaniya Das 		},
1571*9dcc782eSTaniya Das 	},
1572*9dcc782eSTaniya Das };
1573*9dcc782eSTaniya Das 
1574*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_dptx3_pixel0_clk = {
1575*9dcc782eSTaniya Das 	.halt_reg = 0x80ac,
1576*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1577*9dcc782eSTaniya Das 	.clkr = {
1578*9dcc782eSTaniya Das 		.enable_reg = 0x80ac,
1579*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1580*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1581*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_dptx3_pixel0_clk",
1582*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1583*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_dptx3_pixel0_clk_src.clkr.hw,
1584*9dcc782eSTaniya Das 			},
1585*9dcc782eSTaniya Das 			.num_parents = 1,
1586*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1587*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1588*9dcc782eSTaniya Das 		},
1589*9dcc782eSTaniya Das 	},
1590*9dcc782eSTaniya Das };
1591*9dcc782eSTaniya Das 
1592*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_esc0_clk = {
1593*9dcc782eSTaniya Das 	.halt_reg = 0x8044,
1594*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1595*9dcc782eSTaniya Das 	.clkr = {
1596*9dcc782eSTaniya Das 		.enable_reg = 0x8044,
1597*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1598*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1599*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_esc0_clk",
1600*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1601*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_esc0_clk_src.clkr.hw,
1602*9dcc782eSTaniya Das 			},
1603*9dcc782eSTaniya Das 			.num_parents = 1,
1604*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1605*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1606*9dcc782eSTaniya Das 		},
1607*9dcc782eSTaniya Das 	},
1608*9dcc782eSTaniya Das };
1609*9dcc782eSTaniya Das 
1610*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_esc1_clk = {
1611*9dcc782eSTaniya Das 	.halt_reg = 0x8048,
1612*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1613*9dcc782eSTaniya Das 	.clkr = {
1614*9dcc782eSTaniya Das 		.enable_reg = 0x8048,
1615*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1616*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1617*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_esc1_clk",
1618*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1619*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_esc1_clk_src.clkr.hw,
1620*9dcc782eSTaniya Das 			},
1621*9dcc782eSTaniya Das 			.num_parents = 1,
1622*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1623*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1624*9dcc782eSTaniya Das 		},
1625*9dcc782eSTaniya Das 	},
1626*9dcc782eSTaniya Das };
1627*9dcc782eSTaniya Das 
1628*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_mdp1_clk = {
1629*9dcc782eSTaniya Das 	.halt_reg = 0xa004,
1630*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1631*9dcc782eSTaniya Das 	.clkr = {
1632*9dcc782eSTaniya Das 		.enable_reg = 0xa004,
1633*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1634*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1635*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_mdp1_clk",
1636*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1637*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_mdp_clk_src.clkr.hw,
1638*9dcc782eSTaniya Das 			},
1639*9dcc782eSTaniya Das 			.num_parents = 1,
1640*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1641*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1642*9dcc782eSTaniya Das 		},
1643*9dcc782eSTaniya Das 	},
1644*9dcc782eSTaniya Das };
1645*9dcc782eSTaniya Das 
1646*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_mdp_clk = {
1647*9dcc782eSTaniya Das 	.halt_reg = 0x8010,
1648*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1649*9dcc782eSTaniya Das 	.clkr = {
1650*9dcc782eSTaniya Das 		.enable_reg = 0x8010,
1651*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1652*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1653*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_mdp_clk",
1654*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1655*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_mdp_clk_src.clkr.hw,
1656*9dcc782eSTaniya Das 			},
1657*9dcc782eSTaniya Das 			.num_parents = 1,
1658*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1659*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1660*9dcc782eSTaniya Das 		},
1661*9dcc782eSTaniya Das 	},
1662*9dcc782eSTaniya Das };
1663*9dcc782eSTaniya Das 
1664*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_mdp_lut1_clk = {
1665*9dcc782eSTaniya Das 	.halt_reg = 0xa014,
1666*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1667*9dcc782eSTaniya Das 	.clkr = {
1668*9dcc782eSTaniya Das 		.enable_reg = 0xa014,
1669*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1670*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1671*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_mdp_lut1_clk",
1672*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1673*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_mdp_clk_src.clkr.hw,
1674*9dcc782eSTaniya Das 			},
1675*9dcc782eSTaniya Das 			.num_parents = 1,
1676*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1677*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1678*9dcc782eSTaniya Das 		},
1679*9dcc782eSTaniya Das 	},
1680*9dcc782eSTaniya Das };
1681*9dcc782eSTaniya Das 
1682*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_mdp_lut_clk = {
1683*9dcc782eSTaniya Das 	.halt_reg = 0x8020,
1684*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1685*9dcc782eSTaniya Das 	.clkr = {
1686*9dcc782eSTaniya Das 		.enable_reg = 0x8020,
1687*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1688*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1689*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_mdp_lut_clk",
1690*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1691*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_mdp_clk_src.clkr.hw,
1692*9dcc782eSTaniya Das 			},
1693*9dcc782eSTaniya Das 			.num_parents = 1,
1694*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1695*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1696*9dcc782eSTaniya Das 		},
1697*9dcc782eSTaniya Das 	},
1698*9dcc782eSTaniya Das };
1699*9dcc782eSTaniya Das 
1700*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_non_gdsc_ahb_clk = {
1701*9dcc782eSTaniya Das 	.halt_reg = 0xc004,
1702*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT_VOTED,
1703*9dcc782eSTaniya Das 	.clkr = {
1704*9dcc782eSTaniya Das 		.enable_reg = 0xc004,
1705*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1706*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1707*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_non_gdsc_ahb_clk",
1708*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1709*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_ahb_clk_src.clkr.hw,
1710*9dcc782eSTaniya Das 			},
1711*9dcc782eSTaniya Das 			.num_parents = 1,
1712*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1713*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1714*9dcc782eSTaniya Das 		},
1715*9dcc782eSTaniya Das 	},
1716*9dcc782eSTaniya Das };
1717*9dcc782eSTaniya Das 
1718*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_pclk0_clk = {
1719*9dcc782eSTaniya Das 	.halt_reg = 0x8004,
1720*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1721*9dcc782eSTaniya Das 	.clkr = {
1722*9dcc782eSTaniya Das 		.enable_reg = 0x8004,
1723*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1724*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1725*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_pclk0_clk",
1726*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1727*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_pclk0_clk_src.clkr.hw,
1728*9dcc782eSTaniya Das 			},
1729*9dcc782eSTaniya Das 			.num_parents = 1,
1730*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1731*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1732*9dcc782eSTaniya Das 		},
1733*9dcc782eSTaniya Das 	},
1734*9dcc782eSTaniya Das };
1735*9dcc782eSTaniya Das 
1736*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_pclk1_clk = {
1737*9dcc782eSTaniya Das 	.halt_reg = 0x8008,
1738*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1739*9dcc782eSTaniya Das 	.clkr = {
1740*9dcc782eSTaniya Das 		.enable_reg = 0x8008,
1741*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1742*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1743*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_pclk1_clk",
1744*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1745*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_pclk1_clk_src.clkr.hw,
1746*9dcc782eSTaniya Das 			},
1747*9dcc782eSTaniya Das 			.num_parents = 1,
1748*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1749*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1750*9dcc782eSTaniya Das 		},
1751*9dcc782eSTaniya Das 	},
1752*9dcc782eSTaniya Das };
1753*9dcc782eSTaniya Das 
1754*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_pclk2_clk = {
1755*9dcc782eSTaniya Das 	.halt_reg = 0x800c,
1756*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1757*9dcc782eSTaniya Das 	.clkr = {
1758*9dcc782eSTaniya Das 		.enable_reg = 0x800c,
1759*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1760*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1761*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_pclk2_clk",
1762*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1763*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_pclk2_clk_src.clkr.hw,
1764*9dcc782eSTaniya Das 			},
1765*9dcc782eSTaniya Das 			.num_parents = 1,
1766*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1767*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1768*9dcc782eSTaniya Das 		},
1769*9dcc782eSTaniya Das 	},
1770*9dcc782eSTaniya Das };
1771*9dcc782eSTaniya Das 
1772*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_vsync1_clk = {
1773*9dcc782eSTaniya Das 	.halt_reg = 0xa024,
1774*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1775*9dcc782eSTaniya Das 	.clkr = {
1776*9dcc782eSTaniya Das 		.enable_reg = 0xa024,
1777*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1778*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1779*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_vsync1_clk",
1780*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1781*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_vsync_clk_src.clkr.hw,
1782*9dcc782eSTaniya Das 			},
1783*9dcc782eSTaniya Das 			.num_parents = 1,
1784*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1785*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1786*9dcc782eSTaniya Das 		},
1787*9dcc782eSTaniya Das 	},
1788*9dcc782eSTaniya Das };
1789*9dcc782eSTaniya Das 
1790*9dcc782eSTaniya Das static struct clk_branch mdss_1_disp_cc_mdss_vsync_clk = {
1791*9dcc782eSTaniya Das 	.halt_reg = 0x8030,
1792*9dcc782eSTaniya Das 	.halt_check = BRANCH_HALT,
1793*9dcc782eSTaniya Das 	.clkr = {
1794*9dcc782eSTaniya Das 		.enable_reg = 0x8030,
1795*9dcc782eSTaniya Das 		.enable_mask = BIT(0),
1796*9dcc782eSTaniya Das 		.hw.init = &(const struct clk_init_data) {
1797*9dcc782eSTaniya Das 			.name = "mdss_1_disp_cc_mdss_vsync_clk",
1798*9dcc782eSTaniya Das 			.parent_hws = (const struct clk_hw*[]) {
1799*9dcc782eSTaniya Das 				&mdss_1_disp_cc_mdss_vsync_clk_src.clkr.hw,
1800*9dcc782eSTaniya Das 			},
1801*9dcc782eSTaniya Das 			.num_parents = 1,
1802*9dcc782eSTaniya Das 			.flags = CLK_SET_RATE_PARENT,
1803*9dcc782eSTaniya Das 			.ops = &clk_branch2_ops,
1804*9dcc782eSTaniya Das 		},
1805*9dcc782eSTaniya Das 	},
1806*9dcc782eSTaniya Das };
1807*9dcc782eSTaniya Das 
1808*9dcc782eSTaniya Das static struct gdsc mdss_1_disp_cc_mdss_core_gdsc = {
1809*9dcc782eSTaniya Das 	.gdscr = 0x9000,
1810*9dcc782eSTaniya Das 	.en_rest_wait_val = 0x2,
1811*9dcc782eSTaniya Das 	.en_few_wait_val = 0x2,
1812*9dcc782eSTaniya Das 	.clk_dis_wait_val = 0xf,
1813*9dcc782eSTaniya Das 	.pd = {
1814*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_core_gdsc",
1815*9dcc782eSTaniya Das 	},
1816*9dcc782eSTaniya Das 	.pwrsts = PWRSTS_OFF_ON,
1817*9dcc782eSTaniya Das 	.flags = HW_CTRL_TRIGGER | POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
1818*9dcc782eSTaniya Das };
1819*9dcc782eSTaniya Das 
1820*9dcc782eSTaniya Das static struct gdsc mdss_1_disp_cc_mdss_core_int2_gdsc = {
1821*9dcc782eSTaniya Das 	.gdscr = 0xb000,
1822*9dcc782eSTaniya Das 	.en_rest_wait_val = 0x2,
1823*9dcc782eSTaniya Das 	.en_few_wait_val = 0x2,
1824*9dcc782eSTaniya Das 	.clk_dis_wait_val = 0xf,
1825*9dcc782eSTaniya Das 	.pd = {
1826*9dcc782eSTaniya Das 		.name = "mdss_1_disp_cc_mdss_core_int2_gdsc",
1827*9dcc782eSTaniya Das 	},
1828*9dcc782eSTaniya Das 	.pwrsts = PWRSTS_OFF_ON,
1829*9dcc782eSTaniya Das 	.flags = HW_CTRL_TRIGGER | POLL_CFG_GDSCR | RETAIN_FF_ENABLE,
1830*9dcc782eSTaniya Das };
1831*9dcc782eSTaniya Das 
1832*9dcc782eSTaniya Das static struct clk_regmap *disp_cc_1_nord_clocks[] = {
1833*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_ACCU_SHIFT_CLK] = &mdss_1_disp_cc_mdss_accu_shift_clk.clkr,
1834*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_AHB1_CLK] = &mdss_1_disp_cc_mdss_ahb1_clk.clkr,
1835*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_AHB_CLK] = &mdss_1_disp_cc_mdss_ahb_clk.clkr,
1836*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_AHB_CLK_SRC] = &mdss_1_disp_cc_mdss_ahb_clk_src.clkr,
1837*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE0_CLK] = &mdss_1_disp_cc_mdss_byte0_clk.clkr,
1838*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE0_CLK_SRC] = &mdss_1_disp_cc_mdss_byte0_clk_src.clkr,
1839*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE0_DIV_CLK_SRC] = &mdss_1_disp_cc_mdss_byte0_div_clk_src.clkr,
1840*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE0_INTF_CLK] = &mdss_1_disp_cc_mdss_byte0_intf_clk.clkr,
1841*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE1_CLK] = &mdss_1_disp_cc_mdss_byte1_clk.clkr,
1842*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE1_CLK_SRC] = &mdss_1_disp_cc_mdss_byte1_clk_src.clkr,
1843*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE1_DIV_CLK_SRC] = &mdss_1_disp_cc_mdss_byte1_div_clk_src.clkr,
1844*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_BYTE1_INTF_CLK] = &mdss_1_disp_cc_mdss_byte1_intf_clk.clkr,
1845*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_AUX_CLK] = &mdss_1_disp_cc_mdss_dptx0_aux_clk.clkr,
1846*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_AUX_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_aux_clk_src.clkr,
1847*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_CRYPTO_CLK] = &mdss_1_disp_cc_mdss_dptx0_crypto_clk.clkr,
1848*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_LINK_CLK] = &mdss_1_disp_cc_mdss_dptx0_link_clk.clkr,
1849*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_LINK_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_link_clk_src.clkr,
1850*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_LINK_DIV_CLK_SRC] =
1851*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx0_link_div_clk_src.clkr,
1852*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_LINK_INTF_CLK] = &mdss_1_disp_cc_mdss_dptx0_link_intf_clk.clkr,
1853*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL0_CLK] = &mdss_1_disp_cc_mdss_dptx0_pixel0_clk.clkr,
1854*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL0_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_pixel0_clk_src.clkr,
1855*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL1_CLK] = &mdss_1_disp_cc_mdss_dptx0_pixel1_clk.clkr,
1856*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL1_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_pixel1_clk_src.clkr,
1857*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL2_CLK] = &mdss_1_disp_cc_mdss_dptx0_pixel2_clk.clkr,
1858*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL2_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_pixel2_clk_src.clkr,
1859*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL3_CLK] = &mdss_1_disp_cc_mdss_dptx0_pixel3_clk.clkr,
1860*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_PIXEL3_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx0_pixel3_clk_src.clkr,
1861*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX0_USB_ROUTER_LINK_INTF_CLK] =
1862*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx0_usb_router_link_intf_clk.clkr,
1863*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_AUX_CLK] = &mdss_1_disp_cc_mdss_dptx1_aux_clk.clkr,
1864*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_AUX_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_aux_clk_src.clkr,
1865*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_CRYPTO_CLK] = &mdss_1_disp_cc_mdss_dptx1_crypto_clk.clkr,
1866*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_LINK_CLK] = &mdss_1_disp_cc_mdss_dptx1_link_clk.clkr,
1867*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_LINK_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_link_clk_src.clkr,
1868*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_LINK_DIV_CLK_SRC] =
1869*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx1_link_div_clk_src.clkr,
1870*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_LINK_INTF_CLK] = &mdss_1_disp_cc_mdss_dptx1_link_intf_clk.clkr,
1871*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL0_CLK] = &mdss_1_disp_cc_mdss_dptx1_pixel0_clk.clkr,
1872*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL0_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_pixel0_clk_src.clkr,
1873*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL1_CLK] = &mdss_1_disp_cc_mdss_dptx1_pixel1_clk.clkr,
1874*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL1_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_pixel1_clk_src.clkr,
1875*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL2_CLK] = &mdss_1_disp_cc_mdss_dptx1_pixel2_clk.clkr,
1876*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL2_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_pixel2_clk_src.clkr,
1877*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL3_CLK] = &mdss_1_disp_cc_mdss_dptx1_pixel3_clk.clkr,
1878*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_PIXEL3_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx1_pixel3_clk_src.clkr,
1879*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX1_USB_ROUTER_LINK_INTF_CLK] =
1880*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx1_usb_router_link_intf_clk.clkr,
1881*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_AUX_CLK] = &mdss_1_disp_cc_mdss_dptx2_aux_clk.clkr,
1882*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_AUX_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx2_aux_clk_src.clkr,
1883*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_CRYPTO_CLK] = &mdss_1_disp_cc_mdss_dptx2_crypto_clk.clkr,
1884*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_LINK_CLK] = &mdss_1_disp_cc_mdss_dptx2_link_clk.clkr,
1885*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_LINK_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx2_link_clk_src.clkr,
1886*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_LINK_DIV_CLK_SRC] =
1887*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx2_link_div_clk_src.clkr,
1888*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_LINK_INTF_CLK] = &mdss_1_disp_cc_mdss_dptx2_link_intf_clk.clkr,
1889*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_PIXEL0_CLK] = &mdss_1_disp_cc_mdss_dptx2_pixel0_clk.clkr,
1890*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_PIXEL0_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx2_pixel0_clk_src.clkr,
1891*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_PIXEL1_CLK] = &mdss_1_disp_cc_mdss_dptx2_pixel1_clk.clkr,
1892*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX2_PIXEL1_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx2_pixel1_clk_src.clkr,
1893*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_AUX_CLK] = &mdss_1_disp_cc_mdss_dptx3_aux_clk.clkr,
1894*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_AUX_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx3_aux_clk_src.clkr,
1895*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_CRYPTO_CLK] = &mdss_1_disp_cc_mdss_dptx3_crypto_clk.clkr,
1896*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_LINK_CLK] = &mdss_1_disp_cc_mdss_dptx3_link_clk.clkr,
1897*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_LINK_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx3_link_clk_src.clkr,
1898*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_LINK_DIV_CLK_SRC] =
1899*9dcc782eSTaniya Das 		&mdss_1_disp_cc_mdss_dptx3_link_div_clk_src.clkr,
1900*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_LINK_INTF_CLK] = &mdss_1_disp_cc_mdss_dptx3_link_intf_clk.clkr,
1901*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_PIXEL0_CLK] = &mdss_1_disp_cc_mdss_dptx3_pixel0_clk.clkr,
1902*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_DPTX3_PIXEL0_CLK_SRC] = &mdss_1_disp_cc_mdss_dptx3_pixel0_clk_src.clkr,
1903*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_ESC0_CLK] = &mdss_1_disp_cc_mdss_esc0_clk.clkr,
1904*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_ESC0_CLK_SRC] = &mdss_1_disp_cc_mdss_esc0_clk_src.clkr,
1905*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_ESC1_CLK] = &mdss_1_disp_cc_mdss_esc1_clk.clkr,
1906*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_ESC1_CLK_SRC] = &mdss_1_disp_cc_mdss_esc1_clk_src.clkr,
1907*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_MDP1_CLK] = &mdss_1_disp_cc_mdss_mdp1_clk.clkr,
1908*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_MDP_CLK] = &mdss_1_disp_cc_mdss_mdp_clk.clkr,
1909*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_MDP_CLK_SRC] = &mdss_1_disp_cc_mdss_mdp_clk_src.clkr,
1910*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_MDP_LUT1_CLK] = &mdss_1_disp_cc_mdss_mdp_lut1_clk.clkr,
1911*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_MDP_LUT_CLK] = &mdss_1_disp_cc_mdss_mdp_lut_clk.clkr,
1912*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_NON_GDSC_AHB_CLK] = &mdss_1_disp_cc_mdss_non_gdsc_ahb_clk.clkr,
1913*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK0_CLK] = &mdss_1_disp_cc_mdss_pclk0_clk.clkr,
1914*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK0_CLK_SRC] = &mdss_1_disp_cc_mdss_pclk0_clk_src.clkr,
1915*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK1_CLK] = &mdss_1_disp_cc_mdss_pclk1_clk.clkr,
1916*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK1_CLK_SRC] = &mdss_1_disp_cc_mdss_pclk1_clk_src.clkr,
1917*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK2_CLK] = &mdss_1_disp_cc_mdss_pclk2_clk.clkr,
1918*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_PCLK2_CLK_SRC] = &mdss_1_disp_cc_mdss_pclk2_clk_src.clkr,
1919*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_VSYNC1_CLK] = &mdss_1_disp_cc_mdss_vsync1_clk.clkr,
1920*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_VSYNC_CLK] = &mdss_1_disp_cc_mdss_vsync_clk.clkr,
1921*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_VSYNC_CLK_SRC] = &mdss_1_disp_cc_mdss_vsync_clk_src.clkr,
1922*9dcc782eSTaniya Das 	[MDSS_DISP_CC_PLL0] = &mdss_1_disp_cc_pll0.clkr,
1923*9dcc782eSTaniya Das 	[MDSS_DISP_CC_PLL1] = &mdss_1_disp_cc_pll1.clkr,
1924*9dcc782eSTaniya Das 	[MDSS_DISP_CC_PLL2] = &mdss_1_disp_cc_pll2.clkr,
1925*9dcc782eSTaniya Das 	[MDSS_DISP_CC_PLL3] = &mdss_1_disp_cc_pll3.clkr,
1926*9dcc782eSTaniya Das 	[MDSS_DISP_CC_SLEEP_CLK_SRC] = &mdss_1_disp_cc_sleep_clk_src.clkr,
1927*9dcc782eSTaniya Das 	[MDSS_DISP_CC_XO_CLK_SRC] = &mdss_1_disp_cc_xo_clk_src.clkr,
1928*9dcc782eSTaniya Das };
1929*9dcc782eSTaniya Das 
1930*9dcc782eSTaniya Das static struct gdsc *disp_cc_1_nord_gdscs[] = {
1931*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_CORE_GDSC] = &mdss_1_disp_cc_mdss_core_gdsc,
1932*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_CORE_INT2_GDSC] = &mdss_1_disp_cc_mdss_core_int2_gdsc,
1933*9dcc782eSTaniya Das };
1934*9dcc782eSTaniya Das 
1935*9dcc782eSTaniya Das static const struct qcom_reset_map disp_cc_1_nord_resets[] = {
1936*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_CORE_BCR] = { 0x8000 },
1937*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_CORE_INT2_BCR] = { 0xa000 },
1938*9dcc782eSTaniya Das 	[MDSS_DISP_CC_MDSS_RSCC_BCR] = { 0xc000 },
1939*9dcc782eSTaniya Das };
1940*9dcc782eSTaniya Das 
1941*9dcc782eSTaniya Das static struct clk_alpha_pll *disp_cc_1_nord_plls[] = {
1942*9dcc782eSTaniya Das 	&mdss_1_disp_cc_pll0,
1943*9dcc782eSTaniya Das 	&mdss_1_disp_cc_pll1,
1944*9dcc782eSTaniya Das 	&mdss_1_disp_cc_pll2,
1945*9dcc782eSTaniya Das 	&mdss_1_disp_cc_pll3,
1946*9dcc782eSTaniya Das };
1947*9dcc782eSTaniya Das 
1948*9dcc782eSTaniya Das static const u32 disp_cc_1_nord_critical_cbcrs[] = {
1949*9dcc782eSTaniya Das 	0xc00c, /* MDSS_DISP_CC_RSCC_AHB_CLK */
1950*9dcc782eSTaniya Das 	0xc008, /* MDSS_DISP_CC_RSCC_VSYNC CLK */
1951*9dcc782eSTaniya Das 	0xe07c, /* MDSS_DISP_CC_SLEEP_CLK */
1952*9dcc782eSTaniya Das 	0xe05c, /* MDSS_DISP_CC_XO_CLK */
1953*9dcc782eSTaniya Das };
1954*9dcc782eSTaniya Das 
1955*9dcc782eSTaniya Das static const struct regmap_config disp_cc_1_nord_regmap_config = {
1956*9dcc782eSTaniya Das 	.reg_bits = 32,
1957*9dcc782eSTaniya Das 	.reg_stride = 4,
1958*9dcc782eSTaniya Das 	.val_bits = 32,
1959*9dcc782eSTaniya Das 	.max_register = 0x1a00c,
1960*9dcc782eSTaniya Das 	.fast_io = true,
1961*9dcc782eSTaniya Das };
1962*9dcc782eSTaniya Das 
1963*9dcc782eSTaniya Das static const struct qcom_cc_driver_data disp_cc_1_nord_driver_data = {
1964*9dcc782eSTaniya Das 	.alpha_plls = disp_cc_1_nord_plls,
1965*9dcc782eSTaniya Das 	.num_alpha_plls = ARRAY_SIZE(disp_cc_1_nord_plls),
1966*9dcc782eSTaniya Das 	.clk_cbcrs = disp_cc_1_nord_critical_cbcrs,
1967*9dcc782eSTaniya Das 	.num_clk_cbcrs = ARRAY_SIZE(disp_cc_1_nord_critical_cbcrs),
1968*9dcc782eSTaniya Das };
1969*9dcc782eSTaniya Das 
1970*9dcc782eSTaniya Das static const struct qcom_cc_desc disp_cc_1_nord_desc = {
1971*9dcc782eSTaniya Das 	.config = &disp_cc_1_nord_regmap_config,
1972*9dcc782eSTaniya Das 	.clks = disp_cc_1_nord_clocks,
1973*9dcc782eSTaniya Das 	.num_clks = ARRAY_SIZE(disp_cc_1_nord_clocks),
1974*9dcc782eSTaniya Das 	.resets = disp_cc_1_nord_resets,
1975*9dcc782eSTaniya Das 	.num_resets = ARRAY_SIZE(disp_cc_1_nord_resets),
1976*9dcc782eSTaniya Das 	.gdscs = disp_cc_1_nord_gdscs,
1977*9dcc782eSTaniya Das 	.num_gdscs = ARRAY_SIZE(disp_cc_1_nord_gdscs),
1978*9dcc782eSTaniya Das 	.use_rpm = true,
1979*9dcc782eSTaniya Das 	.driver_data = &disp_cc_1_nord_driver_data,
1980*9dcc782eSTaniya Das };
1981*9dcc782eSTaniya Das 
1982*9dcc782eSTaniya Das static const struct of_device_id disp_cc_1_nord_match_table[] = {
1983*9dcc782eSTaniya Das 	{ .compatible = "qcom,nord-dispcc1" },
1984*9dcc782eSTaniya Das 	{ }
1985*9dcc782eSTaniya Das };
1986*9dcc782eSTaniya Das MODULE_DEVICE_TABLE(of, disp_cc_1_nord_match_table);
1987*9dcc782eSTaniya Das 
disp_cc_1_nord_probe(struct platform_device * pdev)1988*9dcc782eSTaniya Das static int disp_cc_1_nord_probe(struct platform_device *pdev)
1989*9dcc782eSTaniya Das {
1990*9dcc782eSTaniya Das 	return qcom_cc_probe(pdev, &disp_cc_1_nord_desc);
1991*9dcc782eSTaniya Das }
1992*9dcc782eSTaniya Das 
1993*9dcc782eSTaniya Das static struct platform_driver disp_cc_1_nord_driver = {
1994*9dcc782eSTaniya Das 	.probe = disp_cc_1_nord_probe,
1995*9dcc782eSTaniya Das 	.driver = {
1996*9dcc782eSTaniya Das 		.name = "dispcc1-nord",
1997*9dcc782eSTaniya Das 		.of_match_table = disp_cc_1_nord_match_table,
1998*9dcc782eSTaniya Das 	},
1999*9dcc782eSTaniya Das };
2000*9dcc782eSTaniya Das 
2001*9dcc782eSTaniya Das module_platform_driver(disp_cc_1_nord_driver);
2002*9dcc782eSTaniya Das 
2003*9dcc782eSTaniya Das MODULE_DESCRIPTION("QTI DISPCC1 NORD Driver");
2004*9dcc782eSTaniya Das MODULE_LICENSE("GPL");
2005