mb/google/nissa: Create pujjogatwin variant
[coreboot2.git] / src / mainboard / lenovo / t430 / gpio.c
blob76f3ee3f59ff60e3fd398d98463920a6924a9c31
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <southbridge/intel/common/gpio.h>
5 static const struct pch_gpio_set1 pch_gpio_set1_mode = {
6 .gpio0 = GPIO_MODE_GPIO,
7 .gpio1 = GPIO_MODE_GPIO,
8 .gpio2 = GPIO_MODE_GPIO,
9 .gpio3 = GPIO_MODE_GPIO,
10 .gpio4 = GPIO_MODE_GPIO,
11 .gpio5 = GPIO_MODE_GPIO,
12 .gpio6 = GPIO_MODE_GPIO,
13 .gpio7 = GPIO_MODE_GPIO,
14 .gpio8 = GPIO_MODE_GPIO,
15 .gpio10 = GPIO_MODE_GPIO,
16 .gpio13 = GPIO_MODE_GPIO,
17 .gpio15 = GPIO_MODE_GPIO,
18 .gpio17 = GPIO_MODE_GPIO,
19 .gpio21 = GPIO_MODE_GPIO,
20 .gpio22 = GPIO_MODE_GPIO,
21 .gpio24 = GPIO_MODE_GPIO,
22 .gpio27 = GPIO_MODE_GPIO,
23 .gpio28 = GPIO_MODE_GPIO,
24 .gpio29 = GPIO_MODE_GPIO,
27 static const struct pch_gpio_set1 pch_gpio_set1_direction = {
28 .gpio0 = GPIO_DIR_INPUT,
29 .gpio1 = GPIO_DIR_INPUT,
30 .gpio2 = GPIO_DIR_INPUT,
31 .gpio3 = GPIO_DIR_INPUT,
32 .gpio4 = GPIO_DIR_INPUT,
33 .gpio5 = GPIO_DIR_INPUT,
34 .gpio6 = GPIO_DIR_INPUT,
35 .gpio7 = GPIO_DIR_INPUT,
36 .gpio13 = GPIO_DIR_INPUT,
37 .gpio17 = GPIO_DIR_INPUT,
38 .gpio21 = GPIO_DIR_INPUT,
39 .gpio27 = GPIO_DIR_INPUT,
42 static const struct pch_gpio_set1 pch_gpio_set1_level = {
43 .gpio10 = GPIO_LEVEL_HIGH,
44 .gpio22 = GPIO_LEVEL_HIGH,
45 .gpio29 = GPIO_LEVEL_HIGH,
48 static const struct pch_gpio_set1 pch_gpio_set1_reset = {
49 .gpio24 = GPIO_RESET_RSMRST,
52 static const struct pch_gpio_set1 pch_gpio_set1_invert = {
53 .gpio1 = GPIO_INVERT,
54 .gpio6 = GPIO_INVERT,
55 .gpio13 = GPIO_INVERT,
58 static const struct pch_gpio_set1 pch_gpio_set1_blink = {
61 static const struct pch_gpio_set2 pch_gpio_set2_mode = {
62 .gpio33 = GPIO_MODE_GPIO,
63 .gpio34 = GPIO_MODE_GPIO,
64 .gpio35 = GPIO_MODE_GPIO,
65 .gpio36 = GPIO_MODE_GPIO,
66 .gpio37 = GPIO_MODE_GPIO,
67 .gpio38 = GPIO_MODE_GPIO,
68 .gpio39 = GPIO_MODE_GPIO,
69 .gpio43 = GPIO_MODE_GPIO,
70 .gpio48 = GPIO_MODE_GPIO,
71 .gpio49 = GPIO_MODE_GPIO,
72 .gpio50 = GPIO_MODE_GPIO,
73 .gpio51 = GPIO_MODE_GPIO,
74 .gpio52 = GPIO_MODE_GPIO,
75 .gpio53 = GPIO_MODE_GPIO,
76 .gpio54 = GPIO_MODE_GPIO,
77 .gpio55 = GPIO_MODE_GPIO,
78 .gpio57 = GPIO_MODE_GPIO,
81 static const struct pch_gpio_set2 pch_gpio_set2_direction = {
82 .gpio34 = GPIO_DIR_INPUT,
83 .gpio35 = GPIO_DIR_INPUT,
84 .gpio36 = GPIO_DIR_INPUT,
85 .gpio37 = GPIO_DIR_INPUT,
86 .gpio38 = GPIO_DIR_INPUT,
87 .gpio39 = GPIO_DIR_INPUT,
88 .gpio48 = GPIO_DIR_INPUT,
89 .gpio49 = GPIO_DIR_INPUT,
90 .gpio50 = GPIO_DIR_INPUT,
91 .gpio54 = GPIO_DIR_INPUT,
92 .gpio57 = GPIO_DIR_INPUT,
95 static const struct pch_gpio_set2 pch_gpio_set2_level = {
96 .gpio33 = GPIO_LEVEL_HIGH,
97 .gpio43 = GPIO_LEVEL_HIGH,
98 .gpio51 = GPIO_LEVEL_HIGH,
99 .gpio52 = GPIO_LEVEL_HIGH,
100 .gpio53 = GPIO_LEVEL_HIGH,
101 .gpio55 = GPIO_LEVEL_HIGH,
104 static const struct pch_gpio_set2 pch_gpio_set2_reset = {
107 static const struct pch_gpio_set3 pch_gpio_set3_mode = {
108 .gpio64 = GPIO_MODE_GPIO,
109 .gpio65 = GPIO_MODE_GPIO,
110 .gpio66 = GPIO_MODE_GPIO,
111 .gpio67 = GPIO_MODE_GPIO,
112 .gpio68 = GPIO_MODE_GPIO,
113 .gpio69 = GPIO_MODE_GPIO,
114 .gpio70 = GPIO_MODE_GPIO,
115 .gpio71 = GPIO_MODE_GPIO,
118 static const struct pch_gpio_set3 pch_gpio_set3_direction = {
119 .gpio64 = GPIO_DIR_INPUT,
120 .gpio65 = GPIO_DIR_INPUT,
121 .gpio66 = GPIO_DIR_INPUT,
122 .gpio67 = GPIO_DIR_INPUT,
123 .gpio68 = GPIO_DIR_INPUT,
124 .gpio69 = GPIO_DIR_INPUT,
125 .gpio70 = GPIO_DIR_INPUT,
126 .gpio71 = GPIO_DIR_INPUT,
129 static const struct pch_gpio_set3 pch_gpio_set3_level = {
132 static const struct pch_gpio_set3 pch_gpio_set3_reset = {
135 const struct pch_gpio_map mainboard_gpio_map = {
136 .set1 = {
137 .mode = &pch_gpio_set1_mode,
138 .direction = &pch_gpio_set1_direction,
139 .level = &pch_gpio_set1_level,
140 .blink = &pch_gpio_set1_blink,
141 .invert = &pch_gpio_set1_invert,
142 .reset = &pch_gpio_set1_reset,
144 .set2 = {
145 .mode = &pch_gpio_set2_mode,
146 .direction = &pch_gpio_set2_direction,
147 .level = &pch_gpio_set2_level,
148 .reset = &pch_gpio_set2_reset,
150 .set3 = {
151 .mode = &pch_gpio_set3_mode,
152 .direction = &pch_gpio_set3_direction,
153 .level = &pch_gpio_set3_level,
154 .reset = &pch_gpio_set3_reset,