1/* SPDX-License-Identifier: GPL-2.0+ OR MIT */
2/*
3 * Copyright 2021 NXP
4 */
5
6#ifndef __DT_BINDINGS_CLOCK_IMX8ULP_H
7#define __DT_BINDINGS_CLOCK_IMX8ULP_H
8
9#define IMX8ULP_CLK_DUMMY 0
10
11/* CGC1 */
12#define IMX8ULP_CLK_SPLL2 5
13#define IMX8ULP_CLK_SPLL3 6
14#define IMX8ULP_CLK_A35_SEL 7
15#define IMX8ULP_CLK_A35_DIV 8
16#define IMX8ULP_CLK_SPLL2_PRE_SEL 9
17#define IMX8ULP_CLK_SPLL3_PRE_SEL 10
18#define IMX8ULP_CLK_SPLL3_PFD0 11
19#define IMX8ULP_CLK_SPLL3_PFD1 12
20#define IMX8ULP_CLK_SPLL3_PFD2 13
21#define IMX8ULP_CLK_SPLL3_PFD3 14
22#define IMX8ULP_CLK_SPLL3_PFD0_DIV1 15
23#define IMX8ULP_CLK_SPLL3_PFD0_DIV2 16
24#define IMX8ULP_CLK_SPLL3_PFD1_DIV1 17
25#define IMX8ULP_CLK_SPLL3_PFD1_DIV2 18
26#define IMX8ULP_CLK_SPLL3_PFD2_DIV1 19
27#define IMX8ULP_CLK_SPLL3_PFD2_DIV2 20
28#define IMX8ULP_CLK_SPLL3_PFD3_DIV1 21
29#define IMX8ULP_CLK_SPLL3_PFD3_DIV2 22
30#define IMX8ULP_CLK_NIC_SEL 23
31#define IMX8ULP_CLK_NIC_AD_DIVPLAT 24
32#define IMX8ULP_CLK_NIC_PER_DIVPLAT 25
33#define IMX8ULP_CLK_XBAR_SEL 26
34#define IMX8ULP_CLK_XBAR_AD_DIVPLAT 27
35#define IMX8ULP_CLK_XBAR_DIVBUS 28
36#define IMX8ULP_CLK_XBAR_AD_SLOW 29
37#define IMX8ULP_CLK_SOSC_DIV1 30
38#define IMX8ULP_CLK_SOSC_DIV2 31
39#define IMX8ULP_CLK_SOSC_DIV3 32
40#define IMX8ULP_CLK_FROSC_DIV1 33
41#define IMX8ULP_CLK_FROSC_DIV2 34
42#define IMX8ULP_CLK_FROSC_DIV3 35
43#define IMX8ULP_CLK_SPLL3_VCODIV 36
44#define IMX8ULP_CLK_SPLL3_PFD0_DIV1_GATE 37
45#define IMX8ULP_CLK_SPLL3_PFD0_DIV2_GATE 38
46#define IMX8ULP_CLK_SPLL3_PFD1_DIV1_GATE 39
47#define IMX8ULP_CLK_SPLL3_PFD1_DIV2_GATE 40
48#define IMX8ULP_CLK_SPLL3_PFD2_DIV1_GATE 41
49#define IMX8ULP_CLK_SPLL3_PFD2_DIV2_GATE 42
50#define IMX8ULP_CLK_SPLL3_PFD3_DIV1_GATE 43
51#define IMX8ULP_CLK_SPLL3_PFD3_DIV2_GATE 44
52#define IMX8ULP_CLK_SOSC_DIV1_GATE 45
53#define IMX8ULP_CLK_SOSC_DIV2_GATE 46
54#define IMX8ULP_CLK_SOSC_DIV3_GATE 47
55#define IMX8ULP_CLK_FROSC_DIV1_GATE 48
56#define IMX8ULP_CLK_FROSC_DIV2_GATE 49
57#define IMX8ULP_CLK_FROSC_DIV3_GATE 50
58#define IMX8ULP_CLK_SAI4_SEL 51
59#define IMX8ULP_CLK_SAI5_SEL 52
60#define IMX8ULP_CLK_AUD_CLK1 53
61#define IMX8ULP_CLK_ARM 54
62#define IMX8ULP_CLK_ENET_TS_SEL 55
63
64#define IMX8ULP_CLK_CGC1_END 56
65
66/* CGC2 */
67#define IMX8ULP_CLK_PLL4_PRE_SEL 0
68#define IMX8ULP_CLK_PLL4 1
69#define IMX8ULP_CLK_PLL4_VCODIV 2
70#define IMX8ULP_CLK_DDR_SEL 3
71#define IMX8ULP_CLK_DDR_DIV 4
72#define IMX8ULP_CLK_LPAV_AXI_SEL 5
73#define IMX8ULP_CLK_LPAV_AXI_DIV 6
74#define IMX8ULP_CLK_LPAV_AHB_DIV 7
75#define IMX8ULP_CLK_LPAV_BUS_DIV 8
76#define IMX8ULP_CLK_PLL4_PFD0 9
77#define IMX8ULP_CLK_PLL4_PFD1 10
78#define IMX8ULP_CLK_PLL4_PFD2 11
79#define IMX8ULP_CLK_PLL4_PFD3 12
80#define IMX8ULP_CLK_PLL4_PFD0_DIV1_GATE 13
81#define IMX8ULP_CLK_PLL4_PFD0_DIV2_GATE 14
82#define IMX8ULP_CLK_PLL4_PFD1_DIV1_GATE 15
83#define IMX8ULP_CLK_PLL4_PFD1_DIV2_GATE 16
84#define IMX8ULP_CLK_PLL4_PFD2_DIV1_GATE 17
85#define IMX8ULP_CLK_PLL4_PFD2_DIV2_GATE 18
86#define IMX8ULP_CLK_PLL4_PFD3_DIV1_GATE 19
87#define IMX8ULP_CLK_PLL4_PFD3_DIV2_GATE 20
88#define IMX8ULP_CLK_PLL4_PFD0_DIV1 21
89#define IMX8ULP_CLK_PLL4_PFD0_DIV2 22
90#define IMX8ULP_CLK_PLL4_PFD1_DIV1 23
91#define IMX8ULP_CLK_PLL4_PFD1_DIV2 24
92#define IMX8ULP_CLK_PLL4_PFD2_DIV1 25
93#define IMX8ULP_CLK_PLL4_PFD2_DIV2 26
94#define IMX8ULP_CLK_PLL4_PFD3_DIV1 27
95#define IMX8ULP_CLK_PLL4_PFD3_DIV2 28
96#define IMX8ULP_CLK_CGC2_SOSC_DIV1_GATE 29
97#define IMX8ULP_CLK_CGC2_SOSC_DIV2_GATE 30
98#define IMX8ULP_CLK_CGC2_SOSC_DIV3_GATE 31
99#define IMX8ULP_CLK_CGC2_SOSC_DIV1 32
100#define IMX8ULP_CLK_CGC2_SOSC_DIV2 33
101#define IMX8ULP_CLK_CGC2_SOSC_DIV3 34
102#define IMX8ULP_CLK_CGC2_FROSC_DIV1_GATE 35
103#define IMX8ULP_CLK_CGC2_FROSC_DIV2_GATE 36
104#define IMX8ULP_CLK_CGC2_FROSC_DIV3_GATE 37
105#define IMX8ULP_CLK_CGC2_FROSC_DIV1 38
106#define IMX8ULP_CLK_CGC2_FROSC_DIV2 39
107#define IMX8ULP_CLK_CGC2_FROSC_DIV3 40
108#define IMX8ULP_CLK_AUD_CLK2 41
109#define IMX8ULP_CLK_SAI6_SEL 42
110#define IMX8ULP_CLK_SAI7_SEL 43
111#define IMX8ULP_CLK_SPDIF_SEL 44
112#define IMX8ULP_CLK_HIFI_SEL 45
113#define IMX8ULP_CLK_HIFI_DIVCORE 46
114#define IMX8ULP_CLK_HIFI_DIVPLAT 47
115#define IMX8ULP_CLK_DSI_PHY_REF 48
116
117#define IMX8ULP_CLK_CGC2_END 49
118
119/* PCC3 */
120#define IMX8ULP_CLK_WDOG3 0
121#define IMX8ULP_CLK_WDOG4 1
122#define IMX8ULP_CLK_LPIT1 2
123#define IMX8ULP_CLK_TPM4 3
124#define IMX8ULP_CLK_TPM5 4
125#define IMX8ULP_CLK_FLEXIO1 5
126#define IMX8ULP_CLK_I3C2 6
127#define IMX8ULP_CLK_LPI2C4 7
128#define IMX8ULP_CLK_LPI2C5 8
129#define IMX8ULP_CLK_LPUART4 9
130#define IMX8ULP_CLK_LPUART5 10
131#define IMX8ULP_CLK_LPSPI4 11
132#define IMX8ULP_CLK_LPSPI5 12
133#define IMX8ULP_CLK_DMA1_MP 13
134#define IMX8ULP_CLK_DMA1_CH0 14
135#define IMX8ULP_CLK_DMA1_CH1 15
136#define IMX8ULP_CLK_DMA1_CH2 16
137#define IMX8ULP_CLK_DMA1_CH3 17
138#define IMX8ULP_CLK_DMA1_CH4 18
139#define IMX8ULP_CLK_DMA1_CH5 19
140#define IMX8ULP_CLK_DMA1_CH6 20
141#define IMX8ULP_CLK_DMA1_CH7 21
142#define IMX8ULP_CLK_DMA1_CH8 22
143#define IMX8ULP_CLK_DMA1_CH9 23
144#define IMX8ULP_CLK_DMA1_CH10 24
145#define IMX8ULP_CLK_DMA1_CH11 25
146#define IMX8ULP_CLK_DMA1_CH12 26
147#define IMX8ULP_CLK_DMA1_CH13 27
148#define IMX8ULP_CLK_DMA1_CH14 28
149#define IMX8ULP_CLK_DMA1_CH15 29
150#define IMX8ULP_CLK_DMA1_CH16 30
151#define IMX8ULP_CLK_DMA1_CH17 31
152#define IMX8ULP_CLK_DMA1_CH18 32
153#define IMX8ULP_CLK_DMA1_CH19 33
154#define IMX8ULP_CLK_DMA1_CH20 34
155#define IMX8ULP_CLK_DMA1_CH21 35
156#define IMX8ULP_CLK_DMA1_CH22 36
157#define IMX8ULP_CLK_DMA1_CH23 37
158#define IMX8ULP_CLK_DMA1_CH24 38
159#define IMX8ULP_CLK_DMA1_CH25 39
160#define IMX8ULP_CLK_DMA1_CH26 40
161#define IMX8ULP_CLK_DMA1_CH27 41
162#define IMX8ULP_CLK_DMA1_CH28 42
163#define IMX8ULP_CLK_DMA1_CH29 43
164#define IMX8ULP_CLK_DMA1_CH30 44
165#define IMX8ULP_CLK_DMA1_CH31 45
166#define IMX8ULP_CLK_MU3_A 46
167#define IMX8ULP_CLK_MU0_B 47
168
169#define IMX8ULP_CLK_PCC3_END 48
170
171/* PCC4 */
172#define IMX8ULP_CLK_FLEXSPI2 0
173#define IMX8ULP_CLK_TPM6 1
174#define IMX8ULP_CLK_TPM7 2
175#define IMX8ULP_CLK_LPI2C6 3
176#define IMX8ULP_CLK_LPI2C7 4
177#define IMX8ULP_CLK_LPUART6 5
178#define IMX8ULP_CLK_LPUART7 6
179#define IMX8ULP_CLK_SAI4 7
180#define IMX8ULP_CLK_SAI5 8
181#define IMX8ULP_CLK_PCTLE 9
182#define IMX8ULP_CLK_PCTLF 10
183#define IMX8ULP_CLK_USDHC0 11
184#define IMX8ULP_CLK_USDHC1 12
185#define IMX8ULP_CLK_USDHC2 13
186#define IMX8ULP_CLK_USB0 14
187#define IMX8ULP_CLK_USB0_PHY 15
188#define IMX8ULP_CLK_USB1 16
189#define IMX8ULP_CLK_USB1_PHY 17
190#define IMX8ULP_CLK_USB_XBAR 18
191#define IMX8ULP_CLK_ENET 19
192#define IMX8ULP_CLK_SFA1 20
193#define IMX8ULP_CLK_RGPIOE 21
194#define IMX8ULP_CLK_RGPIOF 22
195
196#define IMX8ULP_CLK_PCC4_END 23
197
198/* PCC5 */
199#define IMX8ULP_CLK_TPM8 0
200#define IMX8ULP_CLK_SAI6 1
201#define IMX8ULP_CLK_SAI7 2
202#define IMX8ULP_CLK_SPDIF 3
203#define IMX8ULP_CLK_ISI 4
204#define IMX8ULP_CLK_CSI_REGS 5
205#define IMX8ULP_CLK_PCTLD 6
206#define IMX8ULP_CLK_CSI 7
207#define IMX8ULP_CLK_DSI 8
208#define IMX8ULP_CLK_WDOG5 9
209#define IMX8ULP_CLK_EPDC 10
210#define IMX8ULP_CLK_PXP 11
211#define IMX8ULP_CLK_SFA2 12
212#define IMX8ULP_CLK_GPU2D 13
213#define IMX8ULP_CLK_GPU3D 14
214#define IMX8ULP_CLK_DC_NANO 15
215#define IMX8ULP_CLK_CSI_CLK_UI 16
216#define IMX8ULP_CLK_CSI_CLK_ESC 17
217#define IMX8ULP_CLK_RGPIOD 18
218#define IMX8ULP_CLK_DMA2_MP 19
219#define IMX8ULP_CLK_DMA2_CH0 20
220#define IMX8ULP_CLK_DMA2_CH1 21
221#define IMX8ULP_CLK_DMA2_CH2 22
222#define IMX8ULP_CLK_DMA2_CH3 23
223#define IMX8ULP_CLK_DMA2_CH4 24
224#define IMX8ULP_CLK_DMA2_CH5 25
225#define IMX8ULP_CLK_DMA2_CH6 26
226#define IMX8ULP_CLK_DMA2_CH7 27
227#define IMX8ULP_CLK_DMA2_CH8 28
228#define IMX8ULP_CLK_DMA2_CH9 29
229#define IMX8ULP_CLK_DMA2_CH10 30
230#define IMX8ULP_CLK_DMA2_CH11 31
231#define IMX8ULP_CLK_DMA2_CH12 32
232#define IMX8ULP_CLK_DMA2_CH13 33
233#define IMX8ULP_CLK_DMA2_CH14 34
234#define IMX8ULP_CLK_DMA2_CH15 35
235#define IMX8ULP_CLK_DMA2_CH16 36
236#define IMX8ULP_CLK_DMA2_CH17 37
237#define IMX8ULP_CLK_DMA2_CH18 38
238#define IMX8ULP_CLK_DMA2_CH19 39
239#define IMX8ULP_CLK_DMA2_CH20 40
240#define IMX8ULP_CLK_DMA2_CH21 41
241#define IMX8ULP_CLK_DMA2_CH22 42
242#define IMX8ULP_CLK_DMA2_CH23 43
243#define IMX8ULP_CLK_DMA2_CH24 44
244#define IMX8ULP_CLK_DMA2_CH25 45
245#define IMX8ULP_CLK_DMA2_CH26 46
246#define IMX8ULP_CLK_DMA2_CH27 47
247#define IMX8ULP_CLK_DMA2_CH28 48
248#define IMX8ULP_CLK_DMA2_CH29 49
249#define IMX8ULP_CLK_DMA2_CH30 50
250#define IMX8ULP_CLK_DMA2_CH31 51
251#define IMX8ULP_CLK_MU2_B 52
252#define IMX8ULP_CLK_MU3_B 53
253#define IMX8ULP_CLK_AVD_SIM 54
254#define IMX8ULP_CLK_DSI_TX_ESC 55
255
256#define IMX8ULP_CLK_PCC5_END 56
257
258#endif
259

source code of linux/include/dt-bindings/clock/imx8ulp-clock.h