tizen 2.4 release
[profile/mobile/platform/kernel/linux-3.10-sc7730.git] / include / soc / sprd / chip_x20 / __clock_tree.h
1 /*
2  * Copyright (C) 2013 Spreadtrum Communications Inc.
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  *************************************************
15  * Automatically generated C header: do not edit *
16  *************************************************
17  */
18
19 /*
20  * Clock (0)Name, Clock (1)fixed rate, Clock Enable (2)Ctrl and (3)Bit,
21  * Clock Divisor (4)Ctrl and (5)Bit, Clock Parent (6)Ctrl and (7)Bit,
22  * and Parent Select (15)Count and (16)Lists[ ... ...]
23  */
24
25 SCI_CLK_ADD(ext_26m, 26000000, REG_PMU_APB_CGM_AP_EN, BIT(0),
26         0, 0, 0, 0, 0);
27
28 SCI_CLK_ADD(ext_32k, 32768, 0, 0,
29         0, 0, 0, 0, 0);
30
31 SCI_CLK_ADD(clk_mpll, 0, REG_PMU_APB_CGM_AP_EN, BIT(6),
32         REG_AON_APB_MPLL_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
33         1, &ext_26m);
34
35 SCI_CLK_ADD(clk_dpll, 0, REG_PMU_APB_CGM_AP_EN, BIT(1),
36         REG_AON_APB_DPLL_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
37         1, &ext_26m);
38
39 SCI_CLK_ADD(clk_td_sel_i, 0, REG_PMU_APB_TDPLL_REL_CFG, BIT(0),
40         0, 0, 0, 0, 0);
41
42 SCI_CLK_ADD(clk_w_sel_i, 0, REG_PMU_APB_WPLL_REL_CFG, BIT(0),
43         0, 0, 0, 0, 0);
44
45 SCI_CLK_ADD(clk_c_sel_i, 0, REG_PMU_APB_CPLL_REL_CFG, BIT(0),
46         0, 0, 0, 0, 0);
47
48 SCI_CLK_ADD(clk_wifi_sel_i, 0, REG_PMU_APB_WIFIPLL1_REL_CFG, BIT(0),
49         0, 0, 0, 0, 0);
50
51 SCI_CLK_ADD(clk_tdpll, 0, REG_PMU_APB_CGM_AP_EN, BIT(3),
52         REG_AON_APB_TDPLL_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
53         1, &ext_26m);
54
55 SCI_CLK_ADD(clk_wpll, 0, REG_PMU_APB_CGM_AP_EN, BIT(5),
56         REG_AON_APB_WPLL_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
57         1, &clk_w_sel_i);
58
59 SCI_CLK_ADD(clk_cpll, 0, REG_PMU_APB_CGM_AP_EN, BIT(2),
60         REG_AON_APB_CPLL_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
61         1, &clk_c_sel_i);
62
63 SCI_CLK_ADD(clk_wifipll, 0, REG_PMU_APB_CGM_AP_EN, BIT(4),
64         REG_AON_APB_WIFIPLL1_CFG1, BIT(0)|BIT(1)|BIT(2)|BIT(3)|BIT(4)|BIT(5)|BIT(6)|BIT(7)|BIT(8)|BIT(9)|BIT(10), 0, 0,
65         1, &clk_wifi_sel_i);
66
67 SCI_CLK_ADD(clk_460m8, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(20),
68         2, 0, 0, 0,
69         1, &clk_wpll);
70
71 SCI_CLK_ADD(clk_300m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(0),
72         3, 0, 0, 0,
73         1, &clk_mpll);
74
75 SCI_CLK_ADD(clk_37m5, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(1),
76         24, 0, 0, 0,
77         1, &clk_mpll);
78
79 SCI_CLK_ADD(clk_66m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(2),
80         16, 0, 0, 0,
81         1, &clk_dpll);
82
83 SCI_CLK_ADD(clk_51m2_w, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(23),
84         18, 0, 0, 0,
85         1, &clk_wpll);
86
87 SCI_CLK_ADD(clk_40m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(27),
88         22, 0, 0, 0,
89         1, &clk_wifipll);
90
91 SCI_CLK_ADD(clk_312m, 0, REG_PMU_APB_CGM_AP_EN, BIT(7),
92         2, 0, 0, 0,
93         1, &clk_cpll);
94
95 SCI_CLK_ADD(clk_208m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(17),
96         3, 0, 0, 0,
97         1, &clk_cpll);
98
99 SCI_CLK_ADD(clk_104m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(18),
100         6, 0, 0, 0,
101         1, &clk_cpll);
102
103 SCI_CLK_ADD(clk_52m, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(19),
104         12, 0, 0, 0,
105         1, &clk_cpll);
106
107 SCI_CLK_ADD(clk_384m, 0, REG_PMU_APB_CGM_AP_EN, BIT(8),
108         2, 0, 0, 0,
109         1, &clk_tdpll);
110
111 SCI_CLK_ADD(clk_192m, 0, REG_PMU_APB_CGM_AP_EN, BIT(10),
112         4, 0, 0, 0,
113         1, &clk_tdpll);
114
115 SCI_CLK_ADD(clk_96m, 0, REG_PMU_APB_CGM_AP_EN, BIT(13),
116         8, 0, 0, 0,
117         1, &clk_tdpll);
118
119 SCI_CLK_ADD(clk_48m, 0, REG_PMU_APB_CGM_AP_EN, BIT(17),
120         16, 0, 0, 0,
121         1, &clk_tdpll);
122
123 SCI_CLK_ADD(clk_24m, 0, REG_PMU_APB_CGM_AP_EN, BIT(18),
124         32, 0, 0, 0,
125         1, &clk_tdpll);
126
127 SCI_CLK_ADD(clk_12m, 0, REG_PMU_APB_CGM_AP_EN, BIT(19),
128         64, 0, 0, 0,
129         1, &clk_tdpll);
130
131 SCI_CLK_ADD(clk_256m, 0, REG_PMU_APB_CGM_AP_EN, BIT(9),
132         3, 0, 0, 0,
133         1, &clk_tdpll);
134
135 SCI_CLK_ADD(clk_128m, 0, REG_PMU_APB_CGM_AP_EN, BIT(12),
136         6, 0, 0, 0,
137         1, &clk_tdpll);
138
139 SCI_CLK_ADD(clk_64m, 0, REG_PMU_APB_CGM_AP_EN, BIT(15),
140         12, 0, 0, 0,
141         1, &clk_tdpll);
142
143 SCI_CLK_ADD(clk_153m6, 0, REG_PMU_APB_CGM_AP_EN, BIT(11),
144         5, 0, 0, 0,
145         1, &clk_tdpll);
146
147 SCI_CLK_ADD(clk_51m2, 0, REG_PMU_APB_CGM_AP_EN, BIT(16),
148         15, 0, 0, 0,
149         1, &clk_tdpll);
150
151 SCI_CLK_ADD(clk_76m8, 0, REG_PMU_APB_CGM_AP_EN, BIT(14),
152         10, 0, 0, 0,
153         1, &clk_tdpll);
154
155 SCI_CLK_ADD(clk_38m4, 0, REG_PMU_APB_PLL_DIV_EN1, BIT(15),
156         20, 0, 0, 0,
157         1, &clk_tdpll);
158
159 SCI_CLK_ADD(clk_mcu, 0, 0, 0,
160         REG_AP_AHB_CA7_CKG_CFG, BIT(4)|BIT(5)|BIT(6), REG_AP_AHB_CA7_CKG_CFG, BIT(0)|BIT(1)|BIT(2),
161         7, &ext_26m, &clk_dpll, &clk_cpll, &clk_tdpll, &clk_wifipll, &clk_wpll, &clk_mpll);
162
163 SCI_CLK_ADD(clk_arm, 0, 0, 0,
164         0, 0, 0, 0,
165         1, &clk_mcu);
166
167 SCI_CLK_ADD(clk_axi, 0, 0, 0,
168         REG_AP_AHB_CA7_CKG_CFG, BIT(8)|BIT(9)|BIT(10), 0, 0,
169         1, &clk_mcu);
170
171 SCI_CLK_ADD(clk_dbg, 0, REG_AP_AHB_MISC_CKG_EN, BIT(8),
172         REG_AP_AHB_CA7_CKG_CFG, BIT(16)|BIT(17)|BIT(18), 0, 0,
173         1, &clk_mcu);
174
175 SCI_CLK_ADD(clk_ap_ahb, 0, 0, 0,
176         0, 0, REG_AP_CLK_AP_AHB_CFG, BIT(0)|BIT(1),
177         4, &ext_26m, &clk_76m8, &clk_128m, &clk_192m);
178
179 SCI_CLK_ADD(clk_ap_apb, 0, 0, 0,
180         0, 0, REG_AP_CLK_AP_APB_CFG, BIT(0)|BIT(1),
181         4, &ext_26m, &clk_64m, &clk_96m, &clk_128m);
182
183 SCI_CLK_ADD(clk_pub_ahb, 0, 0, 0,
184         0, 0, REG_AON_CLK_PUB_AHB_CFG, BIT(0)|BIT(1),
185         4, &ext_26m, &clk_96m, &clk_128m, &clk_153m6);
186
187 SCI_CLK_ADD(clk_emc, 0, 0, 0,
188         REG_AON_CLK_EMC_CFG, BIT(8)|BIT(9), REG_AON_CLK_EMC_CFG, BIT(0)|BIT(1),
189         4, &ext_26m, &clk_cpll, &clk_tdpll, &clk_dpll);
190
191 SCI_CLK_ADD(clk_aon_apb, 0, 0, 0,
192         REG_AON_CLK_AON_APB_CFG, BIT(8)|BIT(9), REG_AON_CLK_AON_APB_CFG, BIT(0)|BIT(1),
193         4, &ext_26m, &clk_76m8, &clk_96m, &clk_128m);
194
195 SCI_CLK_ADD(clk_disp_emc, 0, REG_AON_APB_APB_EB1, BIT(11),
196         0, 0, 0, 0,
197         1, &clk_aon_apb);
198
199 SCI_CLK_ADD(clk_gsp_emc, 0, REG_AON_APB_APB_EB1, BIT(13),
200         0, 0, 0, 0,
201         1, &clk_aon_apb);
202
203 SCI_CLK_ADD(clk_gsp, 0, REG_AP_AHB_AHB_EB, BIT(3),
204         0, 0, REG_AP_CLK_GSP_CFG, BIT(0)|BIT(1),
205         4, &clk_96m, &clk_153m6, &clk_192m, &clk_256m);
206
207 SCI_CLK_ADD(clk_disc0, 0, REG_AP_AHB_AHB_EB, BIT(1),
208         REG_AP_CLK_DISPC0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_DISPC0_CFG, BIT(0)|BIT(1),
209         4, &clk_153m6, &clk_192m, &clk_256m, &clk_312m);
210
211 SCI_CLK_ADD(clk_disc0_dbi, 0, REG_AP_AHB_AHB_EB, BIT(1),
212         REG_AP_CLK_DISPC0_DBI_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_DISPC0_DBI_CFG, BIT(0)|BIT(1),
213         4, &clk_128m, &clk_153m6, &clk_192m, &clk_256m);
214
215 SCI_CLK_ADD(clk_disc0_dpi, 0, REG_AP_AHB_AHB_EB, BIT(1),
216         REG_AP_CLK_DISPC0_DPI_CFG, BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15), REG_AP_CLK_DISPC0_DPI_CFG, BIT(0)|BIT(1),
217         4, &clk_128m, &clk_153m6, &clk_192m, &clk_384m);
218
219 SCI_CLK_ADD(clk_disc1, 0, REG_AP_AHB_AHB_EB, BIT(2),
220         REG_AP_CLK_DISPC1_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_DISPC1_CFG, BIT(0)|BIT(1),
221         4, &clk_153m6, &clk_192m, &clk_256m, &clk_312m);
222
223 SCI_CLK_ADD(clk_disc1_dbi, 0, REG_AP_AHB_AHB_EB, BIT(2),
224         REG_AP_CLK_DISPC1_DBI_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_DISPC1_DBI_CFG, BIT(0)|BIT(1),
225         4, &clk_128m, &clk_153m6, &clk_192m, &clk_256m);
226
227 SCI_CLK_ADD(clk_disc1_dpi, 0, REG_AP_AHB_AHB_EB, BIT(2),
228         REG_AP_CLK_DISPC1_DPI_CFG, BIT(8)|BIT(9)|BIT(10)|BIT(11)|BIT(12)|BIT(13)|BIT(14)|BIT(15), REG_AP_CLK_DISPC1_DPI_CFG, BIT(0)|BIT(1),
229         4, &clk_128m, &clk_153m6, &clk_192m, &clk_384m);
230
231 /*
232 SCI_CLK_ADD(clk_zipdec_emc, 0, REG_AP_AHB_AHB_EB, BIT(21),
233         0, 0, REG_AP_CLK_ZIPENC_CFG, BIT(0)|BIT(1),
234         4, &clk_96m, &clk_153m6, &clk_192m, &clk_256m);
235
236 SCI_CLK_ADD(clk_zipenc_emc, 0, REG_AP_AHB_AHB_EB, BIT(20),
237         0, 0, REG_AP_CLK_ZIPENC_CFG, BIT(0)|BIT(1),
238         4, &clk_96m, &clk_153m6, &clk_192m, &clk_256m);
239
240 SCI_CLK_ADD(clk_nandc_ecc, 0, REG_AP_AHB_AHB_EB, BIT(19),
241         0, 0, REG_AP_CLK_NANDC_ECC_CFG, BIT(0),
242         2, &clk_153m6, &clk_192m);
243
244 */
245 SCI_CLK_ADD(clk_nfc, 0, REG_AP_AHB_AHB_EB, BIT(6),
246         REG_AP_CLK_NFC_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_NFC_CFG, BIT(0)|BIT(1),
247         3, &clk_64m, &clk_128m, &clk_153m6);
248
249 SCI_CLK_ADD(clk_sdio0, 0, REG_AP_AHB_AHB_EB, BIT(8),
250         REG_AP_CLK_SDIO0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_SDIO0_CFG, BIT(0)|BIT(1),
251         4, &ext_26m, &clk_256m, &clk_312m, &clk_384m);
252
253 SCI_CLK_ADD(clk_sdio1, 0, REG_AP_AHB_AHB_EB, BIT(9),
254         0, 0, REG_AP_CLK_SDIO1_CFG, BIT(0)|BIT(1),
255         4, &clk_48m, &clk_76m8, &clk_96m, &clk_128m);
256
257 SCI_CLK_ADD(clk_sdio2, 0, REG_AP_AHB_AHB_EB, BIT(10),
258         0, 0, REG_AP_CLK_SDIO2_CFG, BIT(0)|BIT(1),
259         4, &clk_48m, &clk_76m8, &clk_96m, &clk_128m);
260
261 SCI_CLK_ADD(clk_emmc, 0, REG_AP_AHB_AHB_EB, BIT(11),
262         0, 0, REG_AP_CLK_EMMC_CFG, BIT(0)|BIT(1),
263         4, &ext_26m, &clk_256m, &clk_312m, &clk_384m);
264
265 SCI_CLK_ADD(clk_gps_tcxo, 64000000, REG_AP_CLK_GPS_TCXO_CFG, BIT(16),
266         0, 0, 0, 0, 0);
267
268 SCI_CLK_ADD(clk_gps, 0, REG_AP_AHB_AHB_EB, BIT(12),
269         0, 0, REG_AP_CLK_GPS_CFG, BIT(0),
270         2, &clk_64m, &clk_76m8);
271
272 SCI_CLK_ADD(clk_usb_ref, 0, REG_AP_AHB_AHB_EB, BIT(4),
273         0, 0, REG_AP_CLK_USB_REF_CFG, BIT(0),
274         2, &clk_12m, &clk_24m);
275
276 SCI_CLK_ADD(clk_uart0, 0, REG_AP_APB_APB_EB, BIT(13),
277         REG_AP_CLK_UART0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_UART0_CFG, BIT(0)|BIT(1),
278         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
279
280 SCI_CLK_ADD(clk_uart1, 0, REG_AP_APB_APB_EB, BIT(14),
281         REG_AP_CLK_UART1_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_UART1_CFG, BIT(0)|BIT(1),
282         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
283
284 SCI_CLK_ADD(clk_uart2, 0, REG_AP_APB_APB_EB, BIT(15),
285         REG_AP_CLK_UART2_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_UART2_CFG, BIT(0)|BIT(1),
286         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
287
288 SCI_CLK_ADD(clk_uart3, 0, REG_AP_APB_APB_EB, BIT(16),
289         REG_AP_CLK_UART3_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_UART3_CFG, BIT(0)|BIT(1),
290         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
291
292 SCI_CLK_ADD(clk_uart4, 0, REG_AP_APB_APB_EB, BIT(17),
293         REG_AP_CLK_UART4_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_UART4_CFG, BIT(0)|BIT(1),
294         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
295
296 SCI_CLK_ADD(clk_i2c0, 0, REG_AP_APB_APB_EB, BIT(8),
297         REG_AP_CLK_I2C0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_I2C0_CFG, BIT(0)|BIT(1),
298         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
299
300 SCI_CLK_ADD(clk_i2c1, 0, REG_AP_APB_APB_EB, BIT(9),
301         REG_AP_CLK_I2C1_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_I2C1_CFG, BIT(0)|BIT(1),
302         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
303
304 SCI_CLK_ADD(clk_i2c2, 0, REG_AP_APB_APB_EB, BIT(10),
305         REG_AP_CLK_I2C2_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_I2C2_CFG, BIT(0)|BIT(1),
306         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
307
308 SCI_CLK_ADD(clk_i2c3, 0, REG_AP_APB_APB_EB, BIT(11),
309         REG_AP_CLK_I2C3_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_I2C3_CFG, BIT(0)|BIT(1),
310         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
311
312 SCI_CLK_ADD(clk_i2c4, 0, REG_AP_APB_APB_EB, BIT(12),
313         REG_AP_CLK_I2C4_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_I2C4_CFG, BIT(0)|BIT(1),
314         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
315
316 SCI_CLK_ADD(clk_spi0, 0, REG_AP_APB_APB_EB, BIT(5),
317         REG_AP_CLK_SPI0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_SPI0_CFG, BIT(0)|BIT(1),
318         4, &ext_26m, &clk_96m, &clk_153m6, &clk_192m);
319
320 SCI_CLK_ADD(clk_spi1, 0, REG_AP_APB_APB_EB, BIT(6),
321         REG_AP_CLK_SPI1_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_SPI1_CFG, BIT(0)|BIT(1),
322         4, &ext_26m, &clk_96m, &clk_153m6, &clk_192m);
323
324 SCI_CLK_ADD(clk_spi2, 0, REG_AP_APB_APB_EB, BIT(7),
325         REG_AP_CLK_SPI2_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_SPI2_CFG, BIT(0)|BIT(1),
326         4, &ext_26m, &clk_96m, &clk_153m6, &clk_192m);
327
328 SCI_CLK_ADD(clk_iis0, 0, REG_AP_APB_APB_EB, BIT(1),
329         REG_AP_CLK_IIS0_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_IIS0_CFG, BIT(0)|BIT(1),
330         3, &ext_26m, &clk_128m, &clk_153m6);
331
332 SCI_CLK_ADD(clk_iis1, 0, REG_AP_APB_APB_EB, BIT(2),
333         REG_AP_CLK_IIS1_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_IIS1_CFG, BIT(0)|BIT(1),
334         3, &ext_26m, &clk_128m, &clk_153m6);
335
336 SCI_CLK_ADD(clk_iis2, 0, REG_AP_APB_APB_EB, BIT(3),
337         REG_AP_CLK_IIS2_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_IIS2_CFG, BIT(0)|BIT(1),
338         3, &ext_26m, &clk_128m, &clk_153m6);
339
340 SCI_CLK_ADD(clk_iis3, 0, REG_AP_APB_APB_EB, BIT(4),
341         REG_AP_CLK_IIS3_CFG, BIT(8)|BIT(9)|BIT(10), REG_AP_CLK_IIS3_CFG, BIT(0)|BIT(1),
342         3, &ext_26m, &clk_128m, &clk_153m6);
343
344 SCI_CLK_ADD(clk_gpu_top_i, 0, REG_PMU_APB_PD_GPU_TOP_CFG+1, BIT(25),
345         0, 0, 0, 0,
346         1, &clk_aon_apb);
347
348 SCI_CLK_ADD(clk_gpu_i, 0, REG_AON_APB_APB_EB0, BIT(27),
349         0, 0, 0, 0,
350         1, &clk_gpu_top_i);
351
352 SCI_CLK_ADD(clk_gpu, 0, &clk_gpu_i, 0,
353         REG_GPU_APB_APB_CLK_CTRL, BIT(4)|BIT(5), REG_GPU_APB_APB_CLK_CTRL, BIT(0)|BIT(1)|BIT(2),
354         7, &clk_153m6, &clk_208m, &clk_256m, &clk_300m, &clk_312m, &clk_384m, &clk_460m8);
355
356 SCI_CLK_ADD(clk_mm_top_i, 0, REG_PMU_APB_PD_MM_TOP_CFG+1, BIT(25),
357         0, 0, 0, 0,
358         1, &clk_aon_apb);
359
360 SCI_CLK_ADD(clk_mm_i, 0, REG_AON_APB_APB_EB0, BIT(25),
361         0, 0, 0, 0,
362         1, &clk_mm_top_i);
363
364 SCI_CLK_ADD(clk_mm_ahb, 0, 0, 0,
365         0, 0, REG_MM_CLK_MM_AHB_CFG, BIT(0)|BIT(1),
366         4, &ext_26m, &clk_96m, &clk_128m, &clk_153m6);
367
368 SCI_CLK_ADD(clk_mm_mtx_axi, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(8),
369         0, 0, 0, 0,
370         1, &clk_mm_i);
371
372 SCI_CLK_ADD(clk_mm_axi, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(7),
373         0, 0, 0, 0,
374         1, &clk_mm_mtx_axi);
375
376 SCI_CLK_ADD(clk_mmu, 0, REG_MM_AHB_AHB_EB, BIT(7),
377         0, 0, 0, 0,
378         1, &clk_mm_ahb);
379 SCI_CLK_ADD(clk_mm_ckg_i, 0, REG_MM_AHB_AHB_EB, BIT(6),
380         0, 0, 0, 0,
381         1, &clk_mm_i);
382
383 SCI_CLK_ADD(clk_jpg_i, 0, REG_MM_AHB_AHB_EB, BIT(5),
384         0, 0, 0, 0,
385         1, &clk_mm_ahb);
386
387 SCI_CLK_ADD(clk_jpg_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(6),
388         0, 0, 0, 0,
389         1, &clk_jpg_i);
390
391 SCI_CLK_ADD(clk_jpg, 0, &clk_jpg_ckg_i, 0,
392         0, 0, REG_MM_CLK_JPG_CFG, BIT(0)|BIT(1),
393         4, &clk_76m8, &clk_128m, &clk_192m, &clk_256m);
394
395 SCI_CLK_ADD(clk_vsp_i, 0, REG_MM_AHB_AHB_EB, BIT(3),
396         0, 0, 0, 0,
397         1, &clk_mm_ahb);
398
399 SCI_CLK_ADD(clk_vsp_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(5),
400         0, 0, 0, 0,
401         1, &clk_vsp_i);
402
403 SCI_CLK_ADD(clk_vsp, 0, &clk_vsp_ckg_i, 0,
404         0, 0, REG_MM_CLK_VSP_CFG, BIT(0)|BIT(1),
405         4, &clk_76m8, &clk_128m, &clk_192m, &clk_256m);
406
407 SCI_CLK_ADD(clk_isp_i, 0, REG_MM_AHB_AHB_EB, BIT(2),
408         0, 0, 0, 0,
409         1, &clk_mm_ahb);
410
411 SCI_CLK_ADD(clk_isp_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(4),
412         0, 0, 0, 0,
413         1, &clk_isp_i);
414
415 SCI_CLK_ADD(clk_isp, 0, &clk_isp_ckg_i, 0,
416         0, 0, REG_MM_CLK_ISP_CFG, BIT(0)|BIT(1),
417         4, &clk_76m8, &clk_128m, &clk_256m, &clk_312m);
418
419 SCI_CLK_ADD(clk_sensor_i, 0, REG_MM_AHB_AHB_EB, BIT(1),
420         0, 0, 0, 0,
421         1, &clk_mm_ahb);
422
423 SCI_CLK_ADD(clk_sensor_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(2),
424         0, 0, 0, 0,
425         1, &clk_sensor_i);
426
427 SCI_CLK_ADD(clk_sensor, 0, &clk_sensor_ckg_i, 0,
428         REG_MM_CLK_SENSOR_CFG, BIT(8)|BIT(9)|BIT(10), REG_MM_CLK_SENSOR_CFG, BIT(0)|BIT(1),
429         4, &ext_26m, &clk_48m, &clk_76m8, &clk_96m);
430
431 SCI_CLK_ADD(clk_ccir_in, 64000000, 0, 0,
432         0, 0, 0, 0, 0);
433
434 SCI_CLK_ADD(clk_ccir_i, 0, REG_MM_AHB_AHB_EB, BIT(1),
435         0, 0, 0, 0,
436         1, &clk_mm_ahb);
437
438 SCI_CLK_ADD(clk_ccir, 0, &clk_ccir_i, 0,
439         0, 0, REG_MM_CLK_CCIR_CFG, BIT(16),
440         2, &clk_24m, &clk_ccir_in);
441
442 SCI_CLK_ADD(clk_dcam_i, 0, REG_MM_AHB_AHB_EB, BIT(0),
443         0, 0, 0, 0,
444         1, &clk_mm_ahb);
445
446 SCI_CLK_ADD(clk_dcam_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(3),
447         0, 0, 0, 0,
448         1, &clk_dcam_i);
449
450 SCI_CLK_ADD(clk_dcam, 0, &clk_dcam_ckg_i, 0,
451         0, 0, REG_MM_CLK_DCAM_CFG, BIT(0)|BIT(1),
452         4, &clk_76m8, &clk_128m, &clk_256m, &clk_312m);
453
454 SCI_CLK_ADD(clk_csi_i, 0, REG_MM_AHB_AHB_EB, BIT(4),
455         0, 0, 0, 0,
456         1, &clk_mm_ahb);
457
458 SCI_CLK_ADD(clk_csi_ckg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(1),
459         0, 0, 0, 0,
460         1, &clk_csi_i);
461
462 SCI_CLK_ADD(clk_cphy_cfg_i, 0, REG_MM_AHB_GEN_CKG_CFG, BIT(0),
463         0, 0, 0, 0,
464         1, &clk_mm_ahb);
465
466 SCI_CLK_ADD(clk_dcam_mipi, 0, &clk_cphy_cfg_i, 0,
467         0, 0, 0, 0,
468         1, &clk_csi_ckg_i);
469
470 SCI_CLK_ADD(clk_aud, 0, REG_AON_APB_APB_EB0, BIT(18),
471         0, 0, 0, 0,
472         1, &ext_26m);
473
474 SCI_CLK_ADD(clk_audif, 0, REG_AON_APB_APB_EB0, BIT(17),
475         0, 0, REG_AON_CLK_AUDIF_CFG, BIT(0)|BIT(1),
476         3, &ext_26m, &clk_38m4, &clk_51m2);
477
478 SCI_CLK_ADD(clk_vbc, 0, REG_AON_APB_APB_EB0, BIT(19),
479         0, 0, 0, 0,
480         1, &ext_26m);
481
482 SCI_CLK_ADD(clk_fm_in, 64000000, REG_AON_CLK_FM_CFG, BIT(16),
483         0, 0, 0, 0, 0);
484
485 SCI_CLK_ADD(clk_fm, 0, REG_AON_APB_APB_EB0, BIT(1),
486         0, 0, 0, 0,
487         1, &clk_fm_in);
488
489 SCI_CLK_ADD(clk_adi, 0, REG_AON_APB_APB_EB0, BIT(16),
490         0, 0, REG_AON_CLK_ADI_CFG, BIT(0)|BIT(1),
491         4, &ext_26m, &clk_38m4, &clk_51m2, &clk_64m);
492
493 SCI_CLK_ADD(clk_aux0, 0, REG_AON_APB_APB_EB1, BIT(2),
494         REG_AON_APB_AON_CGM_CFG, BIT(16)|BIT(17)|BIT(18)|BIT(19), REG_AON_APB_AON_CGM_CFG, BIT(0)|BIT(1)|BIT(2)|BIT(3),
495         10, &ext_32k, &ext_26m, &ext_26m, &clk_48m, &clk_52m, &clk_51m2, &clk_37m5, &clk_40m, &clk_66m, &clk_40m);
496
497 SCI_CLK_ADD(clk_aux1, 0, REG_AON_APB_APB_EB1, BIT(3),
498         REG_AON_APB_AON_CGM_CFG, BIT(20)|BIT(21)|BIT(22)|BIT(23), REG_AON_APB_AON_CGM_CFG, BIT(4)|BIT(5)|BIT(6)|BIT(7),
499         10, &ext_32k, &ext_26m, &ext_26m, &clk_48m, &clk_52m, &clk_51m2, &clk_37m5, &clk_40m, &clk_66m, &clk_40m);
500
501 SCI_CLK_ADD(clk_aux2, 0, REG_AON_APB_APB_EB1, BIT(4),
502         REG_AON_APB_AON_CGM_CFG, BIT(24)|BIT(25)|BIT(26)|BIT(27), REG_AON_APB_AON_CGM_CFG, BIT(8)|BIT(9)|BIT(10)|BIT(11),
503         10, &ext_32k, &ext_26m, &ext_26m, &clk_48m, &clk_52m, &clk_51m2, &clk_37m5, &clk_40m, &clk_66m, &clk_40m);
504
505 SCI_CLK_ADD(clk_pwm0, 0, REG_AON_APB_APB_EB0, BIT(4),
506         0, 0, REG_AON_CLK_PWM0_CFG, BIT(0),
507         2, &ext_32k, &ext_26m);
508
509 SCI_CLK_ADD(clk_pwm1, 0, REG_AON_APB_APB_EB0, BIT(5),
510         0, 0, REG_AON_CLK_PWM1_CFG, BIT(0),
511         2, &ext_32k, &ext_26m);
512
513 SCI_CLK_ADD(clk_pwm2, 0, REG_AON_APB_APB_EB0, BIT(6),
514         0, 0, REG_AON_CLK_PWM2_CFG, BIT(0),
515         2, &ext_32k, &ext_26m);
516
517 SCI_CLK_ADD(clk_pwm3, 0, REG_AON_APB_APB_EB0, BIT(7),
518         0, 0, REG_AON_CLK_PWM3_CFG, BIT(0),
519         2, &ext_32k, &ext_26m);
520
521 SCI_CLK_ADD(clk_efuse, 0, REG_AON_APB_APB_EB0, BIT(13),
522         0, 0, 0, 0,
523         1, &ext_26m);
524
525 SCI_CLK_ADD(clk_ca7_dap, 0, REG_AON_APB_APB_EB0, BIT(30),
526         0, 0, REG_AON_CLK_CA7_DAP_CFG, BIT(0)|BIT(1),
527         4, &ext_26m, &clk_76m8, &clk_128m, &clk_153m6);
528
529 SCI_CLK_ADD(clk_ca7_ts, 0, REG_AON_APB_APB_EB0, BIT(28),
530         0, 0, REG_AON_CLK_CA7_TS_CFG, BIT(0)|BIT(1),
531         4, &ext_32k, &ext_26m, &clk_128m, &clk_153m6);
532
533 SCI_CLK_ADD(clk_mspi, 0, REG_AON_APB_APB_EB0, BIT(23),
534         0, 0, REG_AON_CLK_MSPI_CFG, BIT(0)|BIT(1),
535         3, &ext_26m, &clk_52m, &clk_76m8, &clk_96m);
536
537 SCI_CLK_ADD(clk_i2c, 0, REG_AON_APB_APB_EB0, BIT(31),
538         0, 0, REG_AON_CLK_I2C_CFG, BIT(0)|BIT(1),
539         4, &ext_26m, &clk_48m, &clk_51m2, &clk_153m6);
540
541 SCI_CLK_ADD(clk_avs0, 0, REG_AON_APB_APB_EB0, BIT(6),
542         0, 0, REG_AON_CLK_AVS0_CFG, BIT(0)|BIT(1),
543         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
544
545 SCI_CLK_ADD(clk_avs1, 0, REG_AON_APB_APB_EB0, BIT(7),
546         0, 0, REG_AON_CLK_AVS1_CFG, BIT(0)|BIT(1),
547         4, &ext_26m, &clk_48m, &clk_51m2, &clk_96m);
548