summaryrefslogtreecommitdiffstats
path: root/src/soc/intel/jasperlake/include/soc/gpio_soc_defs.h
blob: 011b785bef5ffcab9bfa68ca6e3572a0e54b0129 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
/* SPDX-License-Identifier: GPL-2.0-only */

#ifndef _SOC_JASPERLAKE_GPIO_SOC_DEFS_H_
#define _SOC_JASPERLAKE_GPIO_SOC_DEFS_H_

/*
 * Most of the fixed numbers and macros are based on the GPP groups.
 * The GPIO groups are accessed through register blocks called
 * communities.
 */

#define GPP_A			0x0
#define GPP_B			0x1
#define GPP_G			0x2
#define GPP_C			0x3
#define GPP_R			0x4
#define GPP_D			0x5
#define GPP_S			0x6
#define GPP_H			0x7
#define GPP_VGPIO		0x8
#define GPP_F			0x9
#define GPP_GPD			0xA
#define GPP_E			0xD

#define GPIO_NUM_GROUPS		12
#define GPIO_MAX_NUM_PER_GROUP	24

/*
 * GPIOs are ordered monotonically increasing to match ACPI/OS driver.
 */

/* Group F */
#define GPP_F0		0
#define GPP_F1		1
#define GPP_F2		2
#define GPP_F3		3
#define GPP_F4		4
#define GPP_F5		5
#define GPP_F6		6
#define GPP_F7		7
#define GPP_F8		8
#define GPP_F9		9
#define GPP_F10		10
#define GPP_F11		11
#define GPP_F12		12
#define GPP_F13		13
#define GPP_F14		14
#define GPP_F15		15
#define GPP_F16		16
#define GPP_F17		17
#define GPP_F18		18
#define GPP_F19		19

/* Group B */
#define GPIO_RSVD_0	20
#define GPIO_RSVD_1	21
#define GPIO_RSVD_2	22
#define GPIO_RSVD_3	23
#define GPIO_RSVD_4	24
#define GPIO_RSVD_5	25
#define GPIO_RSVD_6	26
#define GPIO_RSVD_7	27
#define GPIO_RSVD_8	28
#define GPP_B0		29
#define GPP_B1		30
#define GPP_B2		31
#define GPP_B3		32
#define GPP_B4		33
#define GPP_B5		34
#define GPP_B6		35
#define GPP_B7		36
#define GPP_B8		37
#define GPP_B9		38
#define GPP_B10		39
#define GPP_B11		40
#define GPP_B12		41
#define GPP_B13		42
#define GPP_B14		43
#define GPP_B15		44
#define GPP_B16		45
#define GPP_B17		46
#define GPP_B18		47
#define GPP_B19		48
#define GPP_B20		49
#define GPP_B21		50
#define GPP_B22		51
#define GPP_B23		52
#define GPIO_RSVD_9	53
#define GPIO_RSVD_10	54

/* Group A */
#define GPP_A0		55
#define GPP_A1		56
#define GPP_A2		57
#define GPP_A3		58
#define GPP_A4		59
#define GPP_A5		60
#define GPP_A6		61
#define GPP_A7		62
#define GPP_A8		63
#define GPP_A9		64
#define GPP_A10		65
#define GPP_A11		66
#define GPP_A12		67
#define GPP_A13		68
#define GPP_A14		69
#define GPP_A15		70
#define GPP_A16		71
#define GPP_A17		72
#define GPP_A18		73
#define GPP_A19		74
#define GPIO_RSVD_11	75

/* Group S */
#define GPP_S0		76
#define GPP_S1		77
#define GPP_S2		78
#define GPP_S3		79
#define GPP_S4		80
#define GPP_S5		81
#define GPP_S6		82
#define GPP_S7		83

/* Group R */
#define GPP_R0		84
#define GPP_R1		85
#define GPP_R2		86
#define GPP_R3		87
#define GPP_R4		88
#define GPP_R5		89
#define GPP_R6		90
#define GPP_R7		91

#define GPIO_COM0_START		GPP_F0
#define GPIO_COM0_END		GPP_R7
#define NUM_GPIO_COM0_PADS	(GPIO_COM0_END - GPIO_COM0_START + 1)

/* Group H */
#define GPP_H0		92
#define GPP_H1		93
#define GPP_H2		94
#define GPP_H3		95
#define GPP_H4		96
#define GPP_H5		97
#define GPP_H6		98
#define GPP_H7		99
#define GPP_H8		100
#define GPP_H9		101
#define GPP_H10		102
#define GPP_H11		103
#define GPP_H12		104
#define GPP_H13		105
#define GPP_H14		106
#define GPP_H15		107
#define GPP_H16		108
#define GPP_H17		109
#define GPP_H18		110
#define GPP_H19		111
#define GPP_H20		112
#define GPP_H21		113
#define GPP_H22		114
#define GPP_H23		115

/* Group D */
#define GPP_D0		116
#define GPP_D1		117
#define GPP_D2		118
#define GPP_D3		119
#define GPP_D4		120
#define GPP_D5		121
#define GPP_D6		122
#define GPP_D7		123
#define GPP_D8		124
#define GPP_D9		125
#define GPP_D10		126
#define GPP_D11		127
#define GPP_D12		128
#define GPP_D13		129
#define GPP_D14		130
#define GPP_D15		131
#define GPP_D16		132
#define GPP_D17		133
#define GPP_D18		134
#define GPP_D19		135
#define GPP_D20		136
#define GPP_D21		137
#define GPP_D22		138
#define GPP_D23		139
#define GPIO_RSVD_12	140
#define GPIO_RSVD_13	141

/* Group VGPIO */
#define VGPIO_0		142
#define VGPIO_3		143
#define VGPIO_4		144
#define VGPIO_5		145
#define VGPIO_6		146
#define VGPIO_7		147
#define VGPIO_8		148
#define VGPIO_9		149
#define VGPIO_10	150
#define VGPIO_11	151
#define VGPIO_12	152
#define VGPIO_13	153
#define VGPIO_18	154
#define VGPIO_19	155
#define VGPIO_20	156
#define VGPIO_21	157
#define VGPIO_22	158
#define VGPIO_23	159
#define VGPIO_24	160
#define VGPIO_25	161
#define VGPIO_30	162
#define VGPIO_31	163
#define VGPIO_32	164
#define VGPIO_33	165
#define VGPIO_34	166
#define VGPIO_35	167
#define VGPIO_36	168
#define VGPIO_37	169
#define VGPIO_39	170

/* Group C */
#define GPP_C0		171
#define GPP_C1		172
#define GPP_C2		173
#define GPP_C3		174
#define GPP_C4		175
#define GPP_C5		176
#define GPP_C6		177
#define GPP_C7		178
#define GPP_C8		179
#define GPP_C9		180
#define GPP_C10		181
#define GPP_C11		182
#define GPP_C12		183
#define GPP_C13		184
#define GPP_C14		185
#define GPP_C15		186
#define GPP_C16		187
#define GPP_C17		188
#define GPP_C18		189
#define GPP_C19		190
#define GPP_C20		191
#define GPP_C21		192
#define GPP_C22		193
#define GPP_C23		194

#define GPIO_COM1_START		GPP_H0
#define GPIO_COM1_END		GPP_C23
#define NUM_GPIO_COM1_PADS	(GPIO_COM1_END - GPIO_COM1_START + 1)

/* Group GPD */
#define GPD0		195
#define GPD1		196
#define GPD2		197
#define GPD3		198
#define GPD4		199
#define GPD5		200
#define GPD6		201
#define GPD7		202
#define GPD8		203
#define GPD9		204
#define GPD10		205
#define GPIO_RSVD_14	206
#define GPIO_RSVD_15	207
#define GPIO_RSVD_16	208
#define GPIO_RSVD_17	209

#define GPIO_COM2_START		GPD0
#define GPIO_COM2_END		GPIO_RSVD_17
#define NUM_GPIO_COM2_PADS	(GPIO_COM2_END - GPIO_COM2_START + 1)

/* Group E */
#define GPIO_RSVD_18	210
#define GPIO_RSVD_19	211
#define GPIO_RSVD_20	212
#define GPIO_RSVD_21	213
#define GPIO_RSVD_22	214
#define GPIO_RSVD_23	215
#define GPP_E0		216
#define GPP_E1		217
#define GPP_E2		218
#define GPP_E3		219
#define GPP_E4		220
#define GPP_E5		221
#define GPP_E6		222
#define GPP_E7		223
#define GPP_E8		224
#define GPP_E9		225
#define GPP_E10		226
#define GPP_E11		227
#define GPP_E12		228
#define GPP_E13		229
#define GPP_E14		230
#define GPP_E15		231
#define GPP_E16		232
#define GPP_E17		233
#define GPP_E18		234
#define GPP_E19		235
#define GPP_E20		236
#define GPP_E21		237
#define GPP_E22		238
#define GPP_E23		239
#define GPIO_RSVD_24	240
#define GPIO_RSVD_25	241
#define GPIO_RSVD_26	242
#define GPIO_RSVD_27	243
#define GPIO_RSVD_28	244
#define GPIO_RSVD_29	245
#define GPIO_RSVD_30	246
#define GPIO_RSVD_31	247
#define GPIO_RSVD_32	248
#define GPIO_RSVD_33	249
#define GPIO_RSVD_34	250
#define GPIO_RSVD_35	251
#define GPIO_RSVD_36	252

#define GPIO_COM4_START		GPIO_RSVD_18
#define GPIO_COM4_END		GPIO_RSVD_36
#define NUM_GPIO_COM4_PADS	(GPIO_COM4_END - GPIO_COM4_START + 1)

/* Group G */
#define GPP_G0		253
#define GPP_G1		254
#define GPP_G2		255
#define GPP_G3		256
#define GPP_G4		257
#define GPP_G5		258
#define GPP_G6		259
#define GPP_G7		260

#define GPIO_COM5_START		GPP_G0
#define GPIO_COM5_END		GPP_G7
#define NUM_GPIO_COM5_PADS	(GPIO_COM5_END - GPIO_COM5_START + 1)

#define TOTAL_PADS	261

#define COMM_0		0
#define COMM_1		1
#define COMM_2		2
#define COMM_4		3
#define COMM_5		4
#define TOTAL_GPIO_COMM	5

#endif