xref: /freebsd/sys/contrib/device-tree/include/dt-bindings/clock/axis,artpec9-clk.h (revision 69ed3df4f588860308677cda76cbcce1f19a54c9)
1*69ed3df4SEmmanuel Vadot /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2*69ed3df4SEmmanuel Vadot /*
3*69ed3df4SEmmanuel Vadot  * Copyright (c) 2025 Samsung Electronics Co., Ltd.
4*69ed3df4SEmmanuel Vadot  *             https://www.samsung.com
5*69ed3df4SEmmanuel Vadot  * Copyright (c) 2025  Axis Communications AB.
6*69ed3df4SEmmanuel Vadot  *             https://www.axis.com
7*69ed3df4SEmmanuel Vadot  *
8*69ed3df4SEmmanuel Vadot  * Device Tree binding constants for ARTPEC-9 clock controller.
9*69ed3df4SEmmanuel Vadot  */
10*69ed3df4SEmmanuel Vadot 
11*69ed3df4SEmmanuel Vadot #ifndef _DT_BINDINGS_CLOCK_ARTPEC9_H
12*69ed3df4SEmmanuel Vadot #define _DT_BINDINGS_CLOCK_ARTPEC9_H
13*69ed3df4SEmmanuel Vadot 
14*69ed3df4SEmmanuel Vadot /* CMU_CMU */
15*69ed3df4SEmmanuel Vadot #define CLK_FOUT_SHARED0_PLL						1
16*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED0_DIV2						2
17*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED0_DIV3						3
18*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED0_DIV4						4
19*69ed3df4SEmmanuel Vadot #define CLK_FOUT_SHARED1_PLL						5
20*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED1_DIV2						6
21*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED1_DIV3						7
22*69ed3df4SEmmanuel Vadot #define CLK_DOUT_SHARED1_DIV4						8
23*69ed3df4SEmmanuel Vadot #define CLK_FOUT_AUDIO_PLL						9
24*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_ADD						10
25*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_BUS						11
26*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_CDC_CORE						12
27*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_CORE_MAIN						13
28*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_CPUCL_SWITCH					14
29*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_DLP_CORE						15
30*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_FSYS0_BUS						16
31*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_FSYS0_IP						17
32*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_FSYS1_BUS						18
33*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_FSYS1_SCAN0					19
34*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_FSYS1_SCAN1					20
35*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_GPU_3D						21
36*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_GPU_2D						22
37*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_IMEM_ACLK						23
38*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_IMEM_CA5						24
39*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_IMEM_JPEG						25
40*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_IMEM_SSS						26
41*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_IPA_CORE						27
42*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_LCPU						28
43*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_MIF_SWITCH						29
44*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_MIF_BUSP						30
45*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_PERI_DISP						31
46*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_PERI_IP						32
47*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_RSP_CORE						33
48*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_TRFM						34
49*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VIO_CORE_L						35
50*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VIO_CORE						36
51*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VIP0						37
52*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VIP1						38
53*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VPP_CORE						39
54*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CMU_VIO_AUDIO						40
55*69ed3df4SEmmanuel Vadot 
56*69ed3df4SEmmanuel Vadot /* CMU_BUS */
57*69ed3df4SEmmanuel Vadot #define CLK_MOUT_BUS_ACLK_USER						1
58*69ed3df4SEmmanuel Vadot 
59*69ed3df4SEmmanuel Vadot /* CMU_CORE */
60*69ed3df4SEmmanuel Vadot #define CLK_MOUT_CORE_ACLK_USER						1
61*69ed3df4SEmmanuel Vadot 
62*69ed3df4SEmmanuel Vadot /* CMU_CPUCL */
63*69ed3df4SEmmanuel Vadot #define CLK_FOUT_CPUCL_PLL0						1
64*69ed3df4SEmmanuel Vadot #define CLK_MOUT_CPUCL_PLL0						2
65*69ed3df4SEmmanuel Vadot #define CLK_FOUT_CPUCL_PLL1						3
66*69ed3df4SEmmanuel Vadot #define CLK_MOUT_CPUCL_PLL_SCU						4
67*69ed3df4SEmmanuel Vadot #define CLK_MOUT_CPUCL_SWITCH_SCU_USER					5
68*69ed3df4SEmmanuel Vadot #define CLK_MOUT_CPUCL_SWITCH_USER					6
69*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CPU						7
70*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CLUSTER_PERIPHCLK				8
71*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CLUSTER_GICCLK					9
72*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CLUSTER_PCLK					10
73*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CMUREF						11
74*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CLUSTER_ATCLK					12
75*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_CLUSTER_SCU					13
76*69ed3df4SEmmanuel Vadot #define CLK_DOUT_CPUCL_DBG						14
77*69ed3df4SEmmanuel Vadot #define CLK_GOUT_CPUCL_SHORTSTOP					15
78*69ed3df4SEmmanuel Vadot #define CLK_GOUT_CPUCL_CLUSTER_CPU					16
79*69ed3df4SEmmanuel Vadot #define CLK_GOUT_CPUCL_CSSYS_IPCLKPORT_ATCLK				17
80*69ed3df4SEmmanuel Vadot #define CLK_GOUT_CPUCL_CSSYS_IPCLKPORT_PCLKDBG				18
81*69ed3df4SEmmanuel Vadot 
82*69ed3df4SEmmanuel Vadot /* CMU_FSYS0 */
83*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS0_BUS_USER						1
84*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS0_IP_USER						2
85*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS0_MAIN_USER					3
86*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_125						4
87*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_ADC						5
88*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_BUS_300						6
89*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_EQOS0						7
90*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_EQOS1						8
91*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_MMC_CARD0					9
92*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_MMC_CARD1					10
93*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_MMC_CARD2					11
94*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_QSPI						12
95*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS0_SFMC_NAND					13
96*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_ACLK_I			14
97*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_CLK_CSR_I			15
98*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_I_RGMII_PHASE_CLK_250	16
99*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_I_RGMII_TXCLK		17
100*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_I_RGMII_PHASE_CLK_250	18
101*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_I_RGMII_TXCLK		19
102*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_ACLK_I			20
103*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_CLK_CSR_I			21
104*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_APB_S_PCLK			22
105*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_CORE_CLK			23
106*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_DMA_CLK				24
107*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_HDR_TX_CLK			25
108*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_APB_S_PCLK			26
109*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_CORE_CLK			27
110*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_DMA_CLK				28
111*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_HDR_TX_CLK			29
112*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC0_IPCLKPORT_SDCLKIN				30
113*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC1_IPCLKPORT_SDCLKIN				31
114*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC2_IPCLKPORT_SDCLKIN				32
115*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_QSPI_IPCLKPORT_HCLK				33
116*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_QSPI_IPCLKPORT_SSI_CLK				34
117*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_SFMC_IPCLKPORT_I_ACLK_NAND			35
118*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I2C0_IPCLKPORT_I_PCLK				36
119*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_I2C1_IPCLKPORT_I_PCLK				37
120*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC0_IPCLKPORT_I_ACLK				38
121*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC1_IPCLKPORT_I_ACLK				39
122*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_MMC2_IPCLKPORT_I_ACLK				40
123*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS0_PWM_IPCLKPORT_I_PCLK_S0				41
124*69ed3df4SEmmanuel Vadot 
125*69ed3df4SEmmanuel Vadot /* CMU_FSYS1 */
126*69ed3df4SEmmanuel Vadot #define CLK_FOUT_FSYS1_PLL						1
127*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS1_SCAN0_USER					2
128*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS1_SCAN1_USER					3
129*69ed3df4SEmmanuel Vadot #define CLK_MOUT_FSYS1_BUS_USER						4
130*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS1_200						5
131*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS1_BUS_300						6
132*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS1_OTP_MEM						7
133*69ed3df4SEmmanuel Vadot #define CLK_DOUT_FSYS1_PCIE_PHY_REFCLK_SYSPLL				8
134*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_PHY_APB2CR_PCLK_100		9
135*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_UART0_PCLK					10
136*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_UART0_SCLK_UART					11
137*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_PHY_APB2CR_PCLK_300		12
138*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_DBI_ACLK_SOC		13
139*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_MSTR_ACLK_SOC		14
140*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_SLV_ACLK_SOC		15
141*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_DBI_ACLK_SOC		16
142*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_MSTR_ACLK_SOC		17
143*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_SLV_ACLK_SOC		18
144*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_USB20DRD_IPCLKPORT_ACLK_PHYCTRL_20		19
145*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_USB20DRD_IPCLKPORT_BUS_CLK_EARLY			20
146*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_XHB_AHBBR_FSYS1_IPCLKPORT_CLK			21
147*69ed3df4SEmmanuel Vadot #define CLK_GOUT_FSYS1_XHB_USB_IPCLKPORT_CLK				22
148*69ed3df4SEmmanuel Vadot 
149*69ed3df4SEmmanuel Vadot /* CMU_IMEM */
150*69ed3df4SEmmanuel Vadot #define CLK_MOUT_IMEM_ACLK_USER						1
151*69ed3df4SEmmanuel Vadot #define CLK_MOUT_IMEM_CA5_USER						2
152*69ed3df4SEmmanuel Vadot #define CLK_MOUT_IMEM_SSS_USER						3
153*69ed3df4SEmmanuel Vadot #define CLK_MOUT_IMEM_JPEG_USER						4
154*69ed3df4SEmmanuel Vadot #define CLK_DOUT_IMEM_PCLK						5
155*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_ATCLK				6
156*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_CLKIN				7
157*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_PCLK_DBG				8
158*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_ATCLK				9
159*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_CLKIN				10
160*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_PCLK_DBG				11
161*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_MCT0_PCLK						12
162*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_MCT1_PCLK						13
163*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_MCT2_PCLK						14
164*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_MCT3_PCLK						15
165*69ed3df4SEmmanuel Vadot #define CLK_GOUT_IMEM_PCLK_TMU0_APBIF					16
166*69ed3df4SEmmanuel Vadot 
167*69ed3df4SEmmanuel Vadot /* CMU_PERI */
168*69ed3df4SEmmanuel Vadot #define CLK_MOUT_PERI_IP_USER						1
169*69ed3df4SEmmanuel Vadot #define CLK_MOUT_PERI_DISP_USER						2
170*69ed3df4SEmmanuel Vadot #define CLK_DOUT_PERI_125						3
171*69ed3df4SEmmanuel Vadot #define CLK_DOUT_PERI_PCLK						4
172*69ed3df4SEmmanuel Vadot #define CLK_DOUT_PERI_SPI						5
173*69ed3df4SEmmanuel Vadot #define CLK_DOUT_PERI_UART1						6
174*69ed3df4SEmmanuel Vadot #define CLK_DOUT_PERI_UART2						7
175*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_DMA4DSIM_IPCLKPORT_CLK_APB_CLK			8
176*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_DMA4DSIM_IPCLKPORT_CLK_AXI_CLK			9
177*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_APB_S_PCLK			10
178*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_CORE_CLK				11
179*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_DMA_CLK				12
180*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_HDR_TX_CLK			13
181*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_APB_S_PCLK			14
182*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_CORE_CLK				15
183*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_DMA_CLK				16
184*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_HDR_TX_CLK			17
185*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_APB_ASYNC_DSIM_IPCLKPORT_PCLKS			18
186*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I2C2_IPCLKPORT_I_PCLK				19
187*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_I2C3_IPCLKPORT_I_PCLK				20
188*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_SPI0_PCLK						21
189*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_SPI0_SCLK_SPI					22
190*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_UART1_PCLK					23
191*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_UART1_SCLK_UART					24
192*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_UART2_PCLK					25
193*69ed3df4SEmmanuel Vadot #define CLK_GOUT_PERI_UART2_SCLK_UART					26
194*69ed3df4SEmmanuel Vadot 
195*69ed3df4SEmmanuel Vadot #endif /* _DT_BINDINGS_CLOCK_ARTPEC9_H */
196