1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright (c) 2013-2014, NVIDIA CORPORATION. All rights reserved. 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #include <common.h> 8*4882a593Smuzhiyun #include <asm/io.h> 9*4882a593Smuzhiyun #include <asm/arch/pinmux.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #define PIN(pin, f0, f1, f2, f3) \ 12*4882a593Smuzhiyun { \ 13*4882a593Smuzhiyun .funcs = { \ 14*4882a593Smuzhiyun PMUX_FUNC_##f0, \ 15*4882a593Smuzhiyun PMUX_FUNC_##f1, \ 16*4882a593Smuzhiyun PMUX_FUNC_##f2, \ 17*4882a593Smuzhiyun PMUX_FUNC_##f3, \ 18*4882a593Smuzhiyun }, \ 19*4882a593Smuzhiyun } 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #define PIN_RESERVED {} 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun static const struct pmux_pingrp_desc tegra124_pingroups[] = { 24*4882a593Smuzhiyun /* pin, f0, f1, f2, f3 */ 25*4882a593Smuzhiyun /* Offset 0x3000 */ 26*4882a593Smuzhiyun PIN(ULPI_DATA0_PO1, SPI3, HSI, UARTA, ULPI), 27*4882a593Smuzhiyun PIN(ULPI_DATA1_PO2, SPI3, HSI, UARTA, ULPI), 28*4882a593Smuzhiyun PIN(ULPI_DATA2_PO3, SPI3, HSI, UARTA, ULPI), 29*4882a593Smuzhiyun PIN(ULPI_DATA3_PO4, SPI3, HSI, UARTA, ULPI), 30*4882a593Smuzhiyun PIN(ULPI_DATA4_PO5, SPI2, HSI, UARTA, ULPI), 31*4882a593Smuzhiyun PIN(ULPI_DATA5_PO6, SPI2, HSI, UARTA, ULPI), 32*4882a593Smuzhiyun PIN(ULPI_DATA6_PO7, SPI2, HSI, UARTA, ULPI), 33*4882a593Smuzhiyun PIN(ULPI_DATA7_PO0, SPI2, HSI, UARTA, ULPI), 34*4882a593Smuzhiyun PIN(ULPI_CLK_PY0, SPI1, SPI5, UARTD, ULPI), 35*4882a593Smuzhiyun PIN(ULPI_DIR_PY1, SPI1, SPI5, UARTD, ULPI), 36*4882a593Smuzhiyun PIN(ULPI_NXT_PY2, SPI1, SPI5, UARTD, ULPI), 37*4882a593Smuzhiyun PIN(ULPI_STP_PY3, SPI1, SPI5, UARTD, ULPI), 38*4882a593Smuzhiyun PIN(DAP3_FS_PP0, I2S2, SPI5, DISPLAYA, DISPLAYB), 39*4882a593Smuzhiyun PIN(DAP3_DIN_PP1, I2S2, SPI5, DISPLAYA, DISPLAYB), 40*4882a593Smuzhiyun PIN(DAP3_DOUT_PP2, I2S2, SPI5, DISPLAYA, RSVD4), 41*4882a593Smuzhiyun PIN(DAP3_SCLK_PP3, I2S2, SPI5, RSVD3, DISPLAYB), 42*4882a593Smuzhiyun PIN(PV0, RSVD1, RSVD2, RSVD3, RSVD4), 43*4882a593Smuzhiyun PIN(PV1, RSVD1, RSVD2, RSVD3, RSVD4), 44*4882a593Smuzhiyun PIN(SDMMC1_CLK_PZ0, SDMMC1, CLK12, RSVD3, RSVD4), 45*4882a593Smuzhiyun PIN(SDMMC1_CMD_PZ1, SDMMC1, SPDIF, SPI4, UARTA), 46*4882a593Smuzhiyun PIN(SDMMC1_DAT3_PY4, SDMMC1, SPDIF, SPI4, UARTA), 47*4882a593Smuzhiyun PIN(SDMMC1_DAT2_PY5, SDMMC1, PWM0, SPI4, UARTA), 48*4882a593Smuzhiyun PIN(SDMMC1_DAT1_PY6, SDMMC1, PWM1, SPI4, UARTA), 49*4882a593Smuzhiyun PIN(SDMMC1_DAT0_PY7, SDMMC1, RSVD2, SPI4, UARTA), 50*4882a593Smuzhiyun PIN_RESERVED, 51*4882a593Smuzhiyun PIN_RESERVED, 52*4882a593Smuzhiyun /* Offset 0x3068 */ 53*4882a593Smuzhiyun PIN(CLK2_OUT_PW5, EXTPERIPH2, RSVD2, RSVD3, RSVD4), 54*4882a593Smuzhiyun PIN(CLK2_REQ_PCC5, DAP, RSVD2, RSVD3, RSVD4), 55*4882a593Smuzhiyun PIN_RESERVED, 56*4882a593Smuzhiyun PIN_RESERVED, 57*4882a593Smuzhiyun PIN_RESERVED, 58*4882a593Smuzhiyun PIN_RESERVED, 59*4882a593Smuzhiyun PIN_RESERVED, 60*4882a593Smuzhiyun PIN_RESERVED, 61*4882a593Smuzhiyun PIN_RESERVED, 62*4882a593Smuzhiyun PIN_RESERVED, 63*4882a593Smuzhiyun PIN_RESERVED, 64*4882a593Smuzhiyun PIN_RESERVED, 65*4882a593Smuzhiyun PIN_RESERVED, 66*4882a593Smuzhiyun PIN_RESERVED, 67*4882a593Smuzhiyun PIN_RESERVED, 68*4882a593Smuzhiyun PIN_RESERVED, 69*4882a593Smuzhiyun PIN_RESERVED, 70*4882a593Smuzhiyun PIN_RESERVED, 71*4882a593Smuzhiyun PIN_RESERVED, 72*4882a593Smuzhiyun PIN_RESERVED, 73*4882a593Smuzhiyun PIN_RESERVED, 74*4882a593Smuzhiyun PIN_RESERVED, 75*4882a593Smuzhiyun PIN_RESERVED, 76*4882a593Smuzhiyun PIN_RESERVED, 77*4882a593Smuzhiyun PIN_RESERVED, 78*4882a593Smuzhiyun PIN_RESERVED, 79*4882a593Smuzhiyun PIN_RESERVED, 80*4882a593Smuzhiyun PIN_RESERVED, 81*4882a593Smuzhiyun PIN_RESERVED, 82*4882a593Smuzhiyun PIN_RESERVED, 83*4882a593Smuzhiyun PIN_RESERVED, 84*4882a593Smuzhiyun PIN_RESERVED, 85*4882a593Smuzhiyun PIN_RESERVED, 86*4882a593Smuzhiyun PIN_RESERVED, 87*4882a593Smuzhiyun PIN_RESERVED, 88*4882a593Smuzhiyun PIN_RESERVED, 89*4882a593Smuzhiyun PIN_RESERVED, 90*4882a593Smuzhiyun PIN_RESERVED, 91*4882a593Smuzhiyun PIN_RESERVED, 92*4882a593Smuzhiyun PIN_RESERVED, 93*4882a593Smuzhiyun PIN_RESERVED, 94*4882a593Smuzhiyun PIN_RESERVED, 95*4882a593Smuzhiyun /* Offset 0x3110 */ 96*4882a593Smuzhiyun PIN(HDMI_INT_PN7, RSVD1, RSVD2, RSVD3, RSVD4), 97*4882a593Smuzhiyun PIN(DDC_SCL_PV4, I2C4, RSVD2, RSVD3, RSVD4), 98*4882a593Smuzhiyun PIN(DDC_SDA_PV5, I2C4, RSVD2, RSVD3, RSVD4), 99*4882a593Smuzhiyun PIN_RESERVED, 100*4882a593Smuzhiyun PIN_RESERVED, 101*4882a593Smuzhiyun PIN_RESERVED, 102*4882a593Smuzhiyun PIN_RESERVED, 103*4882a593Smuzhiyun PIN_RESERVED, 104*4882a593Smuzhiyun PIN_RESERVED, 105*4882a593Smuzhiyun PIN_RESERVED, 106*4882a593Smuzhiyun PIN_RESERVED, 107*4882a593Smuzhiyun PIN_RESERVED, 108*4882a593Smuzhiyun PIN_RESERVED, 109*4882a593Smuzhiyun PIN_RESERVED, 110*4882a593Smuzhiyun PIN_RESERVED, 111*4882a593Smuzhiyun PIN_RESERVED, 112*4882a593Smuzhiyun PIN_RESERVED, 113*4882a593Smuzhiyun PIN_RESERVED, 114*4882a593Smuzhiyun PIN_RESERVED, 115*4882a593Smuzhiyun PIN_RESERVED, 116*4882a593Smuzhiyun PIN_RESERVED, 117*4882a593Smuzhiyun /* Offset 0x3164 */ 118*4882a593Smuzhiyun PIN(UART2_RXD_PC3, IRDA, SPDIF, UARTA, SPI4), 119*4882a593Smuzhiyun PIN(UART2_TXD_PC2, IRDA, SPDIF, UARTA, SPI4), 120*4882a593Smuzhiyun PIN(UART2_RTS_N_PJ6, UARTA, UARTB, GMI, SPI4), 121*4882a593Smuzhiyun PIN(UART2_CTS_N_PJ5, UARTA, UARTB, GMI, SPI4), 122*4882a593Smuzhiyun PIN(UART3_TXD_PW6, UARTC, RSVD2, GMI, SPI4), 123*4882a593Smuzhiyun PIN(UART3_RXD_PW7, UARTC, RSVD2, GMI, SPI4), 124*4882a593Smuzhiyun PIN(UART3_CTS_N_PA1, UARTC, SDMMC1, DTV, GMI), 125*4882a593Smuzhiyun PIN(UART3_RTS_N_PC0, UARTC, PWM0, DTV, GMI), 126*4882a593Smuzhiyun PIN(PU0, OWR, UARTA, GMI, RSVD4), 127*4882a593Smuzhiyun PIN(PU1, RSVD1, UARTA, GMI, RSVD4), 128*4882a593Smuzhiyun PIN(PU2, RSVD1, UARTA, GMI, RSVD4), 129*4882a593Smuzhiyun PIN(PU3, PWM0, UARTA, GMI, DISPLAYB), 130*4882a593Smuzhiyun PIN(PU4, PWM1, UARTA, GMI, DISPLAYB), 131*4882a593Smuzhiyun PIN(PU5, PWM2, UARTA, GMI, DISPLAYB), 132*4882a593Smuzhiyun PIN(PU6, PWM3, UARTA, RSVD3, GMI), 133*4882a593Smuzhiyun PIN(GEN1_I2C_SDA_PC5, I2C1, RSVD2, RSVD3, RSVD4), 134*4882a593Smuzhiyun PIN(GEN1_I2C_SCL_PC4, I2C1, RSVD2, RSVD3, RSVD4), 135*4882a593Smuzhiyun PIN(DAP4_FS_PP4, I2S3, GMI, DTV, RSVD4), 136*4882a593Smuzhiyun PIN(DAP4_DIN_PP5, I2S3, GMI, RSVD3, RSVD4), 137*4882a593Smuzhiyun PIN(DAP4_DOUT_PP6, I2S3, GMI, DTV, RSVD4), 138*4882a593Smuzhiyun PIN(DAP4_SCLK_PP7, I2S3, GMI, RSVD3, RSVD4), 139*4882a593Smuzhiyun PIN(CLK3_OUT_PEE0, EXTPERIPH3, RSVD2, RSVD3, RSVD4), 140*4882a593Smuzhiyun PIN(CLK3_REQ_PEE1, DEV3, RSVD2, RSVD3, RSVD4), 141*4882a593Smuzhiyun PIN(PC7, RSVD1, RSVD2, GMI, GMI_ALT), 142*4882a593Smuzhiyun PIN(PI5, SDMMC2, RSVD2, GMI, RSVD4), 143*4882a593Smuzhiyun PIN(PI7, RSVD1, TRACE, GMI, DTV), 144*4882a593Smuzhiyun PIN(PK0, RSVD1, SDMMC3, GMI, SOC), 145*4882a593Smuzhiyun PIN(PK1, SDMMC2, TRACE, GMI, RSVD4), 146*4882a593Smuzhiyun PIN(PJ0, RSVD1, RSVD2, GMI, USB), 147*4882a593Smuzhiyun PIN(PJ2, RSVD1, RSVD2, GMI, SOC), 148*4882a593Smuzhiyun PIN(PK3, SDMMC2, TRACE, GMI, CCLA), 149*4882a593Smuzhiyun PIN(PK4, SDMMC2, RSVD2, GMI, GMI_ALT), 150*4882a593Smuzhiyun PIN(PK2, RSVD1, RSVD2, GMI, RSVD4), 151*4882a593Smuzhiyun PIN(PI3, RSVD1, RSVD2, GMI, SPI4), 152*4882a593Smuzhiyun PIN(PI6, RSVD1, RSVD2, GMI, SDMMC2), 153*4882a593Smuzhiyun PIN(PG0, RSVD1, RSVD2, GMI, RSVD4), 154*4882a593Smuzhiyun PIN(PG1, RSVD1, RSVD2, GMI, RSVD4), 155*4882a593Smuzhiyun PIN(PG2, RSVD1, TRACE, GMI, RSVD4), 156*4882a593Smuzhiyun PIN(PG3, RSVD1, TRACE, GMI, RSVD4), 157*4882a593Smuzhiyun PIN(PG4, RSVD1, TMDS, GMI, SPI4), 158*4882a593Smuzhiyun PIN(PG5, RSVD1, RSVD2, GMI, SPI4), 159*4882a593Smuzhiyun PIN(PG6, RSVD1, RSVD2, GMI, SPI4), 160*4882a593Smuzhiyun PIN(PG7, RSVD1, RSVD2, GMI, SPI4), 161*4882a593Smuzhiyun PIN(PH0, PWM0, TRACE, GMI, DTV), 162*4882a593Smuzhiyun PIN(PH1, PWM1, TMDS, GMI, DISPLAYA), 163*4882a593Smuzhiyun PIN(PH2, PWM2, TMDS, GMI, CLDVFS), 164*4882a593Smuzhiyun PIN(PH3, PWM3, SPI4, GMI, CLDVFS), 165*4882a593Smuzhiyun PIN(PH4, SDMMC2, RSVD2, GMI, RSVD4), 166*4882a593Smuzhiyun PIN(PH5, SDMMC2, RSVD2, GMI, RSVD4), 167*4882a593Smuzhiyun PIN(PH6, SDMMC2, TRACE, GMI, DTV), 168*4882a593Smuzhiyun PIN(PH7, SDMMC2, TRACE, GMI, DTV), 169*4882a593Smuzhiyun PIN(PJ7, UARTD, RSVD2, GMI, GMI_ALT), 170*4882a593Smuzhiyun PIN(PB0, UARTD, RSVD2, GMI, RSVD4), 171*4882a593Smuzhiyun PIN(PB1, UARTD, RSVD2, GMI, RSVD4), 172*4882a593Smuzhiyun PIN(PK7, UARTD, RSVD2, GMI, RSVD4), 173*4882a593Smuzhiyun PIN(PI0, RSVD1, RSVD2, GMI, RSVD4), 174*4882a593Smuzhiyun PIN(PI1, RSVD1, RSVD2, GMI, RSVD4), 175*4882a593Smuzhiyun PIN(PI2, SDMMC2, TRACE, GMI, RSVD4), 176*4882a593Smuzhiyun PIN(PI4, SPI4, TRACE, GMI, DISPLAYA), 177*4882a593Smuzhiyun PIN(GEN2_I2C_SCL_PT5, I2C2, RSVD2, GMI, RSVD4), 178*4882a593Smuzhiyun PIN(GEN2_I2C_SDA_PT6, I2C2, RSVD2, GMI, RSVD4), 179*4882a593Smuzhiyun PIN(SDMMC4_CLK_PCC4, SDMMC4, RSVD2, GMI, RSVD4), 180*4882a593Smuzhiyun PIN(SDMMC4_CMD_PT7, SDMMC4, RSVD2, GMI, RSVD4), 181*4882a593Smuzhiyun PIN(SDMMC4_DAT0_PAA0, SDMMC4, SPI3, GMI, RSVD4), 182*4882a593Smuzhiyun PIN(SDMMC4_DAT1_PAA1, SDMMC4, SPI3, GMI, RSVD4), 183*4882a593Smuzhiyun PIN(SDMMC4_DAT2_PAA2, SDMMC4, SPI3, GMI, RSVD4), 184*4882a593Smuzhiyun PIN(SDMMC4_DAT3_PAA3, SDMMC4, SPI3, GMI, RSVD4), 185*4882a593Smuzhiyun PIN(SDMMC4_DAT4_PAA4, SDMMC4, SPI3, GMI, RSVD4), 186*4882a593Smuzhiyun PIN(SDMMC4_DAT5_PAA5, SDMMC4, SPI3, RSVD3, RSVD4), 187*4882a593Smuzhiyun PIN(SDMMC4_DAT6_PAA6, SDMMC4, SPI3, GMI, RSVD4), 188*4882a593Smuzhiyun PIN(SDMMC4_DAT7_PAA7, SDMMC4, RSVD2, GMI, RSVD4), 189*4882a593Smuzhiyun PIN_RESERVED, 190*4882a593Smuzhiyun /* Offset 0x3284 */ 191*4882a593Smuzhiyun PIN(CAM_MCLK_PCC0, VI, VI_ALT1, VI_ALT3, SDMMC2), 192*4882a593Smuzhiyun PIN(PCC1, I2S4, RSVD2, RSVD3, SDMMC2), 193*4882a593Smuzhiyun PIN(PBB0, VGP6, VIMCLK2, SDMMC2, VIMCLK2_ALT), 194*4882a593Smuzhiyun PIN(CAM_I2C_SCL_PBB1, VGP1, I2C3, RSVD3, SDMMC2), 195*4882a593Smuzhiyun PIN(CAM_I2C_SDA_PBB2, VGP2, I2C3, RSVD3, SDMMC2), 196*4882a593Smuzhiyun PIN(PBB3, VGP3, DISPLAYA, DISPLAYB, SDMMC2), 197*4882a593Smuzhiyun PIN(PBB4, VGP4, DISPLAYA, DISPLAYB, SDMMC2), 198*4882a593Smuzhiyun PIN(PBB5, VGP5, DISPLAYA, RSVD3, SDMMC2), 199*4882a593Smuzhiyun PIN(PBB6, I2S4, RSVD2, DISPLAYB, SDMMC2), 200*4882a593Smuzhiyun PIN(PBB7, I2S4, RSVD2, RSVD3, SDMMC2), 201*4882a593Smuzhiyun PIN(PCC2, I2S4, RSVD2, SDMMC3, SDMMC2), 202*4882a593Smuzhiyun PIN(JTAG_RTCK, RTCK, RSVD2, RSVD3, RSVD4), 203*4882a593Smuzhiyun PIN(PWR_I2C_SCL_PZ6, I2CPWR, RSVD2, RSVD3, RSVD4), 204*4882a593Smuzhiyun PIN(PWR_I2C_SDA_PZ7, I2CPWR, RSVD2, RSVD3, RSVD4), 205*4882a593Smuzhiyun PIN(KB_ROW0_PR0, KBC, RSVD2, RSVD3, RSVD4), 206*4882a593Smuzhiyun PIN(KB_ROW1_PR1, KBC, RSVD2, RSVD3, RSVD4), 207*4882a593Smuzhiyun PIN(KB_ROW2_PR2, KBC, RSVD2, RSVD3, RSVD4), 208*4882a593Smuzhiyun PIN(KB_ROW3_PR3, KBC, DISPLAYA, SYS, DISPLAYB), 209*4882a593Smuzhiyun PIN(KB_ROW4_PR4, KBC, DISPLAYA, RSVD3, DISPLAYB), 210*4882a593Smuzhiyun PIN(KB_ROW5_PR5, KBC, DISPLAYA, RSVD3, DISPLAYB), 211*4882a593Smuzhiyun PIN(KB_ROW6_PR6, KBC, DISPLAYA, DISPLAYA_ALT, DISPLAYB), 212*4882a593Smuzhiyun PIN(KB_ROW7_PR7, KBC, RSVD2, CLDVFS, UARTA), 213*4882a593Smuzhiyun PIN(KB_ROW8_PS0, KBC, RSVD2, CLDVFS, UARTA), 214*4882a593Smuzhiyun PIN(KB_ROW9_PS1, KBC, RSVD2, RSVD3, UARTA), 215*4882a593Smuzhiyun PIN(KB_ROW10_PS2, KBC, RSVD2, RSVD3, UARTA), 216*4882a593Smuzhiyun PIN(KB_ROW11_PS3, KBC, RSVD2, RSVD3, IRDA), 217*4882a593Smuzhiyun PIN(KB_ROW12_PS4, KBC, RSVD2, RSVD3, IRDA), 218*4882a593Smuzhiyun PIN(KB_ROW13_PS5, KBC, RSVD2, SPI2, RSVD4), 219*4882a593Smuzhiyun PIN(KB_ROW14_PS6, KBC, RSVD2, SPI2, RSVD4), 220*4882a593Smuzhiyun PIN(KB_ROW15_PS7, KBC, SOC, RSVD3, RSVD4), 221*4882a593Smuzhiyun PIN(KB_COL0_PQ0, KBC, RSVD2, SPI2, RSVD4), 222*4882a593Smuzhiyun PIN(KB_COL1_PQ1, KBC, RSVD2, SPI2, RSVD4), 223*4882a593Smuzhiyun PIN(KB_COL2_PQ2, KBC, RSVD2, SPI2, RSVD4), 224*4882a593Smuzhiyun PIN(KB_COL3_PQ3, KBC, DISPLAYA, PWM2, UARTA), 225*4882a593Smuzhiyun PIN(KB_COL4_PQ4, KBC, OWR, SDMMC3, UARTA), 226*4882a593Smuzhiyun PIN(KB_COL5_PQ5, KBC, RSVD2, SDMMC3, RSVD4), 227*4882a593Smuzhiyun PIN(KB_COL6_PQ6, KBC, RSVD2, SPI2, UARTD), 228*4882a593Smuzhiyun PIN(KB_COL7_PQ7, KBC, RSVD2, SPI2, UARTD), 229*4882a593Smuzhiyun PIN(CLK_32K_OUT_PA0, BLINK, SOC, RSVD3, RSVD4), 230*4882a593Smuzhiyun PIN_RESERVED, 231*4882a593Smuzhiyun /* Offset 0x3324 */ 232*4882a593Smuzhiyun PIN(CORE_PWR_REQ, PWRON, RSVD2, RSVD3, RSVD4), 233*4882a593Smuzhiyun PIN(CPU_PWR_REQ, CPU, RSVD2, RSVD3, RSVD4), 234*4882a593Smuzhiyun PIN(PWR_INT_N, PMI, RSVD2, RSVD3, RSVD4), 235*4882a593Smuzhiyun PIN(CLK_32K_IN, CLK, RSVD2, RSVD3, RSVD4), 236*4882a593Smuzhiyun PIN(OWR, OWR, RSVD2, RSVD3, RSVD4), 237*4882a593Smuzhiyun PIN(DAP1_FS_PN0, I2S0, HDA, GMI, RSVD4), 238*4882a593Smuzhiyun PIN(DAP1_DIN_PN1, I2S0, HDA, GMI, RSVD4), 239*4882a593Smuzhiyun PIN(DAP1_DOUT_PN2, I2S0, HDA, GMI, SATA), 240*4882a593Smuzhiyun PIN(DAP1_SCLK_PN3, I2S0, HDA, GMI, RSVD4), 241*4882a593Smuzhiyun PIN(DAP_MCLK1_REQ_PEE2, DAP, DAP1, SATA, RSVD4), 242*4882a593Smuzhiyun PIN(DAP_MCLK1_PW4, EXTPERIPH1, DAP2, RSVD3, RSVD4), 243*4882a593Smuzhiyun PIN(SPDIF_IN_PK6, SPDIF, RSVD2, RSVD3, I2C3), 244*4882a593Smuzhiyun PIN(SPDIF_OUT_PK5, SPDIF, RSVD2, RSVD3, I2C3), 245*4882a593Smuzhiyun PIN(DAP2_FS_PA2, I2S1, HDA, GMI, RSVD4), 246*4882a593Smuzhiyun PIN(DAP2_DIN_PA4, I2S1, HDA, GMI, RSVD4), 247*4882a593Smuzhiyun PIN(DAP2_DOUT_PA5, I2S1, HDA, GMI, RSVD4), 248*4882a593Smuzhiyun PIN(DAP2_SCLK_PA3, I2S1, HDA, GMI, RSVD4), 249*4882a593Smuzhiyun PIN(DVFS_PWM_PX0, SPI6, CLDVFS, GMI, RSVD4), 250*4882a593Smuzhiyun PIN(GPIO_X1_AUD_PX1, SPI6, RSVD2, GMI, RSVD4), 251*4882a593Smuzhiyun PIN(GPIO_X3_AUD_PX3, SPI6, SPI1, GMI, RSVD4), 252*4882a593Smuzhiyun PIN(DVFS_CLK_PX2, SPI6, CLDVFS, GMI, RSVD4), 253*4882a593Smuzhiyun PIN(GPIO_X4_AUD_PX4, GMI, SPI1, SPI2, DAP2), 254*4882a593Smuzhiyun PIN(GPIO_X5_AUD_PX5, GMI, SPI1, SPI2, RSVD4), 255*4882a593Smuzhiyun PIN(GPIO_X6_AUD_PX6, SPI6, SPI1, SPI2, GMI), 256*4882a593Smuzhiyun PIN(GPIO_X7_AUD_PX7, RSVD1, SPI1, SPI2, RSVD4), 257*4882a593Smuzhiyun PIN_RESERVED, 258*4882a593Smuzhiyun PIN_RESERVED, 259*4882a593Smuzhiyun /* Offset 0x3390 */ 260*4882a593Smuzhiyun PIN(SDMMC3_CLK_PA6, SDMMC3, RSVD2, RSVD3, SPI3), 261*4882a593Smuzhiyun PIN(SDMMC3_CMD_PA7, SDMMC3, PWM3, UARTA, SPI3), 262*4882a593Smuzhiyun PIN(SDMMC3_DAT0_PB7, SDMMC3, RSVD2, RSVD3, SPI3), 263*4882a593Smuzhiyun PIN(SDMMC3_DAT1_PB6, SDMMC3, PWM2, UARTA, SPI3), 264*4882a593Smuzhiyun PIN(SDMMC3_DAT2_PB5, SDMMC3, PWM1, DISPLAYA, SPI3), 265*4882a593Smuzhiyun PIN(SDMMC3_DAT3_PB4, SDMMC3, PWM0, DISPLAYB, SPI3), 266*4882a593Smuzhiyun PIN_RESERVED, 267*4882a593Smuzhiyun PIN_RESERVED, 268*4882a593Smuzhiyun PIN_RESERVED, 269*4882a593Smuzhiyun PIN_RESERVED, 270*4882a593Smuzhiyun PIN_RESERVED, 271*4882a593Smuzhiyun /* Offset 0x33bc */ 272*4882a593Smuzhiyun PIN(PEX_L0_RST_N_PDD1, PE0, RSVD2, RSVD3, RSVD4), 273*4882a593Smuzhiyun PIN(PEX_L0_CLKREQ_N_PDD2, PE0, RSVD2, RSVD3, RSVD4), 274*4882a593Smuzhiyun PIN(PEX_WAKE_N_PDD3, PE, RSVD2, RSVD3, RSVD4), 275*4882a593Smuzhiyun PIN_RESERVED, 276*4882a593Smuzhiyun /* Offset 0x33cc */ 277*4882a593Smuzhiyun PIN(PEX_L1_RST_N_PDD5, PE1, RSVD2, RSVD3, RSVD4), 278*4882a593Smuzhiyun PIN(PEX_L1_CLKREQ_N_PDD6, PE1, RSVD2, RSVD3, RSVD4), 279*4882a593Smuzhiyun PIN_RESERVED, 280*4882a593Smuzhiyun PIN_RESERVED, 281*4882a593Smuzhiyun PIN_RESERVED, 282*4882a593Smuzhiyun /* Offset 0x33e0 */ 283*4882a593Smuzhiyun PIN(HDMI_CEC_PEE3, CEC, RSVD2, RSVD3, RSVD4), 284*4882a593Smuzhiyun PIN(SDMMC1_WP_N_PV3, SDMMC1, CLK12, SPI4, UARTA), 285*4882a593Smuzhiyun PIN(SDMMC3_CD_N_PV2, SDMMC3, OWR, RSVD3, RSVD4), 286*4882a593Smuzhiyun PIN(GPIO_W2_AUD_PW2, SPI6, RSVD2, SPI2, I2C1), 287*4882a593Smuzhiyun PIN(GPIO_W3_AUD_PW3, SPI6, SPI1, SPI2, I2C1), 288*4882a593Smuzhiyun PIN(USB_VBUS_EN0_PN4, USB, RSVD2, RSVD3, RSVD4), 289*4882a593Smuzhiyun PIN(USB_VBUS_EN1_PN5, USB, RSVD2, RSVD3, RSVD4), 290*4882a593Smuzhiyun PIN(SDMMC3_CLK_LB_IN_PEE5, SDMMC3, RSVD2, RSVD3, RSVD4), 291*4882a593Smuzhiyun PIN(SDMMC3_CLK_LB_OUT_PEE4, SDMMC3, RSVD2, RSVD3, RSVD4), 292*4882a593Smuzhiyun PIN(GMI_CLK_LB, SDMMC2, RSVD2, GMI, RSVD4), 293*4882a593Smuzhiyun PIN(RESET_OUT_N, RSVD1, RSVD2, RSVD3, RESET_OUT_N), 294*4882a593Smuzhiyun PIN(KB_ROW16_PT0, KBC, RSVD2, RSVD3, UARTC), 295*4882a593Smuzhiyun PIN(KB_ROW17_PT1, KBC, RSVD2, RSVD3, UARTC), 296*4882a593Smuzhiyun PIN(USB_VBUS_EN2_PFF1, USB, RSVD2, RSVD3, RSVD4), 297*4882a593Smuzhiyun PIN(PFF2, SATA, RSVD2, RSVD3, RSVD4), 298*4882a593Smuzhiyun PIN_RESERVED, 299*4882a593Smuzhiyun PIN_RESERVED, 300*4882a593Smuzhiyun PIN_RESERVED, 301*4882a593Smuzhiyun PIN_RESERVED, 302*4882a593Smuzhiyun PIN_RESERVED, 303*4882a593Smuzhiyun /* Offset 0x3430 */ 304*4882a593Smuzhiyun PIN(DP_HPD_PFF0, DP, RSVD2, RSVD3, RSVD4), 305*4882a593Smuzhiyun }; 306*4882a593Smuzhiyun const struct pmux_pingrp_desc *tegra_soc_pingroups = tegra124_pingroups; 307*4882a593Smuzhiyun 308*4882a593Smuzhiyun #define MIPIPADCTRL_GRP(grp, f0, f1) \ 309*4882a593Smuzhiyun { \ 310*4882a593Smuzhiyun .funcs = { \ 311*4882a593Smuzhiyun PMUX_FUNC_##f0, \ 312*4882a593Smuzhiyun PMUX_FUNC_##f1, \ 313*4882a593Smuzhiyun }, \ 314*4882a593Smuzhiyun } 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun #define MIPIPADCTRL_RESERVED {} 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun static const struct pmux_mipipadctrlgrp_desc tegra124_mipipadctrl_groups[] = { 319*4882a593Smuzhiyun /* pin, f0, f1 */ 320*4882a593Smuzhiyun /* Offset 0x820 */ 321*4882a593Smuzhiyun MIPIPADCTRL_GRP(DSI_B, CSI, DSI_B), 322*4882a593Smuzhiyun }; 323*4882a593Smuzhiyun const struct pmux_mipipadctrlgrp_desc *tegra_soc_mipipadctrl_groups = tegra124_mipipadctrl_groups; 324