1*e2266f4cSRahul Tanwar /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2*e2266f4cSRahul Tanwar /*
3*e2266f4cSRahul Tanwar  * Copyright (C) 2020 Intel Corporation.
4*e2266f4cSRahul Tanwar  * Lei Chuanhua <Chuanhua.lei@intel.com>
5*e2266f4cSRahul Tanwar  * Zhu Yixin <Yixin.zhu@intel.com>
6*e2266f4cSRahul Tanwar  */
7*e2266f4cSRahul Tanwar #ifndef __INTEL_LGM_CLK_H
8*e2266f4cSRahul Tanwar #define __INTEL_LGM_CLK_H
9*e2266f4cSRahul Tanwar 
10*e2266f4cSRahul Tanwar /* PLL clocks */
11*e2266f4cSRahul Tanwar #define LGM_CLK_OSC		1
12*e2266f4cSRahul Tanwar #define LGM_CLK_PLLPP		2
13*e2266f4cSRahul Tanwar #define LGM_CLK_PLL2		3
14*e2266f4cSRahul Tanwar #define LGM_CLK_PLL0CZ		4
15*e2266f4cSRahul Tanwar #define LGM_CLK_PLL0B		5
16*e2266f4cSRahul Tanwar #define LGM_CLK_PLL1		6
17*e2266f4cSRahul Tanwar #define LGM_CLK_LJPLL3		7
18*e2266f4cSRahul Tanwar #define LGM_CLK_LJPLL4		8
19*e2266f4cSRahul Tanwar #define LGM_CLK_PLL0CM0		9
20*e2266f4cSRahul Tanwar #define LGM_CLK_PLL0CM1		10
21*e2266f4cSRahul Tanwar 
22*e2266f4cSRahul Tanwar /* clocks from PLLs */
23*e2266f4cSRahul Tanwar 
24*e2266f4cSRahul Tanwar /* ROPLL clocks */
25*e2266f4cSRahul Tanwar #define LGM_CLK_PP_HW		15
26*e2266f4cSRahul Tanwar #define LGM_CLK_PP_UC		16
27*e2266f4cSRahul Tanwar #define LGM_CLK_PP_FXD		17
28*e2266f4cSRahul Tanwar #define LGM_CLK_PP_TBM		18
29*e2266f4cSRahul Tanwar 
30*e2266f4cSRahul Tanwar /* PLL2 clocks */
31*e2266f4cSRahul Tanwar #define LGM_CLK_DDR		20
32*e2266f4cSRahul Tanwar 
33*e2266f4cSRahul Tanwar /* PLL0CZ */
34*e2266f4cSRahul Tanwar #define LGM_CLK_CM		25
35*e2266f4cSRahul Tanwar #define LGM_CLK_IC		26
36*e2266f4cSRahul Tanwar #define LGM_CLK_SDXC3		27
37*e2266f4cSRahul Tanwar 
38*e2266f4cSRahul Tanwar /* PLL0B */
39*e2266f4cSRahul Tanwar #define LGM_CLK_NGI		30
40*e2266f4cSRahul Tanwar #define LGM_CLK_NOC4		31
41*e2266f4cSRahul Tanwar #define LGM_CLK_SW		32
42*e2266f4cSRahul Tanwar #define LGM_CLK_QSPI		33
43*e2266f4cSRahul Tanwar #define LGM_CLK_CQEM		LGM_CLK_SW
44*e2266f4cSRahul Tanwar #define LGM_CLK_EMMC5		LGM_CLK_NOC4
45*e2266f4cSRahul Tanwar 
46*e2266f4cSRahul Tanwar /* PLL1 */
47*e2266f4cSRahul Tanwar #define LGM_CLK_CT		35
48*e2266f4cSRahul Tanwar #define LGM_CLK_DSP		36
49*e2266f4cSRahul Tanwar #define LGM_CLK_VIF		37
50*e2266f4cSRahul Tanwar 
51*e2266f4cSRahul Tanwar /* LJPLL3 */
52*e2266f4cSRahul Tanwar #define LGM_CLK_CML		40
53*e2266f4cSRahul Tanwar #define LGM_CLK_SERDES		41
54*e2266f4cSRahul Tanwar #define LGM_CLK_POOL		42
55*e2266f4cSRahul Tanwar #define LGM_CLK_PTP		43
56*e2266f4cSRahul Tanwar 
57*e2266f4cSRahul Tanwar /* LJPLL4 */
58*e2266f4cSRahul Tanwar #define LGM_CLK_PCIE		45
59*e2266f4cSRahul Tanwar #define LGM_CLK_SATA		LGM_CLK_PCIE
60*e2266f4cSRahul Tanwar 
61*e2266f4cSRahul Tanwar /* PLL0CM0 */
62*e2266f4cSRahul Tanwar #define LGM_CLK_CPU0		50
63*e2266f4cSRahul Tanwar 
64*e2266f4cSRahul Tanwar /* PLL0CM1 */
65*e2266f4cSRahul Tanwar #define LGM_CLK_CPU1		55
66*e2266f4cSRahul Tanwar 
67*e2266f4cSRahul Tanwar /* Miscellaneous clocks */
68*e2266f4cSRahul Tanwar #define LGM_CLK_EMMC4		60
69*e2266f4cSRahul Tanwar #define LGM_CLK_SDXC2		61
70*e2266f4cSRahul Tanwar #define LGM_CLK_EMMC		62
71*e2266f4cSRahul Tanwar #define LGM_CLK_SDXC		63
72*e2266f4cSRahul Tanwar #define LGM_CLK_SLIC		64
73*e2266f4cSRahul Tanwar #define LGM_CLK_DCL		65
74*e2266f4cSRahul Tanwar #define LGM_CLK_DOCSIS		66
75*e2266f4cSRahul Tanwar #define LGM_CLK_PCM		67
76*e2266f4cSRahul Tanwar #define LGM_CLK_DDR_PHY		68
77*e2266f4cSRahul Tanwar #define LGM_CLK_PONDEF		69
78*e2266f4cSRahul Tanwar #define LGM_CLK_PL25M		70
79*e2266f4cSRahul Tanwar #define LGM_CLK_PL10M		71
80*e2266f4cSRahul Tanwar #define LGM_CLK_PL1544K		72
81*e2266f4cSRahul Tanwar #define LGM_CLK_PL2048K		73
82*e2266f4cSRahul Tanwar #define LGM_CLK_PL8K		74
83*e2266f4cSRahul Tanwar #define LGM_CLK_PON_NTR		75
84*e2266f4cSRahul Tanwar #define LGM_CLK_SYNC0		76
85*e2266f4cSRahul Tanwar #define LGM_CLK_SYNC1		77
86*e2266f4cSRahul Tanwar #define LGM_CLK_PROGDIV		78
87*e2266f4cSRahul Tanwar #define LGM_CLK_OD0		79
88*e2266f4cSRahul Tanwar #define LGM_CLK_OD1		80
89*e2266f4cSRahul Tanwar #define LGM_CLK_CBPHY0		81
90*e2266f4cSRahul Tanwar #define LGM_CLK_CBPHY1		82
91*e2266f4cSRahul Tanwar #define LGM_CLK_CBPHY2		83
92*e2266f4cSRahul Tanwar #define LGM_CLK_CBPHY3		84
93*e2266f4cSRahul Tanwar 
94*e2266f4cSRahul Tanwar /* Gate clocks */
95*e2266f4cSRahul Tanwar /* Gate CLK0 */
96*e2266f4cSRahul Tanwar #define LGM_GCLK_C55		100
97*e2266f4cSRahul Tanwar #define LGM_GCLK_QSPI		101
98*e2266f4cSRahul Tanwar #define LGM_GCLK_EIP197		102
99*e2266f4cSRahul Tanwar #define LGM_GCLK_VAULT		103
100*e2266f4cSRahul Tanwar #define LGM_GCLK_TOE		104
101*e2266f4cSRahul Tanwar #define LGM_GCLK_SDXC		105
102*e2266f4cSRahul Tanwar #define LGM_GCLK_EMMC		106
103*e2266f4cSRahul Tanwar #define LGM_GCLK_SPI_DBG	107
104*e2266f4cSRahul Tanwar #define LGM_GCLK_DMA3		108
105*e2266f4cSRahul Tanwar 
106*e2266f4cSRahul Tanwar /* Gate CLK1 */
107*e2266f4cSRahul Tanwar #define LGM_GCLK_DMA0		120
108*e2266f4cSRahul Tanwar #define LGM_GCLK_LEDC0		121
109*e2266f4cSRahul Tanwar #define LGM_GCLK_LEDC1		122
110*e2266f4cSRahul Tanwar #define LGM_GCLK_I2S0		123
111*e2266f4cSRahul Tanwar #define LGM_GCLK_I2S1		124
112*e2266f4cSRahul Tanwar #define LGM_GCLK_EBU		125
113*e2266f4cSRahul Tanwar #define LGM_GCLK_PWM		126
114*e2266f4cSRahul Tanwar #define LGM_GCLK_I2C0		127
115*e2266f4cSRahul Tanwar #define LGM_GCLK_I2C1		128
116*e2266f4cSRahul Tanwar #define LGM_GCLK_I2C2		129
117*e2266f4cSRahul Tanwar #define LGM_GCLK_I2C3		130
118*e2266f4cSRahul Tanwar #define LGM_GCLK_SSC0		131
119*e2266f4cSRahul Tanwar #define LGM_GCLK_SSC1		132
120*e2266f4cSRahul Tanwar #define LGM_GCLK_SSC2		133
121*e2266f4cSRahul Tanwar #define LGM_GCLK_SSC3		134
122*e2266f4cSRahul Tanwar #define LGM_GCLK_GPTC0		135
123*e2266f4cSRahul Tanwar #define LGM_GCLK_GPTC1		136
124*e2266f4cSRahul Tanwar #define LGM_GCLK_GPTC2		137
125*e2266f4cSRahul Tanwar #define LGM_GCLK_GPTC3		138
126*e2266f4cSRahul Tanwar #define LGM_GCLK_ASC0		139
127*e2266f4cSRahul Tanwar #define LGM_GCLK_ASC1		140
128*e2266f4cSRahul Tanwar #define LGM_GCLK_ASC2		141
129*e2266f4cSRahul Tanwar #define LGM_GCLK_ASC3		142
130*e2266f4cSRahul Tanwar #define LGM_GCLK_PCM0		143
131*e2266f4cSRahul Tanwar #define LGM_GCLK_PCM1		144
132*e2266f4cSRahul Tanwar #define LGM_GCLK_PCM2		145
133*e2266f4cSRahul Tanwar 
134*e2266f4cSRahul Tanwar /* Gate CLK2 */
135*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE10		150
136*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE11		151
137*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE30		152
138*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE31		153
139*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE20		154
140*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE21		155
141*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE40		156
142*e2266f4cSRahul Tanwar #define LGM_GCLK_PCIE41		157
143*e2266f4cSRahul Tanwar #define LGM_GCLK_XPCS0		158
144*e2266f4cSRahul Tanwar #define LGM_GCLK_XPCS1		159
145*e2266f4cSRahul Tanwar #define LGM_GCLK_XPCS2		160
146*e2266f4cSRahul Tanwar #define LGM_GCLK_XPCS3		161
147*e2266f4cSRahul Tanwar #define LGM_GCLK_SATA0		162
148*e2266f4cSRahul Tanwar #define LGM_GCLK_SATA1		163
149*e2266f4cSRahul Tanwar #define LGM_GCLK_SATA2		164
150*e2266f4cSRahul Tanwar #define LGM_GCLK_SATA3		165
151*e2266f4cSRahul Tanwar 
152*e2266f4cSRahul Tanwar /* Gate CLK3 */
153*e2266f4cSRahul Tanwar #define LGM_GCLK_ARCEM4		170
154*e2266f4cSRahul Tanwar #define LGM_GCLK_IDMAR1		171
155*e2266f4cSRahul Tanwar #define LGM_GCLK_IDMAT0		172
156*e2266f4cSRahul Tanwar #define LGM_GCLK_IDMAT1		173
157*e2266f4cSRahul Tanwar #define LGM_GCLK_IDMAT2		174
158*e2266f4cSRahul Tanwar #define LGM_GCLK_PPV4		175
159*e2266f4cSRahul Tanwar #define LGM_GCLK_GSWIPO		176
160*e2266f4cSRahul Tanwar #define LGM_GCLK_CQEM		177
161*e2266f4cSRahul Tanwar #define LGM_GCLK_XPCS5		178
162*e2266f4cSRahul Tanwar #define LGM_GCLK_USB1		179
163*e2266f4cSRahul Tanwar #define LGM_GCLK_USB2		180
164*e2266f4cSRahul Tanwar 
165*e2266f4cSRahul Tanwar #endif /* __INTEL_LGM_CLK_H */
166