xref: /freebsd/sys/dev/gpio/chvgpio_reg.h (revision 94b8a54ae65fa555627dd37a479f1a6174a16ba6)
1*94b8a54aSOleksandr Tymoshenko /*-
2*94b8a54aSOleksandr Tymoshenko  * Copyright (c) 2017 Tom Jones <tj@enoti.me>
3*94b8a54aSOleksandr Tymoshenko  * All rights reserved.
4*94b8a54aSOleksandr Tymoshenko  *
5*94b8a54aSOleksandr Tymoshenko  * Redistribution and use in source and binary forms, with or without
6*94b8a54aSOleksandr Tymoshenko  * modification, are permitted provided that the following conditions
7*94b8a54aSOleksandr Tymoshenko  * are met:
8*94b8a54aSOleksandr Tymoshenko  * 1. Redistributions of source code must retain the above copyright
9*94b8a54aSOleksandr Tymoshenko  *    notice, this list of conditions and the following disclaimer.
10*94b8a54aSOleksandr Tymoshenko  * 2. Redistributions in binary form must reproduce the above copyright
11*94b8a54aSOleksandr Tymoshenko  *    notice, this list of conditions and the following disclaimer in the
12*94b8a54aSOleksandr Tymoshenko  *    documentation and/or other materials provided with the distribution.
13*94b8a54aSOleksandr Tymoshenko  *
14*94b8a54aSOleksandr Tymoshenko  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15*94b8a54aSOleksandr Tymoshenko  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16*94b8a54aSOleksandr Tymoshenko  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17*94b8a54aSOleksandr Tymoshenko  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18*94b8a54aSOleksandr Tymoshenko  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19*94b8a54aSOleksandr Tymoshenko  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20*94b8a54aSOleksandr Tymoshenko  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21*94b8a54aSOleksandr Tymoshenko  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22*94b8a54aSOleksandr Tymoshenko  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23*94b8a54aSOleksandr Tymoshenko  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24*94b8a54aSOleksandr Tymoshenko  * SUCH DAMAGE.
25*94b8a54aSOleksandr Tymoshenko  *
26*94b8a54aSOleksandr Tymoshenko  */
27*94b8a54aSOleksandr Tymoshenko 
28*94b8a54aSOleksandr Tymoshenko /*
29*94b8a54aSOleksandr Tymoshenko  * Copyright (c) 2016 Mark Kettenis
30*94b8a54aSOleksandr Tymoshenko  *
31*94b8a54aSOleksandr Tymoshenko  * Permission to use, copy, modify, and distribute this software for any
32*94b8a54aSOleksandr Tymoshenko  * purpose with or without fee is hereby granted, provided that the above
33*94b8a54aSOleksandr Tymoshenko  * copyright notice and this permission notice appear in all copies.
34*94b8a54aSOleksandr Tymoshenko  *
35*94b8a54aSOleksandr Tymoshenko  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
36*94b8a54aSOleksandr Tymoshenko  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
37*94b8a54aSOleksandr Tymoshenko  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
38*94b8a54aSOleksandr Tymoshenko  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
39*94b8a54aSOleksandr Tymoshenko  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
40*94b8a54aSOleksandr Tymoshenko  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
41*94b8a54aSOleksandr Tymoshenko  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
42*94b8a54aSOleksandr Tymoshenko  *
43*94b8a54aSOleksandr Tymoshenko  * $FreeBSD$
44*94b8a54aSOleksandr Tymoshenko  */
45*94b8a54aSOleksandr Tymoshenko 
46*94b8a54aSOleksandr Tymoshenko 
47*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_INTERRUPT_STATUS		0x0300
48*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_INTERRUPT_MASK			0x0380
49*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0			0x4400
50*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1			0x4404
51*94b8a54aSOleksandr Tymoshenko 
52*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIORXSTATE		0x00000001
53*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOTXSTATE		0x00000002
54*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_INTSEL_MASK		0xf0000000
55*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_INTSEL_SHIFT		28
56*94b8a54aSOleksandr Tymoshenko 
57*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_SHIFT		8
58*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_MASK		(7 << CHVGPIO_PAD_CFG0_GPIOCFG_SHIFT)
59*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPIO		0
60*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPO		1
61*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPI		2
62*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_HIZ		3
63*94b8a54aSOleksandr Tymoshenko 
64*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_MASK	0x00000007
65*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_FALLING	0x00000001
66*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_RISING	0x00000002
67*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_BOTH	0x00000003
68*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_LEVEL	0x00000004
69*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INVRXTX_MASK		0x000000f0
70*94b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INVRXTX_RXDATA		0x00000040
71*94b8a54aSOleksandr Tymoshenko 
72*94b8a54aSOleksandr Tymoshenko /*
73*94b8a54aSOleksandr Tymoshenko  * The pads for the pins are arranged in groups of maximal 15 pins.
74*94b8a54aSOleksandr Tymoshenko  * The arrays below give the number of pins per group, such that we
75*94b8a54aSOleksandr Tymoshenko  * can validate the (untrusted) pin numbers from ACPI.
76*94b8a54aSOleksandr Tymoshenko  */
77*94b8a54aSOleksandr Tymoshenko #define	E_UID		3
78*94b8a54aSOleksandr Tymoshenko #define	E_BANK_PREFIX	"eastbank"
79*94b8a54aSOleksandr Tymoshenko 
80*94b8a54aSOleksandr Tymoshenko const int chv_east_pins[] = {
81*94b8a54aSOleksandr Tymoshenko 	12, 12, -1
82*94b8a54aSOleksandr Tymoshenko };
83*94b8a54aSOleksandr Tymoshenko 
84*94b8a54aSOleksandr Tymoshenko const char *chv_east_pin_names[] = {
85*94b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S3_B",
86*94b8a54aSOleksandr Tymoshenko 		"PMU_BATLOW_B",
87*94b8a54aSOleksandr Tymoshenko 		"SUS_STAT_B",
88*94b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S0IX_B",
89*94b8a54aSOleksandr Tymoshenko 		"PMU_AC_PRESENT",
90*94b8a54aSOleksandr Tymoshenko 		"PMU_PLTRST_B",
91*94b8a54aSOleksandr Tymoshenko 		"PMU_SUSCLK",
92*94b8a54aSOleksandr Tymoshenko 		"PMU_SLP_LAN_B",
93*94b8a54aSOleksandr Tymoshenko 		"PMU_PWRBTN_B",
94*94b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S4_B",
95*94b8a54aSOleksandr Tymoshenko 		"PMU_WAKE_B",
96*94b8a54aSOleksandr Tymoshenko 		"PMU_WAKE_LAN_B"
97*94b8a54aSOleksandr Tymoshenko 
98*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_3",
99*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_7",
100*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_I2C1_SCL",
101*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_1",
102*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_5",
103*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_9",
104*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_0",
105*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_4",
106*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_8",
107*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_2",
108*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_6",
109*94b8a54aSOleksandr Tymoshenko 		"MF_ISH_I2C1_SDA"
110*94b8a54aSOleksandr Tymoshenko };
111*94b8a54aSOleksandr Tymoshenko 
112*94b8a54aSOleksandr Tymoshenko #define	N_UID		2
113*94b8a54aSOleksandr Tymoshenko #define	N_BANK_PREFIX	"northbank"
114*94b8a54aSOleksandr Tymoshenko 
115*94b8a54aSOleksandr Tymoshenko const int chv_north_pins[] = {
116*94b8a54aSOleksandr Tymoshenko 	9, 13, 12, 12, 13, -1
117*94b8a54aSOleksandr Tymoshenko };
118*94b8a54aSOleksandr Tymoshenko 
119*94b8a54aSOleksandr Tymoshenko const char *chv_north_pin_names[] = {
120*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX0_PAD",
121*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX3_PAD",
122*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX7_PAD",
123*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX1_PAD",
124*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX5_PAD",
125*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX4_PAD",
126*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX8_PAD",
127*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX2_PAD",
128*94b8a54aSOleksandr Tymoshenko 	"GPIO_DFX6_PAD",
129*94b8a54aSOleksandr Tymoshenko 
130*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS0_PAD",
131*94b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS10_PAD",
132*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS3_PAD",
133*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS7_PAD",
134*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS1_PAD",
135*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS5_PAD",
136*94b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS11_PAD",
137*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS4_PAD",
138*94b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS8_PAD",
139*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS2_PAD",
140*94b8a54aSOleksandr Tymoshenko 	"GPIO_SUS6_PAD",
141*94b8a54aSOleksandr Tymoshenko 	"CX_PREQ_B_PAD",
142*94b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS9_PAD",
143*94b8a54aSOleksandr Tymoshenko 
144*94b8a54aSOleksandr Tymoshenko 	"TRST_B_PAD",
145*94b8a54aSOleksandr Tymoshenko 	"TCK_PAD",
146*94b8a54aSOleksandr Tymoshenko 	"PROCHOT_B_PAD",
147*94b8a54aSOleksandr Tymoshenko 	"SVID0_DATA_PAD",
148*94b8a54aSOleksandr Tymoshenko 	"TMS_PAD",
149*94b8a54aSOleksandr Tymoshenko 	"CX_PRDY_B_2_PAD",
150*94b8a54aSOleksandr Tymoshenko 	"TDO_2_PAD",
151*94b8a54aSOleksandr Tymoshenko 	"CX_PRDY_B_PAD",
152*94b8a54aSOleksandr Tymoshenko 	"SVID0_ALERT_B_PAD",
153*94b8a54aSOleksandr Tymoshenko 	"TDO_PAD",
154*94b8a54aSOleksandr Tymoshenko 	"SVID0_CLK_PAD",
155*94b8a54aSOleksandr Tymoshenko 	"TDI_PAD",
156*94b8a54aSOleksandr Tymoshenko 
157*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB05_PAD",
158*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB02_PAD",
159*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB08_PAD",
160*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB00_PAD",
161*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB06_PAD",
162*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB10_PAD",
163*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB03_PAD",
164*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB09_PAD",
165*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB01_PAD",
166*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB07_PAD",
167*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB11_PAD",
168*94b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB04_PAD",
169*94b8a54aSOleksandr Tymoshenko 
170*94b8a54aSOleksandr Tymoshenko 	"PANEL0_BKLTEN_PAD",
171*94b8a54aSOleksandr Tymoshenko 	"HV_DDI0_HPD_PAD",
172*94b8a54aSOleksandr Tymoshenko 	"HV_DDI2_DDC_SDA_PAD",
173*94b8a54aSOleksandr Tymoshenko 	"PANEL1_BKLTCTL_PAD",
174*94b8a54aSOleksandr Tymoshenko 	"HV_DDI1_HPD_PAD",
175*94b8a54aSOleksandr Tymoshenko 	"PANEL0_BKLTCTL_PAD",
176*94b8a54aSOleksandr Tymoshenko 	"HV_DDI0_DDC_SDA_PAD",
177*94b8a54aSOleksandr Tymoshenko 	"HV_DDI2_DDC_SCL_PAD",
178*94b8a54aSOleksandr Tymoshenko 	"HV_DDI2_HPD_PAD",
179*94b8a54aSOleksandr Tymoshenko 	"PANEL1_VDDEN_PAD",
180*94b8a54aSOleksandr Tymoshenko 	"PANEL1_BKLTEN_PAD",
181*94b8a54aSOleksandr Tymoshenko 	"HV_DDI0_DDC_SCL_PAD",
182*94b8a54aSOleksandr Tymoshenko 	"PANEL0_VDDEN_PAD",
183*94b8a54aSOleksandr Tymoshenko };
184*94b8a54aSOleksandr Tymoshenko 
185*94b8a54aSOleksandr Tymoshenko 
186*94b8a54aSOleksandr Tymoshenko #define	SE_UID		4
187*94b8a54aSOleksandr Tymoshenko #define	SE_BANK_PREFIX	"southeastbank"
188*94b8a54aSOleksandr Tymoshenko 
189*94b8a54aSOleksandr Tymoshenko const int chv_southeast_pins[] = {
190*94b8a54aSOleksandr Tymoshenko 	8, 12, 6, 8, 10, 11, -1
191*94b8a54aSOleksandr Tymoshenko };
192*94b8a54aSOleksandr Tymoshenko 
193*94b8a54aSOleksandr Tymoshenko const char *chv_southeast_pin_names[] = {
194*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK0_PAD",
195*94b8a54aSOleksandr Tymoshenko 	"PWM1_PAD",
196*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK1_PAD",
197*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK4_PAD",
198*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK3_PAD",
199*94b8a54aSOleksandr Tymoshenko 	"PWM0_PAD",
200*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK5_PAD",
201*94b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK2_PAD",
202*94b8a54aSOleksandr Tymoshenko 
203*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_D3_CD_B_PAD",
204*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_CLK_PAD",
205*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_D0_PAD",
206*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_D1_PAD",
207*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_CLK_PAD",
208*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_D2_PAD",
209*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_D2_PAD",
210*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_CMD_PAD",
211*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_CMD_PAD",
212*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_D1_PAD",
213*94b8a54aSOleksandr Tymoshenko 	"SDMMC2_D0_PAD",
214*94b8a54aSOleksandr Tymoshenko 	"SDMMC1_D3_CD_B_PAD",
215*94b8a54aSOleksandr Tymoshenko 
216*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_D1_PAD",
217*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_CLK_PAD",
218*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_D3_PAD",
219*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_D2_PAD",
220*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_CMD_PAD",
221*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_D0_PAD",
222*94b8a54aSOleksandr Tymoshenko 
223*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD2_PAD",
224*94b8a54aSOleksandr Tymoshenko 	"LPC_CLKRUNB_PAD",
225*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD0_PAD",
226*94b8a54aSOleksandr Tymoshenko 	"LPC_FRAMEB_PAD",
227*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_CLKOUT1_PAD",
228*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD3_PAD",
229*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_CLKOUT0_PAD",
230*94b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD1_PAD",
231*94b8a54aSOleksandr Tymoshenko 
232*94b8a54aSOleksandr Tymoshenko 	"SPI1_MISO_PAD",
233*94b8a54aSOleksandr Tymoshenko 	"SPI1_CS0_B_PAD",
234*94b8a54aSOleksandr Tymoshenko 	"SPI1_CLK_PAD",
235*94b8a54aSOleksandr Tymoshenko 	"MMC1_D6_PAD",
236*94b8a54aSOleksandr Tymoshenko 	"SPI1_MOSI_PAD",
237*94b8a54aSOleksandr Tymoshenko 	"MMC1_D5_PAD",
238*94b8a54aSOleksandr Tymoshenko 	"SPI1_CS1_B_PAD",
239*94b8a54aSOleksandr Tymoshenko 	"MMC1_D4_SD_WE_PAD",
240*94b8a54aSOleksandr Tymoshenko 	"MMC1_D7_PAD",
241*94b8a54aSOleksandr Tymoshenko 	"MMC1_RCLK_PAD",
242*94b8a54aSOleksandr Tymoshenko 
243*94b8a54aSOleksandr Tymoshenko 	"USB_OC1_B_PAD",
244*94b8a54aSOleksandr Tymoshenko 	"PMU_RESETBUTTON_B_PAD",
245*94b8a54aSOleksandr Tymoshenko 	"GPIO_ALERT_PAD",
246*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_PWR_EN_B_PAD",
247*94b8a54aSOleksandr Tymoshenko 	"ILB_SERIRQ_PAD",
248*94b8a54aSOleksandr Tymoshenko 	"USB_OC0_B_PAD",
249*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_CD_B_PAD",
250*94b8a54aSOleksandr Tymoshenko 	"SPKR_PAD",
251*94b8a54aSOleksandr Tymoshenko 	"SUSPWRDNACK_PAD",
252*94b8a54aSOleksandr Tymoshenko 	"SPARE_PIN_PAD",
253*94b8a54aSOleksandr Tymoshenko 	"SDMMC3_1P8_EN_PAD",
254*94b8a54aSOleksandr Tymoshenko };
255*94b8a54aSOleksandr Tymoshenko 
256*94b8a54aSOleksandr Tymoshenko #define	SW_UID		1
257*94b8a54aSOleksandr Tymoshenko #define	SW_BANK_PREFIX	"southwestbank"
258*94b8a54aSOleksandr Tymoshenko 
259*94b8a54aSOleksandr Tymoshenko const int chv_southwest_pins[] = {
260*94b8a54aSOleksandr Tymoshenko 	8, 8, 8, 8, 8, 8, 8, -1
261*94b8a54aSOleksandr Tymoshenko };
262*94b8a54aSOleksandr Tymoshenko 
263*94b8a54aSOleksandr Tymoshenko const char *chv_southwest_pin_names[] = {
264*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_D2_PAD",
265*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_D0_PAD",
266*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_CLK_PAD",
267*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_D3_PAD",
268*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS1_B_PAD",
269*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_D1_PAD",
270*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS0_B_PAD",
271*94b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS2_B_PAD",
272*94b8a54aSOleksandr Tymoshenko 
273*94b8a54aSOleksandr Tymoshenko 	"UART1_RTS_B_PAD",
274*94b8a54aSOleksandr Tymoshenko 	"UART1_RXD_PAD",
275*94b8a54aSOleksandr Tymoshenko 	"UART2_RXD_PAD",
276*94b8a54aSOleksandr Tymoshenko 	"UART1_CTS_B_PAD",
277*94b8a54aSOleksandr Tymoshenko 	"UART2_RTS_B_PAD",
278*94b8a54aSOleksandr Tymoshenko 	"UART1_TXD_PAD",
279*94b8a54aSOleksandr Tymoshenko 	"UART2_TXD_PAD",
280*94b8a54aSOleksandr Tymoshenko 	"UART2_CTS_B_PAD",
281*94b8a54aSOleksandr Tymoshenko 
282*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_CLK"
283*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_RSTB",
284*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDIO",
285*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDO",
286*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_DOCKRSTB",
287*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_SYNC",
288*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDI1",
289*94b8a54aSOleksandr Tymoshenko 	"MF_HDA_DOCKENB",
290*94b8a54aSOleksandr Tymoshenko 
291*94b8a54aSOleksandr Tymoshenko 	"I2C5_SDA_PAD",
292*94b8a54aSOleksandr Tymoshenko 	"I2C4_SDA_PAD",
293*94b8a54aSOleksandr Tymoshenko 	"I2C6_SDA_PAD",
294*94b8a54aSOleksandr Tymoshenko 	"I2C5_SCL_PAD",
295*94b8a54aSOleksandr Tymoshenko 	"I2C_NFC_SDA_PAD",
296*94b8a54aSOleksandr Tymoshenko 	"I2C4_SCL_PAD",
297*94b8a54aSOleksandr Tymoshenko 	"I2C6_SCL_PAD",
298*94b8a54aSOleksandr Tymoshenko 	"I2C_NFC_SCL_PAD",
299*94b8a54aSOleksandr Tymoshenko 
300*94b8a54aSOleksandr Tymoshenko 	"I2C1_SDA_PAD",
301*94b8a54aSOleksandr Tymoshenko 	"I2C0_SDA_PAD",
302*94b8a54aSOleksandr Tymoshenko 	"I2C2_SDA_PAD",
303*94b8a54aSOleksandr Tymoshenko 	"I2C1_SCL_PAD",
304*94b8a54aSOleksandr Tymoshenko 	"I2C3_SDA_PAD",
305*94b8a54aSOleksandr Tymoshenko 	"I2C0_SCL_PAD",
306*94b8a54aSOleksandr Tymoshenko 	"I2C2_SCL_PAD",
307*94b8a54aSOleksandr Tymoshenko 	"I2C3_SCL_PAD",
308*94b8a54aSOleksandr Tymoshenko 
309*94b8a54aSOleksandr Tymoshenko 	"SATA_GP0",
310*94b8a54aSOleksandr Tymoshenko 	"SATA_GP1",
311*94b8a54aSOleksandr Tymoshenko 	"SATA_LEDN",
312*94b8a54aSOleksandr Tymoshenko 	"SATA_GP2",
313*94b8a54aSOleksandr Tymoshenko 	"MF_SMB_ALERTB",
314*94b8a54aSOleksandr Tymoshenko 	"SATA_GP3",
315*94b8a54aSOleksandr Tymoshenko 	"MF_SMB_CLK",
316*94b8a54aSOleksandr Tymoshenko 	"MF_SMB_DATA",
317*94b8a54aSOleksandr Tymoshenko 
318*94b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ0B_PAD",
319*94b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ1B_PAD",
320*94b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_CLK_PAD",
321*94b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ2B_PAD",
322*94b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_RXD_PAD",
323*94b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ3B_PAD",
324*94b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_FS_PAD",
325*94b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_TXD_PAD",
326*94b8a54aSOleksandr Tymoshenko };
327*94b8a54aSOleksandr Tymoshenko 
328*94b8a54aSOleksandr Tymoshenko const char *virtualgpio[] = {
329*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL0_PAD",
330*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL1_PAD",
331*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL2_PAD",
332*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL3_PAD",
333*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL4_PAD",
334*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL5_PAD",
335*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL6_PAD",
336*94b8a54aSOleksandr Tymoshenko 	"VIRTUAL7_PAD",
337*94b8a54aSOleksandr Tymoshenko };
338