iBoot/target/ipad4b/pinconfig-mesa.c

1578 lines
66 KiB
C
Raw Permalink Normal View History

2023-07-08 13:03:17 -07:00
/*
* Copyright (C) 2014 Apple Inc. All rights reserved.
*
* This document is the property of Apple Inc.
* It is considered confidential and proprietary.
*
* This document may not be reproduced or transmitted in any form,
* in whole or in part, without the express written permission of
* Apple Inc.
*/
/* THIS FILE IS AUTOMATICALLY GENERATED BY tools/csvtopinconfig.py. DO NOT EDIT!
I/O Spreadsheet version: rev 0.4
I/O Spreadsheet tracker: 16055666
Conversion command: csvtopinconfig.py --soc h6p --copyright 2014 --config-column 'J85M:J85 Config' --config-column 'J86M:J86 Config' --config-column 'J87M:J87 Config' --pupd-column 'J85M:J85 PU/PD' --pupd-column 'J86M:J86 PU/PD' --pupd-column 'J87M:J87 PU/PD' --radar 16055666 <filename>
*/
#include <debug.h>
#include <drivers/apple/gpio.h>
#include <platform.h>
#include <platform/soc/hwregbase.h>
#include <stdint.h>
#include <target/boardid.h>
static const uint32_t pinconfig_j85map_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_DISABLED | PULL_DOWN | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_DISABLED | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | SLOW_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | SLOW_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_FUNC0 | SLOW_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_DISABLED | PULL_DOWN | SLOW_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_DISABLED | PULL_DOWN, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | SLOW_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | SLOW_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | SLOW_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_DISABLED | PULL_DOWN | SLOW_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_DISABLED | PULL_DOWN | SLOW_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_DISABLED | PULL_DOWN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | SLOW_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | SLOW_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED | PULL_DOWN, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED | PULL_DOWN, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED | PULL_DOWN, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED | PULL_DOWN, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED | PULL_DOWN, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | SLOW_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_DISABLED | PULL_DOWN | SLOW_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_DISABLED | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_DISABLED | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | SLOW_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | SLOW_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
static const uint32_t pinconfig_j85mdev_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_DISABLED | PULL_DOWN | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_DISABLED | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | DRIVE_X4 | FAST_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_DISABLED | PULL_DOWN | DRIVE_X4 | FAST_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_DISABLED | PULL_DOWN, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | FAST_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | FAST_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | FAST_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_DISABLED | PULL_DOWN | FAST_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_DISABLED | PULL_DOWN | FAST_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_DISABLED | PULL_DOWN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | FAST_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | FAST_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED | PULL_DOWN, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED | PULL_DOWN, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED | PULL_DOWN, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED | PULL_DOWN, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED | PULL_DOWN, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | FAST_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_DISABLED | PULL_DOWN | FAST_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_DISABLED | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_DISABLED | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | FAST_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
static const uint32_t pinconfig_j86map_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_IN | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | SLOW_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | SLOW_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_IN | SLOW_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_IN | SLOW_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_FUNC0, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | SLOW_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | SLOW_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | SLOW_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_IN | SLOW_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_IN | SLOW_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_IN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | SLOW_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | SLOW_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | SLOW_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_OUT_0 | SLOW_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_IN | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_IN | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | SLOW_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | SLOW_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
static const uint32_t pinconfig_j86mdev_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_IN | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | DRIVE_X4 | FAST_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_IN | DRIVE_X4 | FAST_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_IN | DRIVE_X4 | FAST_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_FUNC0, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | FAST_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | FAST_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | FAST_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_IN | FAST_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_IN | FAST_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_IN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | FAST_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | FAST_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | FAST_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_OUT_0 | FAST_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_IN | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_IN | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | FAST_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
static const uint32_t pinconfig_j87map_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_IN | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | SLOW_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | SLOW_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_IN | SLOW_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_IN | SLOW_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_FUNC0, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | SLOW_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | SLOW_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | SLOW_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_IN | SLOW_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_IN | SLOW_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_IN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | SLOW_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | SLOW_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | SLOW_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | SLOW_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_OUT_0 | SLOW_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_IN | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_IN | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | SLOW_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | SLOW_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
static const uint32_t pinconfig_j87mdev_0[GPIO_GROUP_COUNT * GPIOPADPINS] = {
/* Port 0 */
CFG_DISABLED, // 0 : TST_CLKOUT -> SOC_TST_CLKOUT
CFG_FUNC0 | FAST_SLEW, // 1 : WDOG -> WDOG_SOC
CFG_IN, // 2 : GPIO[0] -> GPIO_BTN_HOME_L
CFG_IN, // 3 : GPIO[1] -> GPIO_BTN_ONOFF_L
CFG_IN | PULL_UP, // 4 : GPIO[2] -> GPIO_BTN_VOL_UP_L
CFG_IN | PULL_UP, // 5 : GPIO[3] -> GPIO_BTN_VOL_DOWN_L
CFG_IN, // 6 : GPIO[4] -> GPIO_BTN_SRL_L
CFG_DISABLED, // 7 : GPIO[5] -> GPIO_SOC2BEACON_EN
/* Port 1 */
CFG_OUT_0 | FAST_SLEW, // 8 : GPIO[6] -> GPIO_SOC2AJ_HS4_SHUNT_EN
CFG_OUT_0 | FAST_SLEW, // 9 : GPIO[7] -> GPIO_SOC2AJ_HS3_SHUNT_EN
CFG_DISABLED, // 10 : GPIO[8] -> GPIO_BOARD_REV0
CFG_DISABLED, // 11 : GPIO[9] -> GPIO_BOARD_REV1
CFG_DISABLED, // 12 : GPIO[10] -> GPIO_BOARD_REV2
CFG_IN | PULL_UP, // 13 : GPIO[11] -> GPIO_CODEC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 14 : GPIO[12] -> GPIO_SOC2BB_WAKE_MODEM
CFG_IN | PULL_UP, // 15 : GPIO[13] -> GPIO_GRAPE_IRQ_L
/* Port 2 */
CFG_DISABLED, // 16 : GPIO[14] -> BB_IPC_GPIO
CFG_IN | PULL_UP, // 17 : GPIO[15] -> GPIO_ALS_IRQ_L
CFG_DISABLED, // 18 : GPIO[16] -> GPIO_BOARD_ID3
CFG_IN | PULL_DOWN, // 19 : GPIO[17] -> GPIO_BB2SOC_RESET_DET_L
CFG_DISABLED, // 20 : GPIO[18] -> GPIO_BOOT_CONFIG0
CFG_IN | PULL_UP, // 21 : GPIO[19] -> GPIO_PMU2SOC_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 22 : GPIO[20] -> GPIO_SOC2PMU_KEEPACT
CFG_OUT_0 | FAST_SLEW, // 23 : GPIO[21] -> GPIO_GRAPE_RST_L
/* Port 3 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 4 */
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 32 : UART1_TXD -> UART1_SOC2BT_TX
CFG_FUNC0, // 33 : UART1_RXD -> UART1_BT2SOC_TX
CFG_OUT_1 | DRIVE_X4 | FAST_SLEW, // 34 : UART1_RTSN -> UART1_SOC2BT_RTS_L
CFG_FUNC0, // 35 : UART1_CTSN -> UART1_BT2SOC_RTS_L
CFG_IN | PULL_UP | SLOW_SLEW, // 36 : UART2_TXD -> UART2_SOC2OSLO_TX
CFG_FUNC0, // 37 : UART2_RXD -> UART2_OSLO2SOC_TX
CFG_IN | PULL_UP | SLOW_SLEW, // 38 : UART2_RTSN -> UART2_SOC2OSLO_RTS_L
CFG_FUNC0, // 39 : UART2_CTSN -> UART2_OSLO2SOC_RTS_L
/* Port 5 */
CFG_IN | DRIVE_X4 | FAST_SLEW, // 40 : UART3_TXD -> UART3_SOC2BB_TX / UART2_SOC2WLAN_TX
CFG_FUNC0, // 41 : UART3_RXD -> UART3_BB2SOC_TX / UART2_WLAN2SOC_TX
CFG_IN | DRIVE_X4 | FAST_SLEW, // 42 : UART3_RTSN -> UART3_SOC2BB_RTS_L
CFG_FUNC0, // 43 : UART3_CTSN -> UART3_BB2SOC_RTS_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 44 : UART5_RTXD -> UART5_BATT_RTXD
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 6 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 7 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 8 */
CFG_IN | PULL_DOWN | FAST_SLEW, // 64 : UART4_TXD -> UART4_SOC2OSCAR_TXD
CFG_FUNC0, // 65 : UART4_RXD -> UART4_OSCAR2SOC_RXD
CFG_IN | FAST_SLEW, // 66 : UART4_RTSN -> GPIO_OSCAR_RESET_L
CFG_IN, // 67 : UART4_CTSN -> PMU_GPIO_OSCAR2PMU_HOST_WAKE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 68 : SPI1_SCLK -> SPI1_GRAPE_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 69 : SPI1_MOSI -> SPI1_GRAPE_MOSI
CFG_FUNC0, // 70 : SPI1_MISO -> SPI1_GRAPE_MISO
CFG_OUT_1 | FAST_SLEW, // 71 : SPI1_SSIN -> SPI1_GRAPE_CS_L
/* Port 9 */
CFG_DISABLED, // 72 : SPI0_SCLK -> GPIO_BOARD_ID0
CFG_DISABLED, // 73 : SPI0_MOSI -> GPIO_BOARD_ID1
CFG_DISABLED, // 74 : SPI0_MISO -> GPIO_BOARD_ID2
CFG_DISABLED, // 75 : SPI0_SSIN -> NC
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 76 : SPI2_SCLK -> SPI2_CODEC_SCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 77 : SPI2_MOSI -> SPI2_CODEC_MOSI
CFG_FUNC0, // 78 : SPI2_MISO -> SPI2_CODEC_MISO
CFG_OUT_1 | FAST_SLEW, // 79 : SPI2_SSIN -> SPI2_CODEC_CS_L
/* Port 10 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 80 : I2C0_SDA -> I2C0_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 81 : I2C0_SCL -> I2C0_SCL_1V8
CFG_FUNC0 | SLOW_SLEW, // 82 : I2C1_SDA -> I2C1_SDA_1V8
CFG_FUNC0 | SLOW_SLEW, // 83 : I2C1_SCL -> I2C1_SCL_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 84 : ISP0_SDA -> ISP0_CAM_REAR_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 85 : ISP0_SCL -> ISP0_CAM_REAR_SCL
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 86 : ISP1_SDA -> ISP1_CAM_FRONT_SDA
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 87 : ISP1_SCL -> ISP1_CAM_FRONT_SCL
/* Port 11 */
CFG_OUT_0 | FAST_SLEW, // 88 : SENSOR0_RST -> ISP0_CAM_REAR_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 89 : SENSOR0_CLK -> ISP0_CAM_REAR_CLK_R
CFG_DISABLED, // 90 : SENSOR0_XSHUTDOWN -> NC
CFG_DISABLED, // 91 : SENSOR0_ISTRB -> NC
CFG_OUT_0 | FAST_SLEW, // 92 : SENSOR1_RST -> ISP1_CAM_FRONT_SHUTDOWN_L
CFG_OUT_0 | DRIVE_X4 | FAST_SLEW, // 93 : SENSOR1_CLK -> ISP1_CAM_FRONT_CLK_R
CFG_DISABLED, // 94 : SENSOR1_XSHUTDOWN -> I2C1_SOC2OSCAR_SWDIO_1V8
CFG_DISABLED, // 95 : SENSOR1_ISTRB -> I2C1_SOC2OSCAR_SWDCLK_1V8
/* Port 12 */
CFG_FUNC0 | SLOW_SLEW, // 96 : SPI3_MOSI -> SPI_MESA_MOSI
CFG_FUNC0, // 97 : SPI3_MISO -> SPI_MESA_MISO
CFG_FUNC0 | SLOW_SLEW, // 98 : SPI3_SCLK -> SPI_MESA_SCLK_R
CFG_IN | PULL_DOWN, // 99 : SPI3_SSIN -> GPIO_MESA2SOC_INT
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 100 : I2C2_SDA -> I2C2_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 101 : I2C2_SCL -> I2C2_SCL_1V8
CFG_DISABLED | PULL_DOWN, // 102 : GPIO[22] -> GPIO_BB2SOC_GPS_SYNC
CFG_IN | FAST_SLEW, // 103 : GPIO[23] -> GPIO_SOC2BB_RADIO_ON_L
/* Port 13 */
CFG_IN | PULL_DOWN | SLOW_SLEW, // 104 : GPIO[24] -> GPIO_SOC2OSLO_FW_DWL_REQ
CFG_DISABLED, // 105 : GPIO[25] -> GPIO_BOOT_CONFIG1
CFG_IN, // 106 : GPIO[26] -> GPIO_FORCE_DFU
CFG_DISABLED, // 107 : GPIO[27] -> TP_GPIO_DFU_STATUS
CFG_DISABLED, // 108 : GPIO[28] -> GPIO_BOOT_CONFIG2
CFG_DISABLED, // 109 : GPIO[29] -> GPIO_BOOT_CONFIG3
CFG_IN | FAST_SLEW, // 110 : GPIO[30] -> GPIO_SOC2OSCAR_DBGEN
CFG_IN | FAST_SLEW, // 111 : GPIO[31] -> GPIO_SOC2BB_RST_L
/* Port 14 */
CFG_IN, // 112 : GPIO[32] -> GPIO_PROX_IRQ_L
CFG_DISABLED | PULL_DOWN, // 113 : GPIO[33] -> GPIO_BB2SOC_GSM_TXBURST
CFG_OUT_0 | FAST_SLEW, // 114 : GPIO[34] -> GPIO_SPKAMP_RST_L
CFG_OUT_0 | FAST_SLEW, // 115 : GPIO[35] -> GPIO_BT_WAKE
CFG_IN, // 116 : GPIO[36] -> GPIO_TS2SOC2PMU_INT
CFG_IN | PULL_UP, // 117 : GPIO[37] -> GPIO_SPKAMP_LEFT_IRQ_L
CFG_OUT_0 | FAST_SLEW, // 118 : GPIO[38] -> GPIO_SOC2LCD_PWREN
CFG_OUT_0 | PULL_DOWN, // 119 : DISP_VSYNC -> DISPLAY_SYNC
/* Port 15 */
CFG_FUNC0 | FAST_SLEW, // 120 : SOCHOT0 -> SOCHOT0_L
CFG_FUNC0 | FAST_SLEW, // 121 : SOCHOT1 -> SOCHOT1_L
CFG_FUNC0 | FAST_SLEW, // 122 : UART0_TXD -> UART0_SOC_TXD
CFG_FUNC0, // 123 : UART0_RXD -> UART0_SOC_RXD
CFG_DISABLED, // 124 : UNSPECIFIED -> UNSPECIFIED
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 125 : DWI_DO -> DWI_AP_DO - to be checked again
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 126 : DWI_CLK -> DWI_AP_CLK - to be checked again
CFG_DISABLED, // 127 : UNSPECIFIED -> UNSPECIFIED
/* Port 16 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 128 : I2S0_LRCK -> I2S0_CODEC_ASP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 129 : I2S0_BCLK -> I2S0_CODEC_ASP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 130 : I2S0_DOUT -> I2S0_CODEC_ASP_DOUT
CFG_FUNC0, // 131 : I2S0_DIN -> I2S0_CODEC_ASP_DIN
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 132 : I2S1_MCK -> I2S1_SPKAMP_MCK_R
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 133 : I2S1_LRCK -> I2S1_SPKAMP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 134 : I2S1_BCLK -> I2S1_SPKAMP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 135 : I2S1_DOUT -> I2S1_SPKAMP_DOUT
/* Port 17 */
CFG_FUNC0, // 136 : I2S1_DIN -> I2S1_SPKAMP_DIN
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 137 : I2S2_LRCK -> I2S2_CODEC_XSP_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 138 : I2S2_BCLK -> I2S2_CODEC_XSP_BCLK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 139 : I2S2_DOUT -> I2S2_CODEC_XSP_DOUT
CFG_FUNC0, // 140 : I2S2_DIN -> I2S2_CODEC_XSP_DIN
CFG_IN | PULL_UP, // 141 : I2S3_MCK -> GPIO_SPKAMP_RIGHT_IRQ_L
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 142 : I2S3_LRCK -> I2S3_SOC2BT_LRCK
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 143 : I2S3_BCLK -> I2S3_SOC2BT_BCLK
/* Port 18 */
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 144 : I2S3_DOUT -> I2S3_SOC2BT_DATA
CFG_FUNC0, // 145 : I2S3_DIN -> I2S3_BT2SOC_DATA
CFG_DISABLED, // 146 : I2S4_MCK -> BB_JTAG_TCK
CFG_DISABLED, // 147 : I2S4_LRCK -> BB_JTAG_TDI
CFG_DISABLED, // 148 : I2S4_BCLK -> BB_JTAG_TMS
CFG_DISABLED, // 149 : I2S4_DOUT -> BB_JTAG_TRST_L
CFG_DISABLED, // 150 : I2S4_DIN -> BB_JTAG_TDO
CFG_DISABLED,
/* Port 19 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 20 */
CFG_OUT_0 | FAST_SLEW, // 160 : TMR32_PWM0 -> OSCAR_TIME_SYNC_HOST_INT
CFG_OUT_0 | FAST_SLEW, // 161 : TMR32_PWM1 -> GPIO_SPKAMP_KEEPALIVE
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 162 : TMR32_PWM2 -> CLK_32K_SOC2CUMULUS
CFG_OUT_0 | FAST_SLEW, // 163 : SIO_7816UART0_SDA -> HSIC1_SOC2WLAN_HOST_RDY
CFG_IN, // 164 : SIO_7816UART0_SCL -> HSIC1_WLAN2SOC_DEVICE_RDY
CFG_IN | PULL_DOWN, // 165 : SIO_7816UART0_RST -> HSIC1_WLAN2SOC_REMOTE_WAKE
CFG_OUT_0 | FAST_SLEW, // 166 : SIO_7816UART1_SDA -> HSIC2_SOC2BB_HOST_RDY
CFG_IN | PULL_DOWN, // 167 : SIO_7816UART1_SCL -> HSIC2_BB2SOC_DEVICE_RDY
/* Port 21 */
CFG_IN | PULL_DOWN, // 168 : SIO_7816UART1_RST -> HSIC2_BB2SOC_REMOTE_WAKE
CFG_FUNC0 | FAST_SLEW, // 169 : UART6_TXD -> UART6_TS_ACC_TXD
CFG_FUNC0, // 170 : UART6_RXD -> UART6_TS_ACC_RXD
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 171 : I2C3_SDA -> I2C3_SDA_1V8
CFG_FUNC0 | DRIVE_X2 | FAST_SLEW, // 172 : I2C3_SCL -> I2C3_SCL_1V8
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 22 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 23 */
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
/* Port 24 */
CFG_FUNC0, // 192 : EDP_HPD -> EDP_HPD
CFG_FUNC0 | DRIVE_X4 | FAST_SLEW, // 193 : I2S0_MCK -> I2S0_CODEC_ASP_MCK_R
CFG_IN | PULL_DOWN | SLOW_SLEW, // 194 : I2S2_MCK -> GPIO_SOC2OSLO_EN
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
CFG_DISABLED,
};
struct pinconfig_map {
uint32_t board_id;
uint32_t board_id_mask;
const uint32_t *pinconfigs[GPIOC_COUNT];
};
static const struct pinconfig_map cfg_map[] = {
{ TARGET_BOARD_ID_J85MAP, ~0, { pinconfig_j85map_0 } },
{ TARGET_BOARD_ID_J85MDEV, ~0, { pinconfig_j85mdev_0 } },
{ TARGET_BOARD_ID_J86MAP, ~0, { pinconfig_j86map_0 } },
{ TARGET_BOARD_ID_J86MDEV, ~0, { pinconfig_j86mdev_0 } },
{ TARGET_BOARD_ID_J87MAP, ~0, { pinconfig_j87map_0 } },
{ TARGET_BOARD_ID_J87MDEV, ~0, { pinconfig_j87mdev_0 } },
};
const uint32_t * target_get_default_gpio_cfg(int gpioc)
{
static const struct pinconfig_map *selected_map = NULL;
if (selected_map == NULL) {
uint32_t board_id = platform_get_board_id();
for (unsigned i = 0; i < sizeof(cfg_map)/sizeof(cfg_map[0]); i++) {
if ((board_id & cfg_map[i].board_id_mask) == cfg_map[i].board_id) {
selected_map = &cfg_map[i];
break;
}
}
if (selected_map == NULL)
panic("no default pinconfig for board id %u", board_id);
}
ASSERT(gpioc < GPIOC_COUNT);
return selected_map->pinconfigs[gpioc];
}