xref: /netbsd-src/sys/external/gpl2/dts/dist/include/dt-bindings/clock/hi3670-clock.h (revision 976227fdc99bb6d4ab950558ecda48116723e145)
1 /*	$NetBSD: hi3670-clock.h,v 1.1.1.1 2019/01/22 14:57:01 jmcneill Exp $	*/
2 
3 /* SPDX-License-Identifier: GPL-2.0 */
4 /*
5  * Device Tree binding constants for HiSilicon Hi3670 SoC
6  *
7  * Copyright (c) 2001-2021, Huawei Tech. Co., Ltd.
8  * Copyright (c) 2018 Linaro Ltd.
9  */
10 
11 #ifndef __DT_BINDINGS_CLOCK_HI3670_H
12 #define __DT_BINDINGS_CLOCK_HI3670_H
13 
14 /* clk in stub clock */
15 #define HI3670_CLK_STUB_CLUSTER0		0
16 #define HI3670_CLK_STUB_CLUSTER1		1
17 #define HI3670_CLK_STUB_GPU			2
18 #define HI3670_CLK_STUB_DDR			3
19 #define HI3670_CLK_STUB_DDR_VOTE		4
20 #define HI3670_CLK_STUB_DDR_LIMIT		5
21 #define HI3670_CLK_STUB_NUM			6
22 
23 /* clk in crg clock */
24 #define HI3670_CLKIN_SYS			0
25 #define HI3670_CLKIN_REF			1
26 #define HI3670_CLK_FLL_SRC			2
27 #define HI3670_CLK_PPLL0			3
28 #define HI3670_CLK_PPLL1			4
29 #define HI3670_CLK_PPLL2			5
30 #define HI3670_CLK_PPLL3			6
31 #define HI3670_CLK_PPLL4			7
32 #define HI3670_CLK_PPLL6			8
33 #define HI3670_CLK_PPLL7			9
34 #define HI3670_CLK_PPLL_PCIE			10
35 #define HI3670_CLK_PCIEPLL_REV			11
36 #define HI3670_CLK_SCPLL			12
37 #define HI3670_PCLK				13
38 #define HI3670_CLK_UART0_DBG			14
39 #define HI3670_CLK_UART6			15
40 #define HI3670_OSC32K				16
41 #define HI3670_OSC19M				17
42 #define HI3670_CLK_480M				18
43 #define HI3670_CLK_INVALID			19
44 #define HI3670_CLK_DIV_SYSBUS			20
45 #define HI3670_CLK_FACTOR_MMC			21
46 #define HI3670_CLK_SD_SYS			22
47 #define HI3670_CLK_SDIO_SYS			23
48 #define HI3670_CLK_DIV_A53HPM			24
49 #define HI3670_CLK_DIV_320M			25
50 #define HI3670_PCLK_GATE_UART0			26
51 #define HI3670_CLK_FACTOR_UART0			27
52 #define HI3670_CLK_FACTOR_USB3PHY_PLL		28
53 #define HI3670_CLK_GATE_ABB_USB			29
54 #define HI3670_CLK_GATE_UFSPHY_REF		30
55 #define HI3670_ICS_VOLT_HIGH			31
56 #define HI3670_ICS_VOLT_MIDDLE			32
57 #define HI3670_VENC_VOLT_HOLD			33
58 #define HI3670_VDEC_VOLT_HOLD			34
59 #define HI3670_EDC_VOLT_HOLD			35
60 #define HI3670_CLK_ISP_SNCLK_FAC		36
61 #define HI3670_CLK_FACTOR_RXDPHY		37
62 #define HI3670_AUTODIV_SYSBUS			38
63 #define HI3670_AUTODIV_EMMC0BUS			39
64 #define HI3670_PCLK_ANDGT_MMC1_PCIE		40
65 #define HI3670_CLK_GATE_VCODECBUS_GT		41
66 #define HI3670_CLK_ANDGT_SD			42
67 #define HI3670_CLK_SD_SYS_GT			43
68 #define HI3670_CLK_ANDGT_SDIO			44
69 #define HI3670_CLK_SDIO_SYS_GT			45
70 #define HI3670_CLK_A53HPM_ANDGT			46
71 #define HI3670_CLK_320M_PLL_GT			47
72 #define HI3670_CLK_ANDGT_UARTH			48
73 #define HI3670_CLK_ANDGT_UARTL			49
74 #define HI3670_CLK_ANDGT_UART0			50
75 #define HI3670_CLK_ANDGT_SPI			51
76 #define HI3670_CLK_ANDGT_PCIEAXI		52
77 #define HI3670_CLK_DIV_AO_ASP_GT		53
78 #define HI3670_CLK_GATE_CSI_TRANS		54
79 #define HI3670_CLK_GATE_DSI_TRANS		55
80 #define HI3670_CLK_ANDGT_PTP			56
81 #define HI3670_CLK_ANDGT_OUT0			57
82 #define HI3670_CLK_ANDGT_OUT1			58
83 #define HI3670_CLKGT_DP_AUDIO_PLL_AO		59
84 #define HI3670_CLK_ANDGT_VDEC			60
85 #define HI3670_CLK_ANDGT_VENC			61
86 #define HI3670_CLK_ISP_SNCLK_ANGT		62
87 #define HI3670_CLK_ANDGT_RXDPHY			63
88 #define HI3670_CLK_ANDGT_ICS			64
89 #define HI3670_AUTODIV_DMABUS			65
90 #define HI3670_CLK_MUX_SYSBUS			66
91 #define HI3670_CLK_MUX_VCODECBUS		67
92 #define HI3670_CLK_MUX_SD_SYS			68
93 #define HI3670_CLK_MUX_SD_PLL			69
94 #define HI3670_CLK_MUX_SDIO_SYS			70
95 #define HI3670_CLK_MUX_SDIO_PLL			71
96 #define HI3670_CLK_MUX_A53HPM			72
97 #define HI3670_CLK_MUX_320M			73
98 #define HI3670_CLK_MUX_UARTH			74
99 #define HI3670_CLK_MUX_UARTL			75
100 #define HI3670_CLK_MUX_UART0			76
101 #define HI3670_CLK_MUX_I2C			77
102 #define HI3670_CLK_MUX_SPI			78
103 #define HI3670_CLK_MUX_PCIEAXI			79
104 #define HI3670_CLK_MUX_AO_ASP			80
105 #define HI3670_CLK_MUX_VDEC			81
106 #define HI3670_CLK_MUX_VENC			82
107 #define HI3670_CLK_ISP_SNCLK_MUX0		83
108 #define HI3670_CLK_ISP_SNCLK_MUX1		84
109 #define HI3670_CLK_ISP_SNCLK_MUX2		85
110 #define HI3670_CLK_MUX_RXDPHY_CFG		86
111 #define HI3670_CLK_MUX_ICS			87
112 #define HI3670_CLK_DIV_CFGBUS			88
113 #define HI3670_CLK_DIV_MMC0BUS			89
114 #define HI3670_CLK_DIV_MMC1BUS			90
115 #define HI3670_PCLK_DIV_MMC1_PCIE		91
116 #define HI3670_CLK_DIV_VCODECBUS		92
117 #define HI3670_CLK_DIV_SD			93
118 #define HI3670_CLK_DIV_SDIO			94
119 #define HI3670_CLK_DIV_UARTH			95
120 #define HI3670_CLK_DIV_UARTL			96
121 #define HI3670_CLK_DIV_UART0			97
122 #define HI3670_CLK_DIV_I2C			98
123 #define HI3670_CLK_DIV_SPI			99
124 #define HI3670_CLK_DIV_PCIEAXI			100
125 #define HI3670_CLK_DIV_AO_ASP			101
126 #define HI3670_CLK_DIV_CSI_TRANS		102
127 #define HI3670_CLK_DIV_DSI_TRANS		103
128 #define HI3670_CLK_DIV_PTP			104
129 #define HI3670_CLK_DIV_CLKOUT0_PLL		105
130 #define HI3670_CLK_DIV_CLKOUT1_PLL		106
131 #define HI3670_CLKDIV_DP_AUDIO_PLL_AO		107
132 #define HI3670_CLK_DIV_VDEC			108
133 #define HI3670_CLK_DIV_VENC			109
134 #define HI3670_CLK_ISP_SNCLK_DIV0		110
135 #define HI3670_CLK_ISP_SNCLK_DIV1		111
136 #define HI3670_CLK_ISP_SNCLK_DIV2		112
137 #define HI3670_CLK_DIV_ICS			113
138 #define HI3670_PPLL1_EN_ACPU			114
139 #define HI3670_PPLL2_EN_ACPU			115
140 #define HI3670_PPLL3_EN_ACPU			116
141 #define HI3670_PPLL1_GT_CPU			117
142 #define HI3670_PPLL2_GT_CPU			118
143 #define HI3670_PPLL3_GT_CPU			119
144 #define HI3670_CLK_GATE_PPLL2_MEDIA		120
145 #define HI3670_CLK_GATE_PPLL3_MEDIA		121
146 #define HI3670_CLK_GATE_PPLL4_MEDIA		122
147 #define HI3670_CLK_GATE_PPLL6_MEDIA		123
148 #define HI3670_CLK_GATE_PPLL7_MEDIA		124
149 #define HI3670_PCLK_GPIO0			125
150 #define HI3670_PCLK_GPIO1			126
151 #define HI3670_PCLK_GPIO2			127
152 #define HI3670_PCLK_GPIO3			128
153 #define HI3670_PCLK_GPIO4			129
154 #define HI3670_PCLK_GPIO5			130
155 #define HI3670_PCLK_GPIO6			131
156 #define HI3670_PCLK_GPIO7			132
157 #define HI3670_PCLK_GPIO8			133
158 #define HI3670_PCLK_GPIO9			134
159 #define HI3670_PCLK_GPIO10			135
160 #define HI3670_PCLK_GPIO11			136
161 #define HI3670_PCLK_GPIO12			137
162 #define HI3670_PCLK_GPIO13			138
163 #define HI3670_PCLK_GPIO14			139
164 #define HI3670_PCLK_GPIO15			140
165 #define HI3670_PCLK_GPIO16			141
166 #define HI3670_PCLK_GPIO17			142
167 #define HI3670_PCLK_GPIO20			143
168 #define HI3670_PCLK_GPIO21			144
169 #define HI3670_PCLK_GATE_DSI0			145
170 #define HI3670_PCLK_GATE_DSI1			146
171 #define HI3670_HCLK_GATE_USB3OTG		147
172 #define HI3670_ACLK_GATE_USB3DVFS		148
173 #define HI3670_HCLK_GATE_SDIO			149
174 #define HI3670_PCLK_GATE_PCIE_SYS		150
175 #define HI3670_PCLK_GATE_PCIE_PHY		151
176 #define HI3670_PCLK_GATE_MMC1_PCIE		152
177 #define HI3670_PCLK_GATE_MMC0_IOC		153
178 #define HI3670_PCLK_GATE_MMC1_IOC		154
179 #define HI3670_CLK_GATE_DMAC			155
180 #define HI3670_CLK_GATE_VCODECBUS2DDR		156
181 #define HI3670_CLK_CCI400_BYPASS		157
182 #define HI3670_CLK_GATE_CCI400			158
183 #define HI3670_CLK_GATE_SD			159
184 #define HI3670_HCLK_GATE_SD			160
185 #define HI3670_CLK_GATE_SDIO			161
186 #define HI3670_CLK_GATE_A57HPM			162
187 #define HI3670_CLK_GATE_A53HPM			163
188 #define HI3670_CLK_GATE_PA_A53			164
189 #define HI3670_CLK_GATE_PA_A57			165
190 #define HI3670_CLK_GATE_PA_G3D			166
191 #define HI3670_CLK_GATE_GPUHPM			167
192 #define HI3670_CLK_GATE_PERIHPM			168
193 #define HI3670_CLK_GATE_AOHPM			169
194 #define HI3670_CLK_GATE_UART1			170
195 #define HI3670_CLK_GATE_UART4			171
196 #define HI3670_PCLK_GATE_UART1			172
197 #define HI3670_PCLK_GATE_UART4			173
198 #define HI3670_CLK_GATE_UART2			174
199 #define HI3670_CLK_GATE_UART5			175
200 #define HI3670_PCLK_GATE_UART2			176
201 #define HI3670_PCLK_GATE_UART5			177
202 #define HI3670_CLK_GATE_UART0			178
203 #define HI3670_CLK_GATE_I2C3			179
204 #define HI3670_CLK_GATE_I2C4			180
205 #define HI3670_CLK_GATE_I2C7			181
206 #define HI3670_PCLK_GATE_I2C3			182
207 #define HI3670_PCLK_GATE_I2C4			183
208 #define HI3670_PCLK_GATE_I2C7			184
209 #define HI3670_CLK_GATE_SPI1			185
210 #define HI3670_CLK_GATE_SPI4			186
211 #define HI3670_PCLK_GATE_SPI1			187
212 #define HI3670_PCLK_GATE_SPI4			188
213 #define HI3670_CLK_GATE_USB3OTG_REF		189
214 #define HI3670_CLK_GATE_USB2PHY_REF		190
215 #define HI3670_CLK_GATE_PCIEAUX			191
216 #define HI3670_ACLK_GATE_PCIE			192
217 #define HI3670_CLK_GATE_MMC1_PCIEAXI		193
218 #define HI3670_CLK_GATE_PCIEPHY_REF		194
219 #define HI3670_CLK_GATE_PCIE_DEBOUNCE		195
220 #define HI3670_CLK_GATE_PCIEIO			196
221 #define HI3670_CLK_GATE_PCIE_HP			197
222 #define HI3670_CLK_GATE_AO_ASP			198
223 #define HI3670_PCLK_GATE_PCTRL			199
224 #define HI3670_CLK_CSI_TRANS_GT			200
225 #define HI3670_CLK_DSI_TRANS_GT			201
226 #define HI3670_CLK_GATE_PWM			202
227 #define HI3670_ABB_AUDIO_EN0			203
228 #define HI3670_ABB_AUDIO_EN1			204
229 #define HI3670_ABB_AUDIO_GT_EN0			205
230 #define HI3670_ABB_AUDIO_GT_EN1			206
231 #define HI3670_CLK_GATE_DP_AUDIO_PLL_AO		207
232 #define HI3670_PERI_VOLT_HOLD			208
233 #define HI3670_PERI_VOLT_MIDDLE			209
234 #define HI3670_CLK_GATE_ISP_SNCLK0		210
235 #define HI3670_CLK_GATE_ISP_SNCLK1		211
236 #define HI3670_CLK_GATE_ISP_SNCLK2		212
237 #define HI3670_CLK_GATE_RXDPHY0_CFG		213
238 #define HI3670_CLK_GATE_RXDPHY1_CFG		214
239 #define HI3670_CLK_GATE_RXDPHY2_CFG		215
240 #define HI3670_CLK_GATE_TXDPHY0_CFG		216
241 #define HI3670_CLK_GATE_TXDPHY0_REF		217
242 #define HI3670_CLK_GATE_TXDPHY1_CFG		218
243 #define HI3670_CLK_GATE_TXDPHY1_REF		219
244 #define HI3670_CLK_GATE_MEDIA_TCXO		220
245 
246 /* clk in sctrl */
247 #define HI3670_CLK_ANDGT_IOPERI			0
248 #define HI3670_CLKANDGT_ASP_SUBSYS_PERI		1
249 #define HI3670_CLK_ANGT_ASP_SUBSYS		2
250 #define HI3670_CLK_MUX_UFS_SUBSYS		3
251 #define HI3670_CLK_MUX_CLKOUT0			4
252 #define HI3670_CLK_MUX_CLKOUT1			5
253 #define HI3670_CLK_MUX_ASP_SUBSYS_PERI		6
254 #define HI3670_CLK_MUX_ASP_PLL			7
255 #define HI3670_CLK_DIV_AOBUS			8
256 #define HI3670_CLK_DIV_UFS_SUBSYS		9
257 #define HI3670_CLK_DIV_IOPERI			10
258 #define HI3670_CLK_DIV_CLKOUT0_TCXO		11
259 #define HI3670_CLK_DIV_CLKOUT1_TCXO		12
260 #define HI3670_CLK_ASP_SUBSYS_PERI_DIV		13
261 #define HI3670_CLK_DIV_ASP_SUBSYS		14
262 #define HI3670_PPLL0_EN_ACPU			15
263 #define HI3670_PPLL0_GT_CPU			16
264 #define HI3670_CLK_GATE_PPLL0_MEDIA		17
265 #define HI3670_PCLK_GPIO18			18
266 #define HI3670_PCLK_GPIO19			19
267 #define HI3670_CLK_GATE_SPI			20
268 #define HI3670_PCLK_GATE_SPI			21
269 #define HI3670_CLK_GATE_UFS_SUBSYS		22
270 #define HI3670_CLK_GATE_UFSIO_REF		23
271 #define HI3670_PCLK_AO_GPIO0			24
272 #define HI3670_PCLK_AO_GPIO1			25
273 #define HI3670_PCLK_AO_GPIO2			26
274 #define HI3670_PCLK_AO_GPIO3			27
275 #define HI3670_PCLK_AO_GPIO4			28
276 #define HI3670_PCLK_AO_GPIO5			29
277 #define HI3670_PCLK_AO_GPIO6			30
278 #define HI3670_CLK_GATE_OUT0			31
279 #define HI3670_CLK_GATE_OUT1			32
280 #define HI3670_PCLK_GATE_SYSCNT			33
281 #define HI3670_CLK_GATE_SYSCNT			34
282 #define HI3670_CLK_GATE_ASP_SUBSYS_PERI		35
283 #define HI3670_CLK_GATE_ASP_SUBSYS		36
284 #define HI3670_CLK_GATE_ASP_TCXO		37
285 #define HI3670_CLK_GATE_DP_AUDIO_PLL		38
286 
287 /* clk in pmuctrl */
288 #define HI3670_GATE_ABB_192			0
289 
290 /* clk in pctrl */
291 #define HI3670_GATE_UFS_TCXO_EN			0
292 #define HI3670_GATE_USB_TCXO_EN			1
293 
294 /* clk in iomcu */
295 #define HI3670_CLK_GATE_I2C0			0
296 #define HI3670_CLK_GATE_I2C1			1
297 #define HI3670_CLK_GATE_I2C2			2
298 #define HI3670_CLK_GATE_SPI0			3
299 #define HI3670_CLK_GATE_SPI2			4
300 #define HI3670_CLK_GATE_UART3			5
301 #define HI3670_CLK_I2C0_GATE_IOMCU		6
302 #define HI3670_CLK_I2C1_GATE_IOMCU		7
303 #define HI3670_CLK_I2C2_GATE_IOMCU		8
304 #define HI3670_CLK_SPI0_GATE_IOMCU		9
305 #define HI3670_CLK_SPI2_GATE_IOMCU		10
306 #define HI3670_CLK_UART3_GATE_IOMCU		11
307 #define HI3670_CLK_GATE_PERI0_IOMCU		12
308 
309 /* clk in media1 */
310 #define HI3670_CLK_GATE_VIVOBUS_ANDGT		0
311 #define HI3670_CLK_ANDGT_EDC0			1
312 #define HI3670_CLK_ANDGT_LDI0			2
313 #define HI3670_CLK_ANDGT_LDI1			3
314 #define HI3670_CLK_MMBUF_PLL_ANDGT		4
315 #define HI3670_PCLK_MMBUF_ANDGT			5
316 #define HI3670_CLK_MUX_VIVOBUS			6
317 #define HI3670_CLK_MUX_EDC0			7
318 #define HI3670_CLK_MUX_LDI0			8
319 #define HI3670_CLK_MUX_LDI1			9
320 #define HI3670_CLK_SW_MMBUF			10
321 #define HI3670_CLK_DIV_VIVOBUS			11
322 #define HI3670_CLK_DIV_EDC0			12
323 #define HI3670_CLK_DIV_LDI0			13
324 #define HI3670_CLK_DIV_LDI1			14
325 #define HI3670_ACLK_DIV_MMBUF			15
326 #define HI3670_PCLK_DIV_MMBUF			16
327 #define HI3670_ACLK_GATE_NOC_DSS		17
328 #define HI3670_PCLK_GATE_NOC_DSS_CFG		18
329 #define HI3670_PCLK_GATE_MMBUF_CFG		19
330 #define HI3670_PCLK_GATE_DISP_NOC_SUBSYS	20
331 #define HI3670_ACLK_GATE_DISP_NOC_SUBSYS	21
332 #define HI3670_PCLK_GATE_DSS			22
333 #define HI3670_ACLK_GATE_DSS			23
334 #define HI3670_CLK_GATE_VIVOBUSFREQ		24
335 #define HI3670_CLK_GATE_EDC0			25
336 #define HI3670_CLK_GATE_LDI0			26
337 #define HI3670_CLK_GATE_LDI1FREQ		27
338 #define HI3670_CLK_GATE_BRG			28
339 #define HI3670_ACLK_GATE_ASC			29
340 #define HI3670_CLK_GATE_DSS_AXI_MM		30
341 #define HI3670_CLK_GATE_MMBUF			31
342 #define HI3670_PCLK_GATE_MMBUF			32
343 #define HI3670_CLK_GATE_ATDIV_VIVO		33
344 
345 /* clk in media2 */
346 #define HI3670_CLK_GATE_VDECFREQ		0
347 #define HI3670_CLK_GATE_VENCFREQ		1
348 #define HI3670_CLK_GATE_ICSFREQ			2
349 
350 #endif /* __DT_BINDINGS_CLOCK_HI3670_H */
351