blob: 75d65d3f629add82f5d511883dbca8dc125913a6 [file] [log] [blame]
Nicholas Chind5b0aea2023-10-24 18:30:51 -06001/* SPDX-License-Identifier: GPL-2.0-only */
2
Kacper Stojek76d2b662022-10-17 14:30:24 +02003#ifndef GPIO_NAMES_ELKHARTLAKE
4#define GPIO_NAMES_ELKHARTLAKE
5
6#include "gpio_groups.h"
7
8/* ----------------------------- Elkhart Lake ----------------------------- */
9
10const char *const elkhartlake_pch_group_a_names[] = {
11 "GPP_A00", "PSE_GBE0_RGMII_TXD3", "n/a",
12 "GPP_A01", "PSE_GBE0_RGMII_TXD2", "n/a",
13 "GPP_A02", "PSE_GBE0_RGMII_TXD1", "n/a",
14 "GPP_A03", "PSE_GBE0_RGMII_TXD0", "n/a",
15 "GPP_A04", "PSE_GBE0_RGMII_TXCLK", "n/a",
16 "GPP_A05", "PSE_GBE0_RGMII_TXCTL", "n/a",
17 "GPP_A06", "PSE_GBE0_RGMII_RXCLK", "n/a",
18 "GPP_A07", "PSE_GBE0_RGMII_RXD3", "n/a",
19 "GPP_A08", "PSE_GBE0_RGMII_RXD2", "n/a",
20 "GPP_A09", "PSE_GBE0_RGMII_RXD1", "n/a",
21 "GPP_A10", "PSE_GBE0_RGMII_RXD0", "n/a",
22 "GPP_A11", "PSE_GBE1_RGMII_TXD3", "n/a",
23 "GPP_A12", "PSE_GBE1_RGMII_TXD2", "n/a",
24 "GPP_A13", "PSE_GBE1_RGMII_TXD1", "n/a",
25 "GPP_A14", "PSE_GBE1_RGMII_TXD0", "n/a",
26 "GPP_A15", "PSE_GBE1_RGMII_TXCLK", "n/a",
27 "GPP_A16", "PSE_GBE1_RGMII_TXCTL", "n/a",
28 "GPP_A17", "PSE_GBE1_RGMII_RXCLK", "n/a",
29 "GPP_A18", "PSE_GBE1_RGMII_RXCTL", "n/a",
30 "GPP_A19", "PSE_GBE1_RGMII_RXD3", "AVS_I2S5_SCLK",
31 "GPP_A20", "PSE_GBE1_RGMII_RXD2", "AVS_I2S5_SFRM",
32 "GPP_A21", "PSE_GBE1_RGMII_RXD1", "AVS_I2S5_TXD",
33 "GPP_A22", "PSE_GBE1_RGMII_RXD0", "AVS_I2S5_RXD",
34 "GPP_A23", "PSE_GBE0_RGMII_RXCTL", "n/a",
35};
36
37const struct gpio_group elkhartlake_pch_group_a = {
38 .display = "------- GPIO Group GPP_A -------",
39 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_a_names) / 3,
40 .func_count = 3,
41 .pad_names = elkhartlake_pch_group_a_names,
42};
43
44const char *const elkhartlake_pch_group_b_names[] = {
45 "GPP_B00" ,"PMC_CORE_VID0", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
46 "GPP_B01" ,"PMC_CORE_VID1", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
47 "GPP_B02" ,"PMC_VRALERT_N", "n/a", "n/a", "ESPI_ALERT2_N", "n/a", "n/a", "n/a", "PSE_TGPIO25",
48 "GPP_B03" ,"CPU_GP2", "n/a", "n/a", "ESPI_ALERT0_N", "n/a", "n/a", "n/a", "PSE_TGPIO26",
49 "GPP_B04" ,"CPU_GP3", "n/a", "n/a", "ESPI_ALERT1_N", "n/a", "n/a", "n/a", "PSE_TGPIO27",
50 "GPP_B05" ,"PSE_I2C0_SCL", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO06",
51 "GPP_B06" ,"PSE_I2C0_SDA", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO07",
52 "GPP_B07" ,"PSE_I2C1_SCL", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO08",
53 "GPP_B08" ,"PSE_I2C1_SDA", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO09",
54 "GPP_B09" ,"SIO_I2C5_SDA", "PSE_I2C2_SDA", "n/a", "ESPI_CS3_N", "n/a", "n/a", "n/a", "n/a",
55 "GPP_B10" ,"SIO_I2C5_SCL", "PSE_I2C2_SCL", "n/a", "ESPI_ALERT3_N", "n/a", "n/a", "n/a", "n/a",
56 "GPP_B11" ,"PMC_ALERT_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO06",
57 "GPP_B12" ,"PMC_SLP_S0_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
58 "GPP_B13" ,"PMC_PLTRST_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
59 "GPP_B14" ,"SPKR", "PMC_TGPIO1", "SIO_SPI0_CS1_N", "PSE_SPI2_CS1_N", "n/a", "n/a", "n/a", "n/a",
60 "GPP_B15" ,"SIO_SPI0_CS0_N", "n/a", "PSE_SPI2_CS0_N", "n/a", "ESPI_CS1_N", "n/a", "n/a", "n/a",
61 "GPP_B16" ,"SIO_SPI0_CLK", "n/a", "PSE_SPI2_CLK", "n/a", "n/a", "n/a", "n/a", "n/a",
62 "GPP_B17" ,"SIO_SPI0_MISO", "n/a", "PSE_SPI2_MISO", "n/a", "n/a", "n/a", "n/a", "n/a",
63 "GPP_B18" ,"SIO_SPI0_MOSI", "n/a", "PSE_SPI2_MOSI", "n/a", "n/a", "n/a", "n/a", "n/a",
64 "GPP_B19" ,"SIO_SPI1_CS0_N", "n/a", "PSE_SPI3_CS0_N", "n/a", "ESPI_CS2_N", "n/a", "n/a", "n/a",
65 "GPP_B20" ,"SIO_SPI1_CLK", "RSVD", "PSE_SPI3_CLK", "n/a", "n/a", "n/a", "n/a", "n/a",
66 "GPP_B21" ,"SIO_SPI1_MISO", "RSVD", "PSE_SPI3_MISO", "n/a", "n/a", "n/a", "n/a", "n/a",
67 "GPP_B22" ,"SIO_SPI1_MOSI", "n/a", "PSE_SPI3_MOSI", "n/a", "n/a", "n/a", "n/a", "n/a",
68 "GPP_B23" ,"n/a", "PCHHOT_N", "SIO_SPI1_CS1_N", "PSE_SPI3_CS1_N", "n/a", "n/a", "n/a", "PSE_TGPIO28",
69 "GPIO_RSVD_0" ,"n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
70 "GPIO_RSVD_1" ,"n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
71};
72
73const struct gpio_group elkhartlake_pch_group_b = {
74 .display = "------- GPIO Group GPP_B -------",
75 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_b_names) / 9,
76 .func_count = 9,
77 .pad_names = elkhartlake_pch_group_b_names,
78};
79
80const char *const elkhartlake_pch_group_c_names[] = {
81 "GPP_C00", "SMB_CLK", "PSE_I2C3_SCL", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO18",
82 "GPP_C01", "SMB_DATA", "PSE_I2C3_SDA", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO19",
83 "GPP_C02", "PSE_PWM00", "SMB_ALERT_N", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO29",
84 "GPP_C03", "PSE_GBE0_MDC", "n/a", "PSE_HSUART3_EN", "n/a", "n/a", "RSVD", "n/a", "n/a",
85 "GPP_C04", "PSE_GBE0_MDIO", "n/a", "PSE_UART3_RTS_N", "PSE_HSUART3_DE", "n/a", "RSVD", "n/a", "n/a",
86 "GPP_C05", "PSE_PWM01", "n/a", "PSE_UART3_CTS_N", "n/a", "n/a", "SML_ALERT0_N", "n/a", "PSE_TGPIO30",
87 "GPP_C06", "PSE_GBE1_MDC", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
88 "GPP_C07", "PSE_GBE1_MDIO", "n/a", "PSE_HSUART3_RE", "n/a", "n/a", "n/a", "n/a", "n/a",
89 "GPP_C08", "PSE_TGPIO04", "DNX_FORCE_RELOAD", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
90 "GPP_C09", "PSE_HSUART0_EN", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
91 "GPP_C10", "PSE_TGPIO05", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
92 "GPP_C11", "PSE_HSUART0_RE", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
93 "GPP_C12", "PSE_UART0_RXD", "n/a", "n/a", "SIO_UART1_RXD", "n/a", "n/a", "n/a", "n/a",
94 "GPP_C13", "PSE_UART0_TXD", "n/a", "n/a", "SIO_UART1_TXD", "n/a", "n/a", "n/a", "n/a",
95 "GPP_C14", "PSE_UART0_RTS_N", "PSE_HSUART0_DE", "n/a", "SIO_UART1_RTS_N", "n/a", "n/a", "n/a", "n/a",
96 "GPP_C15", "PSE_UART0_CTS_N", "n/a", "n/a", "SIO_UART1_CTS_N", "n/a", "n/a", "n/a", "n/a",
97 "GPP_C16", "GBE_MDIO", "n/a", "PSE_UART3_RXD", "SIO_I2C0_SDA", "n/a", "n/a", "n/a", "n/a",
98 "GPP_C17", "GBE_MDC", "n/a", "PSE_UART3_TXD", "SIO_I2C0_SCL", "n/a", "n/a", "n/a", "n/a",
99 "GPP_C18", "PSE_I2C4_SDA", "n/a", "SML_DATA0", "SIO_I2C1_SDA", "n/a", "n/a", "n/a", "n/a",
100 "GPP_C19", "PSE_I2C4_SCL", "n/a", "SML_CLK0", "SIO_I2C1_SCL", "n/a", "n/a", "n/a", "n/a",
101 "GPP_C20", "PSE_UART4_RXD", "n/a", "RSVD", "SIO_UART2_RXD", "n/a", "n/a", "n/a", "n/a",
102 "GPP_C21", "PSE_UART4_TXD", "n/a", "RSVD", "SIO_UART2_TXD", "n/a", "n/a", "n/a", "n/a",
103 "GPP_C22", "PSE_UART4_RTS_N", "A0: N/A B0: ISI_SPIM_MOSI", "RSVD", "SIO_UART2_RTS_N", "n/a", "n/a", "n/a", "n/a",
104 "GPP_C23", "PSE_UART4_CTS_N", "A0: N/A B0: ISI_SPIS_MOSI", "RSVD", "SIO_UART2_CTS_N", "n/a", "n/a", "n/a", "n/a",
105};
106
107const struct gpio_group elkhartlake_pch_group_c = {
108 .display = "------- GPIO Group GPP_C -------",
109 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_c_names) / 9,
110 .func_count = 9,
111 .pad_names = elkhartlake_pch_group_c_names,
112};
113
114const char *const elkhartlake_pch_group_d_names[] = {
115 "GPP_D00", "PSE_QEPA0", "n/a", "RSVD", "PSE_SPI1_CS0_N", "n/a", "n/a", "n/a", "PSE_TGPIO32",
116 "GPP_D01", "PSE_QEPB0", "n/a", "RSVD", "PSE_SPI1_CLK", "n/a", "n/a", "n/a", "PSE_TGPIO33",
117 "GPP_D02", "PSE_QEPI0", "n/a", "RSVD", "PSE_SPI1_MISO", "n/a", "n/a", "n/a", "PSE_TGPIO34",
118 "GPP_D03", "PSE_PWM06", "n/a", "RSVD", "PSE_SPI1_MOSI", "n/a", "n/a", "n/a", "PSE_TGPIO35",
119 "GPP_D04", "PSE_PWM02", "n/a", "RSVD", "PSE_SPI1_CS1_N", "n/a", "n/a", "n/a", "PSE_TGPIO36",
120 "GPP_D05", "PCIE_CLKREQ0_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
121 "GPP_D06", "PCIE_CLKREQ1_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
122 "GPP_D07", "PCIE_CLKREQ2_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
123 "GPP_D08", "PCIE_CLKREQ3_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
124 "GPP_D09", "PSE_SPI0_CS0_N", "n/a", "n/a", "n/a", "n/a", "n/a", "SIO_SPI2_CS0_N", "PSE_TGPIO10",
125 "GPP_D10", "PSE_SPI0_CLK", "n/a", "n/a", "n/a", "n/a", "n/a", "SIO_SPI2_CLK", "PSE_TGPIO11",
126 "GPP_D11", "PSE_SPI0_MISO", "n/a", "n/a", "n/a", "n/a", "n/a", "SIO_SPI2_MISO", "PSE_TGPIO12",
127 "GPP_D12", "PSE_SPI0_MOSI", "n/a", "n/a", "n/a", "n/a", "n/a", "SIO_SPI2_MOSI", "PSE_TGPIO13",
128 "GPP_D13", "PSE_QEPA1", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO37",
129 "GPP_D14", "PSE_QEPB1", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO38",
130 "GPP_D15", "PSE_PWM03", "SIO_SPI2_CS1_N", "RSVD", "PSE_SPI0_CS1_N", "n/a", "n/a", "n/a", "PSE_TGPIO39",
131 "GPP_D16", "PSE_QEPI1", "n/a" , "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO40",
132 "GPP_D17", "PSE_PWM04", "A0: N/A B0: ISI_SPIM_MOSI", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO41",
133 "GPP_D18", "PSE_PWM05", "A0: N/A B0: ISI_SPIS_MOSI", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO42",
134 "GPP_D19", "AVS_I2S_MCLK1", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO43",
135 "GPIO_RSVD_3", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
136};
137
138const struct gpio_group elkhartlake_pch_group_d = {
139 .display = "------- GPIO Group GPP_D -------",
140 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_d_names) / 9,
141 .func_count = 9,
142 .pad_names = elkhartlake_pch_group_d_names,
143};
144
145const char *const elkhartlake_pch_group_gpd_names[] = {
146 "GPD_00", "PMC_BATLOW_N",
147 "GPD_01", "PMC_ACPRESENT",
148 "GPD_02", "RSVD",
149 "GPD_03", "PMC_PWRBTN_N",
150 "GPD_04", "PMC_SLP_S3_N",
151 "GPD_05", "PMC_SLP_S4_N",
152 "GPD_07", "RSVD",
153 "GPD_08", "PMC_SUSCLK",
154 "GPD_09", "RSVD",
155 "GPD_10", "PMC_SLP_S5_N",
156 "GPD_11", "RSVD",
157 "GPIO_RSVD_8", "n/a",
158 "GPIO_RSVD_9", "n/a",
159 "GPIO_RSVD_10", "n/a",
160 "GPIO_RSVD_11", "n/a",
161 "GPIO_RSVD_12", "n/a",
162};
163
164const struct gpio_group elkhartlake_pch_group_gpd = {
165 .display = "------- GPIO Group GPD -------",
166 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_gpd_names) / 2,
167 .func_count = 2,
168 .pad_names = elkhartlake_pch_group_gpd_names,
169};
170
171const char *const elkhartlake_pch_group_e_names[] = {
172 "GPP_E00", "SATA_LED_N", "SATAXPCIE_0", "RSVD", "RSVD", "RSVD", "RSVD", "SATA_0_GP", "n/a",
173 "GPP_E01", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "n/a",
174 "GPP_E02", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "n/a",
175 "GPP_E03", "DDI1_HPD", "PNL_MISC_DDI1", "RSVD", "RSVD", "RSVD", "RSVD", "CPU_GP0", "PSE_TGPIO15",
176 "GPP_E04", "SATA_0_DEVSLP", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "PSE_PWM08", "PSE_TGPIO44",
177 "GPP_E05", "DDI1_DDC_SDA", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "PSE_PWM09", "PSE_TGPIO17",
178 "GPP_E06", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "PSE_PWM10", "PSE_TGPIO18",
179 "GPP_E07", "DDI1_DDC_SCL", "n/a", "RSVD", "RSVD", "RSVD", "RSVD", "CPU_GP1", "PSE_TGPIO16",
180 "GPP_E08", "n/a", "SATA_1_DEVSLP", "RSVD", "RSVD", "n/a", "RSVD", "RSVD", "PSE_TGPIO45",
181 "GPP_E09", "USB2_OC0_N", "n/a", "RSVD", "RSVD", "n/a", "RSVD", "n/a", "n/a",
182 "GPP_E10", "n/a", "RSVD", "RSVD", "RSVD", "n/a", "RSVD", "RSVD" , "n/a",
183 "GPP_E11", "n/a", "RSVD", "RSVD", "RSVD", "n/a", "RSVD", "RSVD", "n/a",
184 "GPP_E12", "n/a", "RSVD", "RSVD", "RSVD", "n/a", "RSVD", "RSVD", "n/a",
185 "GPP_E13", "n/a", "RSVD", "RSVD", "RSVD", "n/a", "RSVD", "RSVD", "n/a",
186 "GPP_E14", "DDI0_HPD", "PNL_MISC_DDI0", "RSVD", "RSVD", "n/a", "RSVD", "n/a", "PSE_TGPIO19",
187 "GPP_E15", "PSE_I2S0_RXD", "RSVD", "RSVD", "RSVD", "n/a", "RSVD", "PSE_CAN0_TX", "PSE_TGPIO17",
188 "GPP_E16", "PSE_I2S0_TXD", "RSVD", "RSVD", "RSVD", "RSVD", "RSVD", "PSE_CAN0_RX", "PSE_TGPIO16",
189 "GPP_E17", "PNL1_VDDEN", "RSVD", "RSVD", "RSVD", "PNL_MISC_DDI2", "RSVD", "PSE_PWM11", "PSE_TGPIO46",
190 "GPP_E18", "DDI0_DDC_SDA", "n/a", "n/a", "n/a", "RSVD", "n/a", "PSE_PWM12", "PSE_TGPIO23",
191 "GPP_E19", "DDI0_DDC_SCL", "n/a", "n/a", "n/a", "RSVD", "n/a", "PSE_PWM13", "PSE_TGPIO24",
192 "GPP_E20", "PSE_I2S0_SCLK", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_CAN1_TX", "PSE_TGPIO14",
193 "GPP_E21", "PSE_I2S0_SFRM", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_CAN1_RX", "PSE_TGPIO15",
194 "GPP_E22", "PNL1_BKLTCTL", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_PWM14", "PSE_TGPIO18",
195 "GPP_E23", "PNL1_BKLTEN", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_PWM15", "PSE_TGPIO19",
196};
197
198const struct gpio_group elkhartlake_pch_group_e = {
199 .display = "------- GPIO Group GPP_E -------",
200 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_e_names) / 9,
201 .func_count = 9,
202 .pad_names = elkhartlake_pch_group_e_names,
203};
204
205const char *const elkhartlake_pch_group_f_names[] = {
206 "GPP_F00", "RSVD", "SIO_UART0_RTS_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
207 "GPP_F01", "RSVD", "SIO_UART0_RXD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
208 "GPP_F02", "RSVD", "SIO_UART0_TXD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
209 "GPP_F03", "RSVD", "SIO_UART0_CTS_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
210 "GPP_F04", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
211 "GPP_F05", "RSVD", "RSVD", "RSVD", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO14",
212 "GPP_F06", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO47",
213 "GPP_F07", "PSE_I2S1_SCLK", "n/a", "n/a", "n/a", "AVS_I2S4_SCLK", "n/a", "n/a", "PSE_TGPIO14",
214 "GPP_F08", "AVS_I2S_MCLK2", "n/a", "n/a", "PSE_TRACEDATA_0", "ISI_TRACEDATA_0", "n/a", "n/a", "PSE_TGPIO48",
215 "GPP_F09", "BOOT_PWR_EN", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
216 "GPP_F10", "PSE_I2S1_SFRM", "n/a", "n/a", "n/a", "AVS_I2S4_SFRM", "n/a", "n/a", "PSE_TGPIO15",
217 "GPP_F11", "n/a", "n/a", "RSVD", "PSE_TRACECLK", "ISI_TRACECLK", "n/a", "n/a", "PSE_TGPIO49",
218 "GPP_F12", "RSVD", "AVS_I2S4_TXD", "RSVD", "PSE_TRACESWO", "ISI_TRACESWO", "n/a", "n/a", "n/a",
219 "GPP_F13", "RSVD", "AVS_I2S4_SFRM", "RSVD", "PSE_SWDIO", "ISI_SWDIO", "n/a", "n/a", "n/a",
220 "GPP_F14", "RSVD", "AVS_I2S4_RXD", "RSVD", "PSE_TRACEDATA_1", "ISI_TRACEDATA_1", "n/a", "n/a", "n/a",
221 "GPP_F15", "RSVD", "n/a", "RSVD", "PSE_TRACEDATA_2", "ISI_TRACEDATA_2", "n/a", "n/a", "n/a",
222 "GPP_F16", "RSVD", "AVS_I2S4_SCLK", "RSVD", "PSE_SWCLK", "ISI_SWCLK", "n/a", "n/a", "n/a",
223 "GPP_F17", "n/a", "n/a", "RSVD", "PSE_TRACEDATA_3", "ISI_TRACEDATA_3", "n/a", "n/a", "PSE_TGPIO50",
224 "GPP_F18", "PSE_I2S1_TXD", "n/a", "n/a", "n/a", "AVS_I2S4_TXD", "n/a", "n/a", "PSE_TGPIO16",
225 "GPP_F19", "PSE_I2S1_RXD", "n/a", "n/a", "n/a", "AVS_I2S4_RXD", "n/a", "n/a", "PSE_TGPIO17",
226 "GPP_F20", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
227 "GPP_F21", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
228 "GPP_F22", "PMC_VNN_CTRL", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
229 "GPP_F23", "PMC_V1P05_CTRL", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
230 "GPIO_RSVD_30", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
231 "GPIO_RSVD_31", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
232 "GPIO_RSVD_32", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
233 "GPIO_RSVD_33", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
234 "GPIO_RSVD_34", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
235 "GPIO_RSVD_35", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
236 "GPIO_RSVD_36", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
237};
238
239const struct gpio_group elkhartlake_pch_group_f = {
240 .display = "------- GPIO Group GPP_F -------",
241 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_f_names) / 9,
242 .func_count = 9,
243 .pad_names = elkhartlake_pch_group_f_names,
244};
245
246const char *const elkhartlake_pch_group_g_names[] = {
247 "GPP_G00", "SD_SDIO_CMD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
248 "GPP_G01", "SD_SDIO_D0", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
249 "GPP_G02", "SD_SDIO_D1", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
250 "GPP_G03", "SD_SDIO_D2", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
251 "GPP_G04", "SD_SDIO_D3", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
252 "GPP_G05", "SD_SDIO_CD_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
253 "GPP_G06", "SD_SDIO_CLK", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
254 "GPP_G07", "AVS_I2S2_SCLK", "n/a", "n/a", "DMIC_CLK_A0", "n/a", "n/a", "n/a", "n/a",
255 "GPP_G08", "AVS_I2S2_SFRM", "RSVD", "n/a", "DMIC_DATA0", "n/a", "n/a", "n/a", "n/a",
256 "GPP_G09", "AVS_I2S2_TXD", "RSVD", "RSVD", "DMIC_CLK_A1", "n/a", "n/a", "n/a", "n/a",
257 "GPP_G10", "AVS_I2S2_RXD", "n/a", "n/a", "DMIC_DATA1", "n/a", "n/a", "n/a", "n/a",
258 "GPP_G11", "AVS_I2S3_SCLK", "n/a", "n/a", "DMIC_DATA0", "n/a", "n/a", "n/a", "PSE_TGPIO07",
259 "GPP_G12", "AVS_I2S3_SFRM", "SATA_1_GP", "SATAXPCIE_1", "DMIC_DATA1", "n/a", "n/a", "n/a", "PSE_TGPIO31",
260 "GPP_G13", "AVS_I2S3_TXD", "n/a", "n/a", "DMIC_CLK_B0", "n/a", "n/a", "n/a", "PSE_TGPIO08",
261 "GPP_G14", "AVS_I2S3_RXD", "n/a", "n/a", "DMIC_CLK_B1", "n/a", "n/a", "n/a", "PSE_TGPIO09",
262 "GPP_G15", "ESPI_IO0", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
263 "GPP_G16", "ESPI_IO1", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
264 "GPP_G17", "ESPI_IO2", "Reserved", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
265 "GPP_G18", "ESPI_IO3", "Reserved", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
266 "GPP_G19", "AVS_I2S1_SCLK", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
267 "GPP_G20", "ESPI_CS0_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
268 "GPP_G21", "ESPI_CLK", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
269 "GPP_G22", "ESPI_RST0_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
270 "GPP_G23", "SD_SDIO_WP", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
271 "GPIO_RSVD_2", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
272};
273
274const struct gpio_group elkhartlake_pch_group_g = {
275 .display = "------- GPIO Group GPP_G -------",
276 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_g_names) / 9,
277 .func_count = 9,
278 .pad_names = elkhartlake_pch_group_g_names,
279};
280
281const char *const elkhartlake_pch_group_h_names[] = {
282 "GPP_H00", "PSE_GBE1_INT", "n/a", "n/a", "PSE_UART5_RXD", "n/a", "n/a", "n/a", "n/a",
283 "GPP_H01", "PSE_GBE1_RST_N", "n/a", "n/a", "PSE_UART5_TXD", "n/a", "n/a", "n/a", "n/a",
284 "GPP_H02", "PSE_GBE1_AUXTS", "n/a", "n/a", "PSE_UART5_RTS_N", "n/a", "n/a", "n/a", "n/a",
285 "GPP_H03", "PSE_GBE1_PPS", "n/a", "n/a", "PSE_UART5_CTS_N", "n/a", "n/a", "n/a", "PSE_TGPIO21",
286 "GPP_H04", "SIO_I2C2_SDA", "n/a", "n/a", "PSE_PWM08", "n/a", "n/a", "n/a", "PSE_TGPIO10",
287 "GPP_H05", "SIO_I2C2_SCL", "n/a", "n/a", "PSE_PWM09", "n/a", "n/a", "n/a", "PSE_TGPIO11",
288 "GPP_H06", "SIO_I2C3_SDA", "PSE_I2C5_SDA", "n/a", "PSE_PWM10", "n/a", "n/a", "n/a", "n/a",
289 "GPP_H07", "SIO_I2C3_SCL", "PSE_I2C5_SCL", "n/a", "PSE_PWM11", "n/a", "n/a", "n/a", "n/a",
290 "GPP_H08", "SIO_I2C4_SDA", "RSVD", "n/a", "PSE_PWM12", "n/a", "n/a", "n/a", "n/a",
291 "GPP_H09", "SIO_I2C4_SCL", "RSVD", "n/a", "PSE_PWM13", "n/a", "n/a", "n/a", "n/a",
292 "GPP_H10", "PCIE_CLKREQ4_N", "n/a", "n/a", "PSE_PWM14", "n/a", "n/a", "n/a", "n/a",
293 "GPP_H11", "PCIE_CLKREQ5_N", "n/a", "n/a", "PSE_PWM15", "n/a", "n/a", "n/a", "n/a",
294 "GPP_H12", "PSE_UART1_RXD", "n/a", "n/a", "M2_SKT2_CFG0", "n/a", "n/a", "n/a", "PSE_TGPIO51",
295 "GPP_H13", "PSE_UART1_TXD", "n/a", "n/a", "M2_SKT2_CFG1", "n/a", "n/a", "n/a", "PSE_TGPIO52",
296 "GPP_H14", "n/a", "n/a", "n/a", "M2_SKT2_CFG2", "n/a", "n/a", "n/a", "PSE_TGPIO53",
297 "GPP_H15", "PSE_UART1_CTS_N", "n/a", "n/a", "M2_SKT2_CFG3", "n/a", "n/a", "n/a", "PSE_TGPIO54",
298 "GPP_H16", "PCIE_LNK_DOWN", "DDI2_DDC_SCL", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
299 "GPP_H17", "SD_SDIO_PWR_EN_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
300 "GPP_H18", "PMC_CPU_C10_GATE_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
301 "GPP_H19", "n/a", "DDI2_DDC_SDA", "n/a", "PMC_TGPIO0", "n/a", "n/a", "n/a", "PSE_TGPIO20",
302 "GPP_H20", "PSE_PWM07", "DDI2_HPD", "n/a", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO55",
303 "GPP_H21", "PSE_HSUART1_DE", "PSE_UART1_RTS_N", "n/a", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO56",
304 "GPP_H22", "PSE_HSUART1_RE", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO57",
305 "GPP_H23", "PSE_HSUART1_EN", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO58",
306};
307
308const struct gpio_group elkhartlake_pch_group_h = {
309 .display = "------- GPIO Group GPP_H -------",
310 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_h_names) / 9,
311 .func_count = 9,
312 .pad_names = elkhartlake_pch_group_h_names,
313};
314
315const char *const elkhartlake_pch_group_r_names[] = {
316 "GPP_R00", "HDA_BCLK", "AVS_I2S0_SCLK", "PSE_I2S0_SCLK", "RSVD", "n/a",
317 "GPP_R01", "HDA_SYNC", "AVS_I2S0_SFRM", "PSE_I2S0_SFRM", "n/a", "n/a",
318 "GPP_R02", "HDA_SDO", "AVS_I2S0_TXD", "PSE_I2S0_TXD", "RSVD", "DMIC_CLK_B0",
319 "GPP_R03", "HDA_SDI0", "AVS_I2S0_RXD", "PSE_I2S0_RXD", "RSVD", "DMIC_CLK_B1",
320 "GPP_R04", "HDA_RST_N", "n/a", "n/a", "n/a", "DMIC_CLK_A1",
321 "GPP_R05", "HDA_SDI1", "AVS_I2S1_RXD", "n/a", "n/a", "DMIC_DATA1",
322 "GPP_R06", "n/a", "AVS_I2S1_TXD", "n/a", "n/a", "DMIC_CLK_A0",
323 "GPP_R07", "n/a", "AVS_I2S1_SFRM", "n/a", "n/a", "DMIC_DATA0",
324};
325
326const struct gpio_group elkhartlake_pch_group_r = {
327 .display = "------- GPIO Group GPP_R -------",
328 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_r_names) / 6,
329 .func_count = 6,
330 .pad_names = elkhartlake_pch_group_r_names,
331};
332
333const char *const elkhartlake_pch_group_s_names[] = {
334 "GPIO_RSVD_13", "n/a",
335 "GPIO_RSVD_14", "n/a",
336 "GPIO_RSVD_15", "n/a",
337 "GPIO_RSVD_16", "n/a",
338 "GPIO_RSVD_17", "n/a",
339 "GPIO_RSVD_18", "n/a",
340 "GPIO_RSVD_19", "n/a",
341 "GPIO_RSVD_20", "n/a",
342 "GPIO_RSVD_21", "n/a",
343 "GPIO_RSVD_22", "n/a",
344 "GPIO_RSVD_23", "n/a",
345 "GPIO_RSVD_24", "n/a",
346 "GPIO_RSVD_25", "n/a",
347 "GPIO_RSVD_26", "n/a",
348 "GPIO_RSVD_27", "n/a",
349 "GPIO_RSVD_28", "n/a",
350 "GPIO_RSVD_29", "n/a",
351 "GPP_S00", "n/a",
352 "GPP_S01", "n/a",
353};
354
355const struct gpio_group elkhartlake_pch_group_s = {
356 .display = "------- GPIO Group GPP_S -------",
357 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_s_names) / 2,
358 .func_count = 2,
359 .pad_names = elkhartlake_pch_group_s_names,
360};
361
362const char *const elkhartlake_pch_group_t_names[] = {
363 "GPP_T00", "PSE_QEPA2", "n/a", "SIO_I2C6_SDA", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO08",
364 "GPP_T01", "PSE_QEPB2", "n/a", "SIO_I2C6_SCL", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO09",
365 "GPP_T02", "PSE_QEPI2", "n/a", "SIO_I2C7_SDA", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO07",
366 "GPP_T03", "n/a", "n/a", "SIO_I2C7_SCL", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO06",
367 "GPP_T04", "PSE_GBE0_INT", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
368 "GPP_T05", "PSE_GBE0_RST_N", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
369 "GPP_T06", "PSE_GBE0_AUXTS", "USB2_OC1_N", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a",
370 "GPP_T07", "PSE_GBE0_PPS", "n/a", "n/a", "RSVD", "n/a", "n/a", "n/a", "PSE_TGPIO59",
371 "GPP_T08", "USB2_OC2_N", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO22",
372 "GPP_T09", "PSE_HSUART2_EN", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
373 "GPP_T10", "PSE_HSUART2_RE", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
374 "GPP_T11", "USB2_OC3_N", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO06",
375 "GPP_T12", "PSE_UART2_RXD", "SIO_UART0_RXD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
376 "GPP_T13", "PSE_UART2_TXD", "SIO_UART0_TXD", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
377 "GPP_T14", "PSE_UART2_RTS_N", "SIO_UART0_RTS_N", "PSE_HSUART2_DE", "n/a", "n/a", "n/a", "n/a", "n/a",
378 "GPP_T15", "PSE_UART2_CTS_N", "SIO_UART0_CTS_N", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
379};
380
381const struct gpio_group elkhartlake_pch_group_t = {
382 .display = "------- GPIO Group GPP_T -------",
383 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_t_names) / 9,
384 .func_count = 9,
385 .pad_names = elkhartlake_pch_group_t_names,
386};
387
388const char *const elkhartlake_pch_group_u_names[] = {
389 "GPP_U00", "GBE_INT", "PSE_I2C6_SCL", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
390 "GPP_U01", "GBE_RST_N", "PSE_I2C6_SDA", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
391 "GPP_U02", "GBE_PPS", "PSE_I2C7_SCL", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
392 "GPP_U03", "GBE_AUXTS", "PSE_I2C7_SDA", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
393 "GPP_U04", "ISI_SPIM_CS", "n/a", "RSVD", "PSE_SPI1_CS0_N", "n/a", "n/a", "n/a", "n/a",
394 "GPP_U05", "ISI_SPIM_SCLK", "n/a", "RSVD", "PSE_SPI1_CLK", "n/a", "n/a", "n/a", "n/a",
395 "GPP_U06", "ISI_SPIM_MISO", "n/a", "RSVD", "PSE_SPI1_MISO", "n/a", "n/a", "n/a", "n/a",
396 "GPP_U07", "PSE_QEPA3", "n/a", "RSVD", "PSE_SPI1_MOSI", "n/a", "n/a", "n/a", "PSE_TGPIO10",
397 "GPP_U08", "ISI_SPIS_CS", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO10",
398 "GPP_U09", "ISI_SPIS_SCLK", "ISI_I2CS_SCL", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO11",
399 "GPP_U10", "ISI_SPIS_MISO", "ISI_I2CS_SDA", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO12",
400 "GPP_U11", "PSE_QEPB3", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO11",
401 "GPP_U12", "ISI_CHX_OKNOK_0", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
402 "GPP_U13", "ISI_CHX_OKNOK_1", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
403 "GPP_U14", "ISI_CHX_RLY_SWTCH", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
404 "GPP_U15", "ISI_CHX_PMIC_EN", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO13",
405 "GPP_U16", "ISI_OKNOK_0", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
406 "GPP_U17", "ISI_OKNOK_1", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
407 "GPP_U18", "ISI_ALERT_N", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "n/a",
408 "GPP_U19", "PSE_QEPI3", "n/a", "RSVD", "n/a", "n/a", "n/a", "n/a", "PSE_TGPIO12",
409 "GPIO_RSVD_4", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
410 "GPIO_RSVD_5", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
411 "GPIO_RSVD_6", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
412 "GPIO_RSVD_7", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a", "n/a",
413};
414
415const struct gpio_group elkhartlake_pch_group_u = {
416 .display = "------- GPIO Group GPP_U -------",
417 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_u_names) / 9,
418 .func_count = 9,
419 .pad_names = elkhartlake_pch_group_u_names,
420};
421
422const char *const elkhartlake_pch_group_v_names[] = {
423 "GPP_V00", "EMMC_CMD",
424 "GPP_V01", "EMMC_DATA0",
425 "GPP_V02", "EMMC_DATA1",
426 "GPP_V03", "EMMC_DATA2",
427 "GPP_V04", "EMMC_DATA3",
428 "GPP_V05", "EMMC_DATA4",
429 "GPP_V06", "EMMC_DATA5",
430 "GPP_V07", "EMMC_DATA6",
431 "GPP_V08", "EMMC_DATA7",
432 "GPP_V09", "EMMC_RCLK",
433 "GPP_V10", "EMMC_CLK",
434 "GPP_V11", "EMMC_RST_N",
435 "GPP_V12", "PSE_TGPIO00",
436 "GPP_V13", "PSE_TGPIO01",
437 "GPP_V14", "PSE_TGPIO02",
438 "GPP_V15", "PSE_TGPIO03",
439};
440
441const struct gpio_group elkhartlake_pch_group_v = {
442 .display = "------- GPIO Group GPP_V -------",
443 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_v_names) / 2,
444 .func_count = 2,
445 .pad_names = elkhartlake_pch_group_v_names,
446};
447
448const char *const elkhartlake_pch_group_vgpio_names[] = {
449 "VGPIO_0", "VGPIO_0",
450 "VGPIO_4", "VGPIO_4",
451 "VGPIO_5", "VGPIO_5",
452 "VGPIO_6", "VGPIO_6",
453 "VGPIO_7", "VGPIO_7",
454 "VGPIO_8", "VGPIO_8",
455 "VGPIO_9", "VGPIO_9",
456 "VGPIO_10", "VGPIO_10",
457 "VGPIO_11", "VGPIO_11",
458 "VGPIO_12", "VGPIO_12",
459 "VGPIO_13", "VGPIO_13",
460 "VGPIO_18", "VGPIO_18",
461 "VGPIO_19", "VGPIO_19",
462 "VGPIO_20", "VGPIO_20",
463 "VGPIO_21", "VGPIO_21",
464 "VGPIO_22", "VGPIO_22",
465 "VGPIO_23", "VGPIO_23",
466 "VGPIO_24", "VGPIO_24",
467 "VGPIO_25", "VGPIO_25",
468 "VGPIO_30", "VGPIO_30",
469 "VGPIO_31", "VGPIO_31",
470 "VGPIO_32", "VGPIO_32",
471 "VGPIO_33", "VGPIO_33",
472 "VGPIO_34", "VGPIO_34",
473 "VGPIO_35", "VGPIO_35",
474 "VGPIO_36", "VGPIO_36",
475 "VGPIO_37", "VGPIO_37",
476 "VGPIO_39", "VGPIO_39",
477};
478
479const struct gpio_group elkhartlake_pch_group_vgpio = {
480 .display = "------- GPIO Group GPP_VGPIO -------",
481 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_vgpio_names) / 2,
482 .func_count = 2,
483 .pad_names = elkhartlake_pch_group_vgpio_names,
484};
485
486
487const char *const elkhartlake_pch_group_vgpio_usb_names[] = {
488 "VGPIO_USB_0", "VGPIO_USB_0",
489 "VGPIO_USB_1", "VGPIO_USB_1",
490 "VGPIO_USB_2", "VGPIO_USB_2",
491 "VGPIO_USB_3", "VGPIO_USB_3",
492};
493
494const struct gpio_group elkhartlake_pch_group_vgpio_usb = {
495 .display = "------- GPIO Group GPP_VGPIO_USB -------",
496 .pad_count = ARRAY_SIZE(elkhartlake_pch_group_vgpio_usb_names) / 2,
497 .func_count = 2,
498 .pad_names = elkhartlake_pch_group_vgpio_usb_names,
499};
500
501const struct gpio_group *const elkhartlake_community_0_groups[] = {
502 &elkhartlake_pch_group_b,
503 &elkhartlake_pch_group_t,
504 &elkhartlake_pch_group_g,
505};
506
507const struct gpio_community elkhartlake_community_0 = {
508 .name = "------- GPIO Community 0 -------",
509 .pcr_port_id = 0x6e,
510 .group_count = ARRAY_SIZE(elkhartlake_community_0_groups),
511 .groups = elkhartlake_community_0_groups,
512};
513
514const struct gpio_group *const elkhartlake_community_1_groups[] = {
515 &elkhartlake_pch_group_v,
516 &elkhartlake_pch_group_h,
517 &elkhartlake_pch_group_d,
518 &elkhartlake_pch_group_u,
519 &elkhartlake_pch_group_vgpio,
520};
521
522const struct gpio_community elkhartlake_community_1 = {
523 .name = "------- GPIO Community 1 -------",
524 .pcr_port_id = 0x6d,
525 .group_count = ARRAY_SIZE(elkhartlake_community_1_groups),
526 .groups = elkhartlake_community_1_groups,
527};
528
529const struct gpio_group *const elkhartlake_community_2_groups[] = {
530 &elkhartlake_pch_group_gpd,
531};
532
533const struct gpio_community elkhartlake_community_2 = {
534 .name = "------- GPIO Community 2 -------",
535 .pcr_port_id = 0x6c,
536 .group_count = ARRAY_SIZE(elkhartlake_community_2_groups),
537 .groups = elkhartlake_community_2_groups,
538};
539
540const struct gpio_group *const elkhartlake_community_3_groups[] = {
541 &elkhartlake_pch_group_s,
542 &elkhartlake_pch_group_a,
543 &elkhartlake_pch_group_vgpio_usb,
544};
545
546const struct gpio_community elkhartlake_community_3 = {
547 .name = "------- GPIO Community 3 -------",
548 .pcr_port_id = 0x6b,
549 .group_count = ARRAY_SIZE(elkhartlake_community_3_groups),
550 .groups = elkhartlake_community_3_groups,
551};
552
553const struct gpio_group *const elkhartlake_community_4_groups[] = {
554 &elkhartlake_pch_group_c,
555 &elkhartlake_pch_group_f,
556 &elkhartlake_pch_group_e,
557};
558
559const struct gpio_community elkhartlake_community_4 = {
560 .name = "------- GPIO Community 4 -------",
561 .pcr_port_id = 0x6a,
562 .group_count = ARRAY_SIZE(elkhartlake_community_4_groups),
563 .groups = elkhartlake_community_4_groups,
564};
565
566const struct gpio_group *const elkhartlake_community_5_groups[] = {
567 &elkhartlake_pch_group_r,
568};
569
570const struct gpio_community elkhartlake_community_5 = {
571 .name = "------- GPIO Community 5 -------",
572 .pcr_port_id = 0x69,
573 .group_count = ARRAY_SIZE(elkhartlake_community_5_groups),
574 .groups = elkhartlake_community_5_groups,
575};
576
577const struct gpio_community *const elkhartlake_pch_communities[] = {
578 &elkhartlake_community_0,
579 &elkhartlake_community_1,
580 &elkhartlake_community_2,
581 &elkhartlake_community_3,
582 &elkhartlake_community_4,
583 &elkhartlake_community_5,
584};
585
586#endif