xref: /freebsd/sys/contrib/device-tree/include/dt-bindings/clock/spacemit,k1-syscon.h (revision ae5de77ed78ae54d86cead5604869212e8008e6b)
1*ae5de77eSEmmanuel Vadot /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2*ae5de77eSEmmanuel Vadot /*
3*ae5de77eSEmmanuel Vadot  * Copyright (C) 2024-2025 Haylen Chu <heylenay@outlook.com>
4*ae5de77eSEmmanuel Vadot  */
5*ae5de77eSEmmanuel Vadot 
6*ae5de77eSEmmanuel Vadot #ifndef _DT_BINDINGS_SPACEMIT_CCU_H_
7*ae5de77eSEmmanuel Vadot #define _DT_BINDINGS_SPACEMIT_CCU_H_
8*ae5de77eSEmmanuel Vadot 
9*ae5de77eSEmmanuel Vadot /* APBS (PLL) clocks */
10*ae5de77eSEmmanuel Vadot #define CLK_PLL1		0
11*ae5de77eSEmmanuel Vadot #define CLK_PLL2		1
12*ae5de77eSEmmanuel Vadot #define CLK_PLL3		2
13*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D2		3
14*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D3		4
15*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D4		5
16*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D5		6
17*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D6		7
18*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D7		8
19*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D8		9
20*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D11		10
21*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D13		11
22*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D23		12
23*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D64		13
24*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D10_AUD	14
25*ae5de77eSEmmanuel Vadot #define CLK_PLL1_D100_AUD	15
26*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D1		16
27*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D2		17
28*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D3		18
29*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D4		19
30*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D5		20
31*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D6		21
32*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D7		22
33*ae5de77eSEmmanuel Vadot #define CLK_PLL2_D8		23
34*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D1		24
35*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D2		25
36*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D3		26
37*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D4		27
38*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D5		28
39*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D6		29
40*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D7		30
41*ae5de77eSEmmanuel Vadot #define CLK_PLL3_D8		31
42*ae5de77eSEmmanuel Vadot #define CLK_PLL3_80		32
43*ae5de77eSEmmanuel Vadot #define CLK_PLL3_40		33
44*ae5de77eSEmmanuel Vadot #define CLK_PLL3_20		34
45*ae5de77eSEmmanuel Vadot 
46*ae5de77eSEmmanuel Vadot /* MPMU clocks */
47*ae5de77eSEmmanuel Vadot #define CLK_PLL1_307P2		0
48*ae5de77eSEmmanuel Vadot #define CLK_PLL1_76P8		1
49*ae5de77eSEmmanuel Vadot #define CLK_PLL1_61P44		2
50*ae5de77eSEmmanuel Vadot #define CLK_PLL1_153P6		3
51*ae5de77eSEmmanuel Vadot #define CLK_PLL1_102P4		4
52*ae5de77eSEmmanuel Vadot #define CLK_PLL1_51P2		5
53*ae5de77eSEmmanuel Vadot #define CLK_PLL1_51P2_AP	6
54*ae5de77eSEmmanuel Vadot #define CLK_PLL1_57P6		7
55*ae5de77eSEmmanuel Vadot #define CLK_PLL1_25P6		8
56*ae5de77eSEmmanuel Vadot #define CLK_PLL1_12P8		9
57*ae5de77eSEmmanuel Vadot #define CLK_PLL1_12P8_WDT	10
58*ae5de77eSEmmanuel Vadot #define CLK_PLL1_6P4		11
59*ae5de77eSEmmanuel Vadot #define CLK_PLL1_3P2		12
60*ae5de77eSEmmanuel Vadot #define CLK_PLL1_1P6		13
61*ae5de77eSEmmanuel Vadot #define CLK_PLL1_0P8		14
62*ae5de77eSEmmanuel Vadot #define CLK_PLL1_409P6		15
63*ae5de77eSEmmanuel Vadot #define CLK_PLL1_204P8		16
64*ae5de77eSEmmanuel Vadot #define CLK_PLL1_491		17
65*ae5de77eSEmmanuel Vadot #define CLK_PLL1_245P76		18
66*ae5de77eSEmmanuel Vadot #define CLK_PLL1_614		19
67*ae5de77eSEmmanuel Vadot #define CLK_PLL1_47P26		20
68*ae5de77eSEmmanuel Vadot #define CLK_PLL1_31P5		21
69*ae5de77eSEmmanuel Vadot #define CLK_PLL1_819		22
70*ae5de77eSEmmanuel Vadot #define CLK_PLL1_1228		23
71*ae5de77eSEmmanuel Vadot #define CLK_SLOW_UART		24
72*ae5de77eSEmmanuel Vadot #define CLK_SLOW_UART1		25
73*ae5de77eSEmmanuel Vadot #define CLK_SLOW_UART2		26
74*ae5de77eSEmmanuel Vadot #define CLK_WDT			27
75*ae5de77eSEmmanuel Vadot #define CLK_RIPC		28
76*ae5de77eSEmmanuel Vadot #define CLK_I2S_SYSCLK		29
77*ae5de77eSEmmanuel Vadot #define CLK_I2S_BCLK		30
78*ae5de77eSEmmanuel Vadot #define CLK_APB			31
79*ae5de77eSEmmanuel Vadot #define CLK_WDT_BUS		32
80*ae5de77eSEmmanuel Vadot 
81*ae5de77eSEmmanuel Vadot /* APBC clocks */
82*ae5de77eSEmmanuel Vadot #define CLK_UART0		0
83*ae5de77eSEmmanuel Vadot #define CLK_UART2		1
84*ae5de77eSEmmanuel Vadot #define CLK_UART3		2
85*ae5de77eSEmmanuel Vadot #define CLK_UART4		3
86*ae5de77eSEmmanuel Vadot #define CLK_UART5		4
87*ae5de77eSEmmanuel Vadot #define CLK_UART6		5
88*ae5de77eSEmmanuel Vadot #define CLK_UART7		6
89*ae5de77eSEmmanuel Vadot #define CLK_UART8		7
90*ae5de77eSEmmanuel Vadot #define CLK_UART9		8
91*ae5de77eSEmmanuel Vadot #define CLK_GPIO		9
92*ae5de77eSEmmanuel Vadot #define CLK_PWM0		10
93*ae5de77eSEmmanuel Vadot #define CLK_PWM1		11
94*ae5de77eSEmmanuel Vadot #define CLK_PWM2		12
95*ae5de77eSEmmanuel Vadot #define CLK_PWM3		13
96*ae5de77eSEmmanuel Vadot #define CLK_PWM4		14
97*ae5de77eSEmmanuel Vadot #define CLK_PWM5		15
98*ae5de77eSEmmanuel Vadot #define CLK_PWM6		16
99*ae5de77eSEmmanuel Vadot #define CLK_PWM7		17
100*ae5de77eSEmmanuel Vadot #define CLK_PWM8		18
101*ae5de77eSEmmanuel Vadot #define CLK_PWM9		19
102*ae5de77eSEmmanuel Vadot #define CLK_PWM10		20
103*ae5de77eSEmmanuel Vadot #define CLK_PWM11		21
104*ae5de77eSEmmanuel Vadot #define CLK_PWM12		22
105*ae5de77eSEmmanuel Vadot #define CLK_PWM13		23
106*ae5de77eSEmmanuel Vadot #define CLK_PWM14		24
107*ae5de77eSEmmanuel Vadot #define CLK_PWM15		25
108*ae5de77eSEmmanuel Vadot #define CLK_PWM16		26
109*ae5de77eSEmmanuel Vadot #define CLK_PWM17		27
110*ae5de77eSEmmanuel Vadot #define CLK_PWM18		28
111*ae5de77eSEmmanuel Vadot #define CLK_PWM19		29
112*ae5de77eSEmmanuel Vadot #define CLK_SSP3		30
113*ae5de77eSEmmanuel Vadot #define CLK_RTC			31
114*ae5de77eSEmmanuel Vadot #define CLK_TWSI0		32
115*ae5de77eSEmmanuel Vadot #define CLK_TWSI1		33
116*ae5de77eSEmmanuel Vadot #define CLK_TWSI2		34
117*ae5de77eSEmmanuel Vadot #define CLK_TWSI4		35
118*ae5de77eSEmmanuel Vadot #define CLK_TWSI5		36
119*ae5de77eSEmmanuel Vadot #define CLK_TWSI6		37
120*ae5de77eSEmmanuel Vadot #define CLK_TWSI7		38
121*ae5de77eSEmmanuel Vadot #define CLK_TWSI8		39
122*ae5de77eSEmmanuel Vadot #define CLK_TIMERS1		40
123*ae5de77eSEmmanuel Vadot #define CLK_TIMERS2		41
124*ae5de77eSEmmanuel Vadot #define CLK_AIB			42
125*ae5de77eSEmmanuel Vadot #define CLK_ONEWIRE		43
126*ae5de77eSEmmanuel Vadot #define CLK_SSPA0		44
127*ae5de77eSEmmanuel Vadot #define CLK_SSPA1		45
128*ae5de77eSEmmanuel Vadot #define CLK_DRO			46
129*ae5de77eSEmmanuel Vadot #define CLK_IR			47
130*ae5de77eSEmmanuel Vadot #define CLK_TSEN		48
131*ae5de77eSEmmanuel Vadot #define CLK_IPC_AP2AUD		49
132*ae5de77eSEmmanuel Vadot #define CLK_CAN0		50
133*ae5de77eSEmmanuel Vadot #define CLK_CAN0_BUS		51
134*ae5de77eSEmmanuel Vadot #define CLK_UART0_BUS		52
135*ae5de77eSEmmanuel Vadot #define CLK_UART2_BUS		53
136*ae5de77eSEmmanuel Vadot #define CLK_UART3_BUS		54
137*ae5de77eSEmmanuel Vadot #define CLK_UART4_BUS		55
138*ae5de77eSEmmanuel Vadot #define CLK_UART5_BUS		56
139*ae5de77eSEmmanuel Vadot #define CLK_UART6_BUS		57
140*ae5de77eSEmmanuel Vadot #define CLK_UART7_BUS		58
141*ae5de77eSEmmanuel Vadot #define CLK_UART8_BUS		59
142*ae5de77eSEmmanuel Vadot #define CLK_UART9_BUS		60
143*ae5de77eSEmmanuel Vadot #define CLK_GPIO_BUS		61
144*ae5de77eSEmmanuel Vadot #define CLK_PWM0_BUS		62
145*ae5de77eSEmmanuel Vadot #define CLK_PWM1_BUS		63
146*ae5de77eSEmmanuel Vadot #define CLK_PWM2_BUS		64
147*ae5de77eSEmmanuel Vadot #define CLK_PWM3_BUS		65
148*ae5de77eSEmmanuel Vadot #define CLK_PWM4_BUS		66
149*ae5de77eSEmmanuel Vadot #define CLK_PWM5_BUS		67
150*ae5de77eSEmmanuel Vadot #define CLK_PWM6_BUS		68
151*ae5de77eSEmmanuel Vadot #define CLK_PWM7_BUS		69
152*ae5de77eSEmmanuel Vadot #define CLK_PWM8_BUS		70
153*ae5de77eSEmmanuel Vadot #define CLK_PWM9_BUS		71
154*ae5de77eSEmmanuel Vadot #define CLK_PWM10_BUS		72
155*ae5de77eSEmmanuel Vadot #define CLK_PWM11_BUS		73
156*ae5de77eSEmmanuel Vadot #define CLK_PWM12_BUS		74
157*ae5de77eSEmmanuel Vadot #define CLK_PWM13_BUS		75
158*ae5de77eSEmmanuel Vadot #define CLK_PWM14_BUS		76
159*ae5de77eSEmmanuel Vadot #define CLK_PWM15_BUS		77
160*ae5de77eSEmmanuel Vadot #define CLK_PWM16_BUS		78
161*ae5de77eSEmmanuel Vadot #define CLK_PWM17_BUS		79
162*ae5de77eSEmmanuel Vadot #define CLK_PWM18_BUS		80
163*ae5de77eSEmmanuel Vadot #define CLK_PWM19_BUS		81
164*ae5de77eSEmmanuel Vadot #define CLK_SSP3_BUS		82
165*ae5de77eSEmmanuel Vadot #define CLK_RTC_BUS		83
166*ae5de77eSEmmanuel Vadot #define CLK_TWSI0_BUS		84
167*ae5de77eSEmmanuel Vadot #define CLK_TWSI1_BUS		85
168*ae5de77eSEmmanuel Vadot #define CLK_TWSI2_BUS		86
169*ae5de77eSEmmanuel Vadot #define CLK_TWSI4_BUS		87
170*ae5de77eSEmmanuel Vadot #define CLK_TWSI5_BUS		88
171*ae5de77eSEmmanuel Vadot #define CLK_TWSI6_BUS		89
172*ae5de77eSEmmanuel Vadot #define CLK_TWSI7_BUS		90
173*ae5de77eSEmmanuel Vadot #define CLK_TWSI8_BUS		91
174*ae5de77eSEmmanuel Vadot #define CLK_TIMERS1_BUS		92
175*ae5de77eSEmmanuel Vadot #define CLK_TIMERS2_BUS		93
176*ae5de77eSEmmanuel Vadot #define CLK_AIB_BUS		94
177*ae5de77eSEmmanuel Vadot #define CLK_ONEWIRE_BUS		95
178*ae5de77eSEmmanuel Vadot #define CLK_SSPA0_BUS		96
179*ae5de77eSEmmanuel Vadot #define CLK_SSPA1_BUS		97
180*ae5de77eSEmmanuel Vadot #define CLK_TSEN_BUS		98
181*ae5de77eSEmmanuel Vadot #define CLK_IPC_AP2AUD_BUS	99
182*ae5de77eSEmmanuel Vadot 
183*ae5de77eSEmmanuel Vadot /* APMU clocks */
184*ae5de77eSEmmanuel Vadot #define CLK_CCI550		0
185*ae5de77eSEmmanuel Vadot #define CLK_CPU_C0_HI		1
186*ae5de77eSEmmanuel Vadot #define CLK_CPU_C0_CORE		2
187*ae5de77eSEmmanuel Vadot #define CLK_CPU_C0_ACE		3
188*ae5de77eSEmmanuel Vadot #define CLK_CPU_C0_TCM		4
189*ae5de77eSEmmanuel Vadot #define CLK_CPU_C1_HI		5
190*ae5de77eSEmmanuel Vadot #define CLK_CPU_C1_CORE		6
191*ae5de77eSEmmanuel Vadot #define CLK_CPU_C1_ACE		7
192*ae5de77eSEmmanuel Vadot #define CLK_CCIC_4X		8
193*ae5de77eSEmmanuel Vadot #define CLK_CCIC1PHY		9
194*ae5de77eSEmmanuel Vadot #define CLK_SDH_AXI		10
195*ae5de77eSEmmanuel Vadot #define CLK_SDH0		11
196*ae5de77eSEmmanuel Vadot #define CLK_SDH1		12
197*ae5de77eSEmmanuel Vadot #define CLK_SDH2		13
198*ae5de77eSEmmanuel Vadot #define CLK_USB_P1		14
199*ae5de77eSEmmanuel Vadot #define CLK_USB_AXI		15
200*ae5de77eSEmmanuel Vadot #define CLK_USB30		16
201*ae5de77eSEmmanuel Vadot #define CLK_QSPI		17
202*ae5de77eSEmmanuel Vadot #define CLK_QSPI_BUS		18
203*ae5de77eSEmmanuel Vadot #define CLK_DMA			19
204*ae5de77eSEmmanuel Vadot #define CLK_AES			20
205*ae5de77eSEmmanuel Vadot #define CLK_VPU			21
206*ae5de77eSEmmanuel Vadot #define CLK_GPU			22
207*ae5de77eSEmmanuel Vadot #define CLK_EMMC		23
208*ae5de77eSEmmanuel Vadot #define CLK_EMMC_X		24
209*ae5de77eSEmmanuel Vadot #define CLK_AUDIO		25
210*ae5de77eSEmmanuel Vadot #define CLK_HDMI		26
211*ae5de77eSEmmanuel Vadot #define CLK_PMUA_ACLK		27
212*ae5de77eSEmmanuel Vadot #define CLK_PCIE0_MASTER	28
213*ae5de77eSEmmanuel Vadot #define CLK_PCIE0_SLAVE		29
214*ae5de77eSEmmanuel Vadot #define CLK_PCIE0_DBI		30
215*ae5de77eSEmmanuel Vadot #define CLK_PCIE1_MASTER	31
216*ae5de77eSEmmanuel Vadot #define CLK_PCIE1_SLAVE		32
217*ae5de77eSEmmanuel Vadot #define CLK_PCIE1_DBI		33
218*ae5de77eSEmmanuel Vadot #define CLK_PCIE2_MASTER	34
219*ae5de77eSEmmanuel Vadot #define CLK_PCIE2_SLAVE		35
220*ae5de77eSEmmanuel Vadot #define CLK_PCIE2_DBI		36
221*ae5de77eSEmmanuel Vadot #define CLK_EMAC0_BUS		37
222*ae5de77eSEmmanuel Vadot #define CLK_EMAC0_PTP		38
223*ae5de77eSEmmanuel Vadot #define CLK_EMAC1_BUS		39
224*ae5de77eSEmmanuel Vadot #define CLK_EMAC1_PTP		40
225*ae5de77eSEmmanuel Vadot #define CLK_JPG			41
226*ae5de77eSEmmanuel Vadot #define CLK_CCIC2PHY		42
227*ae5de77eSEmmanuel Vadot #define CLK_CCIC3PHY		43
228*ae5de77eSEmmanuel Vadot #define CLK_CSI			44
229*ae5de77eSEmmanuel Vadot #define CLK_CAMM0		45
230*ae5de77eSEmmanuel Vadot #define CLK_CAMM1		46
231*ae5de77eSEmmanuel Vadot #define CLK_CAMM2		47
232*ae5de77eSEmmanuel Vadot #define CLK_ISP_CPP		48
233*ae5de77eSEmmanuel Vadot #define CLK_ISP_BUS		49
234*ae5de77eSEmmanuel Vadot #define CLK_ISP			50
235*ae5de77eSEmmanuel Vadot #define CLK_DPU_MCLK		51
236*ae5de77eSEmmanuel Vadot #define CLK_DPU_ESC		52
237*ae5de77eSEmmanuel Vadot #define CLK_DPU_BIT		53
238*ae5de77eSEmmanuel Vadot #define CLK_DPU_PXCLK		54
239*ae5de77eSEmmanuel Vadot #define CLK_DPU_HCLK		55
240*ae5de77eSEmmanuel Vadot #define CLK_DPU_SPI		56
241*ae5de77eSEmmanuel Vadot #define CLK_DPU_SPI_HBUS	57
242*ae5de77eSEmmanuel Vadot #define CLK_DPU_SPIBUS		58
243*ae5de77eSEmmanuel Vadot #define CLK_DPU_SPI_ACLK	59
244*ae5de77eSEmmanuel Vadot #define CLK_V2D			60
245*ae5de77eSEmmanuel Vadot #define CLK_EMMC_BUS		61
246*ae5de77eSEmmanuel Vadot 
247*ae5de77eSEmmanuel Vadot #endif /* _DT_BINDINGS_SPACEMIT_CCU_H_ */
248