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