1*09f455dcSMasahiro Yamada /* 2*09f455dcSMasahiro Yamada * Copyright (c) 2011 The Chromium OS Authors. 3*09f455dcSMasahiro Yamada * 4*09f455dcSMasahiro Yamada * SPDX-License-Identifier: GPL-2.0+ 5*09f455dcSMasahiro Yamada */ 6*09f455dcSMasahiro Yamada 7*09f455dcSMasahiro Yamada /* Tegra20 pin multiplexing functions */ 8*09f455dcSMasahiro Yamada 9*09f455dcSMasahiro Yamada #include <common.h> 10*09f455dcSMasahiro Yamada #include <asm/io.h> 11*09f455dcSMasahiro Yamada #include <asm/arch/pinmux.h> 12*09f455dcSMasahiro Yamada 13*09f455dcSMasahiro Yamada /* 14*09f455dcSMasahiro Yamada * This defines the order of the pin mux control bits in the registers. For 15*09f455dcSMasahiro Yamada * some reason there is no correspendence between the tristate, pin mux and 16*09f455dcSMasahiro Yamada * pullup/pulldown registers. 17*09f455dcSMasahiro Yamada */ 18*09f455dcSMasahiro Yamada enum pmux_ctlid { 19*09f455dcSMasahiro Yamada /* 0: APB_MISC_PP_PIN_MUX_CTL_A_0 */ 20*09f455dcSMasahiro Yamada MUXCTL_UAA, 21*09f455dcSMasahiro Yamada MUXCTL_UAB, 22*09f455dcSMasahiro Yamada MUXCTL_UAC, 23*09f455dcSMasahiro Yamada MUXCTL_UAD, 24*09f455dcSMasahiro Yamada MUXCTL_UDA, 25*09f455dcSMasahiro Yamada MUXCTL_RESERVED5, 26*09f455dcSMasahiro Yamada MUXCTL_ATE, 27*09f455dcSMasahiro Yamada MUXCTL_RM, 28*09f455dcSMasahiro Yamada 29*09f455dcSMasahiro Yamada MUXCTL_ATB, 30*09f455dcSMasahiro Yamada MUXCTL_RESERVED9, 31*09f455dcSMasahiro Yamada MUXCTL_ATD, 32*09f455dcSMasahiro Yamada MUXCTL_ATC, 33*09f455dcSMasahiro Yamada MUXCTL_ATA, 34*09f455dcSMasahiro Yamada MUXCTL_KBCF, 35*09f455dcSMasahiro Yamada MUXCTL_KBCE, 36*09f455dcSMasahiro Yamada MUXCTL_SDMMC1, 37*09f455dcSMasahiro Yamada 38*09f455dcSMasahiro Yamada /* 16: APB_MISC_PP_PIN_MUX_CTL_B_0 */ 39*09f455dcSMasahiro Yamada MUXCTL_GMA, 40*09f455dcSMasahiro Yamada MUXCTL_GMC, 41*09f455dcSMasahiro Yamada MUXCTL_HDINT, 42*09f455dcSMasahiro Yamada MUXCTL_SLXA, 43*09f455dcSMasahiro Yamada MUXCTL_OWC, 44*09f455dcSMasahiro Yamada MUXCTL_SLXC, 45*09f455dcSMasahiro Yamada MUXCTL_SLXD, 46*09f455dcSMasahiro Yamada MUXCTL_SLXK, 47*09f455dcSMasahiro Yamada 48*09f455dcSMasahiro Yamada MUXCTL_UCA, 49*09f455dcSMasahiro Yamada MUXCTL_UCB, 50*09f455dcSMasahiro Yamada MUXCTL_DTA, 51*09f455dcSMasahiro Yamada MUXCTL_DTB, 52*09f455dcSMasahiro Yamada MUXCTL_RESERVED28, 53*09f455dcSMasahiro Yamada MUXCTL_DTC, 54*09f455dcSMasahiro Yamada MUXCTL_DTD, 55*09f455dcSMasahiro Yamada MUXCTL_DTE, 56*09f455dcSMasahiro Yamada 57*09f455dcSMasahiro Yamada /* 32: APB_MISC_PP_PIN_MUX_CTL_C_0 */ 58*09f455dcSMasahiro Yamada MUXCTL_DDC, 59*09f455dcSMasahiro Yamada MUXCTL_CDEV1, 60*09f455dcSMasahiro Yamada MUXCTL_CDEV2, 61*09f455dcSMasahiro Yamada MUXCTL_CSUS, 62*09f455dcSMasahiro Yamada MUXCTL_I2CP, 63*09f455dcSMasahiro Yamada MUXCTL_KBCA, 64*09f455dcSMasahiro Yamada MUXCTL_KBCB, 65*09f455dcSMasahiro Yamada MUXCTL_KBCC, 66*09f455dcSMasahiro Yamada 67*09f455dcSMasahiro Yamada MUXCTL_IRTX, 68*09f455dcSMasahiro Yamada MUXCTL_IRRX, 69*09f455dcSMasahiro Yamada MUXCTL_DAP1, 70*09f455dcSMasahiro Yamada MUXCTL_DAP2, 71*09f455dcSMasahiro Yamada MUXCTL_DAP3, 72*09f455dcSMasahiro Yamada MUXCTL_DAP4, 73*09f455dcSMasahiro Yamada MUXCTL_GMB, 74*09f455dcSMasahiro Yamada MUXCTL_GMD, 75*09f455dcSMasahiro Yamada 76*09f455dcSMasahiro Yamada /* 48: APB_MISC_PP_PIN_MUX_CTL_D_0 */ 77*09f455dcSMasahiro Yamada MUXCTL_GME, 78*09f455dcSMasahiro Yamada MUXCTL_GPV, 79*09f455dcSMasahiro Yamada MUXCTL_GPU, 80*09f455dcSMasahiro Yamada MUXCTL_SPDO, 81*09f455dcSMasahiro Yamada MUXCTL_SPDI, 82*09f455dcSMasahiro Yamada MUXCTL_SDB, 83*09f455dcSMasahiro Yamada MUXCTL_SDC, 84*09f455dcSMasahiro Yamada MUXCTL_SDD, 85*09f455dcSMasahiro Yamada 86*09f455dcSMasahiro Yamada MUXCTL_SPIH, 87*09f455dcSMasahiro Yamada MUXCTL_SPIG, 88*09f455dcSMasahiro Yamada MUXCTL_SPIF, 89*09f455dcSMasahiro Yamada MUXCTL_SPIE, 90*09f455dcSMasahiro Yamada MUXCTL_SPID, 91*09f455dcSMasahiro Yamada MUXCTL_SPIC, 92*09f455dcSMasahiro Yamada MUXCTL_SPIB, 93*09f455dcSMasahiro Yamada MUXCTL_SPIA, 94*09f455dcSMasahiro Yamada 95*09f455dcSMasahiro Yamada /* 64: APB_MISC_PP_PIN_MUX_CTL_E_0 */ 96*09f455dcSMasahiro Yamada MUXCTL_LPW0, 97*09f455dcSMasahiro Yamada MUXCTL_LPW1, 98*09f455dcSMasahiro Yamada MUXCTL_LPW2, 99*09f455dcSMasahiro Yamada MUXCTL_LSDI, 100*09f455dcSMasahiro Yamada MUXCTL_LSDA, 101*09f455dcSMasahiro Yamada MUXCTL_LSPI, 102*09f455dcSMasahiro Yamada MUXCTL_LCSN, 103*09f455dcSMasahiro Yamada MUXCTL_LDC, 104*09f455dcSMasahiro Yamada 105*09f455dcSMasahiro Yamada MUXCTL_LSCK, 106*09f455dcSMasahiro Yamada MUXCTL_LSC0, 107*09f455dcSMasahiro Yamada MUXCTL_LSC1, 108*09f455dcSMasahiro Yamada MUXCTL_LHS, 109*09f455dcSMasahiro Yamada MUXCTL_LVS, 110*09f455dcSMasahiro Yamada MUXCTL_LM0, 111*09f455dcSMasahiro Yamada MUXCTL_LM1, 112*09f455dcSMasahiro Yamada MUXCTL_LVP0, 113*09f455dcSMasahiro Yamada 114*09f455dcSMasahiro Yamada /* 80: APB_MISC_PP_PIN_MUX_CTL_F_0 */ 115*09f455dcSMasahiro Yamada MUXCTL_LD0, 116*09f455dcSMasahiro Yamada MUXCTL_LD1, 117*09f455dcSMasahiro Yamada MUXCTL_LD2, 118*09f455dcSMasahiro Yamada MUXCTL_LD3, 119*09f455dcSMasahiro Yamada MUXCTL_LD4, 120*09f455dcSMasahiro Yamada MUXCTL_LD5, 121*09f455dcSMasahiro Yamada MUXCTL_LD6, 122*09f455dcSMasahiro Yamada MUXCTL_LD7, 123*09f455dcSMasahiro Yamada 124*09f455dcSMasahiro Yamada MUXCTL_LD8, 125*09f455dcSMasahiro Yamada MUXCTL_LD9, 126*09f455dcSMasahiro Yamada MUXCTL_LD10, 127*09f455dcSMasahiro Yamada MUXCTL_LD11, 128*09f455dcSMasahiro Yamada MUXCTL_LD12, 129*09f455dcSMasahiro Yamada MUXCTL_LD13, 130*09f455dcSMasahiro Yamada MUXCTL_LD14, 131*09f455dcSMasahiro Yamada MUXCTL_LD15, 132*09f455dcSMasahiro Yamada 133*09f455dcSMasahiro Yamada /* 96: APB_MISC_PP_PIN_MUX_CTL_G_0 */ 134*09f455dcSMasahiro Yamada MUXCTL_LD16, 135*09f455dcSMasahiro Yamada MUXCTL_LD17, 136*09f455dcSMasahiro Yamada MUXCTL_LHP1, 137*09f455dcSMasahiro Yamada MUXCTL_LHP2, 138*09f455dcSMasahiro Yamada MUXCTL_LVP1, 139*09f455dcSMasahiro Yamada MUXCTL_LHP0, 140*09f455dcSMasahiro Yamada MUXCTL_RESERVED102, 141*09f455dcSMasahiro Yamada MUXCTL_LPP, 142*09f455dcSMasahiro Yamada 143*09f455dcSMasahiro Yamada MUXCTL_LDI, 144*09f455dcSMasahiro Yamada MUXCTL_PMC, 145*09f455dcSMasahiro Yamada MUXCTL_CRTP, 146*09f455dcSMasahiro Yamada MUXCTL_PTA, 147*09f455dcSMasahiro Yamada MUXCTL_RESERVED108, 148*09f455dcSMasahiro Yamada MUXCTL_KBCD, 149*09f455dcSMasahiro Yamada MUXCTL_GPU7, 150*09f455dcSMasahiro Yamada MUXCTL_DTF, 151*09f455dcSMasahiro Yamada 152*09f455dcSMasahiro Yamada MUXCTL_NONE = -1, 153*09f455dcSMasahiro Yamada }; 154*09f455dcSMasahiro Yamada 155*09f455dcSMasahiro Yamada /* 156*09f455dcSMasahiro Yamada * And this defines the order of the pullup/pulldown controls which are again 157*09f455dcSMasahiro Yamada * in a different order 158*09f455dcSMasahiro Yamada */ 159*09f455dcSMasahiro Yamada enum pmux_pullid { 160*09f455dcSMasahiro Yamada /* 0: APB_MISC_PP_PULLUPDOWN_REG_A_0 */ 161*09f455dcSMasahiro Yamada PUCTL_ATA, 162*09f455dcSMasahiro Yamada PUCTL_ATB, 163*09f455dcSMasahiro Yamada PUCTL_ATC, 164*09f455dcSMasahiro Yamada PUCTL_ATD, 165*09f455dcSMasahiro Yamada PUCTL_ATE, 166*09f455dcSMasahiro Yamada PUCTL_DAP1, 167*09f455dcSMasahiro Yamada PUCTL_DAP2, 168*09f455dcSMasahiro Yamada PUCTL_DAP3, 169*09f455dcSMasahiro Yamada 170*09f455dcSMasahiro Yamada PUCTL_DAP4, 171*09f455dcSMasahiro Yamada PUCTL_DTA, 172*09f455dcSMasahiro Yamada PUCTL_DTB, 173*09f455dcSMasahiro Yamada PUCTL_DTC, 174*09f455dcSMasahiro Yamada PUCTL_DTD, 175*09f455dcSMasahiro Yamada PUCTL_DTE, 176*09f455dcSMasahiro Yamada PUCTL_DTF, 177*09f455dcSMasahiro Yamada PUCTL_GPV, 178*09f455dcSMasahiro Yamada 179*09f455dcSMasahiro Yamada /* 16: APB_MISC_PP_PULLUPDOWN_REG_B_0 */ 180*09f455dcSMasahiro Yamada PUCTL_RM, 181*09f455dcSMasahiro Yamada PUCTL_I2CP, 182*09f455dcSMasahiro Yamada PUCTL_PTA, 183*09f455dcSMasahiro Yamada PUCTL_GPU7, 184*09f455dcSMasahiro Yamada PUCTL_KBCA, 185*09f455dcSMasahiro Yamada PUCTL_KBCB, 186*09f455dcSMasahiro Yamada PUCTL_KBCC, 187*09f455dcSMasahiro Yamada PUCTL_KBCD, 188*09f455dcSMasahiro Yamada 189*09f455dcSMasahiro Yamada PUCTL_SPDI, 190*09f455dcSMasahiro Yamada PUCTL_SPDO, 191*09f455dcSMasahiro Yamada PUCTL_GPSLXAU, 192*09f455dcSMasahiro Yamada PUCTL_CRTP, 193*09f455dcSMasahiro Yamada PUCTL_SLXC, 194*09f455dcSMasahiro Yamada PUCTL_SLXD, 195*09f455dcSMasahiro Yamada PUCTL_SLXK, 196*09f455dcSMasahiro Yamada 197*09f455dcSMasahiro Yamada /* 32: APB_MISC_PP_PULLUPDOWN_REG_C_0 */ 198*09f455dcSMasahiro Yamada PUCTL_CDEV1, 199*09f455dcSMasahiro Yamada PUCTL_CDEV2, 200*09f455dcSMasahiro Yamada PUCTL_SPIA, 201*09f455dcSMasahiro Yamada PUCTL_SPIB, 202*09f455dcSMasahiro Yamada PUCTL_SPIC, 203*09f455dcSMasahiro Yamada PUCTL_SPID, 204*09f455dcSMasahiro Yamada PUCTL_SPIE, 205*09f455dcSMasahiro Yamada PUCTL_SPIF, 206*09f455dcSMasahiro Yamada 207*09f455dcSMasahiro Yamada PUCTL_SPIG, 208*09f455dcSMasahiro Yamada PUCTL_SPIH, 209*09f455dcSMasahiro Yamada PUCTL_IRTX, 210*09f455dcSMasahiro Yamada PUCTL_IRRX, 211*09f455dcSMasahiro Yamada PUCTL_GME, 212*09f455dcSMasahiro Yamada PUCTL_RESERVED45, 213*09f455dcSMasahiro Yamada PUCTL_XM2D, 214*09f455dcSMasahiro Yamada PUCTL_XM2C, 215*09f455dcSMasahiro Yamada 216*09f455dcSMasahiro Yamada /* 48: APB_MISC_PP_PULLUPDOWN_REG_D_0 */ 217*09f455dcSMasahiro Yamada PUCTL_UAA, 218*09f455dcSMasahiro Yamada PUCTL_UAB, 219*09f455dcSMasahiro Yamada PUCTL_UAC, 220*09f455dcSMasahiro Yamada PUCTL_UAD, 221*09f455dcSMasahiro Yamada PUCTL_UCA, 222*09f455dcSMasahiro Yamada PUCTL_UCB, 223*09f455dcSMasahiro Yamada PUCTL_LD17, 224*09f455dcSMasahiro Yamada PUCTL_LD19_18, 225*09f455dcSMasahiro Yamada 226*09f455dcSMasahiro Yamada PUCTL_LD21_20, 227*09f455dcSMasahiro Yamada PUCTL_LD23_22, 228*09f455dcSMasahiro Yamada PUCTL_LS, 229*09f455dcSMasahiro Yamada PUCTL_LC, 230*09f455dcSMasahiro Yamada PUCTL_CSUS, 231*09f455dcSMasahiro Yamada PUCTL_DDRC, 232*09f455dcSMasahiro Yamada PUCTL_SDC, 233*09f455dcSMasahiro Yamada PUCTL_SDD, 234*09f455dcSMasahiro Yamada 235*09f455dcSMasahiro Yamada /* 64: APB_MISC_PP_PULLUPDOWN_REG_E_0 */ 236*09f455dcSMasahiro Yamada PUCTL_KBCF, 237*09f455dcSMasahiro Yamada PUCTL_KBCE, 238*09f455dcSMasahiro Yamada PUCTL_PMCA, 239*09f455dcSMasahiro Yamada PUCTL_PMCB, 240*09f455dcSMasahiro Yamada PUCTL_PMCC, 241*09f455dcSMasahiro Yamada PUCTL_PMCD, 242*09f455dcSMasahiro Yamada PUCTL_PMCE, 243*09f455dcSMasahiro Yamada PUCTL_CK32, 244*09f455dcSMasahiro Yamada 245*09f455dcSMasahiro Yamada PUCTL_UDA, 246*09f455dcSMasahiro Yamada PUCTL_SDMMC1, 247*09f455dcSMasahiro Yamada PUCTL_GMA, 248*09f455dcSMasahiro Yamada PUCTL_GMB, 249*09f455dcSMasahiro Yamada PUCTL_GMC, 250*09f455dcSMasahiro Yamada PUCTL_GMD, 251*09f455dcSMasahiro Yamada PUCTL_DDC, 252*09f455dcSMasahiro Yamada PUCTL_OWC, 253*09f455dcSMasahiro Yamada 254*09f455dcSMasahiro Yamada PUCTL_NONE = -1 255*09f455dcSMasahiro Yamada }; 256*09f455dcSMasahiro Yamada 257*09f455dcSMasahiro Yamada /* Convenient macro for defining pin group properties */ 258*09f455dcSMasahiro Yamada #define PINALL(pingrp, f0, f1, f2, f3, mux, pupd) \ 259*09f455dcSMasahiro Yamada { \ 260*09f455dcSMasahiro Yamada .funcs = { \ 261*09f455dcSMasahiro Yamada PMUX_FUNC_ ## f0, \ 262*09f455dcSMasahiro Yamada PMUX_FUNC_ ## f1, \ 263*09f455dcSMasahiro Yamada PMUX_FUNC_ ## f2, \ 264*09f455dcSMasahiro Yamada PMUX_FUNC_ ## f3, \ 265*09f455dcSMasahiro Yamada }, \ 266*09f455dcSMasahiro Yamada .ctl_id = mux, \ 267*09f455dcSMasahiro Yamada .pull_id = pupd \ 268*09f455dcSMasahiro Yamada } 269*09f455dcSMasahiro Yamada 270*09f455dcSMasahiro Yamada /* A normal pin group where the mux name and pull-up name match */ 271*09f455dcSMasahiro Yamada #define PIN(pingrp, f0, f1, f2, f3) \ 272*09f455dcSMasahiro Yamada PINALL(pingrp, f0, f1, f2, f3, MUXCTL_##pingrp, PUCTL_##pingrp) 273*09f455dcSMasahiro Yamada 274*09f455dcSMasahiro Yamada /* A pin group where the pull-up name doesn't have a 1-1 mapping */ 275*09f455dcSMasahiro Yamada #define PINP(pingrp, f0, f1, f2, f3, pupd) \ 276*09f455dcSMasahiro Yamada PINALL(pingrp, f0, f1, f2, f3, MUXCTL_##pingrp, PUCTL_##pupd) 277*09f455dcSMasahiro Yamada 278*09f455dcSMasahiro Yamada /* A pin group number which is not used */ 279*09f455dcSMasahiro Yamada #define PIN_RESERVED \ 280*09f455dcSMasahiro Yamada PIN(NONE, RSVD1, RSVD2, RSVD3, RSVD4) 281*09f455dcSMasahiro Yamada 282*09f455dcSMasahiro Yamada #define DRVGRP(drvgrp) \ 283*09f455dcSMasahiro Yamada PINALL(drvgrp, RSVD1, RSVD2, RSVD3, RSVD4, MUXCTL_NONE, PUCTL_NONE) 284*09f455dcSMasahiro Yamada 285*09f455dcSMasahiro Yamada static const struct pmux_pingrp_desc tegra20_pingroups[] = { 286*09f455dcSMasahiro Yamada PIN(ATA, IDE, NAND, GMI, RSVD4), 287*09f455dcSMasahiro Yamada PIN(ATB, IDE, NAND, GMI, SDIO4), 288*09f455dcSMasahiro Yamada PIN(ATC, IDE, NAND, GMI, SDIO4), 289*09f455dcSMasahiro Yamada PIN(ATD, IDE, NAND, GMI, SDIO4), 290*09f455dcSMasahiro Yamada PIN(CDEV1, OSC, PLLA_OUT, PLLM_OUT1, AUDIO_SYNC), 291*09f455dcSMasahiro Yamada PIN(CDEV2, OSC, AHB_CLK, APB_CLK, PLLP_OUT4), 292*09f455dcSMasahiro Yamada PIN(CSUS, PLLC_OUT1, PLLP_OUT2, PLLP_OUT3, VI_SENSOR_CLK), 293*09f455dcSMasahiro Yamada PIN(DAP1, DAP1, RSVD2, GMI, SDIO2), 294*09f455dcSMasahiro Yamada 295*09f455dcSMasahiro Yamada PIN(DAP2, DAP2, TWC, RSVD3, GMI), 296*09f455dcSMasahiro Yamada PIN(DAP3, DAP3, RSVD2, RSVD3, RSVD4), 297*09f455dcSMasahiro Yamada PIN(DAP4, DAP4, RSVD2, GMI, RSVD4), 298*09f455dcSMasahiro Yamada PIN(DTA, RSVD1, SDIO2, VI, RSVD4), 299*09f455dcSMasahiro Yamada PIN(DTB, RSVD1, RSVD2, VI, SPI1), 300*09f455dcSMasahiro Yamada PIN(DTC, RSVD1, RSVD2, VI, RSVD4), 301*09f455dcSMasahiro Yamada PIN(DTD, RSVD1, SDIO2, VI, RSVD4), 302*09f455dcSMasahiro Yamada PIN(DTE, RSVD1, RSVD2, VI, SPI1), 303*09f455dcSMasahiro Yamada 304*09f455dcSMasahiro Yamada PINP(GPU, PWM, UARTA, GMI, RSVD4, GPSLXAU), 305*09f455dcSMasahiro Yamada PIN(GPV, PCIE, RSVD2, RSVD3, RSVD4), 306*09f455dcSMasahiro Yamada PIN(I2CP, I2C, RSVD2, RSVD3, RSVD4), 307*09f455dcSMasahiro Yamada PIN(IRTX, UARTA, UARTB, GMI, SPI4), 308*09f455dcSMasahiro Yamada PIN(IRRX, UARTA, UARTB, GMI, SPI4), 309*09f455dcSMasahiro Yamada PIN(KBCB, KBC, NAND, SDIO2, MIO), 310*09f455dcSMasahiro Yamada PIN(KBCA, KBC, NAND, SDIO2, EMC_TEST0_DLL), 311*09f455dcSMasahiro Yamada PINP(PMC, PWR_ON, PWR_INTR, RSVD3, RSVD4, NONE), 312*09f455dcSMasahiro Yamada 313*09f455dcSMasahiro Yamada PIN(PTA, I2C2, HDMI, GMI, RSVD4), 314*09f455dcSMasahiro Yamada PIN(RM, I2C, RSVD2, RSVD3, RSVD4), 315*09f455dcSMasahiro Yamada PIN(KBCE, KBC, NAND, OWR, RSVD4), 316*09f455dcSMasahiro Yamada PIN(KBCF, KBC, NAND, TRACE, MIO), 317*09f455dcSMasahiro Yamada PIN(GMA, UARTE, SPI3, GMI, SDIO4), 318*09f455dcSMasahiro Yamada PIN(GMC, UARTD, SPI4, GMI, SFLASH), 319*09f455dcSMasahiro Yamada PIN(SDMMC1, SDIO1, RSVD2, UARTE, UARTA), 320*09f455dcSMasahiro Yamada PIN(OWC, OWR, RSVD2, RSVD3, RSVD4), 321*09f455dcSMasahiro Yamada 322*09f455dcSMasahiro Yamada PIN(GME, RSVD1, DAP5, GMI, SDIO4), 323*09f455dcSMasahiro Yamada PIN(SDC, PWM, TWC, SDIO3, SPI3), 324*09f455dcSMasahiro Yamada PIN(SDD, UARTA, PWM, SDIO3, SPI3), 325*09f455dcSMasahiro Yamada PIN_RESERVED, 326*09f455dcSMasahiro Yamada PINP(SLXA, PCIE, SPI4, SDIO3, SPI2, CRTP), 327*09f455dcSMasahiro Yamada PIN(SLXC, SPDIF, SPI4, SDIO3, SPI2), 328*09f455dcSMasahiro Yamada PIN(SLXD, SPDIF, SPI4, SDIO3, SPI2), 329*09f455dcSMasahiro Yamada PIN(SLXK, PCIE, SPI4, SDIO3, SPI2), 330*09f455dcSMasahiro Yamada 331*09f455dcSMasahiro Yamada PIN(SPDI, SPDIF, RSVD2, I2C, SDIO2), 332*09f455dcSMasahiro Yamada PIN(SPDO, SPDIF, RSVD2, I2C, SDIO2), 333*09f455dcSMasahiro Yamada PIN(SPIA, SPI1, SPI2, SPI3, GMI), 334*09f455dcSMasahiro Yamada PIN(SPIB, SPI1, SPI2, SPI3, GMI), 335*09f455dcSMasahiro Yamada PIN(SPIC, SPI1, SPI2, SPI3, GMI), 336*09f455dcSMasahiro Yamada PIN(SPID, SPI2, SPI1, SPI2_ALT, GMI), 337*09f455dcSMasahiro Yamada PIN(SPIE, SPI2, SPI1, SPI2_ALT, GMI), 338*09f455dcSMasahiro Yamada PIN(SPIF, SPI3, SPI1, SPI2, RSVD4), 339*09f455dcSMasahiro Yamada 340*09f455dcSMasahiro Yamada PIN(SPIG, SPI3, SPI2, SPI2_ALT, I2C), 341*09f455dcSMasahiro Yamada PIN(SPIH, SPI3, SPI2, SPI2_ALT, I2C), 342*09f455dcSMasahiro Yamada PIN(UAA, SPI3, MIPI_HS, UARTA, ULPI), 343*09f455dcSMasahiro Yamada PIN(UAB, SPI2, MIPI_HS, UARTA, ULPI), 344*09f455dcSMasahiro Yamada PIN(UAC, OWR, RSVD2, RSVD3, RSVD4), 345*09f455dcSMasahiro Yamada PIN(UAD, UARTB, SPDIF, UARTA, SPI4), 346*09f455dcSMasahiro Yamada PIN(UCA, UARTC, RSVD2, GMI, RSVD4), 347*09f455dcSMasahiro Yamada PIN(UCB, UARTC, PWM, GMI, RSVD4), 348*09f455dcSMasahiro Yamada 349*09f455dcSMasahiro Yamada PIN_RESERVED, 350*09f455dcSMasahiro Yamada PIN(ATE, IDE, NAND, GMI, RSVD4), 351*09f455dcSMasahiro Yamada PIN(KBCC, KBC, NAND, TRACE, EMC_TEST1_DLL), 352*09f455dcSMasahiro Yamada PIN_RESERVED, 353*09f455dcSMasahiro Yamada PIN_RESERVED, 354*09f455dcSMasahiro Yamada PIN(GMB, IDE, NAND, GMI, GMI_INT), 355*09f455dcSMasahiro Yamada PIN(GMD, RSVD1, NAND, GMI, SFLASH), 356*09f455dcSMasahiro Yamada PIN(DDC, I2C2, RSVD2, RSVD3, RSVD4), 357*09f455dcSMasahiro Yamada 358*09f455dcSMasahiro Yamada /* 64 */ 359*09f455dcSMasahiro Yamada PINP(LD0, DISPA, DISPB, XIO, RSVD4, LD17), 360*09f455dcSMasahiro Yamada PINP(LD1, DISPA, DISPB, XIO, RSVD4, LD17), 361*09f455dcSMasahiro Yamada PINP(LD2, DISPA, DISPB, XIO, RSVD4, LD17), 362*09f455dcSMasahiro Yamada PINP(LD3, DISPA, DISPB, XIO, RSVD4, LD17), 363*09f455dcSMasahiro Yamada PINP(LD4, DISPA, DISPB, XIO, RSVD4, LD17), 364*09f455dcSMasahiro Yamada PINP(LD5, DISPA, DISPB, XIO, RSVD4, LD17), 365*09f455dcSMasahiro Yamada PINP(LD6, DISPA, DISPB, XIO, RSVD4, LD17), 366*09f455dcSMasahiro Yamada PINP(LD7, DISPA, DISPB, XIO, RSVD4, LD17), 367*09f455dcSMasahiro Yamada 368*09f455dcSMasahiro Yamada PINP(LD8, DISPA, DISPB, XIO, RSVD4, LD17), 369*09f455dcSMasahiro Yamada PINP(LD9, DISPA, DISPB, XIO, RSVD4, LD17), 370*09f455dcSMasahiro Yamada PINP(LD10, DISPA, DISPB, XIO, RSVD4, LD17), 371*09f455dcSMasahiro Yamada PINP(LD11, DISPA, DISPB, XIO, RSVD4, LD17), 372*09f455dcSMasahiro Yamada PINP(LD12, DISPA, DISPB, XIO, RSVD4, LD17), 373*09f455dcSMasahiro Yamada PINP(LD13, DISPA, DISPB, XIO, RSVD4, LD17), 374*09f455dcSMasahiro Yamada PINP(LD14, DISPA, DISPB, XIO, RSVD4, LD17), 375*09f455dcSMasahiro Yamada PINP(LD15, DISPA, DISPB, XIO, RSVD4, LD17), 376*09f455dcSMasahiro Yamada 377*09f455dcSMasahiro Yamada PINP(LD16, DISPA, DISPB, XIO, RSVD4, LD17), 378*09f455dcSMasahiro Yamada PINP(LD17, DISPA, DISPB, RSVD3, RSVD4, LD17), 379*09f455dcSMasahiro Yamada PINP(LHP0, DISPA, DISPB, RSVD3, RSVD4, LD21_20), 380*09f455dcSMasahiro Yamada PINP(LHP1, DISPA, DISPB, RSVD3, RSVD4, LD19_18), 381*09f455dcSMasahiro Yamada PINP(LHP2, DISPA, DISPB, RSVD3, RSVD4, LD19_18), 382*09f455dcSMasahiro Yamada PINP(LVP0, DISPA, DISPB, RSVD3, RSVD4, LC), 383*09f455dcSMasahiro Yamada PINP(LVP1, DISPA, DISPB, RSVD3, RSVD4, LD21_20), 384*09f455dcSMasahiro Yamada PINP(HDINT, HDMI, RSVD2, RSVD3, RSVD4, LC), 385*09f455dcSMasahiro Yamada 386*09f455dcSMasahiro Yamada PINP(LM0, DISPA, DISPB, SPI3, RSVD4, LC), 387*09f455dcSMasahiro Yamada PINP(LM1, DISPA, DISPB, RSVD3, CRT, LC), 388*09f455dcSMasahiro Yamada PINP(LVS, DISPA, DISPB, XIO, RSVD4, LC), 389*09f455dcSMasahiro Yamada PINP(LSC0, DISPA, DISPB, XIO, RSVD4, LC), 390*09f455dcSMasahiro Yamada PINP(LSC1, DISPA, DISPB, SPI3, HDMI, LS), 391*09f455dcSMasahiro Yamada PINP(LSCK, DISPA, DISPB, SPI3, HDMI, LS), 392*09f455dcSMasahiro Yamada PINP(LDC, DISPA, DISPB, RSVD3, RSVD4, LS), 393*09f455dcSMasahiro Yamada PINP(LCSN, DISPA, DISPB, SPI3, RSVD4, LS), 394*09f455dcSMasahiro Yamada 395*09f455dcSMasahiro Yamada /* 96 */ 396*09f455dcSMasahiro Yamada PINP(LSPI, DISPA, DISPB, XIO, HDMI, LC), 397*09f455dcSMasahiro Yamada PINP(LSDA, DISPA, DISPB, SPI3, HDMI, LS), 398*09f455dcSMasahiro Yamada PINP(LSDI, DISPA, DISPB, SPI3, RSVD4, LS), 399*09f455dcSMasahiro Yamada PINP(LPW0, DISPA, DISPB, SPI3, HDMI, LS), 400*09f455dcSMasahiro Yamada PINP(LPW1, DISPA, DISPB, RSVD3, RSVD4, LS), 401*09f455dcSMasahiro Yamada PINP(LPW2, DISPA, DISPB, SPI3, HDMI, LS), 402*09f455dcSMasahiro Yamada PINP(LDI, DISPA, DISPB, RSVD3, RSVD4, LD23_22), 403*09f455dcSMasahiro Yamada PINP(LHS, DISPA, DISPB, XIO, RSVD4, LC), 404*09f455dcSMasahiro Yamada 405*09f455dcSMasahiro Yamada PINP(LPP, DISPA, DISPB, RSVD3, RSVD4, LD23_22), 406*09f455dcSMasahiro Yamada PIN_RESERVED, 407*09f455dcSMasahiro Yamada PIN(KBCD, KBC, NAND, SDIO2, MIO), 408*09f455dcSMasahiro Yamada PIN(GPU7, RTCK, RSVD2, RSVD3, RSVD4), 409*09f455dcSMasahiro Yamada PIN(DTF, I2C3, RSVD2, VI, RSVD4), 410*09f455dcSMasahiro Yamada PIN(UDA, SPI1, RSVD2, UARTD, ULPI), 411*09f455dcSMasahiro Yamada PIN(CRTP, CRT, RSVD2, RSVD3, RSVD4), 412*09f455dcSMasahiro Yamada PINP(SDB, UARTA, PWM, SDIO3, SPI2, NONE), 413*09f455dcSMasahiro Yamada 414*09f455dcSMasahiro Yamada /* these pin groups only have pullup and pull down control */ 415*09f455dcSMasahiro Yamada DRVGRP(CK32), 416*09f455dcSMasahiro Yamada DRVGRP(DDRC), 417*09f455dcSMasahiro Yamada DRVGRP(PMCA), 418*09f455dcSMasahiro Yamada DRVGRP(PMCB), 419*09f455dcSMasahiro Yamada DRVGRP(PMCC), 420*09f455dcSMasahiro Yamada DRVGRP(PMCD), 421*09f455dcSMasahiro Yamada DRVGRP(PMCE), 422*09f455dcSMasahiro Yamada DRVGRP(XM2C), 423*09f455dcSMasahiro Yamada DRVGRP(XM2D), 424*09f455dcSMasahiro Yamada }; 425*09f455dcSMasahiro Yamada const struct pmux_pingrp_desc *tegra_soc_pingroups = tegra20_pingroups; 426