diff options
author | Jarried Lin <jarried.lin@mediatek.corp-partner.google.com> | 2024-08-20 11:44:08 +0800 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2024-08-23 14:34:54 +0000 |
commit | 62d69eb59b818fbb225fc47adababa8642bc69a1 (patch) | |
tree | 6c1818aec0e3dc63504c487ee0b2cfd89cea0e9d /src/soc/mediatek | |
parent | 2bb1388d68c00c8f88a469276365832c02d4483b (diff) |
soc/mediatek/mt8196: Add GPIO driver
Add GPIO driver for other modules to control GPIO pins.
TEST=build pass
BUG=b:317009620
Change-Id: I6d1e6ef17660308c8de908697ffba6b5f17ff9ae
Signed-off-by: Jarried Lin <jarried.lin@mediatek.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83922
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/mediatek')
-rw-r--r-- | src/soc/mediatek/mt8196/Makefile.mk | 1 | ||||
-rw-r--r-- | src/soc/mediatek/mt8196/gpio.c | 402 | ||||
-rw-r--r-- | src/soc/mediatek/mt8196/include/soc/gpio.h | 879 |
3 files changed, 1282 insertions, 0 deletions
diff --git a/src/soc/mediatek/mt8196/Makefile.mk b/src/soc/mediatek/mt8196/Makefile.mk index 5afbb9ebef..04f1ed1368 100644 --- a/src/soc/mediatek/mt8196/Makefile.mk +++ b/src/soc/mediatek/mt8196/Makefile.mk @@ -2,6 +2,7 @@ ifeq ($(CONFIG_SOC_MEDIATEK_MT8196),y) +all-y += ../common/gpio.c ../common/gpio_op.c gpio.c all-$(CONFIG_SPI_FLASH) += spi.c all-y += timer.c all-y += ../common/uart.c diff --git a/src/soc/mediatek/mt8196/gpio.c b/src/soc/mediatek/mt8196/gpio.c new file mode 100644 index 0000000000..443c391947 --- /dev/null +++ b/src/soc/mediatek/mt8196/gpio.c @@ -0,0 +1,402 @@ +/* SPDX-License-Identifier: GPL-2.0-only OR MIT */ + +/* + * This file is created based on MT8196 Functional Specification + * Chapter number: 13.4 + */ + +#include <device/mmio.h> +#include <gpio.h> + +static const struct gpio_drv_info gpio_driving_info[] = { + [0] = { 0x00, 0, 3, }, + [1] = { 0x00, 3, 3, }, + [2] = { 0x00, 12, 3, }, + [3] = { 0x00, 12, 3, }, + [4] = { 0x00, 15, 3, }, + [5] = { 0x00, 0, 3, }, + [6] = { 0x00, 3, 3, }, + [7] = { 0x00, 6, 3, }, + [8] = { 0x00, 9, 3, }, + [9] = { 0x10, 9, 3, }, + [10] = { 0x10, 6, 3, }, + [11] = { 0x00, 24, 3, }, + [12] = { 0x10, 15, 3, }, + [13] = { 0x00, 9, 3, }, + [14] = { 0x00, 0, 3, }, + [15] = { 0x00, 0, 3, }, + [16] = { 0x00, 9, 3, }, + [17] = { 0x00, 9, 3, }, + [18] = { 0x00, 3, 3, }, + [19] = { 0x00, 6, 3, }, + [20] = { 0x00, 9, 3, }, + [21] = { 0x00, 0, 3, }, + [22] = { 0x00, 3, 3, }, + [23] = { 0x00, 6, 3, }, + [24] = { 0x00, 9, 3, }, + [25] = { 0x00, 12, 3, }, + [26] = { 0x00, 15, 3, }, + [27] = { 0x10, 3, 3, }, + [28] = { 0x00, 18, 3, }, + [29] = { 0x00, 21, 3, }, + [30] = { 0x00, 24, 3, }, + [31] = { 0x00, 27, 3, }, + [32] = { 0x00, 21, 3, }, + [33] = { 0x00, 21, 3, }, + [34] = { 0x00, 21, 3, }, + [35] = { 0x00, 21, 3, }, + [36] = { 0x00, 21, 3, }, + [37] = { 0x00, 27, 3, }, + [38] = { 0x00, 18, 3, }, + [39] = { 0x00, 27, 3, }, + [40] = { 0x00, 6, 3, }, + [41] = { 0x00, 12, 3, }, + [42] = { 0x00, 9, 3, }, + [43] = { 0x00, 15, 3, }, + [44] = { 0x00, 18, 3, }, + [45] = { 0x00, 21, 3, }, + [46] = { 0x10, 0, 3, }, + [47] = { 0x10, 9, 3, }, + [48] = { 0x10, 3, 3, }, + [49] = { 0x10, 12, 3, }, + [50] = { 0x10, 6, 3, }, + [51] = { 0x10, 15, 3, }, + [52] = { 0x00, 21, 3, }, + [53] = { 0x00, 24, 3, }, + [54] = { 0x00, 6, 3, }, + [55] = { 0x00, 3, 3, }, + [56] = { 0x00, 15, 3, }, + [57] = { 0x00, 18, 3, }, + [58] = { 0x00, 9, 3, }, + [59] = { 0x00, 12, 3, }, + [60] = { 0x10, 24, 3, }, + [61] = { 0x10, 0, 3, }, + [62] = { 0x00, 27, 3, }, + [63] = { 0x10, 12, 3, }, + [64] = { 0x00, 0, 3, }, + [65] = { 0x10, 3, 3, }, + [66] = { 0x10, 27, 3, }, + [67] = { 0x10, 21, 3, }, + [68] = { 0x10, 21, 3, }, + [69] = { 0x10, 21, 3, }, + [70] = { 0x10, 18, 3, }, + [71] = { 0x10, 18, 3, }, + [72] = { 0x10, 21, 3, }, + [73] = { 0x10, 18, 3, }, + [74] = { 0x10, 18, 3, }, + [75] = { 0x00, 6, 3, }, + [76] = { 0x00, 9, 3, }, + [77] = { 0x00, 12, 3, }, + [78] = { 0x00, 15, 3, }, + [79] = { 0x00, 0, 3, }, + [80] = { 0x00, 3, 3, }, + [81] = { 0x00, 18, 3, }, + [82] = { 0x00, 21, 3, }, + [83] = { 0x00, 27, 3, }, + [84] = { 0x00, 24, 3, }, + [85] = { 0x10, 0, 3, }, + [86] = { 0x10, 3, 3, }, + [87] = { 0x10, 9, 3, }, + [88] = { 0x10, 6, 3, }, + [89] = { 0x00, 12, 3, }, + [90] = { 0x00, 12, 3, }, + [91] = { 0x00, 15, 3, }, + [92] = { 0x00, 15, 3, }, + [93] = { 0x00, 15, 3, }, + [94] = { 0x00, 12, 3, }, + [95] = { 0x00, 0, 3, }, + [96] = { 0x00, 6, 3, }, + [97] = { 0x00, 3, 3, }, + [98] = { 0x00, 9, 3, }, + [99] = { 0x00, 18, 3, }, + [100] = { 0x00, 27, 3, }, + [101] = { 0x00, 21, 3, }, + [102] = { 0x10, 0, 3, }, + [103] = { 0x00, 12, 3, }, + [104] = { 0x00, 24, 3, }, + [105] = { 0x10, 3, 3, }, + [106] = { 0x00, 0, 3, }, + [107] = { 0x00, 3, 3, }, + [108] = { 0x00, 9, 3, }, + [109] = { 0x00, 6, 3, }, + [110] = { 0x00, 12, 3, }, + [111] = { 0x00, 15, 3, }, + [112] = { 0x00, 21, 3, }, + [113] = { 0x00, 18, 3, }, + [114] = { 0x00, 24, 3, }, + [115] = { 0x00, 27, 3, }, + [116] = { 0x10, 3, 3, }, + [117] = { 0x10, 0, 3, }, + [118] = { 0x00, 18, 3, }, + [119] = { 0x00, 21, 3, }, + [120] = { 0x00, 27, 3, }, + [121] = { 0x00, 24, 3, }, + [122] = { 0x00, 9, 3, }, + [123] = { 0x00, 12, 3, }, + [124] = { 0x00, 15, 3, }, + [125] = { 0x00, 0, 3, }, + [126] = { 0x00, 3, 3, }, + [127] = { 0x00, 6, 3, }, + [128] = { 0x00, 9, 3, }, + [129] = { 0x00, 12, 3, }, + [130] = { 0x00, 15, 3, }, + [131] = { 0x00, 27, 3, }, + [132] = { 0x10, 3, 3, }, + [133] = { 0x10, 0, 3, }, + [134] = { 0x00, 18, 3, }, + [135] = { 0x00, 24, 3, }, + [136] = { 0x00, 21, 3, }, + [137] = { 0x00, 6, 3, }, + [138] = { 0x00, 9, 3, }, + [139] = { 0x00, 12, 3, }, + [140] = { 0x00, 15, 3, }, + [141] = { 0x00, 18, 3, }, + [142] = { 0x00, 21, 3, }, + [143] = { 0x00, 24, 3, }, + [144] = { 0x00, 27, 3, }, + [145] = { 0x10, 0, 3, }, + [146] = { 0x10, 0, 3, }, + [147] = { 0x00, 0, 3, }, + [148] = { 0x00, 3, 3, }, + [149] = { 0x10, 3, 3, }, + [150] = { 0x10, 3, 3, }, + [151] = { 0x10, 3, 3, }, + [152] = { 0x10, 3, 3, }, + [153] = { 0x10, 12, 3, }, + [154] = { 0x10, 9, 3, }, + [155] = { 0x10, 6, 3, }, + [156] = { 0x10, 6, 3, }, + [157] = { 0x10, 0, 3, }, + [158] = { 0x10, 0, 3, }, + [159] = { 0x10, 0, 3, }, + [160] = { 0x00, 3, 3, }, + [161] = { 0x00, 6, 3, }, + [162] = { 0x00, 6, 3, }, + [163] = { 0x00, 6, 3, }, + [164] = { 0x00, 18, 3, }, + [165] = { 0x00, 24, 3, }, + [166] = { 0x00, 21, 3, }, + [167] = { 0x00, 27, 3, }, + [168] = { 0x10, 0, 3, }, + [169] = { 0x10, 3, 3, }, + [170] = { 0x10, 9, 3, }, + [171] = { 0x10, 6, 3, }, + [172] = { 0x00, 9, 3, }, + [173] = { 0x00, 9, 3, }, + [174] = { 0x00, 27, 3, }, + [175] = { 0x00, 27, 3, }, + [176] = { 0x10, 0, 3, }, + [177] = { 0x10, 3, 3, }, + [178] = { 0x00, 24, 3, }, + [179] = { 0x00, 24, 3, }, + [180] = { 0x00, 0, 3, }, + [181] = { 0x00, 3, 3, }, + [182] = { 0x00, 6, 3, }, + [183] = { 0x00, 9, 3, }, + [184] = { 0x00, 12, 3, }, + [185] = { 0x00, 15, 3, }, + [186] = { 0x10, 12, 3, }, + [187] = { 0x10, 12, 3, }, + [188] = { 0x00, 12, 3, }, + [189] = { 0x00, 27, 3, }, + [190] = { 0x00, 15, 3, }, + [191] = { 0x10, 0, 3, }, + [192] = { 0x00, 0, 3, }, + [193] = { 0x10, 15, 3, }, + [194] = { 0x00, 18, 3, }, + [195] = { 0x10, 3, 3, }, + [196] = { 0x00, 3, 3, }, + [197] = { 0x10, 18, 3, }, + [198] = { 0x00, 21, 3, }, + [199] = { 0x10, 6, 3, }, + [200] = { 0x10, 27, 3, }, + [201] = { 0x20, 6, 3, }, + [202] = { 0x00, 24, 3, }, + [203] = { 0x10, 9, 3, }, + [204] = { 0x00, 6, 3, }, + [205] = { 0x00, 9, 3, }, + [206] = { 0x10, 24, 3, }, + [207] = { 0x10, 21, 3, }, + [208] = { 0x10, 21, 3, }, + [209] = { 0x10, 21, 3, }, + [210] = { 0x00, 0, 3, }, + [211] = { 0x00, 3, 3, }, + [212] = { 0x00, 6, 3, }, + [213] = { 0x00, 9, 3, }, + [214] = { 0x20, 0, 3, }, + [215] = { 0x20, 3, 3, }, + [216] = { 0x10, 6, 3, }, + [217] = { 0x10, 6, 3, }, + [218] = { 0x00, 15, 3, }, + [219] = { 0x00, 12, 3, }, + [220] = { 0x20, 3, 3, }, + [221] = { 0x20, 6, 3, }, + [222] = { 0x20, 12, 3, }, + [223] = { 0x20, 9, 3, }, + [224] = { 0x00, 18, 3, }, + [225] = { 0x00, 21, 3, }, + [226] = { 0x00, 24, 3, }, + [227] = { 0x00, 27, 3, }, + [228] = { 0x10, 0, 3, }, + [229] = { 0x10, 3, 3, }, + [230] = { 0x00, 0, 3, }, + [231] = { 0x00, 0, 3, }, + [232] = { 0x00, 0, 3, }, + [233] = { 0x00, 3, 3, }, + [234] = { 0x00, 3, 3, }, + [235] = { 0x00, 3, 3, }, + [236] = { 0x00, 3, 3, }, + [237] = { 0x00, 6, 3, }, + [238] = { 0x00, 6, 3, }, + [239] = { 0x00, 6, 3, }, + [240] = { 0x00, 6, 3, }, + [241] = { 0x00, 9, 3, }, + [242] = { 0x00, 9, 3, }, + [243] = { 0x00, 9, 3, }, + [244] = { 0x00, 9, 3, }, + [245] = { 0x00, 12, 3, }, + [246] = { 0x00, 15, 3, }, + [247] = { 0x00, 15, 3, }, + [248] = { 0x00, 12, 3, }, + [249] = { 0x00, 12, 3, }, + [250] = { 0x00, 12, 3, }, + [251] = { 0x00, 9, 3, }, + [252] = { 0x00, 12, 3, }, + [253] = { 0x00, 12, 3, }, + [254] = { 0x00, 12, 3, }, + [255] = { 0x00, 12, 3, }, + [256] = { 0x00, 15, 3, }, + [257] = { 0x00, 15, 3, }, + [258] = { 0x00, 15, 3, }, + [259] = { 0x10, 9, 3, }, + [260] = { 0x10, 12, 3, }, + [261] = { 0x10, 15, 3, }, + [262] = { 0x10, 18, 3, }, + [263] = { 0x10, 21, 3, }, + [264] = { 0x10, 24, 3, }, + [265] = { 0x10, 27, 3, }, + [266] = { 0x20, 0, 3, }, + [267] = { 0x00, 24, 3, }, + [268] = { 0x00, 27, 3, }, + [269] = { 0x00, 18, 3, }, + [270] = { 0x00, 21, 3, }, +}; +_Static_assert(ARRAY_SIZE(gpio_driving_info) == GPIO_NUM, + "gpio_driving_info array size not match"); + +static const struct gpio_drv_info gpio_driving_adv_info[] = { + [46] = { 0x30, 0, 3, }, + [47] = { 0x30, 9, 3, }, + [48] = { 0x30, 3, 3, }, + [49] = { 0x30, 12, 3, }, + [50] = { 0x30, 6, 3, }, + [51] = { 0x30, 15, 3, }, + [52] = { 0x30, 0, 3, }, + [53] = { 0x30, 3, 3, }, + [75] = { 0x20, 0, 5, }, + [76] = { 0x20, 5, 5, }, + [77] = { 0x20, 10, 5, }, + [78] = { 0x20, 15, 5, }, + [99] = { 0x20, 0, 3, }, + [100] = { 0x20, 9, 3, }, + [101] = { 0x20, 3, 3, }, + [102] = { 0x20, 12, 3, }, + [104] = { 0x20, 6, 3, }, + [105] = { 0x20, 15, 3, }, + [123] = { 0x20, 0, 3, }, + [124] = { 0x20, 3, 3, }, + [164] = { 0x20, 0, 3, }, + [165] = { 0x20, 6, 3, }, + [166] = { 0x20, 3, 3, }, + [167] = { 0x20, 9, 3, }, + [168] = { 0x20, 12, 3, }, + [170] = { 0x20, 15, 3, }, + [176] = { 0x20, 0, 3, }, + [177] = { 0x20, 3, 3, }, + [188] = { 0x40, 0, 3, }, + [189] = { 0x40, 15, 3, }, + [190] = { 0x40, 3, 3, }, + [191] = { 0x40, 18, 3, }, + [194] = { 0x40, 6, 3, }, + [195] = { 0x40, 21, 3, }, + [198] = { 0x40, 9, 3, }, + [199] = { 0x40, 24, 3, }, + [200] = { 0x50, 0, 3, }, + [201] = { 0x50, 9, 3, }, + [202] = { 0x40, 12, 3, }, + [203] = { 0x40, 27, 3, }, + [214] = { 0x50, 3, 3, }, + [215] = { 0x50, 6, 3, }, +}; + +void *gpio_find_reg_addr(gpio_t gpio) +{ + void *reg_addr; + + switch (gpio.base & 0x0f) { + case 1: + reg_addr = (void *)IOCFG_RT_BASE; + break; + case 2: + reg_addr = (void *)IOCFG_RM1_BASE; + break; + case 3: + reg_addr = (void *)IOCFG_RM2_BASE; + break; + case 4: + reg_addr = (void *)IOCFG_RB_BASE; + break; + case 5: + reg_addr = (void *)IOCFG_BM1_BASE; + break; + case 6: + reg_addr = (void *)IOCFG_BM2_BASE; + break; + case 7: + reg_addr = (void *)IOCFG_BM3_BASE; + break; + case 8: + reg_addr = (void *)IOCFG_LT_BASE; + break; + case 9: + reg_addr = (void *)IOCFG_LM1_BASE; + break; + case 10: + reg_addr = (void *)IOCFG_LM2_BASE; + break; + case 11: + reg_addr = (void *)IOCFG_LB1_BASE; + break; + case 12: + reg_addr = (void *)IOCFG_LB2_BASE; + break; + case 13: + reg_addr = (void *)IOCFG_TM1_BASE; + break; + case 14: + reg_addr = (void *)IOCFG_TM2_BASE; + break; + case 15: + reg_addr = (void *)IOCFG_TM3_BASE; + break; + default: + reg_addr = NULL; + break; + } + + return reg_addr; +} + +const struct gpio_drv_info *get_gpio_driving_info(uint32_t raw_id) +{ + if (raw_id >= ARRAY_SIZE(gpio_driving_info)) + return NULL; + return &gpio_driving_info[raw_id]; +} + +const struct gpio_drv_info *get_gpio_driving_adv_info(uint32_t raw_id) +{ + if (raw_id >= ARRAY_SIZE(gpio_driving_adv_info)) + return NULL; + return &gpio_driving_adv_info[raw_id]; +} diff --git a/src/soc/mediatek/mt8196/include/soc/gpio.h b/src/soc/mediatek/mt8196/include/soc/gpio.h new file mode 100644 index 0000000000..a60cba62d8 --- /dev/null +++ b/src/soc/mediatek/mt8196/include/soc/gpio.h @@ -0,0 +1,879 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +/* + * This file is created based on MT8196 Functional Specification + * Chapter number: 13.4 + */ + +#ifndef SOC_MEDIATEK_MT8196_GPIO_H +#define SOC_MEDIATEK_MT8196_GPIO_H + +#include <soc/addressmap.h> +#include <soc/gpio_common.h> +#include <types.h> + +#define GPIO_NUM 271 + +enum { + MAX_GPIO_REG_BITS = 32, + MAX_GPIO_MODE_PER_REG = 8, + GPIO_MODE_BITS = 4, +}; + +struct val_regs { + uint32_t val; + uint32_t set; + uint32_t rst; + uint32_t align; +}; + +struct gpio_regs { + struct val_regs dir[16]; + struct val_regs dout[16]; + struct val_regs din[16]; + struct val_regs mode[32]; + uint32_t dram_pinmux_trapping; +}; + +#define PIN(id, name, flag, bit, base, offset, \ + func1, func2, func3, func4, func5, func6, func7) \ + PAD_##name##_ID = id, \ + PAD_##name##_FLAG = flag, \ + PAD_##name##_BIT = bit, \ + PAD_##name##_BASE = base, \ + PAD_##name##_OFFSET = offset, \ + PAD_##name##_FUNC_##func1 = 1, \ + PAD_##name##_FUNC_##func2 = 2, \ + PAD_##name##_FUNC_##func3 = 3, \ + PAD_##name##_FUNC_##func4 = 4, \ + PAD_##name##_FUNC_##func5 = 5, \ + PAD_##name##_FUNC_##func6 = 6, \ + PAD_##name##_FUNC_##func7 = 7 + +#define GPIO(name) ((gpio_t){ \ + .id = PAD_##name##_ID, \ + .flag = PAD_##name##_FLAG, \ + .bit = PAD_##name##_BIT, \ + .base = PAD_##name##_BASE, \ + .offset = PAD_##name##_OFFSET \ + }) + +enum { + PIN(0, EINT0, 0, 0, 0x18, 0xa0, + DMIC1_CLK, RES2, SPI3_A_MO, FMI2S_B_LRCK, + SCP_DMIC1_CLK, TP_GPIO14_AO, RES7), + PIN(1, EINT1, 0, 1, 0x18, 0xa0, + DMIC1_DAT, SRCLKENAI1, SPI3_A_MI, FMI2S_B_DI, + SCP_DMIC1_DAT, TP_GPIO15_AO, RES7), + PIN(2, EINT2, 0, 1, 0x1b, 0x80, + PWM_VLP, DSI_HSYNC, RES3, RES4, + RG_TSFDC_LDO_EN, TP_GPIO8_AO, RES7), + PIN(3, EINT3, 0, 2, 0x1b, 0x80, + MD_INT0, DSI1_HSYNC, RES3, RES4, + DA_TSFDC_LDO_MODE, TP_GPIO9_AO, RES7), + PIN(4, EINT4, 0, 3, 0x1b, 0x80, + DISP_PWM1, MD32_0_GPIO0, RES3, RES4, + RES5, RES6, RES7), + PIN(5, EINT5, 0, 4, 0x1b, 0x80, + LCM1_RST, SPI7_A_CLK, RES3, RES4, + RES5, RES6, RES7), + PIN(6, EINT6, 0, 5, 0x1b, 0x80, + DSI1_TE, SPI7_A_CSB, RES3, RES4, + RES5, RES6, RES7), + PIN(7, EINT7, 0, 6, 0x1b, 0x80, + RES1, SPI7_A_MO, GPS_PPS0, RES4, + RES5, RES6, RES7), + PIN(8, EINT8, 0, 7, 0x1b, 0x80, + RES1, SPI7_A_MI, EDP_TX_HPD, RES4, + RES5, RES6, RES7), + PIN(9, EINT9, 0, 14, 0x29, 0xc0, + RES1, RES2, I2SIN1_LRCK, RES4, + RES5, RES6, RG_TSFDC_LDO_REFSEL0), + PIN(10, EINT10, 0, 12, 0x29, 0xc0, + RES1, RES2, I2SOUT1_DO, RES4, + RES5, RES6, RG_TSFDC_LDO_REFSEL1), + PIN(11, EINT11, 0, 2, 0x18, 0xa0, + RES1, RES2, RES3, FMI2S_B_BCK, + RES5, RES6, DBG_MON_A30), + PIN(12, EINT12, 0, 13, 0x29, 0xc0, + RES1, RES2, I2SIN1_DI_B, RES4, + RES5, RES6, RES7), + PIN(13, EINT13, 0, 1, 0x26, 0xb0, + EDP_TX_HPD, GPS_PPS1, RES3, RES4, + RES5, RES6, RES7), + PIN(14, EINT14, 0, 0, 0x13, 0x90, + SRCLKENA2, DSI2_TE, SPMI_P_TRIG_FLAG, RES4, + MD_INT3, TP_GPIO8_AO, RES7), + PIN(15, EINT15, 0, 2, 0x26, 0xb0, + SRCLKENAI0, SPMI_M_TRIG_FLAG, UCTS0, MD_INT4, + I2SOUT2_DO, TP_GPIO9_AO, RES7), + PIN(16, EINT16, 0, 3, 0x26, 0xb0, + SRCLKENAI1, DP_TX_HPD, URTS0, GPS_L5_ELNA_EN, + KPROW2, TP_GPIO10_AO, RES7), + PIN(17, EINT17, 0, 4, 0x26, 0xb0, + MD_INT0, DP_OC_EN, UCTS1, MD_NTN_URXD1, + KPCOL2, TP_GPIO11_AO, RES7), + PIN(18, EINT18, 0, 5, 0x26, 0xb0, + DMIC1_CLK, DP_RAUX_SBU1, URTS1, MD_NTN_UTXD1, + I2SIN2_DI, TP_UTXD_GNSS_VLP, RES7), + PIN(19, EINT19, 0, 6, 0x26, 0xb0, + DMIC1_DAT, DP_RAUX_SBU2, CONN_TCXOENA_REQ, CLKM3_A, + I2SIN2_BCK, TP_URXD_GNSS_VLP, RES7), + PIN(20, EINT20, 0, 1, 0x13, 0x90, + IDDIG, LCM2_RST, GPS_PPS1, CLKM2_A, + RES5, RES6, RES7), + PIN(21, EINT21, 0, 3, 0x12, 0x90, + BPI_BUS11, PCIE_PERSTN_1P, DSI1_TE, DMIC_CLK, + SCP_DMIC_CLK, RES6, RES7), + PIN(22, EINT22, 0, 4, 0x12, 0x90, + BPI_BUS12, PCIE_CLKREQN_1P, DSI2_TE, DMIC_DAT, + SCP_DMIC_DAT, RES6, RES7), + PIN(23, EINT23, 0, 5, 0x12, 0x90, + BPI_BUS13, PCIE_WAKEN_1P, DSI3_TE, DMIC1_CLK, + SCP_DMIC1_CLK, RES6, RES7), + PIN(24, EINT24, 0, 6, 0x12, 0x90, + BPI_BUS14, LCM1_RST, AGPS_SYNC, DMIC1_DAT, + SCP_DMIC1_DAT, DISP_PWM1, RES7), + PIN(25, EINT25, 0, 7, 0x12, 0x90, + BPI_BUS15, LCM2_RST, SRCLKENAI1, DMIC2_CLK, + RES5, DISP_PWM2, RES7), + PIN(26, EINT26, 0, 8, 0x12, 0x90, + BPI_BUS16, LCM3_RST, RES3, DMIC2_DAT, + RES5, DISP_PWM3, RES7), + PIN(27, EINT27, 0, 9, 0x12, 0x90, + BPI_BUS17, UTXD4, RES3, RES4, + RES5, DISP_PWM4, DBG_MON_A20), + PIN(28, EINT28, 0, 10, 0x12, 0x90, + BPI_BUS18, URXD4, SPI2_A_MI, CLKM0_A, + RES5, RES6, DBG_MON_A21), + PIN(29, EINT29, 0, 11, 0x12, 0x90, + BPI_BUS19, MD_NTN_UTXD1, SPI2_A_MO, CLKM1_A, + RES5, UCTS4, DBG_MON_A17), + PIN(30, EINT30, 0, 12, 0x12, 0x90, + BPI_BUS20, MD_NTN_URXD1, SPI2_A_CLK, CLKM2_A, + DSI3_HSYNC, URTS4, DBG_MON_A18), + PIN(31, EINT31, 0, 13, 0x12, 0x90, + BPI_BUS21, RES2, SPI2_A_CSB, CLKM3_A, + RES5, EDP_TX_HPD, DBG_MON_A19), + PIN(32, EINT32, 0, 8, 0x11, 0x90, + LCM4_RST, DP_TX_HPD, SSPM_JTAG_TCK_VLP, ADSP_JTAG0_TCK, + SCP_JTAG0_TCK_VLP, SPU0_TCK, IO_JTAG_TCK), + PIN(33, EINT33, 0, 9, 0x11, 0x90, + DSI4_TE, DP_OC_EN, SSPM_JTAG_TRSTN_VLP, ADSP_JTAG0_TRSTN, + SCP_JTAG0_TRSTN_VLP, SPU0_NTRST, IO_JTAG_TRSTN), + PIN(34, EINT34, 0, 10, 0x11, 0x90, + UCTS5, DP_RAUX_SBU1, SSPM_JTAG_TDI_VLP, ADSP_JTAG0_TDI, + SCP_JTAG0_TDI_VLP, SPU0_TDI, IO_JTAG_TDI), + PIN(35, EINT35, 0, 11, 0x11, 0x90, + URTS5, DP_RAUX_SBU2, SSPM_JTAG_TDO_VLP, ADSP_JTAG0_TDO, + SCP_JTAG0_TDO_VLP, SPU0_TDO, IO_JTAG_TDO), + PIN(36, EINT36, 0, 12, 0x11, 0x90, + UTXD5, RES2, SSPM_JTAG_TMS_VLP, ADSP_JTAG0_TMS, + SCP_JTAG0_TMS_VLP, SPU0_TMS, IO_JTAG_TMS), + PIN(37, EINT37, 0, 13, 0x11, 0x90, + URXD5, RES2, MD_INT3, CLKM0_B, + TP_GPIO5_AO, SPU0_UTX, DAP_MD32_SWCK), + PIN(38, EINT38, 0, 14, 0x11, 0x90, + RES1, SPMI_P_TRIG_FLAG, MD_INT4, CLKM1_B, + TP_GPIO6_AO, SPU0_URX, DAP_MD32_SWD), + PIN(39, I2SIN0_MCK, 0, 6, 0x18, 0xa0, + I2S_MCK0, RES2, GPS_PPS0, CONN_TCXOENA_REQ, + RES5, RES6, DBG_MON_B12), + PIN(40, I2SIN0_BCK, 0, 3, 0x18, 0xa0, + I2SIN6_0_BCK, RES2, SPI4_B_CLK, UCTS2, + CCU1_UTXD, RES6, DBG_MON_B13), + PIN(41, I2SIN0_LRCK, 0, 5, 0x18, 0xa0, + I2SIN6_0_LRCK, RES2, SPI4_B_CSB, URTS2, + CCU1_URXD, RES6, DBG_MON_B14), + PIN(42, I2SIN0_DI, 0, 4, 0x18, 0xa0, + I2SIN6_0_DI, RES2, SPI4_B_MI, URXD2, + CCU1_URTS, MD32_0_RXD, DBG_MON_B15), + PIN(43, I2SOUT0_DO, 0, 7, 0x18, 0xa0, + I2SOUT6_0_DO, RES2, SPI4_B_MO, UTXD2, + CCU1_UCTS, MD32_0_TXD, DBG_MON_B16), + PIN(44, INT_SIM1, 0, 8, 0x18, 0xa0, + MD_INT1_C2K_UIM0_HOT_PLUG, RES2, SPI3_A_CLK, RES4, + RES5, TP_GPIO10_AO, RES7), + PIN(45, INT_SIM2, 0, 9, 0x18, 0xa0, + MD_INT2_C2K_UIM1_HOT_PLUG, DSI2_HSYNC, SPI3_A_CSB, PWM_VLP, + RES5, TP_GPIO11_AO, RES7), + PIN(46, SCP_SCL4, 0, 10, 0x18, 0xa0, + SCP_SCL4, PWM_VLP, RES3, SCP_ILDO_DTEST1_VLP, + UFS_MPHY_SCL, TP_GPIO0_AO, RES7), + PIN(47, SCP_SDA4, 0, 13, 0x18, 0xa0, + SCP_SDA4, RES2, RES3, SCP_ILDO_DTEST2_VLP, + UFS_MPHY_SDA, TP_GPIO1_AO, RES7), + PIN(48, SCP_SCL5, 0, 11, 0x18, 0xa0, + SCP_SCL5, PWM_VLP, CCU0_UTXD, SCP_ILDO_DTEST3_VLP, + RES5, TP_GPIO2_AO, RES7), + PIN(49, SCP_SDA5, 0, 14, 0x18, 0xa0, + SCP_SDA5, RES2, CCU0_URXD, SCP_ILDO_DTEST4_VLP, + RES5, TP_GPIO3_AO, RES7), + PIN(50, SCP_SCL6, 0, 12, 0x18, 0xa0, + SCP_SCL6, PWM_VLP, CCU0_URTS, DSI_HSYNC, + RES5, TP_GPIO4_AO, RES7), + PIN(51, SCP_SDA6, 0, 15, 0x18, 0xa0, + SCP_SDA6, RES2, CCU0_UCTS, DSI1_HSYNC, + RES5, TP_GPIO5_AO, RES7), + PIN(52, AUD_SCL, 0, 7, 0x29, 0xc0, + SCP_SCL1, RES2, TDM_DATA2, RES4, + RES5, RES6, RES7), + PIN(53, AUD_SDA, 0, 8, 0x29, 0xc0, + SCP_SDA1, RES2, TDM_DATA3, RES4, + RES5, RES6, RES7), + PIN(54, AUD_CLK_MOSI, 0, 2, 0x29, 0xc0, + AUD_CLK_MOSI, RES2, TDM_MCK, RES4, + RES5, RES6, RES7), + PIN(55, AUD_CLK_MISO, 0, 1, 0x29, 0xc0, + AUD_CLK_MISO, I2SOUT2_BCK, TDM_BCK, RES4, + RES5, RES6, RES7), + PIN(56, AUD_DAT_MOSI0, 0, 5, 0x29, 0xc0, + AUD_DAT_MOSI0, I2SOUT2_LRCK, TDM_LRCK, RES4, + RES5, RES6, RES7), + PIN(57, AUD_DAT_MOSI1, 0, 6, 0x29, 0xc0, + AUD_DAT_MOSI1, I2SOUT2_DO, TDM_DATA0, RES4, + RES5, RES6, RES7), + PIN(58, AUD_DAT_MISO0, 0, 3, 0x29, 0xc0, + AUD_DAT_MISO0, RES2, TDM_DATA1, RES4, + RES5, RES6, RES7), + PIN(59, AUD_DAT_MISO1, 0, 4, 0x29, 0xc0, + AUD_DAT_MISO1, RES2, I2SIN1_BCK, RES4, + RES5, RES6, RES7), + PIN(60, KPCOL0, 1, 0, 0x29, 0xb0, + KPCOL0, RES2, RES3, RES4, + RES5, TP_GPIO13_AO, RES7), + PIN(61, CPUM_PMIC_POC, 0, 10, 0x29, 0xc0, + MCU_M_PMIC_POC_I, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(62, CPUB_PMIC_POC, 0, 9, 0x29, 0xc0, + MCU_B_PMIC_POC_I, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(63, GPU_PMIC_POC, 0, 18, 0x29, 0xc0, + MFG_PMIC_POC_I, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(64, SYS_PMIC_POC, 0, 0, 0x29, 0xc0, + PRE_UVLO, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(65, DRAM_DVFS, 0, 11, 0x29, 0xc0, + DPM2PMIC, SRCLKENA1, RES3, RES4, + RES5, RES6, RES7), + PIN(66, WATCHDOG, 0, 24, 0x29, 0xc0, + WATCHDOG, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(67, SRCLKENA0, 0, 21, 0x29, 0xc0, + SRCLKENA0, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(68, SCP_VREQ_VAO, 0, 20, 0x29, 0xc0, + SCP_VREQ_VAO, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(69, X32K_IN, 0, 25, 0x29, 0xc0, + RTC32K_CK, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(70, FL_STROBE_EN, 0, 16, 0x29, 0xc0, + CMFLASH0, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(71, EINT_CHG_IRQB, 0, 15, 0x29, 0xc0, + RES1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(72, USB_RST, 0, 23, 0x29, 0xc0, + RES1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(73, LVSYS_INT, 0, 19, 0x29, 0xc0, + RES1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(74, FPM_IND, 0, 17, 0x29, 0xc0, + DCXO_FPM_LPM, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(75, SPMI_M_SCL, 0, 2, 0x1a, 0x90, + SPMI_M_SCL, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(76, SPMI_M_SDA, 0, 3, 0x1a, 0x90, + SPMI_M_SDA, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(77, SPMI_P_SCL, 0, 4, 0x1a, 0x90, + SPMI_P_SCL, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(78, SPMI_P_SDA, 0, 5, 0x1a, 0x90, + SPMI_P_SDA, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(79, CAM_CLK0, 0, 0, 0x1a, 0x90, + CMMCLK0, MD_INT4, RES3, RES4, + RES5, RES6, RES7), + PIN(80, CAM_CLK1, 0, 1, 0x1a, 0x90, + CMMCLK1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(81, SCP_SPI0_CK, 0, 9, 0x1b, 0x80, + SCP_SPI0_CK, SPI6_B_CLK, PWM_VLP, I2SOUT5_BCK, + RES5, TP_GPIO0_AO, RES7), + PIN(82, SCP_SPI0_CSB, 0, 10, 0x1b, 0x80, + SCP_SPI0_CS, SPI6_B_CSB, RES3, I2SOUT5_LRCK, + RES5, TP_GPIO1_AO, RES7), + PIN(83, SCP_SPI0_MO, 0, 12, 0x1b, 0x80, + SCP_SPI0_MO, SPI6_B_MO, RES3, I2SOUT5_DATA0, + RES5, TP_GPIO2_AO, RES7), + PIN(84, SCP_SPI0_MI, 0, 11, 0x1b, 0x80, + SCP_SPI0_MI, SPI6_B_MI, RES3, I2SOUT5_DATA1, + RES5, TP_GPIO3_AO, RES7), + PIN(85, SCP_SPI1_CK, 0, 13, 0x1b, 0x80, + SCP_SPI1_CK, SPI7_B_CLK, RES3, I2SIN5_DATA0, + PWM_VLP, TP_GPIO4_AO, RES7), + PIN(86, SCP_SPI1_CSB, 0, 14, 0x1b, 0x80, + SCP_SPI1_CS, SPI7_B_CSB, RES3, I2SIN5_DATA1, + RES5, TP_GPIO5_AO, RES7), + PIN(87, SCP_SPI1_MO, 0, 16, 0x1b, 0x80, + SCP_SPI1_MO, SPI7_B_MO, RES3, I2SIN5_BCK, + RES5, TP_GPIO6_AO, RES7), + PIN(88, SCP_SPI1_MI, 0, 15, 0x1b, 0x80, + SCP_SPI1_MI, SPI7_B_MI, RES3, I2SIN5_LRCK, + RES5, TP_GPIO7_AO, RES7), + PIN(89, DSI_TE, 0, 0, 0x1b, 0x80, + DSI_TE, DSI1_TE, RES3, RES4, + RES5, RES6, DBG_MON_B30), + PIN(90, LCM_RST, 0, 8, 0x1b, 0x80, + LCM_RST, LCM1_RST, RES3, RES4, + RES5, RES6, DBG_MON_B31), + PIN(91, PERIPHERAL_EN5, 0, 6, 0x1c, 0x90, + CMFLASH2, SF_D0, SRCLKENAI1, RES4, + KPCOL2, TP_GPIO11_AO, RES7), + PIN(92, PERIPHERAL_EN6, 0, 7, 0x1c, 0x90, + CMFLASH3, SF_D1, RES3, DISP_PWM1, + RES5, TP_GPIO12_AO, RES7), + PIN(93, PERIPHERAL_EN7, 0, 8, 0x1c, 0x90, + CMFLASH1, SF_D2, SRCLKENAI0, RES4, + KPROW2, TP_GPIO13_AO, RES7), + PIN(94, I2SIN1_MCK, 0, 4, 0x1c, 0x90, + I2S_MCK1, SF_D3, RES3, MD32_0_GPIO0, + CLKM0_A, TP_GPIO14_AO, DBG_MON_B18), + PIN(95, I2SIN1_BCK, 0, 1, 0x1c, 0x90, + I2SIN1_BCK, I2SIN4_BCK, SPI6_A_CLK, MD32_1_GPIO0, + CLKM1_A, TP_GPIO15_AO, DBG_MON_B19), + PIN(96, I2SIN1_LRCK, 0, 3, 0x1c, 0x90, + I2SIN1_LRCK, I2SIN4_LRCK, SPI6_A_CSB, MD32_2_GPIO0, + CLKM2_A, RES6, DBG_MON_B20), + PIN(97, I2SIN1_DI, 0, 2, 0x1c, 0x90, + I2SIN1_DI_A, I2SIN4_DATA0, SPI6_A_MO, MD32_3_GPIO0, + CLKM3_A, RES6, DBG_MON_B21), + PIN(98, I2SOUT1_DO, 0, 5, 0x1c, 0x90, + I2SOUT1_DO, I2SOUT4_DATA0, SPI6_A_MI, RES4, + RES5, RES6, DBG_MON_B22), + PIN(99, SCL0, 0, 9, 0x1c, 0x90, + SCL0, LCM2_RST, AUD_DAC_26M_CLK, SPU0_SCL, + RES5, RES6, DBG_MON_B24), + PIN(100, SDA0, 0, 12, 0x1c, 0x90, + SDA0, DSI2_TE, RES3, SPU0_SDA, + RES5, RES6, DBG_MON_B25), + PIN(101, SCL10, 0, 10, 0x1c, 0x90, + SCL10, SF_CS, SCP_DMIC1_CLK, I2SIN5_DATA2, + SCP_SCL_OIS, TP_GPIO10_AO, DBG_MON_B28), + PIN(102, SDA10, 0, 13, 0x1c, 0x90, + SDA10, SF_CK, SCP_DMIC1_DAT, I2SIN5_DATA3, + SCP_SDA_OIS, TP_GPIO11_AO, DBG_MON_B29), + PIN(103, DISP_PWM, 0, 0, 0x1c, 0x90, + DISP_PWM, DSI1_TE, RES3, RES4, + I2S_MCK0, RES6, DBG_MON_B23), + PIN(104, SCL6, 0, 11, 0x1c, 0x90, + SCL6, SPU1_SCL, AUD_DAC_26M_CLK, USB_DRVVBUS_2P, + I2S_MCK1, IDDIG_2P, DBG_MON_B26), + PIN(105, SDA6, 0, 14, 0x1c, 0x90, + SDA6, SPU1_SDA, DISP_PWM2, VBUSVALID_2P, + I2S_MCK2, VBUSVALID_3P, DBG_MON_B27), + PIN(106, SCP_SPI3_CK, 0, 0, 0x15, 0x90, + SCP_SPI3_CK, SPI3_B_CLK, MD_UTXD0, TP_UTXD1_VLP, + CONN_BG_GPS_MCU_UART0_TXD, TP_GPIO6_AO, DBG_MON_B0), + PIN(107, SCP_SPI3_CSB, 0, 1, 0x15, 0x90, + SCP_SPI3_CS, SPI3_B_CSB, MD_URXD0, TP_URXD1_VLP, + CONN_BG_GPS_MCU_UART0_RXD, TP_GPIO7_AO, DBG_MON_B1), + PIN(108, SCP_SPI3_MO, 0, 3, 0x15, 0x90, + SCP_SPI3_MO, SPI3_B_MO, MD_UTXD1, MD32PCM_UTXD_AO_VLP, + CONN_BG_GPS_MCU_UART1_TXD, TP_GPIO8_AO, DBG_MON_B2), + PIN(109, SCP_SPI3_MI, 0, 2, 0x15, 0x90, + SCP_SPI3_MI, SPI3_B_MI, MD_URXD1, MD32PCM_URXD_AO_VLP, + CONN_BG_GPS_MCU_UART1_RXD, TP_GPIO9_AO, DBG_MON_B3), + PIN(110, SPI1_CLK, 0, 4, 0x15, 0x90, + SPI1_CLK, PWM_0, MD_UCTS0, TP_UCTS1_VLP, + RES5, SPU0_GPIO_O, DBG_MON_B4), + PIN(111, SPI1_CSB, 0, 5, 0x15, 0x90, + SPI1_CSB, PWM_1, MD_URTS0, TP_URTS1_VLP, + RES5, SPU0_GPIO_I, DBG_MON_B5), + PIN(112, SPI1_MO, 0, 7, 0x15, 0x90, + SPI1_MO, PWM_2, MD_UCTS1, RES4, + RES5, SPU1_GPIO_O, DBG_MON_B6), + PIN(113, SPI1_MI, 0, 6, 0x15, 0x90, + SPI1_MI, PWM_3, MD_URTS1, RES4, + RES5, SPU1_GPIO_I, DBG_MON_B7), + PIN(114, SPI_CLK_SEC, 0, 8, 0x15, 0x90, + SPI0_SPU_CLK, SPI4_A_CLK, RES3, RES4, + CONN_BG_GPS_MCU_DBG_UART_TXD, RES6, DBG_MON_B8), + PIN(115, SPI_CSB_SEC, 0, 9, 0x15, 0x90, + SPI0_SPU_CSB, SPI4_A_CSB, RES3, RES4, + RES5, RES6, DBG_MON_B9), + PIN(116, SPI_MO_SEC, 0, 11, 0x15, 0x90, + SPI0_SPU_MO, SPI4_A_MO, LCM1_RST, RES4, + RES5, RES6, DBG_MON_B10), + PIN(117, SPI_MI_SEC, 0, 10, 0x15, 0x90, + SPI0_SPU_MI, SPI4_A_MI, DSI1_TE, RES4, + RES5, RES6, DBG_MON_B11), + PIN(118, SPI5_CLK, 0, 9, 0x26, 0xb0, + SPI5_CLK, USB_DRVVBUS, DP_TX_HPD, AD_ILDO_DTEST0, + RES5, RES6, RES7), + PIN(119, SPI5_CSB, 0, 10, 0x26, 0xb0, + SPI5_CSB, VBUSVALID, DP_OC_EN, AD_ILDO_DTEST1, + RES5, RES6, RES7), + PIN(120, SPI5_MO, 0, 12, 0x26, 0xb0, + SPI5_MO, LCM2_RST, DP_RAUX_SBU1, AD_ILDO_DTEST2, + RES5, IDDIG_3P, RES7), + PIN(121, SPI5_MI, 0, 11, 0x26, 0xb0, + SPI5_MI, DSI2_TE, DP_RAUX_SBU2, AD_ILDO_DTEST3, + RES5, USB_DRVVBUS_3P, DBG_MON_B17), + PIN(122, AP_GOOD, 0, 0, 0x26, 0xb0, + AP_GOOD, CONN_TCXOENA_REQ, RES3, RES4, + RES5, RES6, RES7), + PIN(123, SCL3, 0, 7, 0x26, 0xb0, + SCL3, RES2, RES3, RES4, + I2SIN2_LRCK, TP_UTXD_MD_VCORE, RES7), + PIN(124, SDA3, 0, 8, 0x26, 0xb0, + SDA3, RES2, RES3, RES4, + RES5, TP_URXD_MD_VCORE, RES7), + PIN(125, MSDC1_CLK, 1, 0, 0x17, 0x80, + MSDC1_CLK, MD1_SIM2_SCLK, HFRP_JTAG0_TCK, UDI_TCK, + CONN_BGF_DSP_L1_JCK, SCP_JTAG_LITTLE_TCK_VLP, JTCK2_SEL1), + PIN(126, MSDC1_CMD, 1, 1, 0x17, 0x80, + MSDC1_CMD, RES2, HFRP_JTAG0_TMS, UDI_TMS, + CONN_BGF_DSP_L1_JMS, SCP_JTAG_LITTLE_TMS_VLP, JTMS2_SEL1), + PIN(127, MSDC1_DAT0, 1, 2, 0x17, 0x80, + MSDC1_DAT0, MD1_SIM2_SRST, HFRP_JTAG0_TDI, UDI_TDI_0, + CONN_BGF_DSP_L1_JDI, SCP_JTAG_LITTLE_TDI_VLP, JTDI2_SEL1), + PIN(128, MSDC1_DAT1, 1, 3, 0x17, 0x80, + MSDC1_DAT1, MD1_SIM2_SIO, HFRP_JTAG0_TDO, UDI_TDO_0, + CONN_BGF_DSP_L1_JDO, SCP_JTAG_LITTLE_TDO_VLP, JTDO2_SEL1), + PIN(129, MSDC1_DAT2, 1, 4, 0x17, 0x80, + MSDC1_DAT2, DSI2_HSYNC, HFRP_JTAG0_TRSTN, UDI_NTRST, + RES5, SCP_JTAG_LITTLE_TRSTN_VLP, JTRSTn2_SEL1), + PIN(130, MSDC1_DAT3, 1, 5, 0x17, 0x80, + MSDC1_DAT3, DSI3_HSYNC, RES3, RES4, + CONN_BGF_DSP_L1_JINTP, RES6, RES7), + PIN(131, SIM2_SCLK, 1, 9, 0x17, 0x80, + MD1_SIM2_SCLK, MD1_SIM1_SCLK, MCUPM_JTAG_TDI, CLKM0_A, + CONN_BGF_DSP_L5_JDI, TSFDC_SCK, SCP_JTAG0_TDI_VCORE), + PIN(132, SIM2_SRST, 1, 11, 0x17, 0x80, + MD1_SIM2_SRST, MD1_SIM1_SRST, MCUPM_JTAG_TMS, CLKM1_B, + CONN_BGF_DSP_L5_JMS, TSFDC_SDI, SCP_JTAG0_TMS_VCORE), + PIN(133, SIM2_SIO, 1, 10, 0x17, 0x80, + MD1_SIM2_SIO, MD1_SIM1_SIO, MCUPM_JTAG_TDO, RES4, + CONN_BGF_DSP_L5_JDO, TSFDC_SCF, SCP_JTAG0_TDO_VCORE), + PIN(134, SIM1_SCLK, 1, 6, 0x17, 0x80, + MD1_SIM1_SCLK, MD1_SIM2_SCLK, RES3, RES4, + RES5, TSFDC_26M, RES7), + PIN(135, SIM1_SRST, 1, 8, 0x17, 0x80, + MD1_SIM1_SRST, MD1_SIM2_SRST, MCUPM_JTAG_TCK, RES4, + CONN_BGF_DSP_L5_JCK, TSFDC_SDO, SCP_JTAG0_TCK_VCORE), + PIN(136, SIM1_SIO, 1, 7, 0x17, 0x80, + MD1_SIM1_SIO, MD1_SIM2_SIO, MCUPM_JTAG_TRSTN, RES4, + CONN_BGF_DSP_L5_JINTP, TSFDC_FOUT, SCP_JTAG0_TRSTN_VCORE), + PIN(137, MIPI0_D_SCLK, 1, 10, 0x14, 0x70, + MIPI0_D_SCLK, BPI_BUS16, RES3, EXT_FRAME_SYNC, + RES5, SPM_JTAG_TRSTN_VCORE, DBG_MON_A0), + PIN(138, MIPI0_D_SDATA, 1, 11, 0x14, 0x70, + MIPI0_D_SDATA, BPI_BUS17, RES3, PCM0_LRCK, + RES5, SPM_JTAG_TCK_VCORE, DBG_MON_A1), + PIN(139, MIPI1_D_SCLK, 1, 12, 0x14, 0x70, + MIPI1_D_SCLK, BPI_BUS18, RES3, MD_GPS_BLANK, + RES5, SPM_JTAG_TMS_VCORE, DBG_MON_A2), + PIN(140, MIPI1_D_SDATA, 1, 13, 0x14, 0x70, + MIPI1_D_SDATA, BPI_BUS19, RES3, MD_URXD1_CONN, + RES5, SPM_JTAG_TDO_VCORE, DBG_MON_A3), + PIN(141, MIPI2_D_SCLK, 1, 14, 0x14, 0x70, + MIPI2_D_SCLK, BPI_BUS20, RES3, MD_UTXD1_CONN, + RES5, SPM_JTAG_TDI_VCORE, DBG_MON_A4), + PIN(142, MIPI2_D_SDATA, 1, 15, 0x14, 0x70, + MIPI2_D_SDATA, BPI_BUS21, RES3, RES4, + RES5, SSPM_JTAG_TRSTN_VCORE, DBG_MON_A5), + PIN(143, MIPI3_D_SCLK, 1, 16, 0x14, 0x70, + MIPI3_D_SCLK, BPI_BUS22, RES3, TP_UTXD_GNSS_VLP, + MD_UTXD1_CONN, SSPM_JTAG_TCK_VCORE, RES7), + PIN(144, MIPI3_D_SDATA, 1, 17, 0x14, 0x70, + MIPI3_D_SDATA, BPI_BUS23, RES3, TP_URXD_GNSS_VLP, + MD_URXD1_CONN, SSPM_JTAG_TMS_VCORE, RES7), + PIN(145, BPI_D_BUS0, 1, 0, 0x14, 0x70, + BPI_BUS0, RES2, RES3, PCIE_WAKEN_1P, + RES5, SSPM_JTAG_TDO_VCORE, DBG_MON_A10), + PIN(146, BPI_D_BUS1, 1, 1, 0x14, 0x70, + BPI_BUS1, RES2, RES3, PCIE_PERSTN_1P, + RES5, SSPM_JTAG_TDI_VCORE, DBG_MON_A11), + PIN(147, BPI_D_BUS2, 1, 2, 0x14, 0x70, + BPI_BUS2, AUD_DAC_26M_CLK, RES3, PCIE_CLKREQN_1P, + RES5, SCP_JTAG_LITTLE_TRSTN_VCORE, DBG_MON_A12), + PIN(148, BPI_D_BUS3, 1, 3, 0x14, 0x70, + BPI_BUS3, AUD_DAC_26M_CLK, RES3, TP_UTXD_MD_VLP, + TP_GPIO0_AO, SCP_JTAG_LITTLE_TCK_VCORE, DBG_MON_A13), + PIN(149, BPI_D_BUS4, 1, 4, 0x14, 0x70, + BPI_BUS4, EXT_FRAME_SYNC, RES3, TP_URXD_MD_VLP, + TP_GPIO1_AO, SCP_JTAG_LITTLE_TMS_VCORE, DBG_MON_A14), + PIN(150, BPI_D_BUS5, 1, 5, 0x14, 0x70, + BPI_BUS5, GPS_PPS0, RES3, RES4, + TP_GPIO2_AO, SCP_JTAG_LITTLE_TDO_VCORE, DBG_MON_A15), + PIN(151, BPI_D_BUS6, 1, 6, 0x14, 0x70, + BPI_BUS6, GPS_PPS1, RES3, RES4, + TP_GPIO3_AO, SCP_JTAG_LITTLE_TDI_VCORE, RES7), + PIN(152, BPI_D_BUS7, 1, 7, 0x14, 0x70, + BPI_BUS7, EDP_TX_HPD, RES3, RES4, + AGPS_SYNC, SSPM_UTXD_AO_VCORE, RES7), + PIN(153, MD_UCNT, 1, 9, 0x14, 0x70, + MD_UCNT_A_TGL, RES2, RES3, RES4, + RES5, TP_URTS1_VCORE, DBG_MON_A8), + PIN(154, DIGRF_IRQ, 1, 8, 0x14, 0x70, + DIGRF_IRQ, RES2, RES3, RES4, + RES5, TP_UCTS1_VCORE, DBG_MON_A9), + PIN(155, MIPI_M_SCLK, 1, 18, 0x14, 0x70, + MIPI_M_SCLK, RES2, RES3, UCTS2, + RES5, TP_UTXD_CONSYS_VCORE, DBG_MON_A6), + PIN(156, MIPI_M_SDATA, 1, 19, 0x14, 0x70, + MIPI_M_SDATA, RES2, RES3, URTS2, + RES5, TP_URXD_CONSYS_VCORE, DBG_MON_A7), + PIN(157, BPI_D_BUS8, 0, 1, 0x12, 0x90, + BPI_BUS8, RES2, RES3, UTXD2, + CLKM0_A, SSPM_URXD_AO_VCORE, DBG_MON_A16), + PIN(158, BPI_D_BUS9, 0, 2, 0x12, 0x90, + BPI_BUS9, RES2, RES3, URXD2, + CLKM1_A, TP_UTXD1_VCORE, RES7), + PIN(159, BPI_D_BUS10, 0, 0, 0x12, 0x90, + BPI_BUS10, MD_INT0, SRCLKENAI1, RES4, + CLKM2_A, TP_URXD1_VCORE, RES7), + PIN(160, UTXD0, 0, 22, 0x13, 0x90, + UTXD0, MD_UTXD1, RES3, RES4, + mbistreaden_trigger, CONN_BG_GPS_MCU_DBG_UART_TXD, RES7), + PIN(161, URXD0, 0, 20, 0x13, 0x90, + URXD0, MD_URXD1, RES3, RES4, + mbistwriteen_trigger, RES6, RES7), + PIN(162, UTXD1, 0, 23, 0x13, 0x90, + UTXD1, MD_UTXD0, TP_UTXD1_VLP, ADSP_UTXD0, + SSPM_UTXD_AO_VLP, HFRP_UTXD1, RES7), + PIN(163, URXD1, 0, 21, 0x13, 0x90, + URXD1, MD_URXD0, TP_URXD1_VLP, ADSP_URXD0, + SSPM_URXD_AO_VLP, HFRP_URXD1, RES7), + PIN(164, SCP_SCL0, 0, 12, 0x13, 0x90, + SCP_SCL0, RES2, RES3, RES4, + RES5, TP_GPIO0_AO, DBG_MON_A22), + PIN(165, SCP_SDA0, 0, 14, 0x13, 0x90, + SCP_SDA0, RES2, RES3, RES4, + RES5, TP_GPIO1_AO, DBG_MON_A23), + PIN(166, SCP_SCL2, 0, 13, 0x13, 0x90, + SCP_SCL2, RES2, RES3, RES4, + RES5, TP_GPIO2_AO, DBG_MON_A24), + PIN(167, SCP_SDA2, 0, 15, 0x13, 0x90, + SCP_SDA2, RES2, RES3, RES4, + RES5, TP_GPIO3_AO, DBG_MON_A25), + PIN(168, SCP_SPI2_CK, 0, 16, 0x13, 0x90, + SCP_SPI2_CK, SPI2_B_CLK, PWM_VLP, SCP_SCL2, + RES5, RES6, DBG_MON_A26), + PIN(169, SCP_SPI2_CSB, 0, 17, 0x13, 0x90, + SCP_SPI2_CS, SPI2_B_CSB, RES3, RES4, + RES5, RES6, DBG_MON_A27), + PIN(170, SCP_SPI2_MO, 0, 19, 0x13, 0x90, + SCP_SPI2_MO, SPI2_B_MO, RES3, SCP_SDA2, + RES5, RES6, DBG_MON_A28), + PIN(171, SCP_SPI2_MI, 0, 18, 0x13, 0x90, + SCP_SPI2_MI, SPI2_B_MI, RES3, RES4, + RES5, RES6, DBG_MON_A29), + PIN(172, PERIPHERAL_EN2, 0, 10, 0x13, 0x90, + CONN_TCXOENA_REQ, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(173, PERIPHERAL_EN3, 0, 11, 0x13, 0x90, + CMFLASH3, PWM_3, MD_GPS_L5_BLANK, CLKM1_A, + RES5, RES6, DBG_MON_A31), + PIN(174, PERIPHERAL_EN0, 0, 15, 0x11, 0x90, + CMFLASH0, PWM_0, VBUSVALID_1P, MD32_2_RXD, + DISP_PWM3, RES6, RES7), + PIN(175, PERIPHERAL_EN1, 0, 16, 0x11, 0x90, + CMFLASH1, PWM_1, EDP_TX_HPD, MD32_2_TXD, + DISP_PWM4, RES6, RES7), + PIN(176, SCL5, 0, 17, 0x11, 0x90, + SCL5, LCM3_RST, RES3, MD_URXD1_CONN, + RES5, TP_UTXD_GNSS_VCORE, RES7), + PIN(177, SDA5, 0, 18, 0x11, 0x90, + SDA5, DSI3_TE, RES3, MD_UTXD1_CONN, + RES5, TP_URXD_GNSS_VCORE, RES7), + PIN(178, DMIC_CLK, 0, 6, 0x11, 0x90, + DMIC_CLK, SCP_DMIC_CLK, SRCLKENAI0, CLKM2_B, + TP_GPIO7_AO, SPU1_UTX, DAP_SONIC_SWCK), + PIN(179, DMIC_DAT, 0, 7, 0x11, 0x90, + DMIC_DAT, SCP_DMIC_DAT, SRCLKENAI1, CLKM3_B, + TP_GPIO8_AO, SPU1_URX, DAP_SONIC_SWD), + PIN(180, CAM_PDN0, 0, 0, 0x11, 0x90, + IDDIG_1P, CMVREF0, GPS_PPS1, GPS_L5_ELNA_EN, + DISP_PWM1, RES6, RES7), + PIN(181, CAM_PDN1, 0, 1, 0x11, 0x90, + USB_DRVVBUS_1P, CMVREF1, MFG_EB_JTAG_TRSTN, ADSP_JTAG1_TRSTN, + HFRP_JTAG1_TRSTN, SPU1_NTRST, CONN_BG_GPS_MCU_TRST_B), + PIN(182, CAM_PDN2, 0, 2, 0x11, 0x90, + SCL11, CMVREF2, MFG_EB_JTAG_TCK, ADSP_JTAG1_TCK, + HFRP_JTAG1_TCK, SPU1_TCK, CONN_BG_GPS_MCU_TCK), + PIN(183, CAM_PDN3, 0, 3, 0x11, 0x90, + SDA11, CMVREF3, MFG_EB_JTAG_TMS, ADSP_JTAG1_TMS, + HFRP_JTAG1_TMS, SPU1_TMS, CONN_BG_GPS_MCU_TMS), + PIN(184, CAM_PDN4, 0, 4, 0x11, 0x90, + SCL12, CMVREF4, MFG_EB_JTAG_TDO, ADSP_JTAG1_TDO, + HFRP_JTAG1_TDO, SPU1_TDO, CONN_BG_GPS_MCU_TDO), + PIN(185, CAM_PDN5, 0, 5, 0x11, 0x90, + SDA12, CMVREF5, MFG_EB_JTAG_TDI, ADSP_JTAG1_TDI, + HFRP_JTAG1_TDI, SPU1_TDI, CONN_BG_GPS_MCU_TDI), + PIN(186, CAM_RST0, 0, 4, 0x1d, 0xd0, + MD_GPS_L1_BLANK, PMSR_SMAP, TP_GPIO2_AO, RES4, + RES5, RES6, RES7), + PIN(187, CAM_RST1, 0, 5, 0x1d, 0xd0, + MD_GPS_L5_BLANK, RES2, TP_GPIO4_AO, RES4, + RES5, RES6, RES7), + PIN(188, CAM_SCL2, 0, 12, 0x1d, 0xd0, + SCL2, SCP_SCL8, RES3, RES4, + RES5, RES6, RES7), + PIN(189, CAM_SDA2, 0, 17, 0x1d, 0xd0, + SDA2, SCP_SDA8, RES3, RES4, + RES5, RES6, RES7), + PIN(190, CAM_SCL4, 0, 13, 0x1d, 0xd0, + SCL4, SCP_SCL9, RES3, RES4, + RES5, UDI_TDI_6, RES7), + PIN(191, CAM_SDA4, 0, 18, 0x1d, 0xd0, + SDA4, SCP_SDA9, RES3, RES4, + RES5, UDI_TDI_7, RES7), + PIN(192, CAM_CLK2, 0, 0, 0x1d, 0xd0, + CMMCLK2, RES2, RES3, MD32_3_RXD, + RES5, RES6, RES7), + PIN(193, CAM_RST2, 0, 6, 0x1d, 0xd0, + RES1, RES2, CLKM0_B, MD32_3_TXD, + RES5, UDI_TDO_7, RES7), + PIN(194, CAM_SCL7, 0, 14, 0x1d, 0xd0, + SCL7, MD32_3_GPIO0, CLKM2_B, RES4, + RES5, UDI_TDI_2, RES7), + PIN(195, CAM_SDA7, 0, 19, 0x1d, 0xd0, + SDA7, RES2, CLKM3_B, RES4, + RES5, UDI_TDI_3, RES7), + PIN(196, CAM_CLK3, 0, 1, 0x1d, 0xd0, + CMMCLK3, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(197, CAM_RST3, 0, 7, 0x1d, 0xd0, + RES1, RES2, CLKM1_B, RES4, + RES5, UDI_TDI_1, RES7), + PIN(198, CAM_SCL8, 0, 15, 0x1d, 0xd0, + SCL8, RES2, RES3, RES4, + RES5, UDI_TDI_4, RES7), + PIN(199, CAM_SDA8, 0, 20, 0x1d, 0xd0, + SDA8, RES2, RES3, RES4, + RES5, UDI_TDI_5, RES7), + PIN(200, SCL1, 0, 22, 0x1d, 0xd0, + SCL1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(201, SDA1, 0, 25, 0x1d, 0xd0, + SDA1, RES2, RES3, RES4, + RES5, RES6, TSFDC_BG_COMP), + PIN(202, CAM_SCL9, 0, 16, 0x1d, 0xd0, + SCL9, SCP_SCL7, RES3, RES4, + RES5, TP_GPIO15_AO, RES7), + PIN(203, CAM_SDA9, 0, 21, 0x1d, 0xd0, + SDA9, SCP_SDA7, RES3, RES4, + RES5, TP_GPIO9_AO, RES7), + PIN(204, CAM_PDN6, 0, 2, 0x1d, 0xd0, + SCL13, CMVREF6, GPS_L1_ELNA_EN, RES4, + CLKM2_B, TP_GPIO12_AO, RES7), + PIN(205, CAM_PDN7, 0, 3, 0x1d, 0xd0, + SDA13, CMVREF7, GPS_L5_ELNA_EN, RES4, + CLKM3_B, TP_GPIO13_AO, RES7), + PIN(206, CAM_RST4, 0, 8, 0x1d, 0xd0, + RES1, MD32_2_GPIO0, RES3, RES4, + VBUSVALID, UDI_TDO_3, RES7), + PIN(207, CAM_RST5, 0, 9, 0x1d, 0xd0, + PCIE_WAKEN_2P, PMSR_SMAP_MAX, RES3, FMI2S_A_BCK, + RES5, UDI_TDO_4, RES7), + PIN(208, CAM_RST6, 0, 10, 0x1d, 0xd0, + PCIE_CLKREQN_2P, PMSR_SMAP_MAX_W, RES3, FMI2S_A_LRCK, + CLKM0_B, UDI_TDO_5, RES7), + PIN(209, CAM_RST7, 0, 11, 0x1d, 0xd0, + PCIE_PERSTN_2P, PMSR_SMAP, RES3, FMI2S_A_DI, + CLKM1_B, UDI_TDO_6, RES7), + PIN(210, CAM_CLK4, 0, 0, 0x2e, 0xb0, + CMMCLK4, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(211, CAM_CLK5, 0, 1, 0x2e, 0xb0, + CMMCLK5, CONN_TCXOENA_REQ, RES3, RES4, + RES5, RES6, RES7), + PIN(212, CAM_CLK6, 0, 2, 0x2e, 0xb0, + CMMCLK6, TP_GPIO10_AO, RES3, RES4, + IDDIG, UDI_TDO_1, RES7), + PIN(213, CAM_CLK7, 0, 3, 0x2e, 0xb0, + CMMCLK7, TP_GPIO11_AO, RES3, RES4, + USB_DRVVBUS, UDI_TDO_2, RES7), + PIN(214, SCP_SCL3, 0, 23, 0x1d, 0xd0, + SCP_SCL3, SCL14, RES3, RES4, + RES5, GBE1_MDC, GBE0_MDC), + PIN(215, SCP_SDA3, 0, 24, 0x1d, 0xd0, + SCP_SDA3, SDA14, RES3, RES4, + RES5, GBE1_MDIO, GBE0_MDIO), + PIN(216, PERIPHERAL_EN4, 0, 4, 0x2e, 0xb0, + GPS_PPS0, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(217, KPROW0, 1, 1, 0x2e, 0xa0, + KPROW0, RES2, RES3, RES4, + RES5, TP_GPIO12_AO, RES7), + PIN(218, KPROW1, 1, 2, 0x2e, 0xa0, + KPROW1, SPI0_WP, mbistreaden_trigger, RES4, + GPS_L5_ELNA_EN, TP_GPIO14_AO, RES7), + PIN(219, KPCOL1, 1, 0, 0x2e, 0xa0, + KPCOL1, SPI0_HOLD, mbistwriteen_trigger, SPMI_M_TRIG_FLAG, + GPS_L1_ELNA_EN, SPM_JTAG_TRSTN_VLP, JTRSTn_SEL1), + PIN(220, SPI0_CLK, 0, 5, 0x2e, 0xb0, + SPI0_CLK, RES2, RES3, RES4, + RES5, SPM_JTAG_TCK_VLP, JTCK_SEL1), + PIN(221, SPI0_CSB, 0, 6, 0x2e, 0xb0, + SPI0_CSB, RES2, RES3, RES4, + RES5, SPM_JTAG_TMS_VLP, JTMS_SEL1), + PIN(222, SPI0_MO, 0, 8, 0x2e, 0xb0, + SPI0_MO, SCP_SCL7, RES3, RES4, + RES5, SPM_JTAG_TDO_VLP, JTDO_SEL1), + PIN(223, SPI0_MI, 0, 7, 0x2e, 0xb0, + SPI0_MI, SCP_SDA7, RES3, RES4, + RES5, SPM_JTAG_TDI_VLP, JTDI_SEL1), + PIN(224, MSDC2_CLK, 1, 3, 0x2e, 0xa0, + MSDC2_CLK, DMIC2_CLK, GBE0_AUX_PPS0, GBE0_TXER, + GBE1_TXER, GBE1_AUX_PPS0, MD32_1_TXD), + PIN(225, MSDC2_CMD, 1, 4, 0x2e, 0xa0, + MSDC2_CMD, DMIC2_DAT, GBE0_AUX_PPS1, GBE0_RXER, + GBE1_RXER, GBE1_AUX_PPS1, MD32_1_RXD), + PIN(226, MSDC2_DAT0, 1, 5, 0x2e, 0xa0, + MSDC2_DAT0, I2SIN3_BCK, GBE0_AUX_PPS2, GBE0_COL, + GBE1_COL, GBE1_AUX_PPS2, GBE1_MDC), + PIN(227, MSDC2_DAT1, 1, 6, 0x2e, 0xa0, + MSDC2_DAT1, I2SIN3_LRCK, GBE0_AUX_PPS3, GBE0_INTR, + GBE1_INTR, GBE1_AUX_PPS3, GBE1_MDIO), + PIN(228, MSDC2_DAT2, 1, 7, 0x2e, 0xa0, + MSDC2_DAT2, I2SIN3_DI, GBE0_MDC, GBE1_MDC, + CONN_BG_GPS_MCU_AICE_TCKC, RES6, RES7), + PIN(229, MSDC2_DAT3, 1, 8, 0x2e, 0xa0, + MSDC2_DAT3, I2SOUT3_DO, GBE0_MDIO, GBE1_MDIO, + CONN_BG_GPS_MCU_AICE_TMSC, RES6, AVB_CLK2), + PIN(230, CONN_TOP_CLK, 0, 13, 0x2f, 0x90, + CONN_TOP_CLK, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(231, CONN_TOP_DATA, 0, 14, 0x2f, 0x90, + CONN_TOP_DATA, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(232, CONN_HRST_B, 0, 10, 0x2f, 0x90, + CONN_HRST_B, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(233, BT_BCK, 0, 0, 0x2f, 0x90, + I2SIN0_BCK, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(234, BT_LRCK, 0, 3, 0x2f, 0x90, + I2SIN0_LRCK, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(235, BT_DI, 0, 1, 0x2f, 0x90, + I2SIN0_DI, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(236, BT_DO, 0, 2, 0x2f, 0x90, + I2SOUT0_DO, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(237, BT_UTXD, 0, 6, 0x2f, 0x90, + CONN_UARTHUB_UART_TX, RES2, UTXD3, RES4, + RES5, RES6, RES7), + PIN(238, BT_URXD, 0, 5, 0x2f, 0x90, + CONN_UARTHUB_UART_RX, RES2, URXD3, RES4, + RES5, RES6, RES7), + PIN(239, SCP_WB_UTXD, 0, 19, 0x2f, 0x90, + TP_UTXD_CONSYS_VLP, TP_URXD_CONSYS_VLP, RES3, RES4, + RES5, RES6, RES7), + PIN(240, SCP_WB_URXD, 0, 18, 0x2f, 0x90, + TP_URXD_CONSYS_VLP, TP_UTXD_CONSYS_VLP, RES3, RES4, + RES5, RES6, RES7), + PIN(241, PCIE0_PERSTN, 0, 16, 0x2f, 0x90, + PCIE_PERSTN, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(242, PCIE0_WAKEN, 0, 17, 0x2f, 0x90, + PCIE_WAKEN, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(243, PCIE0_CLKREQN, 0, 15, 0x2f, 0x90, + PCIE_CLKREQN, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(244, CONN_RST, 0, 12, 0x2f, 0x90, + CONN_RST, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(245, CONN_FAULTB, 0, 9, 0x2f, 0x90, + RES1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(246, COEX_UTXD, 0, 8, 0x2f, 0x90, + CONN_PTA_TXD0, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(247, COEX_URXD, 0, 7, 0x2f, 0x90, + CONN_PTA_RXD0, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(248, BT_RST, 0, 4, 0x2f, 0x90, + RES1, RES2, UCTS3, RES4, + RES5, RES6, RES7), + PIN(249, WF_RST, 0, 20, 0x2f, 0x90, + RES1, RES2, URTS3, RES4, + RES5, RES6, RES7), + PIN(250, CONN_PMIC_EN, 0, 11, 0x2f, 0x90, + RES1, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(251, IVI_GPIO0, 0, 2, 0x13, 0x90, + IDDIG_1P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(252, IVI_GPIO1, 0, 3, 0x13, 0x90, + USB_DRVVBUS_1P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(253, IVI_GPIO2, 0, 4, 0x13, 0x90, + VBUSVALID_1P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(254, IVI_GPIO3, 0, 5, 0x13, 0x90, + IDDIG_2P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(255, IVI_GPIO4, 0, 6, 0x13, 0x90, + USB_DRVVBUS_2P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(256, IVI_GPIO5, 0, 7, 0x13, 0x90, + VBUSVALID_2P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(257, IVI_GPIO6, 0, 8, 0x13, 0x90, + VBUSVALID_3P, RES2, RES3, RES4, + RES5, RES6, RES7), + PIN(258, IVI_GPIO7, 0, 9, 0x13, 0x90, + RES1, RES2, RES3, RES4, + RES5, RES6, AVB_CLK1), + PIN(259, RGMII_0, 1, 9, 0x2e, 0xa0, + GBE0_TXD0, GBE1_TXD0, RES3, RES4, + RES5, RES6, RES7), + PIN(260, RGMII_1, 1, 10, 0x2e, 0xa0, + GBE0_TXD1, GBE1_TXD1, RES3, RES4, + RES5, RES6, RES7), + PIN(261, RGMII_2, 1, 11, 0x2e, 0xa0, + GBE0_TXC, GBE1_TXC, RES3, RES4, + RES5, RES6, RES7), + PIN(262, RGMII_3, 1, 12, 0x2e, 0xa0, + GBE0_TXEN, GBE1_TXEN, RES3, RES4, + RES5, RES6, RES7), + PIN(263, RGMII_4, 1, 13, 0x2e, 0xa0, + GBE0_RXD0, GBE1_RXD0, GBE0_AUX_PPS0, RES4, + RES5, RES6, RES7), + PIN(264, RGMII_5, 1, 14, 0x2e, 0xa0, + GBE0_RXD1, GBE1_RXD1, GBE0_AUX_PPS1, RES4, + RES5, RES6, RES7), + PIN(265, RGMII_6, 1, 15, 0x2e, 0xa0, + GBE0_RXC, GBE1_RXC, GBE0_AUX_PPS2, RES4, + RES5, RES6, RES7), + PIN(266, RGMII_7, 1, 16, 0x2e, 0xa0, + GBE0_RXDV, GBE1_RXDV, GBE0_AUX_PPS3, RES4, + RES5, RES6, RES7), + PIN(267, RGMII_8, 1, 2, 0x2f, 0x80, + GBE0_TXD2, GBE1_TXD2, GBE0_RXER, GBE1_RXER, + RES5, RES6, RES7), + PIN(268, RGMII_9, 1, 3, 0x2f, 0x80, + GBE0_TXD3, GBE1_TXD3, RES3, RES4, + RES5, RES6, RES7), + PIN(269, RGMII_10, 1, 0, 0x2f, 0x80, + GBE0_RXD2, GBE1_RXD2, GBE0_MDC, RES4, + RES5, RES6, RES7), + PIN(270, RGMII_11, 1, 1, 0x2f, 0x80, + GBE0_RXD3, GBE1_RXD3, GBE0_MDIO, RES4, + RES5, RES6, RES7), +}; + +static struct gpio_regs *const mtk_gpio = (void *)(GPIO_BASE); + +#endif /* SOC_MEDIATEK_MT8196_GPIO_H */ |