• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <southbridge/intel/common/gpio.h>
4 
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,
25 };
26 
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,
40 };
41 
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,
46 };
47 
48 static const struct pch_gpio_set1 pch_gpio_set1_reset = {
49 	.gpio24 = GPIO_RESET_RSMRST,
50 };
51 
52 static const struct pch_gpio_set1 pch_gpio_set1_invert = {
53 	.gpio1 = GPIO_INVERT,
54 	.gpio6 = GPIO_INVERT,
55 	.gpio13 = GPIO_INVERT,
56 };
57 
58 static const struct pch_gpio_set1 pch_gpio_set1_blink = {
59 };
60 
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,
79 };
80 
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,
93 };
94 
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,
102 };
103 
104 static const struct pch_gpio_set2 pch_gpio_set2_reset = {
105 };
106 
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,
116 };
117 
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,
127 };
128 
129 static const struct pch_gpio_set3 pch_gpio_set3_level = {
130 };
131 
132 static const struct pch_gpio_set3 pch_gpio_set3_reset = {
133 };
134 
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,
143 	},
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,
149 	},
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,
155 	},
156 };
157