Line data Source code
1 0 : /*
2 : * Copyright 2020-2024 NXP
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : #ifndef ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_
8 : #define ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_
9 :
10 : /* Note- clock identifiers in this file must be unique,
11 : * as the driver uses them in a switch case
12 : */
13 :
14 0 : #define MCUX_LPC_CLK_ID(high, low) ((high << 8) | (low))
15 :
16 : /* These IDs are used within SOC macros, and thus cannot be defined
17 : * using the standard MCUX_LPC_CLK_ID form
18 : */
19 0 : #define MCUX_CTIMER0_CLK 0
20 0 : #define MCUX_CTIMER1_CLK 1
21 0 : #define MCUX_CTIMER2_CLK 2
22 0 : #define MCUX_CTIMER3_CLK 3
23 0 : #define MCUX_CTIMER4_CLK 4
24 0 : #define MCUX_CTIMER5_CLK 5
25 0 : #define MCUX_CTIMER6_CLK 6
26 0 : #define MCUX_CTIMER7_CLK 7
27 :
28 0 : #define MCUX_FLEXCOMM0_CLK MCUX_LPC_CLK_ID(0x01, 0x00)
29 0 : #define MCUX_FLEXCOMM1_CLK MCUX_LPC_CLK_ID(0x01, 0x01)
30 0 : #define MCUX_FLEXCOMM2_CLK MCUX_LPC_CLK_ID(0x01, 0x02)
31 0 : #define MCUX_FLEXCOMM3_CLK MCUX_LPC_CLK_ID(0x01, 0x03)
32 0 : #define MCUX_FLEXCOMM4_CLK MCUX_LPC_CLK_ID(0x01, 0x04)
33 0 : #define MCUX_FLEXCOMM0_LP_CLK MCUX_LPC_CLK_ID(0x01, 0x80)
34 0 : #define MCUX_FLEXCOMM1_LP_CLK MCUX_LPC_CLK_ID(0x01, 0x81)
35 0 : #define MCUX_FLEXCOMM2_LP_CLK MCUX_LPC_CLK_ID(0x01, 0x82)
36 0 : #define MCUX_FLEXCOMM3_LP_CLK MCUX_LPC_CLK_ID(0x01, 0x83)
37 0 : #define MCUX_FLEXCOMM5_CLK MCUX_LPC_CLK_ID(0x01, 0x05)
38 0 : #define MCUX_FLEXCOMM6_CLK MCUX_LPC_CLK_ID(0x01, 0x06)
39 0 : #define MCUX_FLEXCOMM7_CLK MCUX_LPC_CLK_ID(0x01, 0x07)
40 0 : #define MCUX_FLEXCOMM8_CLK MCUX_LPC_CLK_ID(0x01, 0x08)
41 0 : #define MCUX_FLEXCOMM9_CLK MCUX_LPC_CLK_ID(0x01, 0x09)
42 0 : #define MCUX_FLEXCOMM10_CLK MCUX_LPC_CLK_ID(0x01, 0x0A)
43 0 : #define MCUX_FLEXCOMM11_CLK MCUX_LPC_CLK_ID(0x01, 0x0B)
44 0 : #define MCUX_FLEXCOMM12_CLK MCUX_LPC_CLK_ID(0x01, 0x0C)
45 0 : #define MCUX_FLEXCOMM13_CLK MCUX_LPC_CLK_ID(0x01, 0x0D)
46 0 : #define MCUX_HS_SPI_CLK MCUX_LPC_CLK_ID(0x01, 0x0E)
47 0 : #define MCUX_FLEXCOMM14_CLK MCUX_HS_SPI_CLK
48 0 : #define MCUX_PMIC_I2C_CLK MCUX_LPC_CLK_ID(0x01, 0x0F)
49 0 : #define MCUX_HS_SPI1_CLK MCUX_LPC_CLK_ID(0x01, 0x10)
50 0 : #define MCUX_FLEXCOMM17_CLK MCUX_LPC_CLK_ID(0x01, 0x11)
51 0 : #define MCUX_FLEXCOMM18_CLK MCUX_LPC_CLK_ID(0x01, 0x12)
52 0 : #define MCUX_FLEXCOMM19_CLK MCUX_LPC_CLK_ID(0x01, 0x13)
53 0 : #define MCUX_FLEXCOMM20_CLK MCUX_LPC_CLK_ID(0x01, 0x14)
54 : /* On RT7xx, flexcomm14 and 16 only can be LPSPI, flexcomm15 only can be I2C. */
55 0 : #define MCUX_LPSPI14_CLK MCUX_LPC_CLK_ID(0x01, 0x24)
56 0 : #define MCUX_LPI2C15_CLK MCUX_LPC_CLK_ID(0x01, 0x25)
57 0 : #define MCUX_LPSPI16_CLK MCUX_LPC_CLK_ID(0x01, 0x26)
58 0 : #define MCUX_USDHC1_CLK MCUX_LPC_CLK_ID(0x02, 0x00)
59 0 : #define MCUX_USDHC2_CLK MCUX_LPC_CLK_ID(0x02, 0x01)
60 :
61 0 : #define MCUX_MCAN_CLK MCUX_LPC_CLK_ID(0x03, 0x00)
62 :
63 0 : #define MCUX_BUS_CLK MCUX_LPC_CLK_ID(0x04, 0x00)
64 :
65 0 : #define MCUX_SDIF_CLK MCUX_LPC_CLK_ID(0x05, 0x00)
66 :
67 0 : #define MCUX_I3C_CLK MCUX_LPC_CLK_ID(0x06, 0x00)
68 0 : #define MCUX_I3C2_CLK MCUX_LPC_CLK_ID(0x06, 0x01)
69 :
70 0 : #define MCUX_MIPI_DSI_DPHY_CLK MCUX_LPC_CLK_ID(0x07, 0x00)
71 0 : #define MCUX_MIPI_DSI_ESC_CLK MCUX_LPC_CLK_ID(0x07, 0x01)
72 :
73 0 : #define MCUX_LCDIF_PIXEL_CLK MCUX_LPC_CLK_ID(0x08, 0x00)
74 :
75 0 : #define MCUX_SCTIMER_CLK MCUX_LPC_CLK_ID(0x09, 0x00)
76 :
77 0 : #define MCUX_DMIC_CLK MCUX_LPC_CLK_ID(0x0A, 0x00)
78 :
79 0 : #define MCUX_FLEXSPI_CLK MCUX_LPC_CLK_ID(0x0A, 0x00)
80 0 : #define MCUX_FLEXSPI2_CLK MCUX_LPC_CLK_ID(0x0A, 0x01)
81 :
82 0 : #define MCUX_MRT_CLK MCUX_LPC_CLK_ID(0x0B, 0x00)
83 0 : #define MCUX_FREEMRT_CLK MCUX_LPC_CLK_ID(0x0B, 0x01)
84 :
85 0 : #define MCUX_PORT0_CLK MCUX_LPC_CLK_ID(0x0C, 0x00)
86 0 : #define MCUX_PORT1_CLK MCUX_LPC_CLK_ID(0x0C, 0x01)
87 0 : #define MCUX_PORT2_CLK MCUX_LPC_CLK_ID(0x0C, 0x02)
88 0 : #define MCUX_PORT3_CLK MCUX_LPC_CLK_ID(0x0C, 0x03)
89 0 : #define MCUX_PORT4_CLK MCUX_LPC_CLK_ID(0x0C, 0x04)
90 0 : #define MCUX_PORT5_CLK MCUX_LPC_CLK_ID(0x0C, 0x05)
91 :
92 0 : #define MCUX_ENET_QOS_CLK MCUX_LPC_CLK_ID(0x0D, 0x00)
93 :
94 0 : #define MCUX_ENET_CLK MCUX_LPC_CLK_ID(0x0D, 0x80)
95 0 : #define MCUX_ENET_PLL MCUX_LPC_CLK_ID(0x0D, 0x81)
96 :
97 0 : #define MCUX_LCDIC_CLK MCUX_LPC_CLK_ID(0x0E, 0x00)
98 :
99 0 : #define MCUX_LPADC1_CLK MCUX_LPC_CLK_ID(0x0F, 0x00)
100 0 : #define MCUX_LPADC2_CLK MCUX_LPC_CLK_ID(0x0F, 0x01)
101 :
102 0 : #define MCUX_FLEXCAN0_CLK MCUX_LPC_CLK_ID(0x10, 0x00)
103 0 : #define MCUX_FLEXCAN1_CLK MCUX_LPC_CLK_ID(0x10, 0x01)
104 :
105 0 : #define MCUX_FLEXIO0_CLK MCUX_LPC_CLK_ID(0x11, 0x00)
106 :
107 0 : #define MCUX_AUDIO_MCLK MCUX_LPC_CLK_ID(0x12, 0x00)
108 :
109 0 : #define MCUX_LPUART0_CLK MCUX_LPC_CLK_ID(0x13, 0x00)
110 0 : #define MCUX_LPUART1_CLK MCUX_LPC_CLK_ID(0x13, 0x01)
111 0 : #define MCUX_LPUART2_CLK MCUX_LPC_CLK_ID(0x13, 0x02)
112 0 : #define MCUX_LPUART3_CLK MCUX_LPC_CLK_ID(0x13, 0x03)
113 0 : #define MCUX_LPUART4_CLK MCUX_LPC_CLK_ID(0x13, 0x04)
114 :
115 0 : #define MCUX_LPI2C0_CLK MCUX_LPC_CLK_ID(0x14, 0x00)
116 0 : #define MCUX_LPI2C1_CLK MCUX_LPC_CLK_ID(0x14, 0x01)
117 0 : #define MCUX_LPI2C2_CLK MCUX_LPC_CLK_ID(0x14, 0x02)
118 0 : #define MCUX_LPI2C3_CLK MCUX_LPC_CLK_ID(0x14, 0x03)
119 :
120 0 : #define MCUX_XSPI_CLK MCUX_LPC_CLK_ID(0x15, 0x00)
121 0 : #define MCUX_XSPI0_CLK MCUX_LPC_CLK_ID(0x15, 0x00)
122 0 : #define MCUX_XSPI1_CLK MCUX_LPC_CLK_ID(0x15, 0x01)
123 0 : #define MCUX_XSPI2_CLK MCUX_LPC_CLK_ID(0x15, 0x02)
124 :
125 0 : #define MCUX_SAI0_CLK MCUX_LPC_CLK_ID(0x16, 0x00)
126 0 : #define MCUX_SAI1_CLK MCUX_LPC_CLK_ID(0x16, 0x01)
127 0 : #define MCUX_SAI2_CLK MCUX_LPC_CLK_ID(0x16, 0x02)
128 :
129 0 : #define MCUX_LPSPI0_CLK MCUX_LPC_CLK_ID(0x17, 0x00)
130 0 : #define MCUX_LPSPI1_CLK MCUX_LPC_CLK_ID(0x17, 0x01)
131 :
132 : #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_MCUX_LPC_SYSCON_H_ */
|