xref: /aosp_15_r20/external/coreboot/src/mainboard/ibm/sbp1/include/spr_sbp1_gpio.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef CFG_GPIO_H
4 #define CFG_GPIO_H
5 
6 #include <gpio.h>
7 
8 static const struct pad_config gpio_table[] = {
9 	/* ------- GPIO Community 0 ------- */
10 	/* ------- GPIO Group GPPC_A ------- */
11 	/* PCH default for ESPI inter GPPC_A0-A9 */
12 	/* Unused */
13 	PAD_NC(GPPC_A10, NONE),
14 	PAD_NC(GPPC_A11, NONE),
15 	PAD_NC(GPPC_A12, NONE),
16 	PAD_NC(GPPC_A13, NONE),
17 	PAD_NC(GPPC_A14, NONE),
18 	PAD_NC(GPPC_A15, NONE),
19 	PAD_NC(GPPC_A16, NONE),
20 	PAD_NC(GPPC_A17, NONE),
21 	PAD_NC(GPPC_A18, NONE),
22 	PAD_NC(GPPC_A19, NONE),
23 
24 	/* ------- GPIO Group GPPC_B ------- */
25 	/* PTI */
26 	PAD_CFG_NF(GPPC_B0, NONE, DEEP, NF4),
27 	PAD_CFG_NF(GPPC_B1, NONE, DEEP, NF4),
28 	PAD_CFG_NF(GPPC_B2, NONE, DEEP, NF4),
29 	PAD_CFG_NF(GPPC_B3, NONE, DEEP, NF4),
30 	PAD_CFG_NF(GPPC_B4, NONE, DEEP, NF4),
31 	PAD_CFG_NF(GPPC_B5, NONE, DEEP, NF4),
32 	/* GPPC_B12-B23 - PTI */
33 	PAD_CFG_NF(GPPC_B12, NONE, DEEP, NF4),
34 	PAD_CFG_NF(GPPC_B13, NONE, DEEP, NF4),
35 	PAD_CFG_NF(GPPC_B14, NONE, DEEP, NF4),
36 	PAD_CFG_NF(GPPC_B15, NONE, DEEP, NF4),
37 	PAD_CFG_NF(GPPC_B16, NONE, DEEP, NF4),
38 	PAD_CFG_NF(GPPC_B17, NONE, DEEP, NF4),
39 	PAD_CFG_NF(GPPC_B18, NONE, DEEP, NF4),
40 	PAD_CFG_NF(GPPC_B19, NONE, DEEP, NF4),
41 	PAD_CFG_NF(GPPC_B20, NONE, DEEP, NF4),
42 	PAD_CFG_NF(GPPC_B21, NONE, DEEP, NF4),
43 	PAD_CFG_NF(GPPC_B22, NONE, DEEP, NF4),
44 	PAD_CFG_NF(GPPC_B23, NONE, DEEP, NF4),
45 	/* USB2_OC1_N */
46 	PAD_NC(GPPC_B6, NONE),
47 	/* USB2_OC2_N */
48 	PAD_NC(GPPC_B7, NONE),
49 	/* USB2_OC3_N */
50 	PAD_NC(GPPC_B8, NONE),
51 	/* USB2_OC4_N */
52 	PAD_NC(GPPC_B9, NONE),
53 	/* USB2_OC5_N */
54 	PAD_NC(GPPC_B10, NONE),
55 	/* USB2_OC6_N */
56 	PAD_NC(GPPC_B11, NONE),
57 
58 	/* ------- GPIO Community 1 ------- */
59 	/* ------- GPIO Group GPPC_C ------- */
60 	/* ME_SML0CLK */
61 	PAD_CFG_NF(GPPC_C0, NONE, DEEP, NF1),
62 	PAD_CFG_NF(GPPC_C1, NONE, DEEP, NF1),
63 	PAD_CFG_NF(GPPC_C2, NONE, DEEP, NF1),
64 
65 	/* FM_BIOS_POST_CMPLT_N */
66 	PAD_CFG_GPO(GPPC_C17, 1, DEEP),
67 
68 	/* No Connect */
69 	PAD_NC(GPPC_C3, NONE),
70 	PAD_NC(GPPC_C4, NONE),
71 	PAD_NC(GPPC_C5, NONE),
72 	PAD_NC(GPPC_C6, NONE),
73 	PAD_NC(GPPC_C7, NONE),
74 	PAD_NC(GPPC_C8, NONE),
75 	PAD_NC(GPPC_C9, NONE),
76 	PAD_NC(GPPC_C10, NONE),
77 	PAD_NC(GPPC_C11, NONE),
78 	PAD_NC(GPPC_C12, NONE),
79 	PAD_NC(GPPC_C13, NONE),
80 	PAD_NC(GPPC_C14, NONE),
81 	PAD_NC(GPPC_C15, NONE),
82 	PAD_NC(GPPC_C16, NONE),
83 	PAD_NC(GPPC_C18, NONE),
84 	PAD_NC(GPPC_C19, NONE),
85 	PAD_NC(GPPC_C20, NONE),
86 	PAD_NC(GPPC_C21, NONE),
87 
88 	/* ------- GPIO Group GPPC_S ------- */
89 	PAD_NC(GPPC_S0, NONE),
90 	PAD_NC(GPPC_S1, NONE),
91 	PAD_NC(GPPC_S2, NONE),
92 	PAD_NC(GPPC_S3, NONE),
93 	PAD_NC(GPPC_S4, NONE),
94 	PAD_NC(GPPC_S5, NONE),
95 	PAD_NC(GPPC_S6, NONE),
96 	PAD_NC(GPPC_S7, NONE),
97 	PAD_NC(GPPC_S8, NONE),
98 	PAD_NC(GPPC_S10, NONE),
99 	PAD_NC(GPPC_S11, NONE),
100 
101 	/* FM_SMI_ACTIVE_N */
102 	PAD_CFG_NF(GPPC_S9, NONE, DEEP, NF1),
103 
104 	/* ------- GPIO Group GPP_D ------- */
105 	/* SMB_HOST_STBY_BMC_LVC3_R2 */
106 	PAD_CFG_NF(GPP_D0, NONE, DEEP, NF1),
107 	PAD_CFG_NF(GPP_D1, NONE, DEEP, NF1),
108 	/* PLTRST PCHHOT_N */
109 	//PAD_CFG_NF(GPP_D11, NONE, DEEP, NF1),
110 	//PAD_CFG_NF(GPP_D12, NONE, DEEP, NF1),
111 
112 	/* No Connect */
113 	PAD_NC(GPP_D2, NONE),
114 	PAD_NC(GPP_D8, NONE),
115 	PAD_NC(GPP_D9, NONE),
116 	PAD_NC(GPP_D10, NONE),
117 	PAD_NC(GPP_D15, NONE),
118 	PAD_NC(GPP_D16, NONE),
119 	PAD_NC(GPP_D17, NONE),
120 	PAD_NC(GPP_D18, NONE),
121 	PAD_NC(GPP_D19, NONE),
122 	PAD_NC(GPP_D20, NONE),
123 	PAD_NC(GPP_D21, NONE),
124 	PAD_NC(GPP_D22, NONE),
125 	PAD_NC(GPP_D23, NONE),
126 
127 	/* ------- GPIO Community 2 ------- */
128 	/* ------- GPIO Group GPP_O ------- */
129 	/* Unused */
130 	PAD_NC(GPP_O0, NONE),
131 	PAD_NC(GPP_O7, NONE),
132 
133 	/* ------- GPIO Community 3 ------- */
134 	/* ------- GPIO Group GPP_E ------- */
135 	/* Unused */
136 	PAD_NC(GPP_E0, NONE),
137 	PAD_NC(GPP_E1, NONE),
138 	PAD_NC(GPP_E6, NONE),
139 	PAD_NC(GPP_E7, NONE),
140 	PAD_NC(GPP_E9, NONE),
141 	PAD_NC(GPP_E10, NONE),
142 	PAD_NC(GPP_E11, NONE),
143 	PAD_NC(GPP_E12, NONE),
144 	PAD_NC(GPP_E14, NONE),
145 	PAD_NC(GPP_E17, NONE),
146 	PAD_NC(GPP_E18, NONE),
147 	PAD_NC(GPP_E19, NONE),
148 
149 	/* SS2/SS1 SATA/PCIE gpio */
150 	PAD_CFG_NF(GPP_E2, NONE, DEEP, NF1),
151 	PAD_CFG_NF(GPP_E3, NONE, DEEP, NF1),
152 	PAD_CFG_NF(GPP_E4, NONE, DEEP, NF1),
153 	PAD_CFG_NF(GPP_E5, NONE, DEEP, NF1),
154 	/* SSD2/SSD1 DEVSLP */
155 	PAD_CFG_NF(GPP_E9, NONE, DEEP, NF2),
156 	PAD_CFG_NF(GPP_E13, NONE, DEEP, NF2),
157 
158 	PAD_CFG_GPI(GPP_E15, NONE, DEEP),
159 	PAD_CFG_GPI(GPP_E16, NONE, DEEP),
160 
161 	/* ------- GPIO Community 4 ------- */
162 	/* -------- GPIO Group GPPC_H -------- */
163 	/* Unused */
164 	PAD_NC(GPPC_H0, NONE),
165 	PAD_NC(GPPC_H1, NONE),
166 	PAD_NC(GPPC_H6, NONE),
167 	PAD_NC(GPPC_H7, NONE),
168 	PAD_NC(GPPC_H15, NONE),
169 	PAD_NC(GPPC_H16, NONE),
170 	PAD_NC(GPPC_H17, NONE),
171 	PAD_NC(GPPC_H18, NONE),
172 	PAD_NC(GPPC_H19, NONE),
173 
174 	/* ------- GPIO Group GPP_J ------- */
175 	/* Use PCH defaults */
176 	/* GPP_J0 CPUPWRGD */
177 	/* GPP_J1 CPU_THRMTRIP_N */
178 	/* GPP_J2 PLTRST_CPU_N */
179 	/* GPP_J3 TRIGGER0_N */
180 	/* GPP_J4 TRIGGER1_N */
181 	/* GPP_J5 CPU_PWER_DEBUG_N */
182 	/* GPP_J6 CPU_MEMTRIP_N */
183 	/* GPP_J7 CPU_MSMI_N */
184 	/* GPP_J12 CPU_ERR0_N */
185 	/* GPP_J13 CPU_CATERR_N */
186 	/* GPP_J14 CPU_ERR1_N */
187 	/* GPP_J15 CPU_ERR2_N */
188 
189 	/* ------- GPIO Community 5 ------- */
190 	/* ------- GPIO Group GPP_I ------- */
191 	/* Unused */
192 	PAD_NC(GPP_I12, NONE),
193 	PAD_NC(GPP_I13, NONE),
194 	PAD_NC(GPP_I14, NONE),
195 	PAD_NC(GPP_I15, NONE),
196 	PAD_NC(GPP_I16, NONE),
197 	PAD_NC(GPP_I17, NONE),
198 	PAD_NC(GPP_I22, NONE),
199 	PAD_NC(GPP_I23, NONE),
200 	/* SPI TPM IRQ */
201 	PAD_CFG_GPI(GPP_I17, NONE, DEEP),
202 
203 	/* ------- GPIO Group GPP_L ------- */
204 	/* Chip default */
205 	/* GPP_L_0 PM_SYNC_0 */
206 	/* GPP_L_1 PM_DOWN_0 */
207 
208 	/* Unused */
209 	PAD_NC(GPP_L3, NONE),
210 	PAD_NC(GPP_L4, NONE),
211 	/* FM_PASSWORD_CLEAR_N */
212 	PAD_NC(GPP_L5, NONE),
213 	PAD_NC(GPP_L6, NONE),
214 	PAD_NC(GPP_L7, NONE),
215 	PAD_NC(GPP_L8, NONE),
216 
217 	/* ------- GPIO Group GPP_M ------- */
218 	/* Unused */
219 	PAD_NC(GPP_M0, NONE),
220 	PAD_NC(GPP_M1, NONE),
221 	PAD_NC(GPP_M2, NONE),
222 	PAD_NC(GPP_M3, NONE),
223 	PAD_NC(GPP_M4, NONE),
224 	PAD_NC(GPP_M5, NONE),
225 	PAD_NC(GPP_M6, NONE),
226 	PAD_NC(GPP_M7, NONE),
227 	PAD_NC(GPP_M8, NONE),
228 	PAD_NC(GPP_M11, NONE),
229 	PAD_NC(GPP_M12, NONE),
230 	PAD_NC(GPP_M15, NONE),
231 	PAD_NC(GPP_M16, NONE),
232 	PAD_NC(GPP_M17, NONE),
233 
234 	/* ------- GPIO Group GPP_N ------- */
235 	/* Unused */
236 	PAD_NC(GPP_N1, NONE),
237 	PAD_NC(GPP_N4, NONE),
238 };
239 
240 #endif /* CFG_GPIO_H */
241