tree: drop last paragraph of GPL copyright header
[coreboot.git] / src / mainboard / google / parrot / gpio.h
blob1cfd487f097d783c2b48c6fed9e74c51e3a4819d
1 /*
2 * This file is part of the coreboot project.
4 * Copyright (C) 2011 The Chromium OS Authors. All rights reserved.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
16 #ifndef PARROT_GPIO_H
17 #define PARROT_GPIO_H
19 #include "southbridge/intel/bd82x6x/gpio.h"
21 const struct pch_gpio_set1 pch_gpio_set1_mode = {
22 .gpio0 = GPIO_MODE_NONE, /* NOT USED */
23 .gpio1 = GPIO_MODE_NONE, /* NOT USED */
24 .gpio2 = GPIO_MODE_NATIVE, /* NOT USED / PIRQE# */
25 .gpio3 = GPIO_MODE_NONE, /* NOT USED / PIRQ#F */
26 .gpio4 = GPIO_MODE_NONE, /* NOT USED / PIRQG# */
27 .gpio5 = GPIO_MODE_NONE, /* NOT USED / PIRQH# */
28 .gpio6 = GPIO_MODE_NONE, /* NOT USED / FAN TACH2 */
29 .gpio7 = GPIO_MODE_GPIO, /* EC_SCI# */
30 .gpio8 = GPIO_MODE_GPIO, /* EC SMI# */
31 .gpio9 = GPIO_MODE_NATIVE, /* NOT USED / OC5# USB */
32 .gpio10 = GPIO_MODE_NATIVE, /* NOT USED / OC6# USB */
33 .gpio11 = GPIO_MODE_NONE, /* NOT USED / SMB_ALERT*/
34 .gpio12 = GPIO_MODE_GPIO, /* Track Pad IRQ / LAN_PHY_PWR_CTRL / SMB_ALERT */
35 .gpio13 = GPIO_MODE_NONE, /* NOT USED / HDA_DOCK_RST */
36 .gpio14 = GPIO_MODE_NATIVE, /* NOT USED / OC7# USB */
37 .gpio15 = GPIO_MODE_GPIO, /* EC_LID_OUT (INPUT to PantherPoint) */
38 .gpio16 = GPIO_MODE_NONE, /* NOT USED / SATA4GP */
39 .gpio17 = GPIO_MODE_GPIO, /* DEV MODE */
40 .gpio18 = GPIO_MODE_NATIVE, /* PCIECLKRQ1# */
41 .gpio19 = GPIO_MODE_NONE, /* BIOS BOOT STRAP (NOT USED)/ SATA1GP */
42 .gpio20 = GPIO_MODE_NONE, /* NOT USED / PCIECLKRQ2# */
43 .gpio21 = GPIO_MODE_NONE, /* NOT USED / SATA0GP */
44 .gpio22 = GPIO_MODE_NONE, /* NOT USED */
45 .gpio23 = GPIO_MODE_NONE, /* NOT USED */
46 .gpio24 = GPIO_MODE_NONE, /* NOT USED / MEM_LED */
47 .gpio25 = GPIO_MODE_NATIVE, /* PCIECLKRQ3# */
48 .gpio26 = GPIO_MODE_NONE, /* NOT USED / PCIECLKRQ4# */
49 .gpio27 = GPIO_MODE_NONE, /* S4,S5 WAKE? */
50 .gpio28 = GPIO_MODE_NONE, /* On-Die PLL Voltage Regulator */
51 .gpio29 = GPIO_MODE_NONE, /* NOT USED / SLP_LAN# */
52 .gpio30 = GPIO_MODE_NATIVE, /* SUS_WARN# */
53 .gpio31 = GPIO_MODE_NATIVE, /* ACPRESENT */
56 const struct pch_gpio_set1 pch_gpio_set1_direction = {
57 .gpio0 = GPIO_DIR_INPUT,
58 .gpio1 = GPIO_DIR_INPUT,
59 .gpio2 = GPIO_DIR_INPUT,
60 .gpio3 = GPIO_DIR_INPUT,
61 .gpio4 = GPIO_DIR_INPUT,
62 .gpio5 = GPIO_DIR_INPUT,
63 .gpio6 = GPIO_DIR_INPUT,
64 .gpio7 = GPIO_DIR_INPUT,
65 .gpio8 = GPIO_DIR_INPUT,
66 .gpio9 = GPIO_DIR_INPUT,
67 .gpio10 = GPIO_DIR_INPUT,
68 .gpio11 = GPIO_DIR_INPUT,
69 .gpio12 = GPIO_DIR_INPUT,
70 .gpio13 = GPIO_DIR_INPUT,
71 .gpio14 = GPIO_DIR_INPUT,
72 .gpio15 = GPIO_DIR_INPUT,
73 .gpio16 = GPIO_DIR_INPUT,
74 .gpio17 = GPIO_DIR_INPUT,
75 .gpio18 = GPIO_DIR_INPUT,
76 .gpio19 = GPIO_DIR_INPUT,
77 .gpio20 = GPIO_DIR_INPUT,
78 .gpio21 = GPIO_DIR_INPUT,
79 .gpio22 = GPIO_DIR_INPUT,
80 .gpio23 = GPIO_DIR_INPUT,
81 .gpio24 = GPIO_DIR_INPUT,
82 .gpio25 = GPIO_DIR_INPUT,
83 .gpio26 = GPIO_DIR_INPUT,
84 .gpio27 = GPIO_DIR_INPUT,
85 .gpio28 = GPIO_DIR_INPUT,
86 .gpio29 = GPIO_DIR_INPUT,
87 .gpio30 = GPIO_DIR_OUTPUT,
88 .gpio31 = GPIO_DIR_INPUT,
91 const struct pch_gpio_set1 pch_gpio_set1_level = {
92 .gpio0 = GPIO_LEVEL_LOW,
93 .gpio1 = GPIO_LEVEL_LOW,
94 .gpio2 = GPIO_LEVEL_LOW,
95 .gpio3 = GPIO_LEVEL_LOW,
96 .gpio4 = GPIO_LEVEL_LOW,
97 .gpio5 = GPIO_LEVEL_LOW,
98 .gpio6 = GPIO_LEVEL_LOW,
99 .gpio7 = GPIO_LEVEL_LOW,
100 .gpio8 = GPIO_LEVEL_LOW,
101 .gpio9 = GPIO_LEVEL_LOW,
102 .gpio10 = GPIO_LEVEL_LOW,
103 .gpio11 = GPIO_LEVEL_LOW,
104 .gpio12 = GPIO_LEVEL_LOW,
105 .gpio13 = GPIO_LEVEL_LOW,
106 .gpio14 = GPIO_LEVEL_LOW,
107 .gpio15 = GPIO_LEVEL_LOW,
108 .gpio16 = GPIO_LEVEL_LOW,
109 .gpio17 = GPIO_LEVEL_LOW,
110 .gpio18 = GPIO_LEVEL_LOW,
111 .gpio19 = GPIO_LEVEL_LOW,
112 .gpio20 = GPIO_LEVEL_LOW,
113 .gpio21 = GPIO_LEVEL_LOW,
114 .gpio22 = GPIO_LEVEL_LOW,
115 .gpio23 = GPIO_LEVEL_LOW,
116 .gpio24 = GPIO_LEVEL_LOW,
117 .gpio25 = GPIO_LEVEL_LOW,
118 .gpio26 = GPIO_LEVEL_LOW,
119 .gpio27 = GPIO_LEVEL_LOW,
120 .gpio28 = GPIO_LEVEL_LOW,
121 .gpio29 = GPIO_LEVEL_LOW,
122 .gpio30 = GPIO_LEVEL_LOW,
123 .gpio31 = GPIO_LEVEL_LOW,
126 const struct pch_gpio_set1 pch_gpio_set1_invert = {
127 .gpio7 = GPIO_INVERT,
128 .gpio8 = GPIO_INVERT,
129 .gpio12 = GPIO_INVERT,
130 .gpio15 = GPIO_INVERT,
133 const struct pch_gpio_set2 pch_gpio_set2_mode = {
134 .gpio36 = GPIO_MODE_GPIO, /* W_DISABLE_L */
135 .gpio41 = GPIO_MODE_GPIO, /* SPD vector D0 */
136 .gpio42 = GPIO_MODE_GPIO, /* SPD vector D1 */
137 .gpio43 = GPIO_MODE_GPIO, /* SPD vector D2 */
138 .gpio57 = GPIO_MODE_GPIO, /* PCH_SPI_WP_D */
139 .gpio60 = GPIO_MODE_GPIO, /* DRAMRST_CNTRL_PCH */
142 const struct pch_gpio_set2 pch_gpio_set2_direction = {
143 .gpio32 = GPIO_DIR_INPUT,
144 .gpio33 = GPIO_DIR_INPUT,
145 .gpio34 = GPIO_DIR_INPUT,
146 .gpio35 = GPIO_DIR_INPUT,
147 .gpio36 = GPIO_DIR_INPUT,
148 .gpio37 = GPIO_DIR_INPUT,
149 .gpio38 = GPIO_DIR_INPUT,
150 .gpio39 = GPIO_DIR_INPUT,
151 .gpio40 = GPIO_DIR_INPUT,
152 .gpio41 = GPIO_DIR_INPUT,
153 .gpio42 = GPIO_DIR_INPUT,
154 .gpio43 = GPIO_DIR_INPUT,
155 .gpio44 = GPIO_DIR_INPUT,
156 .gpio45 = GPIO_DIR_INPUT,
157 .gpio46 = GPIO_DIR_INPUT,
158 .gpio47 = GPIO_DIR_INPUT,
159 .gpio48 = GPIO_DIR_INPUT,
160 .gpio49 = GPIO_DIR_INPUT,
161 .gpio50 = GPIO_DIR_INPUT,
162 .gpio51 = GPIO_DIR_INPUT,
163 .gpio52 = GPIO_DIR_INPUT,
164 .gpio53 = GPIO_DIR_INPUT,
165 .gpio54 = GPIO_DIR_INPUT,
166 .gpio55 = GPIO_DIR_INPUT,
167 .gpio56 = GPIO_DIR_INPUT,
168 .gpio57 = GPIO_DIR_INPUT,
169 .gpio58 = GPIO_DIR_INPUT,
170 .gpio59 = GPIO_DIR_INPUT,
171 .gpio60 = GPIO_DIR_INPUT,
172 .gpio61 = GPIO_DIR_INPUT,
173 .gpio62 = GPIO_DIR_INPUT,
174 .gpio63 = GPIO_DIR_INPUT,
177 const struct pch_gpio_set2 pch_gpio_set2_level = {
178 .gpio32 = GPIO_LEVEL_LOW,
179 .gpio33 = GPIO_LEVEL_LOW,
180 .gpio34 = GPIO_LEVEL_LOW,
181 .gpio35 = GPIO_LEVEL_LOW,
182 .gpio36 = GPIO_LEVEL_LOW,
183 .gpio37 = GPIO_LEVEL_LOW,
184 .gpio38 = GPIO_LEVEL_LOW,
185 .gpio39 = GPIO_LEVEL_LOW,
186 .gpio40 = GPIO_LEVEL_LOW,
187 .gpio41 = GPIO_LEVEL_LOW,
188 .gpio42 = GPIO_LEVEL_LOW,
189 .gpio43 = GPIO_LEVEL_LOW,
190 .gpio44 = GPIO_LEVEL_LOW,
191 .gpio45 = GPIO_LEVEL_LOW,
192 .gpio46 = GPIO_LEVEL_LOW,
193 .gpio47 = GPIO_LEVEL_LOW,
194 .gpio48 = GPIO_LEVEL_LOW,
195 .gpio49 = GPIO_LEVEL_LOW,
196 .gpio50 = GPIO_LEVEL_LOW,
197 .gpio51 = GPIO_LEVEL_LOW,
198 .gpio52 = GPIO_LEVEL_LOW,
199 .gpio53 = GPIO_LEVEL_LOW,
200 .gpio54 = GPIO_LEVEL_LOW,
201 .gpio55 = GPIO_LEVEL_LOW,
202 .gpio56 = GPIO_LEVEL_LOW,
203 .gpio57 = GPIO_LEVEL_LOW,
204 .gpio58 = GPIO_LEVEL_LOW,
205 .gpio59 = GPIO_LEVEL_LOW,
206 .gpio60 = GPIO_LEVEL_LOW,
207 .gpio61 = GPIO_LEVEL_LOW,
208 .gpio62 = GPIO_LEVEL_LOW,
209 .gpio63 = GPIO_LEVEL_LOW,
212 const struct pch_gpio_set3 pch_gpio_set3_mode = {
213 .gpio64 = GPIO_MODE_NONE, /* NOT USED / CLK_FLEX0 */
214 .gpio65 = GPIO_MODE_NONE, /* NOT USED / CLK_FLEX1 */
215 .gpio66 = GPIO_MODE_NONE, /* NOT USED / CLK_FLEX2 */
216 .gpio67 = GPIO_MODE_NONE, /* NOT USED / CLK_FLEX3 */
217 .gpio68 = GPIO_MODE_NONE, /* NOT USED / FAN TACK4 */
218 .gpio69 = GPIO_MODE_GPIO, /* REC_MODE_L / FAN TACK5 */
219 .gpio70 = GPIO_MODE_GPIO, /* SPI_WP1#_RPCH / FAN TACK7 */
220 .gpio71 = GPIO_MODE_GPIO, /* LVDS/eDP / FAN TACK8 */
221 .gpio72 = GPIO_MODE_NONE, /* NOT USED / BATLOW# */
222 .gpio73 = GPIO_MODE_NONE, /* NOT USED / PCIECLKRQ0#*/
223 .gpio74 = GPIO_MODE_NONE, /* NOT USED / SML1ALERT# /PCHHOT# */
224 .gpio75 = GPIO_MODE_NATIVE, /* SML1DATA */
227 const struct pch_gpio_set3 pch_gpio_set3_direction = {
228 .gpio64 = GPIO_DIR_INPUT,
229 .gpio65 = GPIO_DIR_INPUT,
230 .gpio66 = GPIO_DIR_INPUT,
231 .gpio67 = GPIO_DIR_INPUT,
232 .gpio68 = GPIO_DIR_INPUT,
233 .gpio69 = GPIO_DIR_INPUT,
234 .gpio70 = GPIO_DIR_INPUT,
235 .gpio71 = GPIO_DIR_INPUT,
236 .gpio72 = GPIO_DIR_INPUT,
237 .gpio73 = GPIO_DIR_INPUT,
238 .gpio74 = GPIO_DIR_INPUT,
239 .gpio75 = GPIO_DIR_INPUT,
242 const struct pch_gpio_set3 pch_gpio_set3_level = {
243 .gpio64 = GPIO_LEVEL_LOW,
244 .gpio65 = GPIO_LEVEL_LOW,
245 .gpio66 = GPIO_LEVEL_LOW,
246 .gpio67 = GPIO_LEVEL_LOW,
247 .gpio68 = GPIO_LEVEL_LOW,
248 .gpio69 = GPIO_LEVEL_LOW,
249 .gpio70 = GPIO_LEVEL_LOW,
250 .gpio71 = GPIO_LEVEL_LOW,
251 .gpio72 = GPIO_LEVEL_LOW,
252 .gpio73 = GPIO_LEVEL_LOW,
253 .gpio74 = GPIO_LEVEL_LOW,
254 .gpio75 = GPIO_LEVEL_LOW,
257 const struct pch_gpio_map parrot_gpio_map = {
258 .set1 = {
259 .mode = &pch_gpio_set1_mode,
260 .direction = &pch_gpio_set1_direction,
261 .level = &pch_gpio_set1_level,
262 .invert = &pch_gpio_set1_invert,
264 .set2 = {
265 .mode = &pch_gpio_set2_mode,
266 .direction = &pch_gpio_set2_direction,
267 .level = &pch_gpio_set2_level,
269 .set3 = {
270 .mode = &pch_gpio_set3_mode,
271 .direction = &pch_gpio_set3_direction,
272 .level = &pch_gpio_set3_level,
275 #endif