xref: /freebsd/sys/dev/gpio/chvgpio_reg.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
194b8a54aSOleksandr Tymoshenko /*-
2*4d846d26SWarner Losh  * SPDX-License-Identifier: BSD-2-Clause
39b7ae691SOleksandr Tymoshenko  *
494b8a54aSOleksandr Tymoshenko  * Copyright (c) 2017 Tom Jones <tj@enoti.me>
594b8a54aSOleksandr Tymoshenko  * All rights reserved.
694b8a54aSOleksandr Tymoshenko  *
794b8a54aSOleksandr Tymoshenko  * Redistribution and use in source and binary forms, with or without
894b8a54aSOleksandr Tymoshenko  * modification, are permitted provided that the following conditions
994b8a54aSOleksandr Tymoshenko  * are met:
1094b8a54aSOleksandr Tymoshenko  * 1. Redistributions of source code must retain the above copyright
1194b8a54aSOleksandr Tymoshenko  *    notice, this list of conditions and the following disclaimer.
1294b8a54aSOleksandr Tymoshenko  * 2. Redistributions in binary form must reproduce the above copyright
1394b8a54aSOleksandr Tymoshenko  *    notice, this list of conditions and the following disclaimer in the
1494b8a54aSOleksandr Tymoshenko  *    documentation and/or other materials provided with the distribution.
1594b8a54aSOleksandr Tymoshenko  *
1694b8a54aSOleksandr Tymoshenko  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
1794b8a54aSOleksandr Tymoshenko  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1894b8a54aSOleksandr Tymoshenko  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1994b8a54aSOleksandr Tymoshenko  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
2094b8a54aSOleksandr Tymoshenko  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2194b8a54aSOleksandr Tymoshenko  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2294b8a54aSOleksandr Tymoshenko  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2394b8a54aSOleksandr Tymoshenko  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2494b8a54aSOleksandr Tymoshenko  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2594b8a54aSOleksandr Tymoshenko  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2694b8a54aSOleksandr Tymoshenko  * SUCH DAMAGE.
2794b8a54aSOleksandr Tymoshenko  */
2894b8a54aSOleksandr Tymoshenko 
2994b8a54aSOleksandr Tymoshenko /*
3094b8a54aSOleksandr Tymoshenko  * Copyright (c) 2016 Mark Kettenis
3194b8a54aSOleksandr Tymoshenko  *
3294b8a54aSOleksandr Tymoshenko  * Permission to use, copy, modify, and distribute this software for any
3394b8a54aSOleksandr Tymoshenko  * purpose with or without fee is hereby granted, provided that the above
3494b8a54aSOleksandr Tymoshenko  * copyright notice and this permission notice appear in all copies.
3594b8a54aSOleksandr Tymoshenko  *
3694b8a54aSOleksandr Tymoshenko  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
3794b8a54aSOleksandr Tymoshenko  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
3894b8a54aSOleksandr Tymoshenko  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
3994b8a54aSOleksandr Tymoshenko  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
4094b8a54aSOleksandr Tymoshenko  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
4194b8a54aSOleksandr Tymoshenko  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
4294b8a54aSOleksandr Tymoshenko  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
4394b8a54aSOleksandr Tymoshenko  *
4494b8a54aSOleksandr Tymoshenko  */
4594b8a54aSOleksandr Tymoshenko 
4694b8a54aSOleksandr Tymoshenko 
4794b8a54aSOleksandr Tymoshenko #define CHVGPIO_INTERRUPT_STATUS		0x0300
4894b8a54aSOleksandr Tymoshenko #define CHVGPIO_INTERRUPT_MASK			0x0380
4994b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0			0x4400
5094b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1			0x4404
5194b8a54aSOleksandr Tymoshenko 
5294b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIORXSTATE		0x00000001
5394b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOTXSTATE		0x00000002
5494b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_INTSEL_MASK		0xf0000000
5594b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_INTSEL_SHIFT		28
5694b8a54aSOleksandr Tymoshenko 
5794b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_SHIFT		8
5894b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_MASK		(7 << CHVGPIO_PAD_CFG0_GPIOCFG_SHIFT)
5994b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPIO		0
6094b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPO		1
6194b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_GPI		2
6294b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG0_GPIOCFG_HIZ		3
6394b8a54aSOleksandr Tymoshenko 
6494b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_MASK	0x00000007
6594b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_FALLING	0x00000001
6694b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_RISING	0x00000002
6794b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_BOTH	0x00000003
6894b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INTWAKECFG_LEVEL	0x00000004
6994b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INVRXTX_MASK		0x000000f0
7094b8a54aSOleksandr Tymoshenko #define CHVGPIO_PAD_CFG1_INVRXTX_RXDATA		0x00000040
7194b8a54aSOleksandr Tymoshenko 
7294b8a54aSOleksandr Tymoshenko /*
7394b8a54aSOleksandr Tymoshenko  * The pads for the pins are arranged in groups of maximal 15 pins.
7494b8a54aSOleksandr Tymoshenko  * The arrays below give the number of pins per group, such that we
7594b8a54aSOleksandr Tymoshenko  * can validate the (untrusted) pin numbers from ACPI.
7694b8a54aSOleksandr Tymoshenko  */
7794b8a54aSOleksandr Tymoshenko #define	E_UID		3
7894b8a54aSOleksandr Tymoshenko #define	E_BANK_PREFIX	"eastbank"
7994b8a54aSOleksandr Tymoshenko 
8094b8a54aSOleksandr Tymoshenko const int chv_east_pins[] = {
8194b8a54aSOleksandr Tymoshenko 	12, 12, -1
8294b8a54aSOleksandr Tymoshenko };
8394b8a54aSOleksandr Tymoshenko 
8494b8a54aSOleksandr Tymoshenko const char *chv_east_pin_names[] = {
8594b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S3_B",
8694b8a54aSOleksandr Tymoshenko 		"PMU_BATLOW_B",
8794b8a54aSOleksandr Tymoshenko 		"SUS_STAT_B",
8894b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S0IX_B",
8994b8a54aSOleksandr Tymoshenko 		"PMU_AC_PRESENT",
9094b8a54aSOleksandr Tymoshenko 		"PMU_PLTRST_B",
9194b8a54aSOleksandr Tymoshenko 		"PMU_SUSCLK",
9294b8a54aSOleksandr Tymoshenko 		"PMU_SLP_LAN_B",
9394b8a54aSOleksandr Tymoshenko 		"PMU_PWRBTN_B",
9494b8a54aSOleksandr Tymoshenko 		"PMU_SLP_S4_B",
9594b8a54aSOleksandr Tymoshenko 		"PMU_WAKE_B",
9694b8a54aSOleksandr Tymoshenko 		"PMU_WAKE_LAN_B"
9794b8a54aSOleksandr Tymoshenko 
9894b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_3",
9994b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_7",
10094b8a54aSOleksandr Tymoshenko 		"MF_ISH_I2C1_SCL",
10194b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_1",
10294b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_5",
10394b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_9",
10494b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_0",
10594b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_4",
10694b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_8",
10794b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_2",
10894b8a54aSOleksandr Tymoshenko 		"MF_ISH_GPIO_6",
10994b8a54aSOleksandr Tymoshenko 		"MF_ISH_I2C1_SDA"
11094b8a54aSOleksandr Tymoshenko };
11194b8a54aSOleksandr Tymoshenko 
11294b8a54aSOleksandr Tymoshenko #define	N_UID		2
11394b8a54aSOleksandr Tymoshenko #define	N_BANK_PREFIX	"northbank"
11494b8a54aSOleksandr Tymoshenko 
11594b8a54aSOleksandr Tymoshenko const int chv_north_pins[] = {
11694b8a54aSOleksandr Tymoshenko 	9, 13, 12, 12, 13, -1
11794b8a54aSOleksandr Tymoshenko };
11894b8a54aSOleksandr Tymoshenko 
11994b8a54aSOleksandr Tymoshenko const char *chv_north_pin_names[] = {
12094b8a54aSOleksandr Tymoshenko 	"GPIO_DFX0_PAD",
12194b8a54aSOleksandr Tymoshenko 	"GPIO_DFX3_PAD",
12294b8a54aSOleksandr Tymoshenko 	"GPIO_DFX7_PAD",
12394b8a54aSOleksandr Tymoshenko 	"GPIO_DFX1_PAD",
12494b8a54aSOleksandr Tymoshenko 	"GPIO_DFX5_PAD",
12594b8a54aSOleksandr Tymoshenko 	"GPIO_DFX4_PAD",
12694b8a54aSOleksandr Tymoshenko 	"GPIO_DFX8_PAD",
12794b8a54aSOleksandr Tymoshenko 	"GPIO_DFX2_PAD",
12894b8a54aSOleksandr Tymoshenko 	"GPIO_DFX6_PAD",
12994b8a54aSOleksandr Tymoshenko 
13094b8a54aSOleksandr Tymoshenko 	"GPIO_SUS0_PAD",
13194b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS10_PAD",
13294b8a54aSOleksandr Tymoshenko 	"GPIO_SUS3_PAD",
13394b8a54aSOleksandr Tymoshenko 	"GPIO_SUS7_PAD",
13494b8a54aSOleksandr Tymoshenko 	"GPIO_SUS1_PAD",
13594b8a54aSOleksandr Tymoshenko 	"GPIO_SUS5_PAD",
13694b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS11_PAD",
13794b8a54aSOleksandr Tymoshenko 	"GPIO_SUS4_PAD",
13894b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS8_PAD",
13994b8a54aSOleksandr Tymoshenko 	"GPIO_SUS2_PAD",
14094b8a54aSOleksandr Tymoshenko 	"GPIO_SUS6_PAD",
14194b8a54aSOleksandr Tymoshenko 	"CX_PREQ_B_PAD",
14294b8a54aSOleksandr Tymoshenko 	"SEC_GPIO_SUS9_PAD",
14394b8a54aSOleksandr Tymoshenko 
14494b8a54aSOleksandr Tymoshenko 	"TRST_B_PAD",
14594b8a54aSOleksandr Tymoshenko 	"TCK_PAD",
14694b8a54aSOleksandr Tymoshenko 	"PROCHOT_B_PAD",
14794b8a54aSOleksandr Tymoshenko 	"SVID0_DATA_PAD",
14894b8a54aSOleksandr Tymoshenko 	"TMS_PAD",
14994b8a54aSOleksandr Tymoshenko 	"CX_PRDY_B_2_PAD",
15094b8a54aSOleksandr Tymoshenko 	"TDO_2_PAD",
15194b8a54aSOleksandr Tymoshenko 	"CX_PRDY_B_PAD",
15294b8a54aSOleksandr Tymoshenko 	"SVID0_ALERT_B_PAD",
15394b8a54aSOleksandr Tymoshenko 	"TDO_PAD",
15494b8a54aSOleksandr Tymoshenko 	"SVID0_CLK_PAD",
15594b8a54aSOleksandr Tymoshenko 	"TDI_PAD",
15694b8a54aSOleksandr Tymoshenko 
15794b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB05_PAD",
15894b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB02_PAD",
15994b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB08_PAD",
16094b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB00_PAD",
16194b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB06_PAD",
16294b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB10_PAD",
16394b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB03_PAD",
16494b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB09_PAD",
16594b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB01_PAD",
16694b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB07_PAD",
16794b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB11_PAD",
16894b8a54aSOleksandr Tymoshenko 	"GP_CAMERASB04_PAD",
16994b8a54aSOleksandr Tymoshenko 
17094b8a54aSOleksandr Tymoshenko 	"PANEL0_BKLTEN_PAD",
17194b8a54aSOleksandr Tymoshenko 	"HV_DDI0_HPD_PAD",
17294b8a54aSOleksandr Tymoshenko 	"HV_DDI2_DDC_SDA_PAD",
17394b8a54aSOleksandr Tymoshenko 	"PANEL1_BKLTCTL_PAD",
17494b8a54aSOleksandr Tymoshenko 	"HV_DDI1_HPD_PAD",
17594b8a54aSOleksandr Tymoshenko 	"PANEL0_BKLTCTL_PAD",
17694b8a54aSOleksandr Tymoshenko 	"HV_DDI0_DDC_SDA_PAD",
17794b8a54aSOleksandr Tymoshenko 	"HV_DDI2_DDC_SCL_PAD",
17894b8a54aSOleksandr Tymoshenko 	"HV_DDI2_HPD_PAD",
17994b8a54aSOleksandr Tymoshenko 	"PANEL1_VDDEN_PAD",
18094b8a54aSOleksandr Tymoshenko 	"PANEL1_BKLTEN_PAD",
18194b8a54aSOleksandr Tymoshenko 	"HV_DDI0_DDC_SCL_PAD",
18294b8a54aSOleksandr Tymoshenko 	"PANEL0_VDDEN_PAD",
18394b8a54aSOleksandr Tymoshenko };
18494b8a54aSOleksandr Tymoshenko 
18594b8a54aSOleksandr Tymoshenko 
18694b8a54aSOleksandr Tymoshenko #define	SE_UID		4
18794b8a54aSOleksandr Tymoshenko #define	SE_BANK_PREFIX	"southeastbank"
18894b8a54aSOleksandr Tymoshenko 
18994b8a54aSOleksandr Tymoshenko const int chv_southeast_pins[] = {
19094b8a54aSOleksandr Tymoshenko 	8, 12, 6, 8, 10, 11, -1
19194b8a54aSOleksandr Tymoshenko };
19294b8a54aSOleksandr Tymoshenko 
19394b8a54aSOleksandr Tymoshenko const char *chv_southeast_pin_names[] = {
19494b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK0_PAD",
19594b8a54aSOleksandr Tymoshenko 	"PWM1_PAD",
19694b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK1_PAD",
19794b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK4_PAD",
19894b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK3_PAD",
19994b8a54aSOleksandr Tymoshenko 	"PWM0_PAD",
20094b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK5_PAD",
20194b8a54aSOleksandr Tymoshenko 	"MF_PLT_CLK2_PAD",
20294b8a54aSOleksandr Tymoshenko 
20394b8a54aSOleksandr Tymoshenko 	"SDMMC2_D3_CD_B_PAD",
20494b8a54aSOleksandr Tymoshenko 	"SDMMC1_CLK_PAD",
20594b8a54aSOleksandr Tymoshenko 	"SDMMC1_D0_PAD",
20694b8a54aSOleksandr Tymoshenko 	"SDMMC2_D1_PAD",
20794b8a54aSOleksandr Tymoshenko 	"SDMMC2_CLK_PAD",
20894b8a54aSOleksandr Tymoshenko 	"SDMMC1_D2_PAD",
20994b8a54aSOleksandr Tymoshenko 	"SDMMC2_D2_PAD",
21094b8a54aSOleksandr Tymoshenko 	"SDMMC2_CMD_PAD",
21194b8a54aSOleksandr Tymoshenko 	"SDMMC1_CMD_PAD",
21294b8a54aSOleksandr Tymoshenko 	"SDMMC1_D1_PAD",
21394b8a54aSOleksandr Tymoshenko 	"SDMMC2_D0_PAD",
21494b8a54aSOleksandr Tymoshenko 	"SDMMC1_D3_CD_B_PAD",
21594b8a54aSOleksandr Tymoshenko 
21694b8a54aSOleksandr Tymoshenko 	"SDMMC3_D1_PAD",
21794b8a54aSOleksandr Tymoshenko 	"SDMMC3_CLK_PAD",
21894b8a54aSOleksandr Tymoshenko 	"SDMMC3_D3_PAD",
21994b8a54aSOleksandr Tymoshenko 	"SDMMC3_D2_PAD",
22094b8a54aSOleksandr Tymoshenko 	"SDMMC3_CMD_PAD",
22194b8a54aSOleksandr Tymoshenko 	"SDMMC3_D0_PAD",
22294b8a54aSOleksandr Tymoshenko 
22394b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD2_PAD",
22494b8a54aSOleksandr Tymoshenko 	"LPC_CLKRUNB_PAD",
22594b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD0_PAD",
22694b8a54aSOleksandr Tymoshenko 	"LPC_FRAMEB_PAD",
22794b8a54aSOleksandr Tymoshenko 	"MF_LPC_CLKOUT1_PAD",
22894b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD3_PAD",
22994b8a54aSOleksandr Tymoshenko 	"MF_LPC_CLKOUT0_PAD",
23094b8a54aSOleksandr Tymoshenko 	"MF_LPC_AD1_PAD",
23194b8a54aSOleksandr Tymoshenko 
23294b8a54aSOleksandr Tymoshenko 	"SPI1_MISO_PAD",
23394b8a54aSOleksandr Tymoshenko 	"SPI1_CS0_B_PAD",
23494b8a54aSOleksandr Tymoshenko 	"SPI1_CLK_PAD",
23594b8a54aSOleksandr Tymoshenko 	"MMC1_D6_PAD",
23694b8a54aSOleksandr Tymoshenko 	"SPI1_MOSI_PAD",
23794b8a54aSOleksandr Tymoshenko 	"MMC1_D5_PAD",
23894b8a54aSOleksandr Tymoshenko 	"SPI1_CS1_B_PAD",
23994b8a54aSOleksandr Tymoshenko 	"MMC1_D4_SD_WE_PAD",
24094b8a54aSOleksandr Tymoshenko 	"MMC1_D7_PAD",
24194b8a54aSOleksandr Tymoshenko 	"MMC1_RCLK_PAD",
24294b8a54aSOleksandr Tymoshenko 
24394b8a54aSOleksandr Tymoshenko 	"USB_OC1_B_PAD",
24494b8a54aSOleksandr Tymoshenko 	"PMU_RESETBUTTON_B_PAD",
24594b8a54aSOleksandr Tymoshenko 	"GPIO_ALERT_PAD",
24694b8a54aSOleksandr Tymoshenko 	"SDMMC3_PWR_EN_B_PAD",
24794b8a54aSOleksandr Tymoshenko 	"ILB_SERIRQ_PAD",
24894b8a54aSOleksandr Tymoshenko 	"USB_OC0_B_PAD",
24994b8a54aSOleksandr Tymoshenko 	"SDMMC3_CD_B_PAD",
25094b8a54aSOleksandr Tymoshenko 	"SPKR_PAD",
25194b8a54aSOleksandr Tymoshenko 	"SUSPWRDNACK_PAD",
25294b8a54aSOleksandr Tymoshenko 	"SPARE_PIN_PAD",
25394b8a54aSOleksandr Tymoshenko 	"SDMMC3_1P8_EN_PAD",
25494b8a54aSOleksandr Tymoshenko };
25594b8a54aSOleksandr Tymoshenko 
25694b8a54aSOleksandr Tymoshenko #define	SW_UID		1
25794b8a54aSOleksandr Tymoshenko #define	SW_BANK_PREFIX	"southwestbank"
25894b8a54aSOleksandr Tymoshenko 
25994b8a54aSOleksandr Tymoshenko const int chv_southwest_pins[] = {
26094b8a54aSOleksandr Tymoshenko 	8, 8, 8, 8, 8, 8, 8, -1
26194b8a54aSOleksandr Tymoshenko };
26294b8a54aSOleksandr Tymoshenko 
26394b8a54aSOleksandr Tymoshenko const char *chv_southwest_pin_names[] = {
26494b8a54aSOleksandr Tymoshenko 	"FST_SPI_D2_PAD",
26594b8a54aSOleksandr Tymoshenko 	"FST_SPI_D0_PAD",
26694b8a54aSOleksandr Tymoshenko 	"FST_SPI_CLK_PAD",
26794b8a54aSOleksandr Tymoshenko 	"FST_SPI_D3_PAD",
26894b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS1_B_PAD",
26994b8a54aSOleksandr Tymoshenko 	"FST_SPI_D1_PAD",
27094b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS0_B_PAD",
27194b8a54aSOleksandr Tymoshenko 	"FST_SPI_CS2_B_PAD",
27294b8a54aSOleksandr Tymoshenko 
27394b8a54aSOleksandr Tymoshenko 	"UART1_RTS_B_PAD",
27494b8a54aSOleksandr Tymoshenko 	"UART1_RXD_PAD",
27594b8a54aSOleksandr Tymoshenko 	"UART2_RXD_PAD",
27694b8a54aSOleksandr Tymoshenko 	"UART1_CTS_B_PAD",
27794b8a54aSOleksandr Tymoshenko 	"UART2_RTS_B_PAD",
27894b8a54aSOleksandr Tymoshenko 	"UART1_TXD_PAD",
27994b8a54aSOleksandr Tymoshenko 	"UART2_TXD_PAD",
28094b8a54aSOleksandr Tymoshenko 	"UART2_CTS_B_PAD",
28194b8a54aSOleksandr Tymoshenko 
28294b8a54aSOleksandr Tymoshenko 	"MF_HDA_CLK"
28394b8a54aSOleksandr Tymoshenko 	"MF_HDA_RSTB",
28494b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDIO",
28594b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDO",
28694b8a54aSOleksandr Tymoshenko 	"MF_HDA_DOCKRSTB",
28794b8a54aSOleksandr Tymoshenko 	"MF_HDA_SYNC",
28894b8a54aSOleksandr Tymoshenko 	"MF_HDA_SDI1",
28994b8a54aSOleksandr Tymoshenko 	"MF_HDA_DOCKENB",
29094b8a54aSOleksandr Tymoshenko 
29194b8a54aSOleksandr Tymoshenko 	"I2C5_SDA_PAD",
29294b8a54aSOleksandr Tymoshenko 	"I2C4_SDA_PAD",
29394b8a54aSOleksandr Tymoshenko 	"I2C6_SDA_PAD",
29494b8a54aSOleksandr Tymoshenko 	"I2C5_SCL_PAD",
29594b8a54aSOleksandr Tymoshenko 	"I2C_NFC_SDA_PAD",
29694b8a54aSOleksandr Tymoshenko 	"I2C4_SCL_PAD",
29794b8a54aSOleksandr Tymoshenko 	"I2C6_SCL_PAD",
29894b8a54aSOleksandr Tymoshenko 	"I2C_NFC_SCL_PAD",
29994b8a54aSOleksandr Tymoshenko 
30094b8a54aSOleksandr Tymoshenko 	"I2C1_SDA_PAD",
30194b8a54aSOleksandr Tymoshenko 	"I2C0_SDA_PAD",
30294b8a54aSOleksandr Tymoshenko 	"I2C2_SDA_PAD",
30394b8a54aSOleksandr Tymoshenko 	"I2C1_SCL_PAD",
30494b8a54aSOleksandr Tymoshenko 	"I2C3_SDA_PAD",
30594b8a54aSOleksandr Tymoshenko 	"I2C0_SCL_PAD",
30694b8a54aSOleksandr Tymoshenko 	"I2C2_SCL_PAD",
30794b8a54aSOleksandr Tymoshenko 	"I2C3_SCL_PAD",
30894b8a54aSOleksandr Tymoshenko 
30994b8a54aSOleksandr Tymoshenko 	"SATA_GP0",
31094b8a54aSOleksandr Tymoshenko 	"SATA_GP1",
31194b8a54aSOleksandr Tymoshenko 	"SATA_LEDN",
31294b8a54aSOleksandr Tymoshenko 	"SATA_GP2",
31394b8a54aSOleksandr Tymoshenko 	"MF_SMB_ALERTB",
31494b8a54aSOleksandr Tymoshenko 	"SATA_GP3",
31594b8a54aSOleksandr Tymoshenko 	"MF_SMB_CLK",
31694b8a54aSOleksandr Tymoshenko 	"MF_SMB_DATA",
31794b8a54aSOleksandr Tymoshenko 
31894b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ0B_PAD",
31994b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ1B_PAD",
32094b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_CLK_PAD",
32194b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ2B_PAD",
32294b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_RXD_PAD",
32394b8a54aSOleksandr Tymoshenko 	"PCIE_CLKREQ3B_PAD",
32494b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_FS_PAD",
32594b8a54aSOleksandr Tymoshenko 	"GP_SSP_2_TXD_PAD",
32694b8a54aSOleksandr Tymoshenko };
32794b8a54aSOleksandr Tymoshenko 
32894b8a54aSOleksandr Tymoshenko const char *virtualgpio[] = {
32994b8a54aSOleksandr Tymoshenko 	"VIRTUAL0_PAD",
33094b8a54aSOleksandr Tymoshenko 	"VIRTUAL1_PAD",
33194b8a54aSOleksandr Tymoshenko 	"VIRTUAL2_PAD",
33294b8a54aSOleksandr Tymoshenko 	"VIRTUAL3_PAD",
33394b8a54aSOleksandr Tymoshenko 	"VIRTUAL4_PAD",
33494b8a54aSOleksandr Tymoshenko 	"VIRTUAL5_PAD",
33594b8a54aSOleksandr Tymoshenko 	"VIRTUAL6_PAD",
33694b8a54aSOleksandr Tymoshenko 	"VIRTUAL7_PAD",
33794b8a54aSOleksandr Tymoshenko };
338