summaryrefslogtreecommitdiff
path: root/include/dt-bindings/clock/spacemit,k1-syscon.h
blob: 2714c3fe66cd5b49e12c8b20689f5b01da36b774 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
/*
 * Copyright (C) 2024-2025 Haylen Chu <heylenay@outlook.com>
 */

#ifndef _DT_BINDINGS_SPACEMIT_CCU_H_
#define _DT_BINDINGS_SPACEMIT_CCU_H_

/* APBS (PLL) clocks */
#define CLK_PLL1		0
#define CLK_PLL2		1
#define CLK_PLL3		2
#define CLK_PLL1_D2		3
#define CLK_PLL1_D3		4
#define CLK_PLL1_D4		5
#define CLK_PLL1_D5		6
#define CLK_PLL1_D6		7
#define CLK_PLL1_D7		8
#define CLK_PLL1_D8		9
#define CLK_PLL1_D11		10
#define CLK_PLL1_D13		11
#define CLK_PLL1_D23		12
#define CLK_PLL1_D64		13
#define CLK_PLL1_D10_AUD	14
#define CLK_PLL1_D100_AUD	15
#define CLK_PLL2_D1		16
#define CLK_PLL2_D2		17
#define CLK_PLL2_D3		18
#define CLK_PLL2_D4		19
#define CLK_PLL2_D5		20
#define CLK_PLL2_D6		21
#define CLK_PLL2_D7		22
#define CLK_PLL2_D8		23
#define CLK_PLL3_D1		24
#define CLK_PLL3_D2		25
#define CLK_PLL3_D3		26
#define CLK_PLL3_D4		27
#define CLK_PLL3_D5		28
#define CLK_PLL3_D6		29
#define CLK_PLL3_D7		30
#define CLK_PLL3_D8		31
#define CLK_PLL3_80		32
#define CLK_PLL3_40		33
#define CLK_PLL3_20		34

/* MPMU clocks */
#define CLK_PLL1_307P2		0
#define CLK_PLL1_76P8		1
#define CLK_PLL1_61P44		2
#define CLK_PLL1_153P6		3
#define CLK_PLL1_102P4		4
#define CLK_PLL1_51P2		5
#define CLK_PLL1_51P2_AP	6
#define CLK_PLL1_57P6		7
#define CLK_PLL1_25P6		8
#define CLK_PLL1_12P8		9
#define CLK_PLL1_12P8_WDT	10
#define CLK_PLL1_6P4		11
#define CLK_PLL1_3P2		12
#define CLK_PLL1_1P6		13
#define CLK_PLL1_0P8		14
#define CLK_PLL1_409P6		15
#define CLK_PLL1_204P8		16
#define CLK_PLL1_491		17
#define CLK_PLL1_245P76		18
#define CLK_PLL1_614		19
#define CLK_PLL1_47P26		20
#define CLK_PLL1_31P5		21
#define CLK_PLL1_819		22
#define CLK_PLL1_1228		23
#define CLK_SLOW_UART		24
#define CLK_SLOW_UART1		25
#define CLK_SLOW_UART2		26
#define CLK_WDT			27
#define CLK_RIPC		28
#define CLK_I2S_SYSCLK		29
#define CLK_I2S_BCLK		30
#define CLK_APB			31
#define CLK_WDT_BUS		32

/* MPMU resets */
#define RESET_WDT		0

/* APBC clocks */
#define CLK_UART0		0
#define CLK_UART2		1
#define CLK_UART3		2
#define CLK_UART4		3
#define CLK_UART5		4
#define CLK_UART6		5
#define CLK_UART7		6
#define CLK_UART8		7
#define CLK_UART9		8
#define CLK_GPIO		9
#define CLK_PWM0		10
#define CLK_PWM1		11
#define CLK_PWM2		12
#define CLK_PWM3		13
#define CLK_PWM4		14
#define CLK_PWM5		15
#define CLK_PWM6		16
#define CLK_PWM7		17
#define CLK_PWM8		18
#define CLK_PWM9		19
#define CLK_PWM10		20
#define CLK_PWM11		21
#define CLK_PWM12		22
#define CLK_PWM13		23
#define CLK_PWM14		24
#define CLK_PWM15		25
#define CLK_PWM16		26
#define CLK_PWM17		27
#define CLK_PWM18		28
#define CLK_PWM19		29
#define CLK_SSP3		30
#define CLK_RTC			31
#define CLK_TWSI0		32
#define CLK_TWSI1		33
#define CLK_TWSI2		34
#define CLK_TWSI4		35
#define CLK_TWSI5		36
#define CLK_TWSI6		37
#define CLK_TWSI7		38
#define CLK_TWSI8		39
#define CLK_TIMERS1		40
#define CLK_TIMERS2		41
#define CLK_AIB			42
#define CLK_ONEWIRE		43
#define CLK_SSPA0		44
#define CLK_SSPA1		45
#define CLK_DRO			46
#define CLK_IR			47
#define CLK_TSEN		48
#define CLK_IPC_AP2AUD		49
#define CLK_CAN0		50
#define CLK_CAN0_BUS		51
#define CLK_UART0_BUS		52
#define CLK_UART2_BUS		53
#define CLK_UART3_BUS		54
#define CLK_UART4_BUS		55
#define CLK_UART5_BUS		56
#define CLK_UART6_BUS		57
#define CLK_UART7_BUS		58
#define CLK_UART8_BUS		59
#define CLK_UART9_BUS		60
#define CLK_GPIO_BUS		61
#define CLK_PWM0_BUS		62
#define CLK_PWM1_BUS		63
#define CLK_PWM2_BUS		64
#define CLK_PWM3_BUS		65
#define CLK_PWM4_BUS		66
#define CLK_PWM5_BUS		67
#define CLK_PWM6_BUS		68
#define CLK_PWM7_BUS		69
#define CLK_PWM8_BUS		70
#define CLK_PWM9_BUS		71
#define CLK_PWM10_BUS		72
#define CLK_PWM11_BUS		73
#define CLK_PWM12_BUS		74
#define CLK_PWM13_BUS		75
#define CLK_PWM14_BUS		76
#define CLK_PWM15_BUS		77
#define CLK_PWM16_BUS		78
#define CLK_PWM17_BUS		79
#define CLK_PWM18_BUS		80
#define CLK_PWM19_BUS		81
#define CLK_SSP3_BUS		82
#define CLK_RTC_BUS		83
#define CLK_TWSI0_BUS		84
#define CLK_TWSI1_BUS		85
#define CLK_TWSI2_BUS		86
#define CLK_TWSI4_BUS		87
#define CLK_TWSI5_BUS		88
#define CLK_TWSI6_BUS		89
#define CLK_TWSI7_BUS		90
#define CLK_TWSI8_BUS		91
#define CLK_TIMERS1_BUS		92
#define CLK_TIMERS2_BUS		93
#define CLK_AIB_BUS		94
#define CLK_ONEWIRE_BUS		95
#define CLK_SSPA0_BUS		96
#define CLK_SSPA1_BUS		97
#define CLK_TSEN_BUS		98
#define CLK_IPC_AP2AUD_BUS	99

/* APBC resets */
#define RESET_UART0		0
#define RESET_UART2		1
#define RESET_UART3		2
#define RESET_UART4		3
#define RESET_UART5		4
#define RESET_UART6		5
#define RESET_UART7		6
#define RESET_UART8		7
#define RESET_UART9		8
#define RESET_GPIO		9
#define RESET_PWM0		10
#define RESET_PWM1		11
#define RESET_PWM2		12
#define RESET_PWM3		13
#define RESET_PWM4		14
#define RESET_PWM5		15
#define RESET_PWM6		16
#define RESET_PWM7		17
#define RESET_PWM8		18
#define RESET_PWM9		19
#define RESET_PWM10		20
#define RESET_PWM11		21
#define RESET_PWM12		22
#define RESET_PWM13		23
#define RESET_PWM14		24
#define RESET_PWM15		25
#define RESET_PWM16		26
#define RESET_PWM17		27
#define RESET_PWM18		28
#define RESET_PWM19		29
#define RESET_SSP3		30
#define RESET_RTC		31
#define RESET_TWSI0		32
#define RESET_TWSI1		33
#define RESET_TWSI2		34
#define RESET_TWSI4		35
#define RESET_TWSI5		36
#define RESET_TWSI6		37
#define RESET_TWSI7		38
#define RESET_TWSI8		39
#define RESET_TIMERS1		40
#define RESET_TIMERS2		41
#define RESET_AIB		42
#define RESET_ONEWIRE		43
#define RESET_SSPA0		44
#define RESET_SSPA1		45
#define RESET_DRO		46
#define RESET_IR		47
#define RESET_TSEN		48
#define RESET_IPC_AP2AUD	49
#define RESET_CAN0		50

/* APMU clocks */
#define CLK_CCI550		0
#define CLK_CPU_C0_HI		1
#define CLK_CPU_C0_CORE		2
#define CLK_CPU_C0_ACE		3
#define CLK_CPU_C0_TCM		4
#define CLK_CPU_C1_HI		5
#define CLK_CPU_C1_CORE		6
#define CLK_CPU_C1_ACE		7
#define CLK_CCIC_4X		8
#define CLK_CCIC1PHY		9
#define CLK_SDH_AXI		10
#define CLK_SDH0		11
#define CLK_SDH1		12
#define CLK_SDH2		13
#define CLK_USB_P1		14
#define CLK_USB_AXI		15
#define CLK_USB30		16
#define CLK_QSPI		17
#define CLK_QSPI_BUS		18
#define CLK_DMA			19
#define CLK_AES			20
#define CLK_VPU			21
#define CLK_GPU			22
#define CLK_EMMC		23
#define CLK_EMMC_X		24
#define CLK_AUDIO		25
#define CLK_HDMI		26
#define CLK_PMUA_ACLK		27
#define CLK_PCIE0_MASTER	28
#define CLK_PCIE0_SLAVE		29
#define CLK_PCIE0_DBI		30
#define CLK_PCIE1_MASTER	31
#define CLK_PCIE1_SLAVE		32
#define CLK_PCIE1_DBI		33
#define CLK_PCIE2_MASTER	34
#define CLK_PCIE2_SLAVE		35
#define CLK_PCIE2_DBI		36
#define CLK_EMAC0_BUS		37
#define CLK_EMAC0_PTP		38
#define CLK_EMAC1_BUS		39
#define CLK_EMAC1_PTP		40
#define CLK_JPG			41
#define CLK_CCIC2PHY		42
#define CLK_CCIC3PHY		43
#define CLK_CSI			44
#define CLK_CAMM0		45
#define CLK_CAMM1		46
#define CLK_CAMM2		47
#define CLK_ISP_CPP		48
#define CLK_ISP_BUS		49
#define CLK_ISP			50
#define CLK_DPU_MCLK		51
#define CLK_DPU_ESC		52
#define CLK_DPU_BIT		53
#define CLK_DPU_PXCLK		54
#define CLK_DPU_HCLK		55
#define CLK_DPU_SPI		56
#define CLK_DPU_SPI_HBUS	57
#define CLK_DPU_SPIBUS		58
#define CLK_DPU_SPI_ACLK	59
#define CLK_V2D			60
#define CLK_EMMC_BUS		61

/* APMU resets */
#define RESET_CCIC_4X		0
#define RESET_CCIC1_PHY		1
#define RESET_SDH_AXI		2
#define RESET_SDH0		3
#define RESET_SDH1		4
#define RESET_SDH2		5
#define RESET_USBP1_AXI		6
#define RESET_USB_AXI		7
#define RESET_USB30_AHB		8
#define RESET_USB30_VCC		9
#define RESET_USB30_PHY		10
#define RESET_QSPI		11
#define RESET_QSPI_BUS		12
#define RESET_DMA		13
#define RESET_AES		14
#define RESET_VPU		15
#define RESET_GPU		16
#define RESET_EMMC		17
#define RESET_EMMC_X		18
#define RESET_AUDIO_SYS		19
#define RESET_AUDIO_MCU		20
#define RESET_AUDIO_APMU	21
#define RESET_HDMI		22
#define RESET_PCIE0_MASTER	23
#define RESET_PCIE0_SLAVE	24
#define RESET_PCIE0_DBI		25
#define RESET_PCIE0_GLOBAL	26
#define RESET_PCIE1_MASTER	27
#define RESET_PCIE1_SLAVE	28
#define RESET_PCIE1_DBI		29
#define RESET_PCIE1_GLOBAL	30
#define RESET_PCIE2_MASTER	31
#define RESET_PCIE2_SLAVE	32
#define RESET_PCIE2_DBI		33
#define RESET_PCIE2_GLOBAL	34
#define RESET_EMAC0		35
#define RESET_EMAC1		36
#define RESET_JPG		37
#define RESET_CCIC2PHY		38
#define RESET_CCIC3PHY		39
#define RESET_CSI		40
#define RESET_ISP_CPP		41
#define RESET_ISP_BUS		42
#define RESET_ISP		43
#define RESET_ISP_CI		44
#define RESET_DPU_MCLK		45
#define RESET_DPU_ESC		46
#define RESET_DPU_HCLK		47
#define RESET_DPU_SPIBUS	48
#define RESET_DPU_SPI_HBUS	49
#define RESET_V2D		50
#define RESET_MIPI		51
#define RESET_MC		52

/*	RCPU resets	*/
#define RESET_RCPU_SSP0		0
#define RESET_RCPU_I2C0		1
#define RESET_RCPU_UART1	2
#define RESET_RCPU_IR		3
#define RESET_RCPU_CAN		4
#define RESET_RCPU_UART0	5
#define RESET_RCPU_HDMI_AUDIO	6

/*	RCPU2 resets	*/
#define RESET_RCPU2_PWM0	0
#define RESET_RCPU2_PWM1	1
#define RESET_RCPU2_PWM2	2
#define RESET_RCPU2_PWM3	3
#define RESET_RCPU2_PWM4	4
#define RESET_RCPU2_PWM5	5
#define RESET_RCPU2_PWM6	6
#define RESET_RCPU2_PWM7	7
#define RESET_RCPU2_PWM8	8
#define RESET_RCPU2_PWM9	9

/*	APBC2 resets	*/
#define RESET_APBC2_UART1	0
#define RESET_APBC2_SSP2	1
#define RESET_APBC2_TWSI3	2
#define RESET_APBC2_RTC		3
#define RESET_APBC2_TIMERS0	4
#define RESET_APBC2_KPC		5
#define RESET_APBC2_GPIO	6

#endif /* _DT_BINDINGS_SPACEMIT_CCU_H_ */