1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * R8A77470 processor support - PFC hardware block. 4 * 5 * Copyright (C) 2018 Renesas Electronics Corp. 6 */ 7 8 #include <linux/errno.h> 9 #include <linux/kernel.h> 10 11 #include "sh_pfc.h" 12 13 #define CPU_ALL_GP(fn, sfx) \ 14 PORT_GP_CFG_4(0, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 15 PORT_GP_CFG_1(0, 4, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 16 PORT_GP_CFG_1(0, 5, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 17 PORT_GP_CFG_1(0, 6, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 18 PORT_GP_CFG_1(0, 7, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 19 PORT_GP_CFG_1(0, 8, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 20 PORT_GP_CFG_1(0, 9, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 21 PORT_GP_CFG_1(0, 10, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 22 PORT_GP_CFG_1(0, 11, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 23 PORT_GP_CFG_1(0, 12, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 24 PORT_GP_CFG_1(0, 13, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 25 PORT_GP_CFG_1(0, 14, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 26 PORT_GP_CFG_1(0, 15, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 27 PORT_GP_CFG_1(0, 16, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 28 PORT_GP_CFG_1(0, 17, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 29 PORT_GP_CFG_1(0, 18, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 30 PORT_GP_CFG_1(0, 19, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 31 PORT_GP_CFG_1(0, 20, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 32 PORT_GP_CFG_1(0, 21, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 33 PORT_GP_CFG_1(0, 22, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 34 PORT_GP_CFG_23(1, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 35 PORT_GP_CFG_32(2, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 36 PORT_GP_CFG_17(3, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 37 PORT_GP_CFG_1(3, 27, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 38 PORT_GP_CFG_1(3, 28, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 39 PORT_GP_CFG_1(3, 29, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 40 PORT_GP_CFG_14(4, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 41 PORT_GP_CFG_1(4, 14, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 42 PORT_GP_CFG_1(4, 15, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 43 PORT_GP_CFG_1(4, 16, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 44 PORT_GP_CFG_1(4, 17, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 45 PORT_GP_CFG_1(4, 18, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 46 PORT_GP_CFG_1(4, 19, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE | SH_PFC_PIN_CFG_PULL_UP), \ 47 PORT_GP_CFG_1(4, 20, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 48 PORT_GP_CFG_1(4, 21, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 49 PORT_GP_CFG_1(4, 22, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 50 PORT_GP_CFG_1(4, 23, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 51 PORT_GP_CFG_1(4, 24, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 52 PORT_GP_CFG_1(4, 25, fn, sfx, SH_PFC_PIN_CFG_PULL_UP), \ 53 PORT_GP_CFG_32(5, fn, sfx, SH_PFC_PIN_CFG_PULL_UP) 54 55 #define CPU_ALL_NOGP(fn) \ 56 PIN_NOGP_CFG(ASEBRK_N_ACK, "ASEBRK#/ACK", fn, SH_PFC_PIN_CFG_PULL_DOWN), \ 57 PIN_NOGP_CFG(NMI, "NMI", fn, SH_PFC_PIN_CFG_PULL_UP), \ 58 PIN_NOGP_CFG(PRESETOUT_N, "PRESETOUT#", fn, SH_PFC_PIN_CFG_PULL_UP), \ 59 PIN_NOGP_CFG(TCK, "TCK", fn, SH_PFC_PIN_CFG_PULL_UP), \ 60 PIN_NOGP_CFG(TDI, "TDI", fn, SH_PFC_PIN_CFG_PULL_UP), \ 61 PIN_NOGP_CFG(TDO, "TDO", fn, SH_PFC_PIN_CFG_PULL_UP), \ 62 PIN_NOGP_CFG(TMS, "TMS", fn, SH_PFC_PIN_CFG_PULL_UP), \ 63 PIN_NOGP_CFG(TRST_N, "TRST#", fn, SH_PFC_PIN_CFG_PULL_UP) 64 65 enum { 66 PINMUX_RESERVED = 0, 67 68 PINMUX_DATA_BEGIN, 69 GP_ALL(DATA), 70 PINMUX_DATA_END, 71 72 PINMUX_FUNCTION_BEGIN, 73 GP_ALL(FN), 74 75 /* GPSR0 */ 76 FN_USB0_PWEN, FN_USB0_OVC, FN_USB1_PWEN, FN_USB1_OVC, FN_CLKOUT, 77 FN_IP0_3_0, FN_IP0_7_4, FN_IP0_11_8, FN_IP0_15_12, FN_IP0_19_16, 78 FN_IP0_23_20, FN_IP0_27_24, FN_IP0_31_28, FN_MMC0_CLK_SDHI1_CLK, 79 FN_MMC0_CMD_SDHI1_CMD, FN_MMC0_D0_SDHI1_D0, FN_MMC0_D1_SDHI1_D1, 80 FN_MMC0_D2_SDHI1_D2, FN_MMC0_D3_SDHI1_D3, FN_IP1_3_0, 81 FN_IP1_7_4, FN_MMC0_D6, FN_MMC0_D7, 82 83 /* GPSR1 */ 84 FN_IP1_11_8, FN_IP1_15_12, FN_IP1_19_16, FN_IP1_23_20, FN_IP1_27_24, 85 FN_IP1_31_28, FN_IP2_3_0, FN_IP2_7_4, FN_IP2_11_8, FN_IP2_15_12, 86 FN_IP2_19_16, FN_IP2_23_20, FN_IP2_27_24, FN_IP2_31_28, FN_IP3_3_0, 87 FN_IP3_7_4, FN_IP3_11_8, FN_IP3_15_12, FN_IP3_19_16, FN_IP3_23_20, 88 FN_IP3_27_24, FN_IP3_31_28, FN_IP4_3_0, 89 90 /* GPSR2 */ 91 FN_IP4_7_4, FN_IP4_11_8, FN_IP4_15_12, FN_IP4_19_16, FN_IP4_23_20, 92 FN_IP4_27_24, FN_IP4_31_28, FN_IP5_3_0, FN_IP5_7_4, FN_IP5_11_8, 93 FN_IP5_15_12, FN_IP5_19_16, FN_IP5_23_20, FN_IP5_27_24, FN_IP5_31_28, 94 FN_IP6_3_0, FN_IP6_7_4, FN_IP6_11_8, FN_IP6_15_12, FN_IP6_19_16, 95 FN_IP6_23_20, FN_IP6_27_24, FN_IP6_31_28, FN_IP7_3_0, FN_IP7_7_4, 96 FN_IP7_11_8, FN_IP7_15_12, FN_IP7_19_16, FN_IP7_23_20, FN_IP7_27_24, 97 FN_IP7_31_28, FN_IP8_3_0, 98 99 /* GPSR3 */ 100 FN_IP8_7_4, FN_IP8_11_8, FN_IP8_15_12, FN_IP8_19_16, FN_IP8_23_20, 101 FN_IP8_27_24, FN_IP8_31_28, FN_IP9_3_0, FN_IP9_7_4, FN_IP9_11_8, 102 FN_IP9_15_12, FN_IP9_19_16, FN_IP9_23_20, FN_IP9_27_24, FN_IP9_31_28, 103 FN_IP10_3_0, FN_IP10_7_4, FN_IP10_11_8, FN_IP10_15_12, FN_IP10_19_16, 104 105 /* GPSR4 */ 106 FN_IP10_23_20, FN_IP10_27_24, FN_IP10_31_28, FN_IP11_3_0, FN_IP11_7_4, 107 FN_IP11_11_8, FN_IP11_15_12, FN_IP11_19_16, FN_IP11_23_20, 108 FN_IP11_27_24, FN_IP11_31_28, FN_IP12_3_0, FN_IP12_7_4, FN_IP12_11_8, 109 FN_IP12_15_12, FN_IP12_19_16, FN_IP12_23_20, FN_IP12_27_24, 110 FN_IP12_31_28, FN_IP13_3_0, FN_IP13_7_4, FN_IP13_11_8, FN_IP13_15_12, 111 FN_IP13_19_16, FN_IP13_23_20, FN_IP13_27_24, 112 113 /* GPSR5 */ 114 FN_IP13_31_28, FN_IP14_3_0, FN_IP14_7_4, FN_IP14_11_8, FN_IP14_15_12, 115 FN_IP14_19_16, FN_IP14_23_20, FN_IP14_27_24, FN_IP14_31_28, 116 FN_IP15_3_0, FN_IP15_7_4, FN_IP15_11_8, FN_IP15_15_12, FN_IP15_19_16, 117 FN_IP15_23_20, FN_IP15_27_24, FN_IP15_31_28, FN_IP16_3_0, FN_IP16_7_4, 118 FN_IP16_11_8, FN_IP16_15_12, FN_IP16_19_16, FN_IP16_23_20, 119 FN_IP16_27_24, FN_IP16_31_28, FN_IP17_3_0, FN_IP17_7_4, FN_IP17_11_8, 120 FN_IP17_15_12, FN_IP17_19_16, FN_IP17_23_20, FN_IP17_27_24, 121 122 /* IPSR0 */ 123 FN_SD0_CLK, FN_SSI_SCK1_C, FN_RX3_C, 124 FN_SD0_CMD, FN_SSI_WS1_C, FN_TX3_C, 125 FN_SD0_DAT0, FN_SSI_SDATA1_C, FN_RX4_E, 126 FN_SD0_DAT1, FN_SSI_SCK0129_B, FN_TX4_E, 127 FN_SD0_DAT2, FN_SSI_WS0129_B, FN_RX5_E, 128 FN_SD0_DAT3, FN_SSI_SDATA0_B, FN_TX5_E, 129 FN_SD0_CD, FN_CAN0_RX_A, 130 FN_SD0_WP, FN_IRQ7, FN_CAN0_TX_A, 131 132 /* IPSR1 */ 133 FN_MMC0_D4, FN_SD1_CD, 134 FN_MMC0_D5, FN_SD1_WP, 135 FN_D0, FN_SCL3_B, FN_RX5_B, FN_IRQ4, FN_MSIOF2_RXD_C, FN_SSI_SDATA5_B, 136 FN_D1, FN_SDA3_B, FN_TX5_B, FN_MSIOF2_TXD_C, FN_SSI_WS5_B, 137 FN_D2, FN_RX4_B, FN_SCL0_D, FN_PWM1_C, FN_MSIOF2_SCK_C, FN_SSI_SCK5_B, 138 FN_D3, FN_TX4_B, FN_SDA0_D, FN_PWM0_A, FN_MSIOF2_SYNC_C, 139 FN_D4, FN_IRQ3, FN_TCLK1_A, FN_PWM6_C, 140 FN_D5, FN_HRX2, FN_SCL1_B, FN_PWM2_C, FN_TCLK2_B, 141 142 /* IPSR2 */ 143 FN_D6, FN_HTX2, FN_SDA1_B, FN_PWM4_C, 144 FN_D7, FN_HSCK2, FN_SCIF1_SCK_C, FN_IRQ6, FN_PWM5_C, 145 FN_D8, FN_HCTS2_N, FN_RX1_C, FN_SCL1_D, FN_PWM3_C, 146 FN_D9, FN_HRTS2_N, FN_TX1_C, FN_SDA1_D, 147 FN_D10, FN_MSIOF2_RXD_A, FN_HRX0_B, 148 FN_D11, FN_MSIOF2_TXD_A, FN_HTX0_B, 149 FN_D12, FN_MSIOF2_SCK_A, FN_HSCK0, FN_CAN_CLK_C, 150 FN_D13, FN_MSIOF2_SYNC_A, FN_RX4_C, 151 152 /* IPSR3 */ 153 FN_D14, FN_MSIOF2_SS1, FN_TX4_C, FN_CAN1_RX_B, FN_AVB_AVTP_CAPTURE_A, 154 FN_D15, FN_MSIOF2_SS2, FN_PWM4_A, FN_CAN1_TX_B, FN_IRQ2, FN_AVB_AVTP_MATCH_A, 155 FN_QSPI0_SPCLK, FN_WE0_N, 156 FN_QSPI0_MOSI_QSPI0_IO0, FN_BS_N, 157 FN_QSPI0_MISO_QSPI0_IO1, FN_RD_WR_N, 158 FN_QSPI0_IO2, FN_CS0_N, 159 FN_QSPI0_IO3, FN_RD_N, 160 FN_QSPI0_SSL, FN_WE1_N, 161 162 /* IPSR4 */ 163 FN_EX_WAIT0, FN_CAN_CLK_B, FN_SCIF_CLK_A, 164 FN_DU0_DR0, FN_RX5_C, FN_SCL2_D, FN_A0, 165 FN_DU0_DR1, FN_TX5_C, FN_SDA2_D, FN_A1, 166 FN_DU0_DR2, FN_RX0_D, FN_SCL0_E, FN_A2, 167 FN_DU0_DR3, FN_TX0_D, FN_SDA0_E, FN_PWM0_B, FN_A3, 168 FN_DU0_DR4, FN_RX1_D, FN_A4, 169 FN_DU0_DR5, FN_TX1_D, FN_PWM1_B, FN_A5, 170 FN_DU0_DR6, FN_RX2_C, FN_A6, 171 172 /* IPSR5 */ 173 FN_DU0_DR7, FN_TX2_C, FN_PWM2_B, FN_A7, 174 FN_DU0_DG0, FN_RX3_B, FN_SCL3_D, FN_A8, 175 FN_DU0_DG1, FN_TX3_B, FN_SDA3_D, FN_PWM3_B, FN_A9, 176 FN_DU0_DG2, FN_RX4_D, FN_A10, 177 FN_DU0_DG3, FN_TX4_D, FN_PWM4_B, FN_A11, 178 FN_DU0_DG4, FN_HRX0_A, FN_A12, 179 FN_DU0_DG5, FN_HTX0_A, FN_PWM5_B, FN_A13, 180 FN_DU0_DG6, FN_HRX1_C, FN_A14, 181 182 /* IPSR6 */ 183 FN_DU0_DG7, FN_HTX1_C, FN_PWM6_B, FN_A15, 184 FN_DU0_DB0, FN_SCL4_D, FN_CAN0_RX_C, FN_A16, 185 FN_DU0_DB1, FN_SDA4_D, FN_CAN0_TX_C, FN_A17, 186 FN_DU0_DB2, FN_HCTS0_N, FN_A18, 187 FN_DU0_DB3, FN_HRTS0_N, FN_A19, 188 FN_DU0_DB4, FN_HCTS1_N_C, FN_A20, 189 FN_DU0_DB5, FN_HRTS1_N_C, FN_A21, 190 FN_DU0_DB6, FN_A22, 191 192 /* IPSR7 */ 193 FN_DU0_DB7, FN_A23, 194 FN_DU0_DOTCLKIN, FN_A24, 195 FN_DU0_DOTCLKOUT0, FN_A25, 196 FN_DU0_DOTCLKOUT1, FN_MSIOF2_RXD_B, FN_CS1_N_A26, 197 FN_DU0_EXHSYNC_DU0_HSYNC, FN_MSIOF2_TXD_B, FN_DREQ0_N, 198 FN_DU0_EXVSYNC_DU0_VSYNC, FN_MSIOF2_SYNC_B, FN_DACK0, 199 FN_DU0_EXODDF_DU0_ODDF_DISP_CDE, FN_MSIOF2_SCK_B, FN_DRACK0, 200 FN_DU0_DISP, FN_CAN1_RX_C, 201 202 /* IPSR8 */ 203 FN_DU0_CDE, FN_CAN1_TX_C, 204 FN_VI1_CLK, FN_AVB_RX_CLK, FN_ETH_REF_CLK, 205 FN_VI1_DATA0, FN_AVB_RX_DV, FN_ETH_CRS_DV, 206 FN_VI1_DATA1, FN_AVB_RXD0, FN_ETH_RXD0, 207 FN_VI1_DATA2, FN_AVB_RXD1, FN_ETH_RXD1, 208 FN_VI1_DATA3, FN_AVB_RXD2, FN_ETH_MDIO, 209 FN_VI1_DATA4, FN_AVB_RXD3, FN_ETH_RX_ER, 210 FN_VI1_DATA5, FN_AVB_RXD4, FN_ETH_LINK, 211 212 /* IPSR9 */ 213 FN_VI1_DATA6, FN_AVB_RXD5, FN_ETH_TXD1, 214 FN_VI1_DATA7, FN_AVB_RXD6, FN_ETH_TX_EN, 215 FN_VI1_CLKENB, FN_SCL3_A, FN_AVB_RXD7, FN_ETH_MAGIC, 216 FN_VI1_FIELD, FN_SDA3_A, FN_AVB_RX_ER, FN_ETH_TXD0, 217 FN_VI1_HSYNC_N, FN_RX0_B, FN_SCL0_C, FN_AVB_GTXREFCLK, FN_ETH_MDC, 218 FN_VI1_VSYNC_N, FN_TX0_B, FN_SDA0_C, FN_AUDIO_CLKOUT_B, FN_AVB_TX_CLK, 219 FN_VI1_DATA8, FN_SCL2_B, FN_AVB_TX_EN, 220 FN_VI1_DATA9, FN_SDA2_B, FN_AVB_TXD0, 221 222 /* IPSR10 */ 223 FN_VI1_DATA10, FN_CAN0_RX_B, FN_AVB_TXD1, 224 FN_VI1_DATA11, FN_CAN0_TX_B, FN_AVB_TXD2, 225 FN_AVB_TXD3, FN_AUDIO_CLKA_B, FN_SSI_SCK1_D, FN_RX5_F, FN_MSIOF0_RXD_B, 226 FN_AVB_TXD4, FN_AUDIO_CLKB_B, FN_SSI_WS1_D, FN_TX5_F, FN_MSIOF0_TXD_B, 227 FN_AVB_TXD5, FN_SCIF_CLK_B, FN_AUDIO_CLKC_B, FN_SSI_SDATA1_D, FN_MSIOF0_SCK_B, 228 FN_SCL0_A, FN_RX0_C, FN_PWM5_A, FN_TCLK1_B, FN_AVB_TXD6, FN_CAN1_RX_D, FN_MSIOF0_SYNC_B, 229 FN_SDA0_A, FN_TX0_C, FN_IRQ5, FN_CAN_CLK_A, FN_AVB_GTX_CLK, FN_CAN1_TX_D, FN_DVC_MUTE, 230 FN_SCL1_A, FN_RX4_A, FN_PWM5_D, FN_DU1_DR0, FN_SSI_SCK6_B, FN_VI0_G0, 231 232 /* IPSR11 */ 233 FN_SDA1_A, FN_TX4_A, FN_DU1_DR1, FN_SSI_WS6_B, FN_VI0_G1, 234 FN_MSIOF0_RXD_A, FN_RX5_A, FN_SCL2_C, FN_DU1_DR2, FN_QSPI1_MOSI_QSPI1_IO0, FN_SSI_SDATA6_B, FN_VI0_G2, 235 FN_MSIOF0_TXD_A, FN_TX5_A, FN_SDA2_C, FN_DU1_DR3, FN_QSPI1_MISO_QSPI1_IO1, FN_SSI_WS78_B, FN_VI0_G3, 236 FN_MSIOF0_SCK_A, FN_IRQ0, FN_DU1_DR4, FN_QSPI1_SPCLK, FN_SSI_SCK78_B, FN_VI0_G4, 237 FN_MSIOF0_SYNC_A, FN_PWM1_A, FN_DU1_DR5, FN_QSPI1_IO2, FN_SSI_SDATA7_B, 238 FN_MSIOF0_SS1_A, FN_DU1_DR6, FN_QSPI1_IO3, FN_SSI_SDATA8_B, 239 FN_MSIOF0_SS2_A, FN_DU1_DR7, FN_QSPI1_SSL, 240 FN_HRX1_A, FN_SCL4_A, FN_PWM6_A, FN_DU1_DG0, FN_RX0_A, 241 242 /* IPSR12 */ 243 FN_HTX1_A, FN_SDA4_A, FN_DU1_DG1, FN_TX0_A, 244 FN_HCTS1_N_A, FN_PWM2_A, FN_DU1_DG2, FN_REMOCON_B, 245 FN_HRTS1_N_A, FN_DU1_DG3, FN_SSI_WS1_B, FN_IRQ1, 246 FN_SD2_CLK, FN_HSCK1, FN_DU1_DG4, FN_SSI_SCK1_B, 247 FN_SD2_CMD, FN_SCIF1_SCK_A, FN_TCLK2_A, FN_DU1_DG5, FN_SSI_SCK2_B, FN_PWM3_A, 248 FN_SD2_DAT0, FN_RX1_A, FN_SCL1_E, FN_DU1_DG6, FN_SSI_SDATA1_B, 249 FN_SD2_DAT1, FN_TX1_A, FN_SDA1_E, FN_DU1_DG7, FN_SSI_WS2_B, 250 FN_SD2_DAT2, FN_RX2_A, FN_DU1_DB0, FN_SSI_SDATA2_B, 251 252 /* IPSR13 */ 253 FN_SD2_DAT3, FN_TX2_A, FN_DU1_DB1, FN_SSI_WS9_B, 254 FN_SD2_CD, FN_SCIF2_SCK_A, FN_DU1_DB2, FN_SSI_SCK9_B, 255 FN_SD2_WP, FN_SCIF3_SCK, FN_DU1_DB3, FN_SSI_SDATA9_B, 256 FN_RX3_A, FN_SCL1_C, FN_MSIOF1_RXD_B, FN_DU1_DB4, FN_AUDIO_CLKA_C, FN_SSI_SDATA4_B, 257 FN_TX3_A, FN_SDA1_C, FN_MSIOF1_TXD_B, FN_DU1_DB5, FN_AUDIO_CLKB_C, FN_SSI_WS4_B, 258 FN_SCL2_A, FN_MSIOF1_SCK_B, FN_DU1_DB6, FN_AUDIO_CLKC_C, FN_SSI_SCK4_B, 259 FN_SDA2_A, FN_MSIOF1_SYNC_B, FN_DU1_DB7, FN_AUDIO_CLKOUT_C, 260 FN_SSI_SCK5_A, FN_DU1_DOTCLKOUT1, 261 262 /* IPSR14 */ 263 FN_SSI_WS5_A, FN_SCL3_C, FN_DU1_DOTCLKIN, 264 FN_SSI_SDATA5_A, FN_SDA3_C, FN_DU1_DOTCLKOUT0, 265 FN_SSI_SCK6_A, FN_DU1_EXODDF_DU1_ODDF_DISP_CDE, 266 FN_SSI_WS6_A, FN_SCL4_C, FN_DU1_EXHSYNC_DU1_HSYNC, 267 FN_SSI_SDATA6_A, FN_SDA4_C, FN_DU1_EXVSYNC_DU1_VSYNC, 268 FN_SSI_SCK78_A, FN_SDA4_E, FN_DU1_DISP, 269 FN_SSI_WS78_A, FN_SCL4_E, FN_DU1_CDE, 270 FN_SSI_SDATA7_A, FN_IRQ8, FN_AUDIO_CLKA_D, FN_CAN_CLK_D, FN_VI0_G5, 271 272 /* IPSR15 */ 273 FN_SSI_SCK0129_A, FN_MSIOF1_RXD_A, FN_RX5_D, FN_VI0_G6, 274 FN_SSI_WS0129_A, FN_MSIOF1_TXD_A, FN_TX5_D, FN_VI0_G7, 275 FN_SSI_SDATA0_A, FN_MSIOF1_SYNC_A, FN_PWM0_C, FN_VI0_R0, 276 FN_SSI_SCK34, FN_MSIOF1_SCK_A, FN_AVB_MDC, FN_DACK1, FN_VI0_R1, 277 FN_SSI_WS34, FN_MSIOF1_SS1_A, FN_AVB_MDIO, FN_CAN1_RX_A, FN_DREQ1_N, FN_VI0_R2, 278 FN_SSI_SDATA3, FN_MSIOF1_SS2_A, FN_AVB_LINK, FN_CAN1_TX_A, FN_DREQ2_N, FN_VI0_R3, 279 FN_SSI_SCK4_A, FN_AVB_MAGIC, FN_VI0_R4, 280 FN_SSI_WS4_A, FN_AVB_PHY_INT, FN_VI0_R5, 281 282 /* IPSR16 */ 283 FN_SSI_SDATA4_A, FN_AVB_CRS, FN_VI0_R6, 284 FN_SSI_SCK1_A, FN_SCIF1_SCK_B, FN_PWM1_D, FN_IRQ9, FN_REMOCON_A, FN_DACK2, FN_VI0_CLK, FN_AVB_COL, 285 FN_SSI_SDATA8_A, FN_RX1_B, FN_CAN0_RX_D, FN_AVB_AVTP_CAPTURE_B, FN_VI0_R7, 286 FN_SSI_WS1_A, FN_TX1_B, FN_CAN0_TX_D, FN_AVB_AVTP_MATCH_B, FN_VI0_DATA0_VI0_B0, 287 FN_SSI_SDATA1_A, FN_HRX1_B, FN_VI0_DATA1_VI0_B1, 288 FN_SSI_SCK2_A, FN_HTX1_B, FN_AVB_TXD7, FN_VI0_DATA2_VI0_B2, 289 FN_SSI_WS2_A, FN_HCTS1_N_B, FN_AVB_TX_ER, FN_VI0_DATA3_VI0_B3, 290 FN_SSI_SDATA2_A, FN_HRTS1_N_B, FN_VI0_DATA4_VI0_B4, 291 292 /* IPSR17 */ 293 FN_SSI_SCK9_A, FN_RX2_B, FN_SCL3_E, FN_EX_WAIT1, FN_VI0_DATA5_VI0_B5, 294 FN_SSI_WS9_A, FN_TX2_B, FN_SDA3_E, FN_VI0_DATA6_VI0_B6, 295 FN_SSI_SDATA9_A, FN_SCIF2_SCK_B, FN_PWM2_D, FN_VI0_DATA7_VI0_B7, 296 FN_AUDIO_CLKA_A, FN_SCL0_B, FN_VI0_CLKENB, 297 FN_AUDIO_CLKB_A, FN_SDA0_B, FN_VI0_FIELD, 298 FN_AUDIO_CLKC_A, FN_SCL4_B, FN_VI0_HSYNC_N, 299 FN_AUDIO_CLKOUT_A, FN_SDA4_B, FN_VI0_VSYNC_N, 300 301 /* MOD_SEL0 */ 302 FN_SEL_ADGA_0, FN_SEL_ADGA_1, FN_SEL_ADGA_2, FN_SEL_ADGA_3, 303 FN_SEL_CANCLK_0, FN_SEL_CANCLK_1, FN_SEL_CANCLK_2, FN_SEL_CANCLK_3, 304 FN_SEL_CAN1_0, FN_SEL_CAN1_1, FN_SEL_CAN1_2, FN_SEL_CAN1_3, 305 FN_SEL_CAN0_0, FN_SEL_CAN0_1, FN_SEL_CAN0_2, FN_SEL_CAN0_3, 306 FN_SEL_I2C04_0, FN_SEL_I2C04_1, FN_SEL_I2C04_2, FN_SEL_I2C04_3, FN_SEL_I2C04_4, 307 FN_SEL_I2C03_0, FN_SEL_I2C03_1, FN_SEL_I2C03_2, FN_SEL_I2C03_3, FN_SEL_I2C03_4, 308 FN_SEL_I2C02_0, FN_SEL_I2C02_1, FN_SEL_I2C02_2, FN_SEL_I2C02_3, 309 FN_SEL_I2C01_0, FN_SEL_I2C01_1, FN_SEL_I2C01_2, FN_SEL_I2C01_3, FN_SEL_I2C01_4, 310 FN_SEL_I2C00_0, FN_SEL_I2C00_1, FN_SEL_I2C00_2, FN_SEL_I2C00_3, FN_SEL_I2C00_4, 311 FN_SEL_AVB_0, FN_SEL_AVB_1, 312 313 /* MOD_SEL1 */ 314 FN_SEL_SCIFCLK_0, FN_SEL_SCIFCLK_1, 315 FN_SEL_SCIF5_0, FN_SEL_SCIF5_1, FN_SEL_SCIF5_2, FN_SEL_SCIF5_3, FN_SEL_SCIF5_4, FN_SEL_SCIF5_5, 316 FN_SEL_SCIF4_0, FN_SEL_SCIF4_1, FN_SEL_SCIF4_2, FN_SEL_SCIF4_3, FN_SEL_SCIF4_4, 317 FN_SEL_SCIF3_0, FN_SEL_SCIF3_1, FN_SEL_SCIF3_2, 318 FN_SEL_SCIF2_0, FN_SEL_SCIF2_1, FN_SEL_SCIF2_2, 319 FN_SEL_SCIF2_CLK_0, FN_SEL_SCIF2_CLK_1, 320 FN_SEL_SCIF1_0, FN_SEL_SCIF1_1, FN_SEL_SCIF1_2, FN_SEL_SCIF1_3, 321 FN_SEL_SCIF0_0, FN_SEL_SCIF0_1, FN_SEL_SCIF0_2, FN_SEL_SCIF0_3, 322 FN_SEL_MSIOF2_0, FN_SEL_MSIOF2_1, FN_SEL_MSIOF2_2, 323 FN_SEL_MSIOF1_0, FN_SEL_MSIOF1_1, 324 FN_SEL_MSIOF0_0, FN_SEL_MSIOF0_1, 325 FN_SEL_RCN_0, FN_SEL_RCN_1, 326 FN_SEL_TMU2_0, FN_SEL_TMU2_1, 327 FN_SEL_TMU1_0, FN_SEL_TMU1_1, 328 FN_SEL_HSCIF1_0, FN_SEL_HSCIF1_1, FN_SEL_HSCIF1_2, 329 FN_SEL_HSCIF0_0, FN_SEL_HSCIF0_1, 330 331 /* MOD_SEL2 */ 332 FN_SEL_ADGB_0, FN_SEL_ADGB_1, FN_SEL_ADGB_2, 333 FN_SEL_ADGC_0, FN_SEL_ADGC_1, FN_SEL_ADGC_2, 334 FN_SEL_SSI9_0, FN_SEL_SSI9_1, 335 FN_SEL_SSI8_0, FN_SEL_SSI8_1, 336 FN_SEL_SSI7_0, FN_SEL_SSI7_1, 337 FN_SEL_SSI6_0, FN_SEL_SSI6_1, 338 FN_SEL_SSI5_0, FN_SEL_SSI5_1, 339 FN_SEL_SSI4_0, FN_SEL_SSI4_1, 340 FN_SEL_SSI2_0, FN_SEL_SSI2_1, 341 FN_SEL_SSI1_0, FN_SEL_SSI1_1, FN_SEL_SSI1_2, FN_SEL_SSI1_3, 342 FN_SEL_SSI0_0, FN_SEL_SSI0_1, 343 PINMUX_FUNCTION_END, 344 345 PINMUX_MARK_BEGIN, 346 347 USB0_PWEN_MARK, USB0_OVC_MARK, USB1_PWEN_MARK, USB1_OVC_MARK, 348 CLKOUT_MARK, MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK, 349 MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK, 350 MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK, MMC0_D6_MARK, 351 MMC0_D7_MARK, 352 353 /* IPSR0 */ 354 SD0_CLK_MARK, SSI_SCK1_C_MARK, RX3_C_MARK, 355 SD0_CMD_MARK, SSI_WS1_C_MARK, TX3_C_MARK, 356 SD0_DAT0_MARK, SSI_SDATA1_C_MARK, RX4_E_MARK, 357 SD0_DAT1_MARK, SSI_SCK0129_B_MARK, TX4_E_MARK, 358 SD0_DAT2_MARK, SSI_WS0129_B_MARK, RX5_E_MARK, 359 SD0_DAT3_MARK, SSI_SDATA0_B_MARK, TX5_E_MARK, 360 SD0_CD_MARK, CAN0_RX_A_MARK, 361 SD0_WP_MARK, IRQ7_MARK, CAN0_TX_A_MARK, 362 363 /* IPSR1 */ 364 MMC0_D4_MARK, SD1_CD_MARK, 365 MMC0_D5_MARK, SD1_WP_MARK, 366 D0_MARK, SCL3_B_MARK, RX5_B_MARK, IRQ4_MARK, MSIOF2_RXD_C_MARK, SSI_SDATA5_B_MARK, 367 D1_MARK, SDA3_B_MARK, TX5_B_MARK, MSIOF2_TXD_C_MARK, SSI_WS5_B_MARK, 368 D2_MARK, RX4_B_MARK, SCL0_D_MARK, PWM1_C_MARK, MSIOF2_SCK_C_MARK, SSI_SCK5_B_MARK, 369 D3_MARK, TX4_B_MARK, SDA0_D_MARK, PWM0_A_MARK, MSIOF2_SYNC_C_MARK, 370 D4_MARK, IRQ3_MARK, TCLK1_A_MARK, PWM6_C_MARK, 371 D5_MARK, HRX2_MARK, SCL1_B_MARK, PWM2_C_MARK, TCLK2_B_MARK, 372 373 /* IPSR2 */ 374 D6_MARK, HTX2_MARK, SDA1_B_MARK, PWM4_C_MARK, 375 D7_MARK, HSCK2_MARK, SCIF1_SCK_C_MARK, IRQ6_MARK, PWM5_C_MARK, 376 D8_MARK, HCTS2_N_MARK, RX1_C_MARK, SCL1_D_MARK, PWM3_C_MARK, 377 D9_MARK, HRTS2_N_MARK, TX1_C_MARK, SDA1_D_MARK, 378 D10_MARK, MSIOF2_RXD_A_MARK, HRX0_B_MARK, 379 D11_MARK, MSIOF2_TXD_A_MARK, HTX0_B_MARK, 380 D12_MARK, MSIOF2_SCK_A_MARK, HSCK0_MARK, CAN_CLK_C_MARK, 381 D13_MARK, MSIOF2_SYNC_A_MARK, RX4_C_MARK, 382 383 /* IPSR3 */ 384 D14_MARK, MSIOF2_SS1_MARK, TX4_C_MARK, CAN1_RX_B_MARK, AVB_AVTP_CAPTURE_A_MARK, 385 D15_MARK, MSIOF2_SS2_MARK, PWM4_A_MARK, CAN1_TX_B_MARK, IRQ2_MARK, AVB_AVTP_MATCH_A_MARK, 386 QSPI0_SPCLK_MARK, WE0_N_MARK, 387 QSPI0_MOSI_QSPI0_IO0_MARK, BS_N_MARK, 388 QSPI0_MISO_QSPI0_IO1_MARK, RD_WR_N_MARK, 389 QSPI0_IO2_MARK, CS0_N_MARK, 390 QSPI0_IO3_MARK, RD_N_MARK, 391 QSPI0_SSL_MARK, WE1_N_MARK, 392 393 /* IPSR4 */ 394 EX_WAIT0_MARK, CAN_CLK_B_MARK, SCIF_CLK_A_MARK, 395 DU0_DR0_MARK, RX5_C_MARK, SCL2_D_MARK, A0_MARK, 396 DU0_DR1_MARK, TX5_C_MARK, SDA2_D_MARK, A1_MARK, 397 DU0_DR2_MARK, RX0_D_MARK, SCL0_E_MARK, A2_MARK, 398 DU0_DR3_MARK, TX0_D_MARK, SDA0_E_MARK, PWM0_B_MARK, A3_MARK, 399 DU0_DR4_MARK, RX1_D_MARK, A4_MARK, 400 DU0_DR5_MARK, TX1_D_MARK, PWM1_B_MARK, A5_MARK, 401 DU0_DR6_MARK, RX2_C_MARK, A6_MARK, 402 403 /* IPSR5 */ 404 DU0_DR7_MARK, TX2_C_MARK, PWM2_B_MARK, A7_MARK, 405 DU0_DG0_MARK, RX3_B_MARK, SCL3_D_MARK, A8_MARK, 406 DU0_DG1_MARK, TX3_B_MARK, SDA3_D_MARK, PWM3_B_MARK, A9_MARK, 407 DU0_DG2_MARK, RX4_D_MARK, A10_MARK, 408 DU0_DG3_MARK, TX4_D_MARK, PWM4_B_MARK, A11_MARK, 409 DU0_DG4_MARK, HRX0_A_MARK, A12_MARK, 410 DU0_DG5_MARK, HTX0_A_MARK, PWM5_B_MARK, A13_MARK, 411 DU0_DG6_MARK, HRX1_C_MARK, A14_MARK, 412 413 /* IPSR6 */ 414 DU0_DG7_MARK, HTX1_C_MARK, PWM6_B_MARK, A15_MARK, 415 DU0_DB0_MARK, SCL4_D_MARK, CAN0_RX_C_MARK, A16_MARK, 416 DU0_DB1_MARK, SDA4_D_MARK, CAN0_TX_C_MARK, A17_MARK, 417 DU0_DB2_MARK, HCTS0_N_MARK, A18_MARK, 418 DU0_DB3_MARK, HRTS0_N_MARK, A19_MARK, 419 DU0_DB4_MARK, HCTS1_N_C_MARK, A20_MARK, 420 DU0_DB5_MARK, HRTS1_N_C_MARK, A21_MARK, 421 DU0_DB6_MARK, A22_MARK, 422 423 /* IPSR7 */ 424 DU0_DB7_MARK, A23_MARK, 425 DU0_DOTCLKIN_MARK, A24_MARK, 426 DU0_DOTCLKOUT0_MARK, A25_MARK, 427 DU0_DOTCLKOUT1_MARK, MSIOF2_RXD_B_MARK, CS1_N_A26_MARK, 428 DU0_EXHSYNC_DU0_HSYNC_MARK, MSIOF2_TXD_B_MARK, DREQ0_N_MARK, 429 DU0_EXVSYNC_DU0_VSYNC_MARK, MSIOF2_SYNC_B_MARK, DACK0_MARK, 430 DU0_EXODDF_DU0_ODDF_DISP_CDE_MARK, MSIOF2_SCK_B_MARK, DRACK0_MARK, 431 DU0_DISP_MARK, CAN1_RX_C_MARK, 432 433 /* IPSR8 */ 434 DU0_CDE_MARK, CAN1_TX_C_MARK, 435 VI1_CLK_MARK, AVB_RX_CLK_MARK, ETH_REF_CLK_MARK, 436 VI1_DATA0_MARK, AVB_RX_DV_MARK, ETH_CRS_DV_MARK, 437 VI1_DATA1_MARK, AVB_RXD0_MARK, ETH_RXD0_MARK, 438 VI1_DATA2_MARK, AVB_RXD1_MARK, ETH_RXD1_MARK, 439 VI1_DATA3_MARK, AVB_RXD2_MARK, ETH_MDIO_MARK, 440 VI1_DATA4_MARK, AVB_RXD3_MARK, ETH_RX_ER_MARK, 441 VI1_DATA5_MARK, AVB_RXD4_MARK, ETH_LINK_MARK, 442 443 /* IPSR9 */ 444 VI1_DATA6_MARK, AVB_RXD5_MARK, ETH_TXD1_MARK, 445 VI1_DATA7_MARK, AVB_RXD6_MARK, ETH_TX_EN_MARK, 446 VI1_CLKENB_MARK, SCL3_A_MARK, AVB_RXD7_MARK, ETH_MAGIC_MARK, 447 VI1_FIELD_MARK, SDA3_A_MARK, AVB_RX_ER_MARK, ETH_TXD0_MARK, 448 VI1_HSYNC_N_MARK, RX0_B_MARK, SCL0_C_MARK, AVB_GTXREFCLK_MARK, ETH_MDC_MARK, 449 VI1_VSYNC_N_MARK, TX0_B_MARK, SDA0_C_MARK, AUDIO_CLKOUT_B_MARK, AVB_TX_CLK_MARK, 450 VI1_DATA8_MARK, SCL2_B_MARK, AVB_TX_EN_MARK, 451 VI1_DATA9_MARK, SDA2_B_MARK, AVB_TXD0_MARK, 452 453 /* IPSR10 */ 454 VI1_DATA10_MARK, CAN0_RX_B_MARK, AVB_TXD1_MARK, 455 VI1_DATA11_MARK, CAN0_TX_B_MARK, AVB_TXD2_MARK, 456 AVB_TXD3_MARK, AUDIO_CLKA_B_MARK, SSI_SCK1_D_MARK, RX5_F_MARK, MSIOF0_RXD_B_MARK, 457 AVB_TXD4_MARK, AUDIO_CLKB_B_MARK, SSI_WS1_D_MARK, TX5_F_MARK, MSIOF0_TXD_B_MARK, 458 AVB_TXD5_MARK, SCIF_CLK_B_MARK, AUDIO_CLKC_B_MARK, SSI_SDATA1_D_MARK, MSIOF0_SCK_B_MARK, 459 SCL0_A_MARK, RX0_C_MARK, PWM5_A_MARK, TCLK1_B_MARK, AVB_TXD6_MARK, CAN1_RX_D_MARK, MSIOF0_SYNC_B_MARK, 460 SDA0_A_MARK, TX0_C_MARK, IRQ5_MARK, CAN_CLK_A_MARK, AVB_GTX_CLK_MARK, CAN1_TX_D_MARK, DVC_MUTE_MARK, 461 SCL1_A_MARK, RX4_A_MARK, PWM5_D_MARK, DU1_DR0_MARK, SSI_SCK6_B_MARK, VI0_G0_MARK, 462 463 /* IPSR11 */ 464 SDA1_A_MARK, TX4_A_MARK, DU1_DR1_MARK, SSI_WS6_B_MARK, VI0_G1_MARK, 465 MSIOF0_RXD_A_MARK, RX5_A_MARK, SCL2_C_MARK, DU1_DR2_MARK, QSPI1_MOSI_QSPI1_IO0_MARK, SSI_SDATA6_B_MARK, VI0_G2_MARK, 466 MSIOF0_TXD_A_MARK, TX5_A_MARK, SDA2_C_MARK, DU1_DR3_MARK, QSPI1_MISO_QSPI1_IO1_MARK, SSI_WS78_B_MARK, VI0_G3_MARK, 467 MSIOF0_SCK_A_MARK, IRQ0_MARK, DU1_DR4_MARK, QSPI1_SPCLK_MARK, SSI_SCK78_B_MARK, VI0_G4_MARK, 468 MSIOF0_SYNC_A_MARK, PWM1_A_MARK, DU1_DR5_MARK, QSPI1_IO2_MARK, SSI_SDATA7_B_MARK, 469 MSIOF0_SS1_A_MARK, DU1_DR6_MARK, QSPI1_IO3_MARK, SSI_SDATA8_B_MARK, 470 MSIOF0_SS2_A_MARK, DU1_DR7_MARK, QSPI1_SSL_MARK, 471 HRX1_A_MARK, SCL4_A_MARK, PWM6_A_MARK, DU1_DG0_MARK, RX0_A_MARK, 472 473 /* IPSR12 */ 474 HTX1_A_MARK, SDA4_A_MARK, DU1_DG1_MARK, TX0_A_MARK, 475 HCTS1_N_A_MARK, PWM2_A_MARK, DU1_DG2_MARK, REMOCON_B_MARK, 476 HRTS1_N_A_MARK, DU1_DG3_MARK, SSI_WS1_B_MARK, IRQ1_MARK, 477 SD2_CLK_MARK, HSCK1_MARK, DU1_DG4_MARK, SSI_SCK1_B_MARK, 478 SD2_CMD_MARK, SCIF1_SCK_A_MARK, TCLK2_A_MARK, DU1_DG5_MARK, SSI_SCK2_B_MARK, PWM3_A_MARK, 479 SD2_DAT0_MARK, RX1_A_MARK, SCL1_E_MARK, DU1_DG6_MARK, SSI_SDATA1_B_MARK, 480 SD2_DAT1_MARK, TX1_A_MARK, SDA1_E_MARK, DU1_DG7_MARK, SSI_WS2_B_MARK, 481 SD2_DAT2_MARK, RX2_A_MARK, DU1_DB0_MARK, SSI_SDATA2_B_MARK, 482 483 /* IPSR13 */ 484 SD2_DAT3_MARK, TX2_A_MARK, DU1_DB1_MARK, SSI_WS9_B_MARK, 485 SD2_CD_MARK, SCIF2_SCK_A_MARK, DU1_DB2_MARK, SSI_SCK9_B_MARK, 486 SD2_WP_MARK, SCIF3_SCK_MARK, DU1_DB3_MARK, SSI_SDATA9_B_MARK, 487 RX3_A_MARK, SCL1_C_MARK, MSIOF1_RXD_B_MARK, DU1_DB4_MARK, AUDIO_CLKA_C_MARK, SSI_SDATA4_B_MARK, 488 TX3_A_MARK, SDA1_C_MARK, MSIOF1_TXD_B_MARK, DU1_DB5_MARK, AUDIO_CLKB_C_MARK, SSI_WS4_B_MARK, 489 SCL2_A_MARK, MSIOF1_SCK_B_MARK, DU1_DB6_MARK, AUDIO_CLKC_C_MARK, SSI_SCK4_B_MARK, 490 SDA2_A_MARK, MSIOF1_SYNC_B_MARK, DU1_DB7_MARK, AUDIO_CLKOUT_C_MARK, 491 SSI_SCK5_A_MARK, DU1_DOTCLKOUT1_MARK, 492 493 /* IPSR14 */ 494 SSI_WS5_A_MARK, SCL3_C_MARK, DU1_DOTCLKIN_MARK, 495 SSI_SDATA5_A_MARK, SDA3_C_MARK, DU1_DOTCLKOUT0_MARK, 496 SSI_SCK6_A_MARK, DU1_EXODDF_DU1_ODDF_DISP_CDE_MARK, 497 SSI_WS6_A_MARK, SCL4_C_MARK, DU1_EXHSYNC_DU1_HSYNC_MARK, 498 SSI_SDATA6_A_MARK, SDA4_C_MARK, DU1_EXVSYNC_DU1_VSYNC_MARK, 499 SSI_SCK78_A_MARK, SDA4_E_MARK, DU1_DISP_MARK, 500 SSI_WS78_A_MARK, SCL4_E_MARK, DU1_CDE_MARK, 501 SSI_SDATA7_A_MARK, IRQ8_MARK, AUDIO_CLKA_D_MARK, CAN_CLK_D_MARK, VI0_G5_MARK, 502 503 /* IPSR15 */ 504 SSI_SCK0129_A_MARK, MSIOF1_RXD_A_MARK, RX5_D_MARK, VI0_G6_MARK, 505 SSI_WS0129_A_MARK, MSIOF1_TXD_A_MARK, TX5_D_MARK, VI0_G7_MARK, 506 SSI_SDATA0_A_MARK, MSIOF1_SYNC_A_MARK, PWM0_C_MARK, VI0_R0_MARK, 507 SSI_SCK34_MARK, MSIOF1_SCK_A_MARK, AVB_MDC_MARK, DACK1_MARK, VI0_R1_MARK, 508 SSI_WS34_MARK, MSIOF1_SS1_A_MARK, AVB_MDIO_MARK, CAN1_RX_A_MARK, DREQ1_N_MARK, VI0_R2_MARK, 509 SSI_SDATA3_MARK, MSIOF1_SS2_A_MARK, AVB_LINK_MARK, CAN1_TX_A_MARK, DREQ2_N_MARK, VI0_R3_MARK, 510 SSI_SCK4_A_MARK, AVB_MAGIC_MARK, VI0_R4_MARK, 511 SSI_WS4_A_MARK, AVB_PHY_INT_MARK, VI0_R5_MARK, 512 513 /* IPSR16 */ 514 SSI_SDATA4_A_MARK, AVB_CRS_MARK, VI0_R6_MARK, 515 SSI_SCK1_A_MARK, SCIF1_SCK_B_MARK, PWM1_D_MARK, IRQ9_MARK, REMOCON_A_MARK, DACK2_MARK, VI0_CLK_MARK, AVB_COL_MARK, 516 SSI_SDATA8_A_MARK, RX1_B_MARK, CAN0_RX_D_MARK, AVB_AVTP_CAPTURE_B_MARK, VI0_R7_MARK, 517 SSI_WS1_A_MARK, TX1_B_MARK, CAN0_TX_D_MARK, AVB_AVTP_MATCH_B_MARK, VI0_DATA0_VI0_B0_MARK, 518 SSI_SDATA1_A_MARK, HRX1_B_MARK, VI0_DATA1_VI0_B1_MARK, 519 SSI_SCK2_A_MARK, HTX1_B_MARK, AVB_TXD7_MARK, VI0_DATA2_VI0_B2_MARK, 520 SSI_WS2_A_MARK, HCTS1_N_B_MARK, AVB_TX_ER_MARK, VI0_DATA3_VI0_B3_MARK, 521 SSI_SDATA2_A_MARK, HRTS1_N_B_MARK, VI0_DATA4_VI0_B4_MARK, 522 523 /* IPSR17 */ 524 SSI_SCK9_A_MARK, RX2_B_MARK, SCL3_E_MARK, EX_WAIT1_MARK, VI0_DATA5_VI0_B5_MARK, 525 SSI_WS9_A_MARK, TX2_B_MARK, SDA3_E_MARK, VI0_DATA6_VI0_B6_MARK, 526 SSI_SDATA9_A_MARK, SCIF2_SCK_B_MARK, PWM2_D_MARK, VI0_DATA7_VI0_B7_MARK, 527 AUDIO_CLKA_A_MARK, SCL0_B_MARK, VI0_CLKENB_MARK, 528 AUDIO_CLKB_A_MARK, SDA0_B_MARK, VI0_FIELD_MARK, 529 AUDIO_CLKC_A_MARK, SCL4_B_MARK, VI0_HSYNC_N_MARK, 530 AUDIO_CLKOUT_A_MARK, SDA4_B_MARK, VI0_VSYNC_N_MARK, 531 532 PINMUX_MARK_END, 533 }; 534 535 static const u16 pinmux_data[] = { 536 PINMUX_DATA_GP_ALL(), /* PINMUX_DATA(GP_M_N_DATA, GP_M_N_FN...), */ 537 538 PINMUX_SINGLE(USB0_PWEN), 539 PINMUX_SINGLE(USB0_OVC), 540 PINMUX_SINGLE(USB1_PWEN), 541 PINMUX_SINGLE(USB1_OVC), 542 PINMUX_SINGLE(CLKOUT), 543 PINMUX_SINGLE(MMC0_CLK_SDHI1_CLK), 544 PINMUX_SINGLE(MMC0_CMD_SDHI1_CMD), 545 PINMUX_SINGLE(MMC0_D0_SDHI1_D0), 546 PINMUX_SINGLE(MMC0_D1_SDHI1_D1), 547 PINMUX_SINGLE(MMC0_D2_SDHI1_D2), 548 PINMUX_SINGLE(MMC0_D3_SDHI1_D3), 549 PINMUX_SINGLE(MMC0_D6), 550 PINMUX_SINGLE(MMC0_D7), 551 552 /* IPSR0 */ 553 PINMUX_IPSR_GPSR(IP0_3_0, SD0_CLK), 554 PINMUX_IPSR_MSEL(IP0_3_0, SSI_SCK1_C, SEL_SSI1_2), 555 PINMUX_IPSR_MSEL(IP0_3_0, RX3_C, SEL_SCIF3_2), 556 PINMUX_IPSR_GPSR(IP0_7_4, SD0_CMD), 557 PINMUX_IPSR_MSEL(IP0_7_4, SSI_WS1_C, SEL_SSI1_2), 558 PINMUX_IPSR_MSEL(IP0_7_4, TX3_C, SEL_SCIF3_2), 559 PINMUX_IPSR_GPSR(IP0_11_8, SD0_DAT0), 560 PINMUX_IPSR_MSEL(IP0_11_8, SSI_SDATA1_C, SEL_SSI1_2), 561 PINMUX_IPSR_MSEL(IP0_11_8, RX4_E, SEL_SCIF4_4), 562 PINMUX_IPSR_GPSR(IP0_15_12, SD0_DAT1), 563 PINMUX_IPSR_MSEL(IP0_15_12, SSI_SCK0129_B, SEL_SSI0_1), 564 PINMUX_IPSR_MSEL(IP0_15_12, TX4_E, SEL_SCIF4_4), 565 PINMUX_IPSR_GPSR(IP0_19_16, SD0_DAT2), 566 PINMUX_IPSR_MSEL(IP0_19_16, SSI_WS0129_B, SEL_SSI0_1), 567 PINMUX_IPSR_MSEL(IP0_19_16, RX5_E, SEL_SCIF5_4), 568 PINMUX_IPSR_GPSR(IP0_23_20, SD0_DAT3), 569 PINMUX_IPSR_MSEL(IP0_23_20, SSI_SDATA0_B, SEL_SSI0_1), 570 PINMUX_IPSR_MSEL(IP0_23_20, TX5_E, SEL_SCIF5_4), 571 PINMUX_IPSR_GPSR(IP0_27_24, SD0_CD), 572 PINMUX_IPSR_MSEL(IP0_27_24, CAN0_RX_A, SEL_CAN0_0), 573 PINMUX_IPSR_GPSR(IP0_31_28, SD0_WP), 574 PINMUX_IPSR_GPSR(IP0_31_28, IRQ7), 575 PINMUX_IPSR_MSEL(IP0_31_28, CAN0_TX_A, SEL_CAN0_0), 576 577 /* IPSR1 */ 578 PINMUX_IPSR_GPSR(IP1_3_0, MMC0_D4), 579 PINMUX_IPSR_GPSR(IP1_3_0, SD1_CD), 580 PINMUX_IPSR_GPSR(IP1_7_4, MMC0_D5), 581 PINMUX_IPSR_GPSR(IP1_7_4, SD1_WP), 582 PINMUX_IPSR_GPSR(IP1_11_8, D0), 583 PINMUX_IPSR_MSEL(IP1_11_8, SCL3_B, SEL_I2C03_1), 584 PINMUX_IPSR_MSEL(IP1_11_8, RX5_B, SEL_SCIF5_1), 585 PINMUX_IPSR_GPSR(IP1_11_8, IRQ4), 586 PINMUX_IPSR_MSEL(IP1_11_8, MSIOF2_RXD_C, SEL_MSIOF2_2), 587 PINMUX_IPSR_MSEL(IP1_11_8, SSI_SDATA5_B, SEL_SSI5_1), 588 PINMUX_IPSR_GPSR(IP1_15_12, D1), 589 PINMUX_IPSR_MSEL(IP1_15_12, SDA3_B, SEL_I2C03_1), 590 PINMUX_IPSR_MSEL(IP1_15_12, TX5_B, SEL_SCIF5_1), 591 PINMUX_IPSR_MSEL(IP1_15_12, MSIOF2_TXD_C, SEL_MSIOF2_2), 592 PINMUX_IPSR_MSEL(IP1_15_12, SSI_WS5_B, SEL_SSI5_1), 593 PINMUX_IPSR_GPSR(IP1_19_16, D2), 594 PINMUX_IPSR_MSEL(IP1_19_16, RX4_B, SEL_SCIF4_1), 595 PINMUX_IPSR_MSEL(IP1_19_16, SCL0_D, SEL_I2C00_3), 596 PINMUX_IPSR_GPSR(IP1_19_16, PWM1_C), 597 PINMUX_IPSR_MSEL(IP1_19_16, MSIOF2_SCK_C, SEL_MSIOF2_2), 598 PINMUX_IPSR_MSEL(IP1_19_16, SSI_SCK5_B, SEL_SSI5_1), 599 PINMUX_IPSR_GPSR(IP1_23_20, D3), 600 PINMUX_IPSR_MSEL(IP1_23_20, TX4_B, SEL_SCIF4_1), 601 PINMUX_IPSR_MSEL(IP1_23_20, SDA0_D, SEL_I2C00_3), 602 PINMUX_IPSR_GPSR(IP1_23_20, PWM0_A), 603 PINMUX_IPSR_MSEL(IP1_23_20, MSIOF2_SYNC_C, SEL_MSIOF2_2), 604 PINMUX_IPSR_GPSR(IP1_27_24, D4), 605 PINMUX_IPSR_GPSR(IP1_27_24, IRQ3), 606 PINMUX_IPSR_MSEL(IP1_27_24, TCLK1_A, SEL_TMU1_0), 607 PINMUX_IPSR_GPSR(IP1_27_24, PWM6_C), 608 PINMUX_IPSR_GPSR(IP1_31_28, D5), 609 PINMUX_IPSR_GPSR(IP1_31_28, HRX2), 610 PINMUX_IPSR_MSEL(IP1_31_28, SCL1_B, SEL_I2C01_1), 611 PINMUX_IPSR_GPSR(IP1_31_28, PWM2_C), 612 PINMUX_IPSR_MSEL(IP1_31_28, TCLK2_B, SEL_TMU2_1), 613 614 /* IPSR2 */ 615 PINMUX_IPSR_GPSR(IP2_3_0, D6), 616 PINMUX_IPSR_GPSR(IP2_3_0, HTX2), 617 PINMUX_IPSR_MSEL(IP2_3_0, SDA1_B, SEL_I2C01_1), 618 PINMUX_IPSR_GPSR(IP2_3_0, PWM4_C), 619 PINMUX_IPSR_GPSR(IP2_7_4, D7), 620 PINMUX_IPSR_GPSR(IP2_7_4, HSCK2), 621 PINMUX_IPSR_MSEL(IP2_7_4, SCIF1_SCK_C, SEL_SCIF1_2), 622 PINMUX_IPSR_GPSR(IP2_7_4, IRQ6), 623 PINMUX_IPSR_GPSR(IP2_7_4, PWM5_C), 624 PINMUX_IPSR_GPSR(IP2_11_8, D8), 625 PINMUX_IPSR_GPSR(IP2_11_8, HCTS2_N), 626 PINMUX_IPSR_MSEL(IP2_11_8, RX1_C, SEL_SCIF1_2), 627 PINMUX_IPSR_MSEL(IP2_11_8, SCL1_D, SEL_I2C01_3), 628 PINMUX_IPSR_GPSR(IP2_11_8, PWM3_C), 629 PINMUX_IPSR_GPSR(IP2_15_12, D9), 630 PINMUX_IPSR_GPSR(IP2_15_12, HRTS2_N), 631 PINMUX_IPSR_MSEL(IP2_15_12, TX1_C, SEL_SCIF1_2), 632 PINMUX_IPSR_MSEL(IP2_15_12, SDA1_D, SEL_I2C01_3), 633 PINMUX_IPSR_GPSR(IP2_19_16, D10), 634 PINMUX_IPSR_MSEL(IP2_19_16, MSIOF2_RXD_A, SEL_MSIOF2_0), 635 PINMUX_IPSR_MSEL(IP2_19_16, HRX0_B, SEL_HSCIF0_1), 636 PINMUX_IPSR_GPSR(IP2_23_20, D11), 637 PINMUX_IPSR_MSEL(IP2_23_20, MSIOF2_TXD_A, SEL_MSIOF2_0), 638 PINMUX_IPSR_MSEL(IP2_23_20, HTX0_B, SEL_HSCIF0_1), 639 PINMUX_IPSR_GPSR(IP2_27_24, D12), 640 PINMUX_IPSR_MSEL(IP2_27_24, MSIOF2_SCK_A, SEL_MSIOF2_0), 641 PINMUX_IPSR_GPSR(IP2_27_24, HSCK0), 642 PINMUX_IPSR_MSEL(IP2_27_24, CAN_CLK_C, SEL_CANCLK_2), 643 PINMUX_IPSR_GPSR(IP2_31_28, D13), 644 PINMUX_IPSR_MSEL(IP2_31_28, MSIOF2_SYNC_A, SEL_MSIOF2_0), 645 PINMUX_IPSR_MSEL(IP2_31_28, RX4_C, SEL_SCIF4_2), 646 647 /* IPSR3 */ 648 PINMUX_IPSR_GPSR(IP3_3_0, D14), 649 PINMUX_IPSR_GPSR(IP3_3_0, MSIOF2_SS1), 650 PINMUX_IPSR_MSEL(IP3_3_0, TX4_C, SEL_SCIF4_2), 651 PINMUX_IPSR_MSEL(IP3_3_0, CAN1_RX_B, SEL_CAN1_1), 652 PINMUX_IPSR_MSEL(IP3_3_0, AVB_AVTP_CAPTURE_A, SEL_AVB_0), 653 PINMUX_IPSR_GPSR(IP3_7_4, D15), 654 PINMUX_IPSR_GPSR(IP3_7_4, MSIOF2_SS2), 655 PINMUX_IPSR_GPSR(IP3_7_4, PWM4_A), 656 PINMUX_IPSR_MSEL(IP3_7_4, CAN1_TX_B, SEL_CAN1_1), 657 PINMUX_IPSR_GPSR(IP3_7_4, IRQ2), 658 PINMUX_IPSR_MSEL(IP3_7_4, AVB_AVTP_MATCH_A, SEL_AVB_0), 659 PINMUX_IPSR_GPSR(IP3_11_8, QSPI0_SPCLK), 660 PINMUX_IPSR_GPSR(IP3_11_8, WE0_N), 661 PINMUX_IPSR_GPSR(IP3_15_12, QSPI0_MOSI_QSPI0_IO0), 662 PINMUX_IPSR_GPSR(IP3_15_12, BS_N), 663 PINMUX_IPSR_GPSR(IP3_19_16, QSPI0_MISO_QSPI0_IO1), 664 PINMUX_IPSR_GPSR(IP3_19_16, RD_WR_N), 665 PINMUX_IPSR_GPSR(IP3_23_20, QSPI0_IO2), 666 PINMUX_IPSR_GPSR(IP3_23_20, CS0_N), 667 PINMUX_IPSR_GPSR(IP3_27_24, QSPI0_IO3), 668 PINMUX_IPSR_GPSR(IP3_27_24, RD_N), 669 PINMUX_IPSR_GPSR(IP3_31_28, QSPI0_SSL), 670 PINMUX_IPSR_GPSR(IP3_31_28, WE1_N), 671 672 /* IPSR4 */ 673 PINMUX_IPSR_GPSR(IP4_3_0, EX_WAIT0), 674 PINMUX_IPSR_MSEL(IP4_3_0, CAN_CLK_B, SEL_CANCLK_1), 675 PINMUX_IPSR_MSEL(IP4_3_0, SCIF_CLK_A, SEL_SCIFCLK_0), 676 PINMUX_IPSR_GPSR(IP4_7_4, DU0_DR0), 677 PINMUX_IPSR_MSEL(IP4_7_4, RX5_C, SEL_SCIF5_2), 678 PINMUX_IPSR_MSEL(IP4_7_4, SCL2_D, SEL_I2C02_3), 679 PINMUX_IPSR_GPSR(IP4_7_4, A0), 680 PINMUX_IPSR_GPSR(IP4_11_8, DU0_DR1), 681 PINMUX_IPSR_MSEL(IP4_11_8, TX5_C, SEL_SCIF5_2), 682 PINMUX_IPSR_MSEL(IP4_11_8, SDA2_D, SEL_I2C02_3), 683 PINMUX_IPSR_GPSR(IP4_11_8, A1), 684 PINMUX_IPSR_GPSR(IP4_15_12, DU0_DR2), 685 PINMUX_IPSR_MSEL(IP4_15_12, RX0_D, SEL_SCIF0_3), 686 PINMUX_IPSR_MSEL(IP4_15_12, SCL0_E, SEL_I2C00_4), 687 PINMUX_IPSR_GPSR(IP4_15_12, A2), 688 PINMUX_IPSR_GPSR(IP4_19_16, DU0_DR3), 689 PINMUX_IPSR_MSEL(IP4_19_16, TX0_D, SEL_SCIF0_3), 690 PINMUX_IPSR_MSEL(IP4_19_16, SDA0_E, SEL_I2C00_4), 691 PINMUX_IPSR_GPSR(IP4_19_16, PWM0_B), 692 PINMUX_IPSR_GPSR(IP4_19_16, A3), 693 PINMUX_IPSR_GPSR(IP4_23_20, DU0_DR4), 694 PINMUX_IPSR_MSEL(IP4_23_20, RX1_D, SEL_SCIF1_3), 695 PINMUX_IPSR_GPSR(IP4_23_20, A4), 696 PINMUX_IPSR_GPSR(IP4_27_24, DU0_DR5), 697 PINMUX_IPSR_MSEL(IP4_27_24, TX1_D, SEL_SCIF1_3), 698 PINMUX_IPSR_GPSR(IP4_27_24, PWM1_B), 699 PINMUX_IPSR_GPSR(IP4_27_24, A5), 700 PINMUX_IPSR_GPSR(IP4_31_28, DU0_DR6), 701 PINMUX_IPSR_MSEL(IP4_31_28, RX2_C, SEL_SCIF2_2), 702 PINMUX_IPSR_GPSR(IP4_31_28, A6), 703 704 /* IPSR5 */ 705 PINMUX_IPSR_GPSR(IP5_3_0, DU0_DR7), 706 PINMUX_IPSR_MSEL(IP5_3_0, TX2_C, SEL_SCIF2_2), 707 PINMUX_IPSR_GPSR(IP5_3_0, PWM2_B), 708 PINMUX_IPSR_GPSR(IP5_3_0, A7), 709 PINMUX_IPSR_GPSR(IP5_7_4, DU0_DG0), 710 PINMUX_IPSR_MSEL(IP5_7_4, RX3_B, SEL_SCIF3_1), 711 PINMUX_IPSR_MSEL(IP5_7_4, SCL3_D, SEL_I2C03_3), 712 PINMUX_IPSR_GPSR(IP5_7_4, A8), 713 PINMUX_IPSR_GPSR(IP5_11_8, DU0_DG1), 714 PINMUX_IPSR_MSEL(IP5_11_8, TX3_B, SEL_SCIF3_1), 715 PINMUX_IPSR_MSEL(IP5_11_8, SDA3_D, SEL_I2C03_3), 716 PINMUX_IPSR_GPSR(IP5_11_8, PWM3_B), 717 PINMUX_IPSR_GPSR(IP5_11_8, A9), 718 PINMUX_IPSR_GPSR(IP5_15_12, DU0_DG2), 719 PINMUX_IPSR_MSEL(IP5_15_12, RX4_D, SEL_SCIF4_3), 720 PINMUX_IPSR_GPSR(IP5_15_12, A10), 721 PINMUX_IPSR_GPSR(IP5_19_16, DU0_DG3), 722 PINMUX_IPSR_MSEL(IP5_19_16, TX4_D, SEL_SCIF4_3), 723 PINMUX_IPSR_GPSR(IP5_19_16, PWM4_B), 724 PINMUX_IPSR_GPSR(IP5_19_16, A11), 725 PINMUX_IPSR_GPSR(IP5_23_20, DU0_DG4), 726 PINMUX_IPSR_MSEL(IP5_23_20, HRX0_A, SEL_HSCIF0_0), 727 PINMUX_IPSR_GPSR(IP5_23_20, A12), 728 PINMUX_IPSR_GPSR(IP5_27_24, DU0_DG5), 729 PINMUX_IPSR_MSEL(IP5_27_24, HTX0_A, SEL_HSCIF0_0), 730 PINMUX_IPSR_GPSR(IP5_27_24, PWM5_B), 731 PINMUX_IPSR_GPSR(IP5_27_24, A13), 732 PINMUX_IPSR_GPSR(IP5_31_28, DU0_DG6), 733 PINMUX_IPSR_MSEL(IP5_31_28, HRX1_C, SEL_HSCIF1_2), 734 PINMUX_IPSR_GPSR(IP5_31_28, A14), 735 736 /* IPSR6 */ 737 PINMUX_IPSR_GPSR(IP6_3_0, DU0_DG7), 738 PINMUX_IPSR_MSEL(IP6_3_0, HTX1_C, SEL_HSCIF1_2), 739 PINMUX_IPSR_GPSR(IP6_3_0, PWM6_B), 740 PINMUX_IPSR_GPSR(IP6_3_0, A15), 741 PINMUX_IPSR_GPSR(IP6_7_4, DU0_DB0), 742 PINMUX_IPSR_MSEL(IP6_7_4, SCL4_D, SEL_I2C04_3), 743 PINMUX_IPSR_MSEL(IP6_7_4, CAN0_RX_C, SEL_CAN0_2), 744 PINMUX_IPSR_GPSR(IP6_7_4, A16), 745 PINMUX_IPSR_GPSR(IP6_11_8, DU0_DB1), 746 PINMUX_IPSR_MSEL(IP6_11_8, SDA4_D, SEL_I2C04_3), 747 PINMUX_IPSR_MSEL(IP6_11_8, CAN0_TX_C, SEL_CAN0_2), 748 PINMUX_IPSR_GPSR(IP6_11_8, A17), 749 PINMUX_IPSR_GPSR(IP6_15_12, DU0_DB2), 750 PINMUX_IPSR_GPSR(IP6_15_12, HCTS0_N), 751 PINMUX_IPSR_GPSR(IP6_15_12, A18), 752 PINMUX_IPSR_GPSR(IP6_19_16, DU0_DB3), 753 PINMUX_IPSR_GPSR(IP6_19_16, HRTS0_N), 754 PINMUX_IPSR_GPSR(IP6_19_16, A19), 755 PINMUX_IPSR_GPSR(IP6_23_20, DU0_DB4), 756 PINMUX_IPSR_MSEL(IP6_23_20, HCTS1_N_C, SEL_HSCIF1_2), 757 PINMUX_IPSR_GPSR(IP6_23_20, A20), 758 PINMUX_IPSR_GPSR(IP6_27_24, DU0_DB5), 759 PINMUX_IPSR_MSEL(IP6_27_24, HRTS1_N_C, SEL_HSCIF1_2), 760 PINMUX_IPSR_GPSR(IP6_27_24, A21), 761 PINMUX_IPSR_GPSR(IP6_31_28, DU0_DB6), 762 PINMUX_IPSR_GPSR(IP6_31_28, A22), 763 764 /* IPSR7 */ 765 PINMUX_IPSR_GPSR(IP7_3_0, DU0_DB7), 766 PINMUX_IPSR_GPSR(IP7_3_0, A23), 767 PINMUX_IPSR_GPSR(IP7_7_4, DU0_DOTCLKIN), 768 PINMUX_IPSR_GPSR(IP7_7_4, A24), 769 PINMUX_IPSR_GPSR(IP7_11_8, DU0_DOTCLKOUT0), 770 PINMUX_IPSR_GPSR(IP7_11_8, A25), 771 PINMUX_IPSR_GPSR(IP7_15_12, DU0_DOTCLKOUT1), 772 PINMUX_IPSR_MSEL(IP7_15_12, MSIOF2_RXD_B, SEL_MSIOF2_1), 773 PINMUX_IPSR_GPSR(IP7_15_12, CS1_N_A26), 774 PINMUX_IPSR_GPSR(IP7_19_16, DU0_EXHSYNC_DU0_HSYNC), 775 PINMUX_IPSR_MSEL(IP7_19_16, MSIOF2_TXD_B, SEL_MSIOF2_1), 776 PINMUX_IPSR_GPSR(IP7_19_16, DREQ0_N), 777 PINMUX_IPSR_GPSR(IP7_23_20, DU0_EXVSYNC_DU0_VSYNC), 778 PINMUX_IPSR_MSEL(IP7_23_20, MSIOF2_SYNC_B, SEL_MSIOF2_1), 779 PINMUX_IPSR_GPSR(IP7_23_20, DACK0), 780 PINMUX_IPSR_GPSR(IP7_27_24, DU0_EXODDF_DU0_ODDF_DISP_CDE), 781 PINMUX_IPSR_MSEL(IP7_27_24, MSIOF2_SCK_B, SEL_MSIOF2_1), 782 PINMUX_IPSR_GPSR(IP7_27_24, DRACK0), 783 PINMUX_IPSR_GPSR(IP7_31_28, DU0_DISP), 784 PINMUX_IPSR_MSEL(IP7_31_28, CAN1_RX_C, SEL_CAN1_2), 785 786 /* IPSR8 */ 787 PINMUX_IPSR_GPSR(IP8_3_0, DU0_CDE), 788 PINMUX_IPSR_MSEL(IP8_3_0, CAN1_TX_C, SEL_CAN1_2), 789 PINMUX_IPSR_GPSR(IP8_7_4, VI1_CLK), 790 PINMUX_IPSR_GPSR(IP8_7_4, AVB_RX_CLK), 791 PINMUX_IPSR_GPSR(IP8_7_4, ETH_REF_CLK), 792 PINMUX_IPSR_GPSR(IP8_11_8, VI1_DATA0), 793 PINMUX_IPSR_GPSR(IP8_11_8, AVB_RX_DV), 794 PINMUX_IPSR_GPSR(IP8_11_8, ETH_CRS_DV), 795 PINMUX_IPSR_GPSR(IP8_15_12, VI1_DATA1), 796 PINMUX_IPSR_GPSR(IP8_15_12, AVB_RXD0), 797 PINMUX_IPSR_GPSR(IP8_15_12, ETH_RXD0), 798 PINMUX_IPSR_GPSR(IP8_19_16, VI1_DATA2), 799 PINMUX_IPSR_GPSR(IP8_19_16, AVB_RXD1), 800 PINMUX_IPSR_GPSR(IP8_19_16, ETH_RXD1), 801 PINMUX_IPSR_GPSR(IP8_23_20, VI1_DATA3), 802 PINMUX_IPSR_GPSR(IP8_23_20, AVB_RXD2), 803 PINMUX_IPSR_GPSR(IP8_23_20, ETH_MDIO), 804 PINMUX_IPSR_GPSR(IP8_27_24, VI1_DATA4), 805 PINMUX_IPSR_GPSR(IP8_27_24, AVB_RXD3), 806 PINMUX_IPSR_GPSR(IP8_27_24, ETH_RX_ER), 807 PINMUX_IPSR_GPSR(IP8_31_28, VI1_DATA5), 808 PINMUX_IPSR_GPSR(IP8_31_28, AVB_RXD4), 809 PINMUX_IPSR_GPSR(IP8_31_28, ETH_LINK), 810 811 /* IPSR9 */ 812 PINMUX_IPSR_GPSR(IP9_3_0, VI1_DATA6), 813 PINMUX_IPSR_GPSR(IP9_3_0, AVB_RXD5), 814 PINMUX_IPSR_GPSR(IP9_3_0, ETH_TXD1), 815 PINMUX_IPSR_GPSR(IP9_7_4, VI1_DATA7), 816 PINMUX_IPSR_GPSR(IP9_7_4, AVB_RXD6), 817 PINMUX_IPSR_GPSR(IP9_7_4, ETH_TX_EN), 818 PINMUX_IPSR_GPSR(IP9_11_8, VI1_CLKENB), 819 PINMUX_IPSR_MSEL(IP9_11_8, SCL3_A, SEL_I2C03_0), 820 PINMUX_IPSR_GPSR(IP9_11_8, AVB_RXD7), 821 PINMUX_IPSR_GPSR(IP9_11_8, ETH_MAGIC), 822 PINMUX_IPSR_GPSR(IP9_15_12, VI1_FIELD), 823 PINMUX_IPSR_MSEL(IP9_15_12, SDA3_A, SEL_I2C03_0), 824 PINMUX_IPSR_GPSR(IP9_15_12, AVB_RX_ER), 825 PINMUX_IPSR_GPSR(IP9_15_12, ETH_TXD0), 826 PINMUX_IPSR_GPSR(IP9_19_16, VI1_HSYNC_N), 827 PINMUX_IPSR_MSEL(IP9_19_16, RX0_B, SEL_SCIF0_1), 828 PINMUX_IPSR_MSEL(IP9_19_16, SCL0_C, SEL_I2C00_2), 829 PINMUX_IPSR_GPSR(IP9_19_16, AVB_GTXREFCLK), 830 PINMUX_IPSR_GPSR(IP9_19_16, ETH_MDC), 831 PINMUX_IPSR_GPSR(IP9_23_20, VI1_VSYNC_N), 832 PINMUX_IPSR_MSEL(IP9_23_20, TX0_B, SEL_SCIF0_1), 833 PINMUX_IPSR_MSEL(IP9_23_20, SDA0_C, SEL_I2C00_2), 834 PINMUX_IPSR_GPSR(IP9_23_20, AUDIO_CLKOUT_B), 835 PINMUX_IPSR_GPSR(IP9_23_20, AVB_TX_CLK), 836 PINMUX_IPSR_GPSR(IP9_27_24, VI1_DATA8), 837 PINMUX_IPSR_MSEL(IP9_27_24, SCL2_B, SEL_I2C02_1), 838 PINMUX_IPSR_GPSR(IP9_27_24, AVB_TX_EN), 839 PINMUX_IPSR_GPSR(IP9_31_28, VI1_DATA9), 840 PINMUX_IPSR_MSEL(IP9_31_28, SDA2_B, SEL_I2C02_1), 841 PINMUX_IPSR_GPSR(IP9_31_28, AVB_TXD0), 842 843 /* IPSR10 */ 844 PINMUX_IPSR_GPSR(IP10_3_0, VI1_DATA10), 845 PINMUX_IPSR_MSEL(IP10_3_0, CAN0_RX_B, SEL_CAN0_1), 846 PINMUX_IPSR_GPSR(IP10_3_0, AVB_TXD1), 847 PINMUX_IPSR_GPSR(IP10_7_4, VI1_DATA11), 848 PINMUX_IPSR_MSEL(IP10_7_4, CAN0_TX_B, SEL_CAN0_1), 849 PINMUX_IPSR_GPSR(IP10_7_4, AVB_TXD2), 850 PINMUX_IPSR_GPSR(IP10_11_8, AVB_TXD3), 851 PINMUX_IPSR_MSEL(IP10_11_8, AUDIO_CLKA_B, SEL_ADGA_1), 852 PINMUX_IPSR_MSEL(IP10_11_8, SSI_SCK1_D, SEL_SSI1_3), 853 PINMUX_IPSR_MSEL(IP10_11_8, RX5_F, SEL_SCIF5_5), 854 PINMUX_IPSR_MSEL(IP10_11_8, MSIOF0_RXD_B, SEL_MSIOF0_1), 855 PINMUX_IPSR_GPSR(IP10_15_12, AVB_TXD4), 856 PINMUX_IPSR_MSEL(IP10_15_12, AUDIO_CLKB_B, SEL_ADGB_1), 857 PINMUX_IPSR_MSEL(IP10_15_12, SSI_WS1_D, SEL_SSI1_3), 858 PINMUX_IPSR_MSEL(IP10_15_12, TX5_F, SEL_SCIF5_5), 859 PINMUX_IPSR_MSEL(IP10_15_12, MSIOF0_TXD_B, SEL_MSIOF0_1), 860 PINMUX_IPSR_GPSR(IP10_19_16, AVB_TXD5), 861 PINMUX_IPSR_MSEL(IP10_19_16, SCIF_CLK_B, SEL_SCIFCLK_1), 862 PINMUX_IPSR_MSEL(IP10_19_16, AUDIO_CLKC_B, SEL_ADGC_1), 863 PINMUX_IPSR_MSEL(IP10_19_16, SSI_SDATA1_D, SEL_SSI1_3), 864 PINMUX_IPSR_MSEL(IP10_19_16, MSIOF0_SCK_B, SEL_MSIOF0_1), 865 PINMUX_IPSR_MSEL(IP10_23_20, SCL0_A, SEL_I2C00_0), 866 PINMUX_IPSR_MSEL(IP10_23_20, RX0_C, SEL_SCIF0_2), 867 PINMUX_IPSR_GPSR(IP10_23_20, PWM5_A), 868 PINMUX_IPSR_MSEL(IP10_23_20, TCLK1_B, SEL_TMU1_1), 869 PINMUX_IPSR_GPSR(IP10_23_20, AVB_TXD6), 870 PINMUX_IPSR_MSEL(IP10_23_20, CAN1_RX_D, SEL_CAN1_3), 871 PINMUX_IPSR_MSEL(IP10_23_20, MSIOF0_SYNC_B, SEL_MSIOF0_1), 872 PINMUX_IPSR_MSEL(IP10_27_24, SDA0_A, SEL_I2C00_0), 873 PINMUX_IPSR_MSEL(IP10_27_24, TX0_C, SEL_SCIF0_2), 874 PINMUX_IPSR_GPSR(IP10_27_24, IRQ5), 875 PINMUX_IPSR_MSEL(IP10_27_24, CAN_CLK_A, SEL_CANCLK_0), 876 PINMUX_IPSR_GPSR(IP10_27_24, AVB_GTX_CLK), 877 PINMUX_IPSR_MSEL(IP10_27_24, CAN1_TX_D, SEL_CAN1_3), 878 PINMUX_IPSR_GPSR(IP10_27_24, DVC_MUTE), 879 PINMUX_IPSR_MSEL(IP10_31_28, SCL1_A, SEL_I2C01_0), 880 PINMUX_IPSR_MSEL(IP10_31_28, RX4_A, SEL_SCIF4_0), 881 PINMUX_IPSR_GPSR(IP10_31_28, PWM5_D), 882 PINMUX_IPSR_GPSR(IP10_31_28, DU1_DR0), 883 PINMUX_IPSR_MSEL(IP10_31_28, SSI_SCK6_B, SEL_SSI6_1), 884 PINMUX_IPSR_GPSR(IP10_31_28, VI0_G0), 885 886 /* IPSR11 */ 887 PINMUX_IPSR_MSEL(IP11_3_0, SDA1_A, SEL_I2C01_0), 888 PINMUX_IPSR_MSEL(IP11_3_0, TX4_A, SEL_SCIF4_0), 889 PINMUX_IPSR_GPSR(IP11_3_0, DU1_DR1), 890 PINMUX_IPSR_MSEL(IP11_3_0, SSI_WS6_B, SEL_SSI6_1), 891 PINMUX_IPSR_GPSR(IP11_3_0, VI0_G1), 892 PINMUX_IPSR_MSEL(IP11_7_4, MSIOF0_RXD_A, SEL_MSIOF0_0), 893 PINMUX_IPSR_MSEL(IP11_7_4, RX5_A, SEL_SCIF5_0), 894 PINMUX_IPSR_MSEL(IP11_7_4, SCL2_C, SEL_I2C02_2), 895 PINMUX_IPSR_GPSR(IP11_7_4, DU1_DR2), 896 PINMUX_IPSR_GPSR(IP11_7_4, QSPI1_MOSI_QSPI1_IO0), 897 PINMUX_IPSR_MSEL(IP11_7_4, SSI_SDATA6_B, SEL_SSI6_1), 898 PINMUX_IPSR_GPSR(IP11_7_4, VI0_G2), 899 PINMUX_IPSR_MSEL(IP11_11_8, MSIOF0_TXD_A, SEL_MSIOF0_0), 900 PINMUX_IPSR_MSEL(IP11_11_8, TX5_A, SEL_SCIF5_0), 901 PINMUX_IPSR_MSEL(IP11_11_8, SDA2_C, SEL_I2C02_2), 902 PINMUX_IPSR_GPSR(IP11_11_8, DU1_DR3), 903 PINMUX_IPSR_GPSR(IP11_11_8, QSPI1_MISO_QSPI1_IO1), 904 PINMUX_IPSR_MSEL(IP11_11_8, SSI_WS78_B, SEL_SSI7_1), 905 PINMUX_IPSR_GPSR(IP11_11_8, VI0_G3), 906 PINMUX_IPSR_MSEL(IP11_15_12, MSIOF0_SCK_A, SEL_MSIOF0_0), 907 PINMUX_IPSR_GPSR(IP11_15_12, IRQ0), 908 PINMUX_IPSR_GPSR(IP11_15_12, DU1_DR4), 909 PINMUX_IPSR_GPSR(IP11_15_12, QSPI1_SPCLK), 910 PINMUX_IPSR_MSEL(IP11_15_12, SSI_SCK78_B, SEL_SSI7_1), 911 PINMUX_IPSR_GPSR(IP11_15_12, VI0_G4), 912 PINMUX_IPSR_MSEL(IP11_19_16, MSIOF0_SYNC_A, SEL_MSIOF0_0), 913 PINMUX_IPSR_GPSR(IP11_19_16, PWM1_A), 914 PINMUX_IPSR_GPSR(IP11_19_16, DU1_DR5), 915 PINMUX_IPSR_GPSR(IP11_19_16, QSPI1_IO2), 916 PINMUX_IPSR_MSEL(IP11_19_16, SSI_SDATA7_B, SEL_SSI7_1), 917 PINMUX_IPSR_MSEL(IP11_23_20, MSIOF0_SS1_A, SEL_MSIOF0_0), 918 PINMUX_IPSR_GPSR(IP11_23_20, DU1_DR6), 919 PINMUX_IPSR_GPSR(IP11_23_20, QSPI1_IO3), 920 PINMUX_IPSR_MSEL(IP11_23_20, SSI_SDATA8_B, SEL_SSI8_1), 921 PINMUX_IPSR_MSEL(IP11_27_24, MSIOF0_SS2_A, SEL_MSIOF0_0), 922 PINMUX_IPSR_GPSR(IP11_27_24, DU1_DR7), 923 PINMUX_IPSR_GPSR(IP11_27_24, QSPI1_SSL), 924 PINMUX_IPSR_MSEL(IP11_31_28, HRX1_A, SEL_HSCIF1_0), 925 PINMUX_IPSR_MSEL(IP11_31_28, SCL4_A, SEL_I2C04_0), 926 PINMUX_IPSR_GPSR(IP11_31_28, PWM6_A), 927 PINMUX_IPSR_GPSR(IP11_31_28, DU1_DG0), 928 PINMUX_IPSR_MSEL(IP11_31_28, RX0_A, SEL_SCIF0_0), 929 930 /* IPSR12 */ 931 PINMUX_IPSR_MSEL(IP12_3_0, HTX1_A, SEL_HSCIF1_0), 932 PINMUX_IPSR_MSEL(IP12_3_0, SDA4_A, SEL_I2C04_0), 933 PINMUX_IPSR_GPSR(IP12_3_0, DU1_DG1), 934 PINMUX_IPSR_MSEL(IP12_3_0, TX0_A, SEL_SCIF0_0), 935 PINMUX_IPSR_MSEL(IP12_7_4, HCTS1_N_A, SEL_HSCIF1_0), 936 PINMUX_IPSR_GPSR(IP12_7_4, PWM2_A), 937 PINMUX_IPSR_GPSR(IP12_7_4, DU1_DG2), 938 PINMUX_IPSR_MSEL(IP12_7_4, REMOCON_B, SEL_RCN_1), 939 PINMUX_IPSR_MSEL(IP12_11_8, HRTS1_N_A, SEL_HSCIF1_0), 940 PINMUX_IPSR_GPSR(IP12_11_8, DU1_DG3), 941 PINMUX_IPSR_MSEL(IP12_11_8, SSI_WS1_B, SEL_SSI1_1), 942 PINMUX_IPSR_GPSR(IP12_11_8, IRQ1), 943 PINMUX_IPSR_GPSR(IP12_15_12, SD2_CLK), 944 PINMUX_IPSR_GPSR(IP12_15_12, HSCK1), 945 PINMUX_IPSR_GPSR(IP12_15_12, DU1_DG4), 946 PINMUX_IPSR_MSEL(IP12_15_12, SSI_SCK1_B, SEL_SSI1_1), 947 PINMUX_IPSR_GPSR(IP12_19_16, SD2_CMD), 948 PINMUX_IPSR_MSEL(IP12_19_16, SCIF1_SCK_A, SEL_SCIF1_0), 949 PINMUX_IPSR_MSEL(IP12_19_16, TCLK2_A, SEL_TMU2_0), 950 PINMUX_IPSR_GPSR(IP12_19_16, DU1_DG5), 951 PINMUX_IPSR_MSEL(IP12_19_16, SSI_SCK2_B, SEL_SSI2_1), 952 PINMUX_IPSR_GPSR(IP12_19_16, PWM3_A), 953 PINMUX_IPSR_GPSR(IP12_23_20, SD2_DAT0), 954 PINMUX_IPSR_MSEL(IP12_23_20, RX1_A, SEL_SCIF1_0), 955 PINMUX_IPSR_MSEL(IP12_23_20, SCL1_E, SEL_I2C01_4), 956 PINMUX_IPSR_GPSR(IP12_23_20, DU1_DG6), 957 PINMUX_IPSR_MSEL(IP12_23_20, SSI_SDATA1_B, SEL_SSI1_1), 958 PINMUX_IPSR_GPSR(IP12_27_24, SD2_DAT1), 959 PINMUX_IPSR_MSEL(IP12_27_24, TX1_A, SEL_SCIF1_0), 960 PINMUX_IPSR_MSEL(IP12_27_24, SDA1_E, SEL_I2C01_4), 961 PINMUX_IPSR_GPSR(IP12_27_24, DU1_DG7), 962 PINMUX_IPSR_MSEL(IP12_27_24, SSI_WS2_B, SEL_SSI2_1), 963 PINMUX_IPSR_GPSR(IP12_31_28, SD2_DAT2), 964 PINMUX_IPSR_MSEL(IP12_31_28, RX2_A, SEL_SCIF2_0), 965 PINMUX_IPSR_GPSR(IP12_31_28, DU1_DB0), 966 PINMUX_IPSR_MSEL(IP12_31_28, SSI_SDATA2_B, SEL_SSI2_1), 967 968 /* IPSR13 */ 969 PINMUX_IPSR_GPSR(IP13_3_0, SD2_DAT3), 970 PINMUX_IPSR_MSEL(IP13_3_0, TX2_A, SEL_SCIF2_0), 971 PINMUX_IPSR_GPSR(IP13_3_0, DU1_DB1), 972 PINMUX_IPSR_MSEL(IP13_3_0, SSI_WS9_B, SEL_SSI9_1), 973 PINMUX_IPSR_GPSR(IP13_7_4, SD2_CD), 974 PINMUX_IPSR_MSEL(IP13_7_4, SCIF2_SCK_A, SEL_SCIF2_CLK_0), 975 PINMUX_IPSR_GPSR(IP13_7_4, DU1_DB2), 976 PINMUX_IPSR_MSEL(IP13_7_4, SSI_SCK9_B, SEL_SSI9_1), 977 PINMUX_IPSR_GPSR(IP13_11_8, SD2_WP), 978 PINMUX_IPSR_GPSR(IP13_11_8, SCIF3_SCK), 979 PINMUX_IPSR_GPSR(IP13_11_8, DU1_DB3), 980 PINMUX_IPSR_MSEL(IP13_11_8, SSI_SDATA9_B, SEL_SSI9_1), 981 PINMUX_IPSR_MSEL(IP13_15_12, RX3_A, SEL_SCIF3_0), 982 PINMUX_IPSR_MSEL(IP13_15_12, SCL1_C, SEL_I2C01_2), 983 PINMUX_IPSR_MSEL(IP13_15_12, MSIOF1_RXD_B, SEL_MSIOF1_1), 984 PINMUX_IPSR_GPSR(IP13_15_12, DU1_DB4), 985 PINMUX_IPSR_MSEL(IP13_15_12, AUDIO_CLKA_C, SEL_ADGA_2), 986 PINMUX_IPSR_MSEL(IP13_15_12, SSI_SDATA4_B, SEL_SSI4_1), 987 PINMUX_IPSR_MSEL(IP13_19_16, TX3_A, SEL_SCIF3_0), 988 PINMUX_IPSR_MSEL(IP13_19_16, SDA1_C, SEL_I2C01_2), 989 PINMUX_IPSR_MSEL(IP13_19_16, MSIOF1_TXD_B, SEL_MSIOF1_1), 990 PINMUX_IPSR_GPSR(IP13_19_16, DU1_DB5), 991 PINMUX_IPSR_MSEL(IP13_19_16, AUDIO_CLKB_C, SEL_ADGB_2), 992 PINMUX_IPSR_MSEL(IP13_19_16, SSI_WS4_B, SEL_SSI4_1), 993 PINMUX_IPSR_MSEL(IP13_23_20, SCL2_A, SEL_I2C02_0), 994 PINMUX_IPSR_MSEL(IP13_23_20, MSIOF1_SCK_B, SEL_MSIOF1_1), 995 PINMUX_IPSR_GPSR(IP13_23_20, DU1_DB6), 996 PINMUX_IPSR_MSEL(IP13_23_20, AUDIO_CLKC_C, SEL_ADGC_2), 997 PINMUX_IPSR_MSEL(IP13_23_20, SSI_SCK4_B, SEL_SSI4_1), 998 PINMUX_IPSR_MSEL(IP13_27_24, SDA2_A, SEL_I2C02_0), 999 PINMUX_IPSR_MSEL(IP13_27_24, MSIOF1_SYNC_B, SEL_MSIOF1_1), 1000 PINMUX_IPSR_GPSR(IP13_27_24, DU1_DB7), 1001 PINMUX_IPSR_GPSR(IP13_27_24, AUDIO_CLKOUT_C), 1002 PINMUX_IPSR_MSEL(IP13_31_28, SSI_SCK5_A, SEL_SSI5_0), 1003 PINMUX_IPSR_GPSR(IP13_31_28, DU1_DOTCLKOUT1), 1004 1005 /* IPSR14 */ 1006 PINMUX_IPSR_MSEL(IP14_3_0, SSI_WS5_A, SEL_SSI5_0), 1007 PINMUX_IPSR_MSEL(IP14_3_0, SCL3_C, SEL_I2C03_2), 1008 PINMUX_IPSR_GPSR(IP14_3_0, DU1_DOTCLKIN), 1009 PINMUX_IPSR_MSEL(IP14_7_4, SSI_SDATA5_A, SEL_SSI5_0), 1010 PINMUX_IPSR_MSEL(IP14_7_4, SDA3_C, SEL_I2C03_2), 1011 PINMUX_IPSR_GPSR(IP14_7_4, DU1_DOTCLKOUT0), 1012 PINMUX_IPSR_MSEL(IP14_11_8, SSI_SCK6_A, SEL_SSI6_0), 1013 PINMUX_IPSR_GPSR(IP14_11_8, DU1_EXODDF_DU1_ODDF_DISP_CDE), 1014 PINMUX_IPSR_MSEL(IP14_15_12, SSI_WS6_A, SEL_SSI6_0), 1015 PINMUX_IPSR_MSEL(IP14_15_12, SCL4_C, SEL_I2C04_2), 1016 PINMUX_IPSR_GPSR(IP14_15_12, DU1_EXHSYNC_DU1_HSYNC), 1017 PINMUX_IPSR_MSEL(IP14_19_16, SSI_SDATA6_A, SEL_SSI6_0), 1018 PINMUX_IPSR_MSEL(IP14_19_16, SDA4_C, SEL_I2C04_2), 1019 PINMUX_IPSR_GPSR(IP14_19_16, DU1_EXVSYNC_DU1_VSYNC), 1020 PINMUX_IPSR_MSEL(IP14_23_20, SSI_SCK78_A, SEL_SSI7_0), 1021 PINMUX_IPSR_MSEL(IP14_23_20, SDA4_E, SEL_I2C04_4), 1022 PINMUX_IPSR_GPSR(IP14_23_20, DU1_DISP), 1023 PINMUX_IPSR_MSEL(IP14_27_24, SSI_WS78_A, SEL_SSI7_0), 1024 PINMUX_IPSR_MSEL(IP14_27_24, SCL4_E, SEL_I2C04_4), 1025 PINMUX_IPSR_GPSR(IP14_27_24, DU1_CDE), 1026 PINMUX_IPSR_MSEL(IP14_31_28, SSI_SDATA7_A, SEL_SSI7_0), 1027 PINMUX_IPSR_GPSR(IP14_31_28, IRQ8), 1028 PINMUX_IPSR_MSEL(IP14_31_28, AUDIO_CLKA_D, SEL_ADGA_3), 1029 PINMUX_IPSR_MSEL(IP14_31_28, CAN_CLK_D, SEL_CANCLK_3), 1030 PINMUX_IPSR_GPSR(IP14_31_28, VI0_G5), 1031 1032 /* IPSR15 */ 1033 PINMUX_IPSR_MSEL(IP15_3_0, SSI_SCK0129_A, SEL_SSI0_0), 1034 PINMUX_IPSR_MSEL(IP15_3_0, MSIOF1_RXD_A, SEL_MSIOF1_0), 1035 PINMUX_IPSR_MSEL(IP15_3_0, RX5_D, SEL_SCIF5_3), 1036 PINMUX_IPSR_GPSR(IP15_3_0, VI0_G6), 1037 PINMUX_IPSR_MSEL(IP15_7_4, SSI_WS0129_A, SEL_SSI0_0), 1038 PINMUX_IPSR_MSEL(IP15_7_4, MSIOF1_TXD_A, SEL_MSIOF1_0), 1039 PINMUX_IPSR_MSEL(IP15_7_4, TX5_D, SEL_SCIF5_3), 1040 PINMUX_IPSR_GPSR(IP15_7_4, VI0_G7), 1041 PINMUX_IPSR_MSEL(IP15_11_8, SSI_SDATA0_A, SEL_SSI0_0), 1042 PINMUX_IPSR_MSEL(IP15_11_8, MSIOF1_SYNC_A, SEL_MSIOF1_0), 1043 PINMUX_IPSR_GPSR(IP15_11_8, PWM0_C), 1044 PINMUX_IPSR_GPSR(IP15_11_8, VI0_R0), 1045 PINMUX_IPSR_GPSR(IP15_15_12, SSI_SCK34), 1046 PINMUX_IPSR_MSEL(IP15_15_12, MSIOF1_SCK_A, SEL_MSIOF1_0), 1047 PINMUX_IPSR_GPSR(IP15_15_12, AVB_MDC), 1048 PINMUX_IPSR_GPSR(IP15_15_12, DACK1), 1049 PINMUX_IPSR_GPSR(IP15_15_12, VI0_R1), 1050 PINMUX_IPSR_GPSR(IP15_19_16, SSI_WS34), 1051 PINMUX_IPSR_MSEL(IP15_19_16, MSIOF1_SS1_A, SEL_MSIOF1_0), 1052 PINMUX_IPSR_GPSR(IP15_19_16, AVB_MDIO), 1053 PINMUX_IPSR_MSEL(IP15_19_16, CAN1_RX_A, SEL_CAN1_0), 1054 PINMUX_IPSR_GPSR(IP15_19_16, DREQ1_N), 1055 PINMUX_IPSR_GPSR(IP15_19_16, VI0_R2), 1056 PINMUX_IPSR_GPSR(IP15_23_20, SSI_SDATA3), 1057 PINMUX_IPSR_MSEL(IP15_23_20, MSIOF1_SS2_A, SEL_MSIOF1_0), 1058 PINMUX_IPSR_GPSR(IP15_23_20, AVB_LINK), 1059 PINMUX_IPSR_MSEL(IP15_23_20, CAN1_TX_A, SEL_CAN1_0), 1060 PINMUX_IPSR_GPSR(IP15_23_20, DREQ2_N), 1061 PINMUX_IPSR_GPSR(IP15_23_20, VI0_R3), 1062 PINMUX_IPSR_MSEL(IP15_27_24, SSI_SCK4_A, SEL_SSI4_0), 1063 PINMUX_IPSR_GPSR(IP15_27_24, AVB_MAGIC), 1064 PINMUX_IPSR_GPSR(IP15_27_24, VI0_R4), 1065 PINMUX_IPSR_MSEL(IP15_31_28, SSI_WS4_A, SEL_SSI4_0), 1066 PINMUX_IPSR_GPSR(IP15_31_28, AVB_PHY_INT), 1067 PINMUX_IPSR_GPSR(IP15_31_28, VI0_R5), 1068 1069 /* IPSR16 */ 1070 PINMUX_IPSR_MSEL(IP16_3_0, SSI_SDATA4_A, SEL_SSI4_0), 1071 PINMUX_IPSR_GPSR(IP16_3_0, AVB_CRS), 1072 PINMUX_IPSR_GPSR(IP16_3_0, VI0_R6), 1073 PINMUX_IPSR_MSEL(IP16_7_4, SSI_SCK1_A, SEL_SSI1_0), 1074 PINMUX_IPSR_MSEL(IP16_7_4, SCIF1_SCK_B, SEL_SCIF1_1), 1075 PINMUX_IPSR_GPSR(IP16_7_4, PWM1_D), 1076 PINMUX_IPSR_GPSR(IP16_7_4, IRQ9), 1077 PINMUX_IPSR_MSEL(IP16_7_4, REMOCON_A, SEL_RCN_0), 1078 PINMUX_IPSR_GPSR(IP16_7_4, DACK2), 1079 PINMUX_IPSR_GPSR(IP16_7_4, VI0_CLK), 1080 PINMUX_IPSR_GPSR(IP16_7_4, AVB_COL), 1081 PINMUX_IPSR_MSEL(IP16_11_8, SSI_SDATA8_A, SEL_SSI8_0), 1082 PINMUX_IPSR_MSEL(IP16_11_8, RX1_B, SEL_SCIF1_1), 1083 PINMUX_IPSR_MSEL(IP16_11_8, CAN0_RX_D, SEL_CAN0_3), 1084 PINMUX_IPSR_MSEL(IP16_11_8, AVB_AVTP_CAPTURE_B, SEL_AVB_1), 1085 PINMUX_IPSR_GPSR(IP16_11_8, VI0_R7), 1086 PINMUX_IPSR_MSEL(IP16_15_12, SSI_WS1_A, SEL_SSI1_0), 1087 PINMUX_IPSR_MSEL(IP16_15_12, TX1_B, SEL_SCIF1_1), 1088 PINMUX_IPSR_MSEL(IP16_15_12, CAN0_TX_D, SEL_CAN0_3), 1089 PINMUX_IPSR_MSEL(IP16_15_12, AVB_AVTP_MATCH_B, SEL_AVB_1), 1090 PINMUX_IPSR_GPSR(IP16_15_12, VI0_DATA0_VI0_B0), 1091 PINMUX_IPSR_MSEL(IP16_19_16, SSI_SDATA1_A, SEL_SSI1_0), 1092 PINMUX_IPSR_MSEL(IP16_19_16, HRX1_B, SEL_HSCIF1_1), 1093 PINMUX_IPSR_GPSR(IP16_19_16, VI0_DATA1_VI0_B1), 1094 PINMUX_IPSR_MSEL(IP16_23_20, SSI_SCK2_A, SEL_SSI2_0), 1095 PINMUX_IPSR_MSEL(IP16_23_20, HTX1_B, SEL_HSCIF1_1), 1096 PINMUX_IPSR_GPSR(IP16_23_20, AVB_TXD7), 1097 PINMUX_IPSR_GPSR(IP16_23_20, VI0_DATA2_VI0_B2), 1098 PINMUX_IPSR_MSEL(IP16_27_24, SSI_WS2_A, SEL_SSI2_0), 1099 PINMUX_IPSR_MSEL(IP16_27_24, HCTS1_N_B, SEL_HSCIF1_1), 1100 PINMUX_IPSR_GPSR(IP16_27_24, AVB_TX_ER), 1101 PINMUX_IPSR_GPSR(IP16_27_24, VI0_DATA3_VI0_B3), 1102 PINMUX_IPSR_MSEL(IP16_31_28, SSI_SDATA2_A, SEL_SSI2_0), 1103 PINMUX_IPSR_MSEL(IP16_31_28, HRTS1_N_B, SEL_HSCIF1_1), 1104 PINMUX_IPSR_GPSR(IP16_31_28, VI0_DATA4_VI0_B4), 1105 1106 /* IPSR17 */ 1107 PINMUX_IPSR_MSEL(IP17_3_0, SSI_SCK9_A, SEL_SSI9_0), 1108 PINMUX_IPSR_MSEL(IP17_3_0, RX2_B, SEL_SCIF2_1), 1109 PINMUX_IPSR_MSEL(IP17_3_0, SCL3_E, SEL_I2C03_4), 1110 PINMUX_IPSR_GPSR(IP17_3_0, EX_WAIT1), 1111 PINMUX_IPSR_GPSR(IP17_3_0, VI0_DATA5_VI0_B5), 1112 PINMUX_IPSR_MSEL(IP17_7_4, SSI_WS9_A, SEL_SSI9_0), 1113 PINMUX_IPSR_MSEL(IP17_7_4, TX2_B, SEL_SCIF2_1), 1114 PINMUX_IPSR_MSEL(IP17_7_4, SDA3_E, SEL_I2C03_4), 1115 PINMUX_IPSR_GPSR(IP17_7_4, VI0_DATA6_VI0_B6), 1116 PINMUX_IPSR_MSEL(IP17_11_8, SSI_SDATA9_A, SEL_SSI9_0), 1117 PINMUX_IPSR_GPSR(IP17_11_8, SCIF2_SCK_B), 1118 PINMUX_IPSR_GPSR(IP17_11_8, PWM2_D), 1119 PINMUX_IPSR_GPSR(IP17_11_8, VI0_DATA7_VI0_B7), 1120 PINMUX_IPSR_MSEL(IP17_15_12, AUDIO_CLKA_A, SEL_ADGA_0), 1121 PINMUX_IPSR_MSEL(IP17_15_12, SCL0_B, SEL_I2C00_1), 1122 PINMUX_IPSR_GPSR(IP17_15_12, VI0_CLKENB), 1123 PINMUX_IPSR_MSEL(IP17_19_16, AUDIO_CLKB_A, SEL_ADGB_0), 1124 PINMUX_IPSR_MSEL(IP17_19_16, SDA0_B, SEL_I2C00_1), 1125 PINMUX_IPSR_GPSR(IP17_19_16, VI0_FIELD), 1126 PINMUX_IPSR_MSEL(IP17_23_20, AUDIO_CLKC_A, SEL_ADGC_0), 1127 PINMUX_IPSR_MSEL(IP17_23_20, SCL4_B, SEL_I2C04_1), 1128 PINMUX_IPSR_GPSR(IP17_23_20, VI0_HSYNC_N), 1129 PINMUX_IPSR_GPSR(IP17_27_24, AUDIO_CLKOUT_A), 1130 PINMUX_IPSR_MSEL(IP17_27_24, SDA4_B, SEL_I2C04_1), 1131 PINMUX_IPSR_GPSR(IP17_27_24, VI0_VSYNC_N), 1132 }; 1133 1134 /* 1135 * Pins not associated with a GPIO port. 1136 */ 1137 enum { 1138 GP_ASSIGN_LAST(), 1139 NOGP_ALL(), 1140 }; 1141 1142 static const struct sh_pfc_pin pinmux_pins[] = { 1143 PINMUX_GPIO_GP_ALL(), 1144 PINMUX_NOGP_ALL(), 1145 }; 1146 1147 /* - AVB -------------------------------------------------------------------- */ 1148 static const unsigned int avb_col_pins[] = { 1149 RCAR_GP_PIN(5, 18), 1150 }; 1151 static const unsigned int avb_col_mux[] = { 1152 AVB_COL_MARK, 1153 }; 1154 static const unsigned int avb_crs_pins[] = { 1155 RCAR_GP_PIN(5, 17), 1156 }; 1157 static const unsigned int avb_crs_mux[] = { 1158 AVB_CRS_MARK, 1159 }; 1160 static const unsigned int avb_link_pins[] = { 1161 RCAR_GP_PIN(5, 14), 1162 }; 1163 static const unsigned int avb_link_mux[] = { 1164 AVB_LINK_MARK, 1165 }; 1166 static const unsigned int avb_magic_pins[] = { 1167 RCAR_GP_PIN(5, 15), 1168 }; 1169 static const unsigned int avb_magic_mux[] = { 1170 AVB_MAGIC_MARK, 1171 }; 1172 static const unsigned int avb_phy_int_pins[] = { 1173 RCAR_GP_PIN(5, 16), 1174 }; 1175 static const unsigned int avb_phy_int_mux[] = { 1176 AVB_PHY_INT_MARK, 1177 }; 1178 static const unsigned int avb_mdio_pins[] = { 1179 RCAR_GP_PIN(5, 12), RCAR_GP_PIN(5, 13), 1180 }; 1181 static const unsigned int avb_mdio_mux[] = { 1182 AVB_MDC_MARK, AVB_MDIO_MARK, 1183 }; 1184 static const unsigned int avb_mii_tx_rx_pins[] = { 1185 RCAR_GP_PIN(3, 12), RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15), 1186 RCAR_GP_PIN(3, 16), RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 13), 1187 1188 RCAR_GP_PIN(3, 0), RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3), 1189 RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5), RCAR_GP_PIN(3, 1), 1190 RCAR_GP_PIN(3, 10), 1191 }; 1192 static const unsigned int avb_mii_tx_rx_mux[] = { 1193 AVB_TX_CLK_MARK, AVB_TXD0_MARK, AVB_TXD1_MARK, AVB_TXD2_MARK, 1194 AVB_TXD3_MARK, AVB_TX_EN_MARK, 1195 1196 AVB_RX_CLK_MARK, AVB_RXD0_MARK, AVB_RXD1_MARK, AVB_RXD2_MARK, 1197 AVB_RXD3_MARK, AVB_RX_DV_MARK, AVB_RX_ER_MARK, 1198 }; 1199 static const unsigned int avb_mii_tx_er_pins[] = { 1200 RCAR_GP_PIN(5, 23), 1201 }; 1202 static const unsigned int avb_mii_tx_er_mux[] = { 1203 AVB_TX_ER_MARK, 1204 }; 1205 static const unsigned int avb_gmii_tx_rx_pins[] = { 1206 RCAR_GP_PIN(4, 1), RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12), 1207 RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15), RCAR_GP_PIN(3, 16), 1208 RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 28), RCAR_GP_PIN(3, 29), 1209 RCAR_GP_PIN(4, 0), RCAR_GP_PIN(5, 22), RCAR_GP_PIN(3, 13), 1210 RCAR_GP_PIN(5, 23), 1211 1212 RCAR_GP_PIN(3, 0), RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3), 1213 RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5), RCAR_GP_PIN(3, 6), 1214 RCAR_GP_PIN(3, 7), RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9), 1215 RCAR_GP_PIN(3, 1), RCAR_GP_PIN(3, 10), 1216 }; 1217 static const unsigned int avb_gmii_tx_rx_mux[] = { 1218 AVB_GTX_CLK_MARK, AVB_GTXREFCLK_MARK, AVB_TX_CLK_MARK, AVB_TXD0_MARK, 1219 AVB_TXD1_MARK, AVB_TXD2_MARK, AVB_TXD3_MARK, AVB_TXD4_MARK, 1220 AVB_TXD5_MARK, AVB_TXD6_MARK, AVB_TXD7_MARK, AVB_TX_EN_MARK, 1221 AVB_TX_ER_MARK, 1222 1223 AVB_RX_CLK_MARK, AVB_RXD0_MARK, AVB_RXD1_MARK, AVB_RXD2_MARK, 1224 AVB_RXD3_MARK, AVB_RXD4_MARK, AVB_RXD5_MARK, AVB_RXD6_MARK, 1225 AVB_RXD7_MARK, AVB_RX_DV_MARK, AVB_RX_ER_MARK, 1226 }; 1227 static const unsigned int avb_avtp_match_a_pins[] = { 1228 RCAR_GP_PIN(1, 15), 1229 }; 1230 static const unsigned int avb_avtp_match_a_mux[] = { 1231 AVB_AVTP_MATCH_A_MARK, 1232 }; 1233 static const unsigned int avb_avtp_capture_a_pins[] = { 1234 RCAR_GP_PIN(1, 14), 1235 }; 1236 static const unsigned int avb_avtp_capture_a_mux[] = { 1237 AVB_AVTP_CAPTURE_A_MARK, 1238 }; 1239 static const unsigned int avb_avtp_match_b_pins[] = { 1240 RCAR_GP_PIN(5, 20), 1241 }; 1242 static const unsigned int avb_avtp_match_b_mux[] = { 1243 AVB_AVTP_MATCH_B_MARK, 1244 }; 1245 static const unsigned int avb_avtp_capture_b_pins[] = { 1246 RCAR_GP_PIN(5, 19), 1247 }; 1248 static const unsigned int avb_avtp_capture_b_mux[] = { 1249 AVB_AVTP_CAPTURE_B_MARK, 1250 }; 1251 /* - DU --------------------------------------------------------------------- */ 1252 static const unsigned int du0_rgb666_pins[] = { 1253 /* R[7:2], G[7:2], B[7:2] */ 1254 RCAR_GP_PIN(2, 7), RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 5), 1255 RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 3), RCAR_GP_PIN(2, 2), 1256 RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 13), 1257 RCAR_GP_PIN(2, 12), RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10), 1258 RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 22), RCAR_GP_PIN(2, 21), 1259 RCAR_GP_PIN(2, 20), RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 18), 1260 }; 1261 static const unsigned int du0_rgb666_mux[] = { 1262 DU0_DR7_MARK, DU0_DR6_MARK, DU0_DR5_MARK, DU0_DR4_MARK, 1263 DU0_DR3_MARK, DU0_DR2_MARK, 1264 DU0_DG7_MARK, DU0_DG6_MARK, DU0_DG5_MARK, DU0_DG4_MARK, 1265 DU0_DG3_MARK, DU0_DG2_MARK, 1266 DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK, 1267 DU0_DB3_MARK, DU0_DB2_MARK, 1268 }; 1269 static const unsigned int du0_rgb888_pins[] = { 1270 /* R[7:0], G[7:0], B[7:0] */ 1271 RCAR_GP_PIN(2, 7), RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 5), 1272 RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 3), RCAR_GP_PIN(2, 2), 1273 RCAR_GP_PIN(2, 1), RCAR_GP_PIN(2, 0), 1274 RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 13), 1275 RCAR_GP_PIN(2, 12), RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10), 1276 RCAR_GP_PIN(2, 9), RCAR_GP_PIN(2, 8), 1277 RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 22), RCAR_GP_PIN(2, 21), 1278 RCAR_GP_PIN(2, 20), RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 18), 1279 RCAR_GP_PIN(2, 17), RCAR_GP_PIN(2, 16), 1280 }; 1281 static const unsigned int du0_rgb888_mux[] = { 1282 DU0_DR7_MARK, DU0_DR6_MARK, DU0_DR5_MARK, DU0_DR4_MARK, 1283 DU0_DR3_MARK, DU0_DR2_MARK, DU0_DR1_MARK, DU0_DR0_MARK, 1284 DU0_DG7_MARK, DU0_DG6_MARK, DU0_DG5_MARK, DU0_DG4_MARK, 1285 DU0_DG3_MARK, DU0_DG2_MARK, DU0_DG1_MARK, DU0_DG0_MARK, 1286 DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK, 1287 DU0_DB3_MARK, DU0_DB2_MARK, DU0_DB1_MARK, DU0_DB0_MARK, 1288 }; 1289 static const unsigned int du0_clk0_out_pins[] = { 1290 /* DOTCLKOUT0 */ 1291 RCAR_GP_PIN(2, 25), 1292 }; 1293 static const unsigned int du0_clk0_out_mux[] = { 1294 DU0_DOTCLKOUT0_MARK 1295 }; 1296 static const unsigned int du0_clk1_out_pins[] = { 1297 /* DOTCLKOUT1 */ 1298 RCAR_GP_PIN(2, 26), 1299 }; 1300 static const unsigned int du0_clk1_out_mux[] = { 1301 DU0_DOTCLKOUT1_MARK 1302 }; 1303 static const unsigned int du0_clk_in_pins[] = { 1304 /* CLKIN */ 1305 RCAR_GP_PIN(2, 24), 1306 }; 1307 static const unsigned int du0_clk_in_mux[] = { 1308 DU0_DOTCLKIN_MARK 1309 }; 1310 static const unsigned int du0_sync_pins[] = { 1311 /* EXVSYNC/VSYNC, EXHSYNC/HSYNC */ 1312 RCAR_GP_PIN(2, 28), RCAR_GP_PIN(2, 27), 1313 }; 1314 static const unsigned int du0_sync_mux[] = { 1315 DU0_EXVSYNC_DU0_VSYNC_MARK, DU0_EXHSYNC_DU0_HSYNC_MARK 1316 }; 1317 static const unsigned int du0_oddf_pins[] = { 1318 /* EXODDF/ODDF/DISP/CDE */ 1319 RCAR_GP_PIN(2, 29), 1320 }; 1321 static const unsigned int du0_oddf_mux[] = { 1322 DU0_EXODDF_DU0_ODDF_DISP_CDE_MARK, 1323 }; 1324 static const unsigned int du0_cde_pins[] = { 1325 /* CDE */ 1326 RCAR_GP_PIN(2, 31), 1327 }; 1328 static const unsigned int du0_cde_mux[] = { 1329 DU0_CDE_MARK, 1330 }; 1331 static const unsigned int du0_disp_pins[] = { 1332 /* DISP */ 1333 RCAR_GP_PIN(2, 30), 1334 }; 1335 static const unsigned int du0_disp_mux[] = { 1336 DU0_DISP_MARK 1337 }; 1338 static const unsigned int du1_rgb666_pins[] = { 1339 /* R[7:2], G[7:2], B[7:2] */ 1340 RCAR_GP_PIN(4, 9), RCAR_GP_PIN(4, 8), RCAR_GP_PIN(4, 7), 1341 RCAR_GP_PIN(4, 6), RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 4), 1342 RCAR_GP_PIN(4, 17), RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 15), 1343 RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 13), RCAR_GP_PIN(4, 12), 1344 RCAR_GP_PIN(4, 25), RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 23), 1345 RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 21), RCAR_GP_PIN(4, 20), 1346 }; 1347 static const unsigned int du1_rgb666_mux[] = { 1348 DU1_DR7_MARK, DU1_DR6_MARK, DU1_DR5_MARK, DU1_DR4_MARK, 1349 DU1_DR3_MARK, DU1_DR2_MARK, 1350 DU1_DG7_MARK, DU1_DG6_MARK, DU1_DG5_MARK, DU1_DG4_MARK, 1351 DU1_DG3_MARK, DU1_DG2_MARK, 1352 DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK, 1353 DU1_DB3_MARK, DU1_DB2_MARK, 1354 }; 1355 static const unsigned int du1_rgb888_pins[] = { 1356 /* R[7:0], G[7:0], B[7:0] */ 1357 RCAR_GP_PIN(4, 9), RCAR_GP_PIN(4, 8), RCAR_GP_PIN(4, 7), 1358 RCAR_GP_PIN(4, 6), RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 4), 1359 RCAR_GP_PIN(4, 3), RCAR_GP_PIN(4, 2), 1360 RCAR_GP_PIN(4, 17), RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 15), 1361 RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 13), RCAR_GP_PIN(4, 12), 1362 RCAR_GP_PIN(4, 11), RCAR_GP_PIN(4, 10), 1363 RCAR_GP_PIN(4, 25), RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 23), 1364 RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 21), RCAR_GP_PIN(4, 20), 1365 RCAR_GP_PIN(4, 19), RCAR_GP_PIN(4, 18), 1366 }; 1367 static const unsigned int du1_rgb888_mux[] = { 1368 DU1_DR7_MARK, DU1_DR6_MARK, DU1_DR5_MARK, DU1_DR4_MARK, 1369 DU1_DR3_MARK, DU1_DR2_MARK, DU1_DR1_MARK, DU1_DR0_MARK, 1370 DU1_DG7_MARK, DU1_DG6_MARK, DU1_DG5_MARK, DU1_DG4_MARK, 1371 DU1_DG3_MARK, DU1_DG2_MARK, DU1_DG1_MARK, DU1_DG0_MARK, 1372 DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK, 1373 DU1_DB3_MARK, DU1_DB2_MARK, DU1_DB1_MARK, DU1_DB0_MARK, 1374 }; 1375 static const unsigned int du1_clk0_out_pins[] = { 1376 /* DOTCLKOUT0 */ 1377 RCAR_GP_PIN(5, 2), 1378 }; 1379 static const unsigned int du1_clk0_out_mux[] = { 1380 DU1_DOTCLKOUT0_MARK 1381 }; 1382 static const unsigned int du1_clk1_out_pins[] = { 1383 /* DOTCLKOUT1 */ 1384 RCAR_GP_PIN(5, 0), 1385 }; 1386 static const unsigned int du1_clk1_out_mux[] = { 1387 DU1_DOTCLKOUT1_MARK 1388 }; 1389 static const unsigned int du1_clk_in_pins[] = { 1390 /* DOTCLKIN */ 1391 RCAR_GP_PIN(5, 1), 1392 }; 1393 static const unsigned int du1_clk_in_mux[] = { 1394 DU1_DOTCLKIN_MARK 1395 }; 1396 static const unsigned int du1_sync_pins[] = { 1397 /* EXVSYNC/VSYNC, EXHSYNC/HSYNC */ 1398 RCAR_GP_PIN(5, 5), RCAR_GP_PIN(5, 4), 1399 }; 1400 static const unsigned int du1_sync_mux[] = { 1401 DU1_EXVSYNC_DU1_VSYNC_MARK, DU1_EXHSYNC_DU1_HSYNC_MARK 1402 }; 1403 static const unsigned int du1_oddf_pins[] = { 1404 /* EXODDF/ODDF/DISP/CDE */ 1405 RCAR_GP_PIN(5, 3), 1406 }; 1407 static const unsigned int du1_oddf_mux[] = { 1408 DU1_EXODDF_DU1_ODDF_DISP_CDE_MARK, 1409 }; 1410 static const unsigned int du1_cde_pins[] = { 1411 /* CDE */ 1412 RCAR_GP_PIN(5, 7), 1413 }; 1414 static const unsigned int du1_cde_mux[] = { 1415 DU1_CDE_MARK 1416 }; 1417 static const unsigned int du1_disp_pins[] = { 1418 /* DISP */ 1419 RCAR_GP_PIN(5, 6), 1420 }; 1421 static const unsigned int du1_disp_mux[] = { 1422 DU1_DISP_MARK 1423 }; 1424 /* - I2C0 ------------------------------------------------------------------- */ 1425 static const unsigned int i2c0_a_pins[] = { 1426 /* SCL, SDA */ 1427 RCAR_GP_PIN(4, 0), RCAR_GP_PIN(4, 1), 1428 }; 1429 static const unsigned int i2c0_a_mux[] = { 1430 SCL0_A_MARK, SDA0_A_MARK, 1431 }; 1432 static const unsigned int i2c0_b_pins[] = { 1433 /* SCL, SDA */ 1434 RCAR_GP_PIN(5, 28), RCAR_GP_PIN(5, 29), 1435 }; 1436 static const unsigned int i2c0_b_mux[] = { 1437 SCL0_B_MARK, SDA0_B_MARK, 1438 }; 1439 static const unsigned int i2c0_c_pins[] = { 1440 /* SCL, SDA */ 1441 RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12), 1442 }; 1443 static const unsigned int i2c0_c_mux[] = { 1444 SCL0_C_MARK, SDA0_C_MARK, 1445 }; 1446 static const unsigned int i2c0_d_pins[] = { 1447 /* SCL, SDA */ 1448 RCAR_GP_PIN(1, 2), RCAR_GP_PIN(1, 3), 1449 }; 1450 static const unsigned int i2c0_d_mux[] = { 1451 SCL0_D_MARK, SDA0_D_MARK, 1452 }; 1453 static const unsigned int i2c0_e_pins[] = { 1454 /* SCL, SDA */ 1455 RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 3), 1456 }; 1457 static const unsigned int i2c0_e_mux[] = { 1458 SCL0_E_MARK, SDA0_E_MARK, 1459 }; 1460 /* - I2C1 ------------------------------------------------------------------- */ 1461 static const unsigned int i2c1_a_pins[] = { 1462 /* SCL, SDA */ 1463 RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3), 1464 }; 1465 static const unsigned int i2c1_a_mux[] = { 1466 SCL1_A_MARK, SDA1_A_MARK, 1467 }; 1468 static const unsigned int i2c1_b_pins[] = { 1469 /* SCL, SDA */ 1470 RCAR_GP_PIN(1, 5), RCAR_GP_PIN(1, 6), 1471 }; 1472 static const unsigned int i2c1_b_mux[] = { 1473 SCL1_B_MARK, SDA1_B_MARK, 1474 }; 1475 static const unsigned int i2c1_c_pins[] = { 1476 /* SCL, SDA */ 1477 RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 23), 1478 }; 1479 static const unsigned int i2c1_c_mux[] = { 1480 SCL1_C_MARK, SDA1_C_MARK, 1481 }; 1482 static const unsigned int i2c1_d_pins[] = { 1483 /* SCL, SDA */ 1484 RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 9), 1485 }; 1486 static const unsigned int i2c1_d_mux[] = { 1487 SCL1_D_MARK, SDA1_D_MARK, 1488 }; 1489 static const unsigned int i2c1_e_pins[] = { 1490 /* SCL, SDA */ 1491 RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17), 1492 }; 1493 static const unsigned int i2c1_e_mux[] = { 1494 SCL1_E_MARK, SDA1_E_MARK, 1495 }; 1496 /* - I2C2 ------------------------------------------------------------------- */ 1497 static const unsigned int i2c2_a_pins[] = { 1498 /* SCL, SDA */ 1499 RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 25), 1500 }; 1501 static const unsigned int i2c2_a_mux[] = { 1502 SCL2_A_MARK, SDA2_A_MARK, 1503 }; 1504 static const unsigned int i2c2_b_pins[] = { 1505 /* SCL, SDA */ 1506 RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14), 1507 }; 1508 static const unsigned int i2c2_b_mux[] = { 1509 SCL2_B_MARK, SDA2_B_MARK, 1510 }; 1511 static const unsigned int i2c2_c_pins[] = { 1512 /* SCL, SDA */ 1513 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), 1514 }; 1515 static const unsigned int i2c2_c_mux[] = { 1516 SCL2_C_MARK, SDA2_C_MARK, 1517 }; 1518 static const unsigned int i2c2_d_pins[] = { 1519 /* SCL, SDA */ 1520 RCAR_GP_PIN(2, 0), RCAR_GP_PIN(2, 1), 1521 }; 1522 static const unsigned int i2c2_d_mux[] = { 1523 SCL2_D_MARK, SDA2_D_MARK, 1524 }; 1525 /* - I2C3 ------------------------------------------------------------------- */ 1526 static const unsigned int i2c3_a_pins[] = { 1527 /* SCL, SDA */ 1528 RCAR_GP_PIN(3, 9), RCAR_GP_PIN(3, 10), 1529 }; 1530 static const unsigned int i2c3_a_mux[] = { 1531 SCL3_A_MARK, SDA3_A_MARK, 1532 }; 1533 static const unsigned int i2c3_b_pins[] = { 1534 /* SCL, SDA */ 1535 RCAR_GP_PIN(1, 0), RCAR_GP_PIN(1, 1), 1536 }; 1537 static const unsigned int i2c3_b_mux[] = { 1538 SCL3_B_MARK, SDA3_B_MARK, 1539 }; 1540 static const unsigned int i2c3_c_pins[] = { 1541 /* SCL, SDA */ 1542 RCAR_GP_PIN(5, 1), RCAR_GP_PIN(5, 2), 1543 }; 1544 static const unsigned int i2c3_c_mux[] = { 1545 SCL3_C_MARK, SDA3_C_MARK, 1546 }; 1547 static const unsigned int i2c3_d_pins[] = { 1548 /* SCL, SDA */ 1549 RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9), 1550 }; 1551 static const unsigned int i2c3_d_mux[] = { 1552 SCL3_D_MARK, SDA3_D_MARK, 1553 }; 1554 static const unsigned int i2c3_e_pins[] = { 1555 /* SCL, SDA */ 1556 RCAR_GP_PIN(5, 25), RCAR_GP_PIN(5, 26), 1557 }; 1558 static const unsigned int i2c3_e_mux[] = { 1559 SCL3_E_MARK, SDA3_E_MARK, 1560 }; 1561 /* - I2C4 ------------------------------------------------------------------- */ 1562 static const unsigned int i2c4_a_pins[] = { 1563 /* SCL, SDA */ 1564 RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11), 1565 }; 1566 static const unsigned int i2c4_a_mux[] = { 1567 SCL4_A_MARK, SDA4_A_MARK, 1568 }; 1569 static const unsigned int i2c4_b_pins[] = { 1570 /* SCL, SDA */ 1571 RCAR_GP_PIN(5, 30), RCAR_GP_PIN(5, 31), 1572 }; 1573 static const unsigned int i2c4_b_mux[] = { 1574 SCL4_B_MARK, SDA4_B_MARK, 1575 }; 1576 static const unsigned int i2c4_c_pins[] = { 1577 /* SCL, SDA */ 1578 RCAR_GP_PIN(5, 4), RCAR_GP_PIN(5, 5), 1579 }; 1580 static const unsigned int i2c4_c_mux[] = { 1581 SCL4_C_MARK, SDA4_C_MARK, 1582 }; 1583 static const unsigned int i2c4_d_pins[] = { 1584 /* SCL, SDA */ 1585 RCAR_GP_PIN(2, 16), RCAR_GP_PIN(2, 17), 1586 }; 1587 static const unsigned int i2c4_d_mux[] = { 1588 SCL4_D_MARK, SDA4_D_MARK, 1589 }; 1590 static const unsigned int i2c4_e_pins[] = { 1591 /* SCL, SDA */ 1592 RCAR_GP_PIN(5, 7), RCAR_GP_PIN(5, 6), 1593 }; 1594 static const unsigned int i2c4_e_mux[] = { 1595 SCL4_E_MARK, SDA4_E_MARK, 1596 }; 1597 /* - MMC -------------------------------------------------------------------- */ 1598 static const unsigned int mmc_data1_pins[] = { 1599 /* D0 */ 1600 RCAR_GP_PIN(0, 15), 1601 }; 1602 static const unsigned int mmc_data1_mux[] = { 1603 MMC0_D0_SDHI1_D0_MARK, 1604 }; 1605 static const unsigned int mmc_data4_pins[] = { 1606 /* D[0:3] */ 1607 RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16), 1608 RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18), 1609 }; 1610 static const unsigned int mmc_data4_mux[] = { 1611 MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK, 1612 MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK, 1613 }; 1614 static const unsigned int mmc_data8_pins[] = { 1615 /* D[0:3] */ 1616 RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16), 1617 RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18), 1618 RCAR_GP_PIN(0, 19), RCAR_GP_PIN(0, 20), 1619 RCAR_GP_PIN(0, 21), RCAR_GP_PIN(0, 22), 1620 }; 1621 static const unsigned int mmc_data8_mux[] = { 1622 MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK, 1623 MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK, 1624 MMC0_D4_MARK, MMC0_D5_MARK, 1625 MMC0_D6_MARK, MMC0_D7_MARK, 1626 }; 1627 static const unsigned int mmc_ctrl_pins[] = { 1628 /* CLK, CMD */ 1629 RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 14), 1630 }; 1631 static const unsigned int mmc_ctrl_mux[] = { 1632 MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK, 1633 }; 1634 /* - QSPI ------------------------------------------------------------------- */ 1635 static const unsigned int qspi0_ctrl_pins[] = { 1636 /* SPCLK, SSL */ 1637 RCAR_GP_PIN(1, 16), RCAR_GP_PIN(1, 21), 1638 }; 1639 static const unsigned int qspi0_ctrl_mux[] = { 1640 QSPI0_SPCLK_MARK, QSPI0_SSL_MARK, 1641 }; 1642 static const unsigned int qspi0_data2_pins[] = { 1643 /* MOSI_IO0, MISO_IO1 */ 1644 RCAR_GP_PIN(1, 17), RCAR_GP_PIN(1, 18), 1645 }; 1646 static const unsigned int qspi0_data2_mux[] = { 1647 QSPI0_MOSI_QSPI0_IO0_MARK, QSPI0_MISO_QSPI0_IO1_MARK, 1648 }; 1649 static const unsigned int qspi0_data4_pins[] = { 1650 /* MOSI_IO0, MISO_IO1, IO2, IO3 */ 1651 RCAR_GP_PIN(1, 17), RCAR_GP_PIN(1, 18), RCAR_GP_PIN(1, 19), 1652 RCAR_GP_PIN(1, 20), 1653 }; 1654 static const unsigned int qspi0_data4_mux[] = { 1655 QSPI0_MOSI_QSPI0_IO0_MARK, QSPI0_MISO_QSPI0_IO1_MARK, 1656 QSPI0_IO2_MARK, QSPI0_IO3_MARK, 1657 }; 1658 static const unsigned int qspi1_ctrl_pins[] = { 1659 /* SPCLK, SSL */ 1660 RCAR_GP_PIN(4, 6), RCAR_GP_PIN(4, 9), 1661 }; 1662 static const unsigned int qspi1_ctrl_mux[] = { 1663 QSPI1_SPCLK_MARK, QSPI1_SSL_MARK, 1664 }; 1665 static const unsigned int qspi1_data2_pins[] = { 1666 /* MOSI_IO0, MISO_IO1 */ 1667 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), 1668 }; 1669 static const unsigned int qspi1_data2_mux[] = { 1670 QSPI1_MOSI_QSPI1_IO0_MARK, QSPI1_MISO_QSPI1_IO1_MARK, 1671 }; 1672 static const unsigned int qspi1_data4_pins[] = { 1673 /* MOSI_IO0, MISO_IO1, IO2, IO3 */ 1674 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 7), 1675 RCAR_GP_PIN(4, 8), 1676 }; 1677 static const unsigned int qspi1_data4_mux[] = { 1678 QSPI1_MOSI_QSPI1_IO0_MARK, QSPI1_MISO_QSPI1_IO1_MARK, 1679 QSPI1_IO2_MARK, QSPI1_IO3_MARK, 1680 }; 1681 /* - SCIF0 ------------------------------------------------------------------ */ 1682 static const unsigned int scif0_data_a_pins[] = { 1683 /* RX, TX */ 1684 RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11), 1685 }; 1686 static const unsigned int scif0_data_a_mux[] = { 1687 RX0_A_MARK, TX0_A_MARK, 1688 }; 1689 static const unsigned int scif0_data_b_pins[] = { 1690 /* RX, TX */ 1691 RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12), 1692 }; 1693 static const unsigned int scif0_data_b_mux[] = { 1694 RX0_B_MARK, TX0_B_MARK, 1695 }; 1696 static const unsigned int scif0_data_c_pins[] = { 1697 /* RX, TX */ 1698 RCAR_GP_PIN(4, 0), RCAR_GP_PIN(4, 1), 1699 }; 1700 static const unsigned int scif0_data_c_mux[] = { 1701 RX0_C_MARK, TX0_C_MARK, 1702 }; 1703 static const unsigned int scif0_data_d_pins[] = { 1704 /* RX, TX */ 1705 RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 3), 1706 }; 1707 static const unsigned int scif0_data_d_mux[] = { 1708 RX0_D_MARK, TX0_D_MARK, 1709 }; 1710 /* - SCIF1 ------------------------------------------------------------------ */ 1711 static const unsigned int scif1_data_a_pins[] = { 1712 /* RX, TX */ 1713 RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17), 1714 }; 1715 static const unsigned int scif1_data_a_mux[] = { 1716 RX1_A_MARK, TX1_A_MARK, 1717 }; 1718 static const unsigned int scif1_clk_a_pins[] = { 1719 /* SCK */ 1720 RCAR_GP_PIN(4, 15), 1721 }; 1722 static const unsigned int scif1_clk_a_mux[] = { 1723 SCIF1_SCK_A_MARK, 1724 }; 1725 static const unsigned int scif1_data_b_pins[] = { 1726 /* RX, TX */ 1727 RCAR_GP_PIN(5, 19), RCAR_GP_PIN(5, 20), 1728 }; 1729 static const unsigned int scif1_data_b_mux[] = { 1730 RX1_B_MARK, TX1_B_MARK, 1731 }; 1732 static const unsigned int scif1_clk_b_pins[] = { 1733 /* SCK */ 1734 RCAR_GP_PIN(5, 18), 1735 }; 1736 static const unsigned int scif1_clk_b_mux[] = { 1737 SCIF1_SCK_B_MARK, 1738 }; 1739 static const unsigned int scif1_data_c_pins[] = { 1740 /* RX, TX */ 1741 RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 9), 1742 }; 1743 static const unsigned int scif1_data_c_mux[] = { 1744 RX1_C_MARK, TX1_C_MARK, 1745 }; 1746 static const unsigned int scif1_clk_c_pins[] = { 1747 /* SCK */ 1748 RCAR_GP_PIN(1, 7), 1749 }; 1750 static const unsigned int scif1_clk_c_mux[] = { 1751 SCIF1_SCK_C_MARK, 1752 }; 1753 static const unsigned int scif1_data_d_pins[] = { 1754 /* RX, TX */ 1755 RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 5), 1756 }; 1757 static const unsigned int scif1_data_d_mux[] = { 1758 RX1_D_MARK, TX1_D_MARK, 1759 }; 1760 /* - SCIF2 ------------------------------------------------------------------ */ 1761 static const unsigned int scif2_data_a_pins[] = { 1762 /* RX, TX */ 1763 RCAR_GP_PIN(4, 18), RCAR_GP_PIN(4, 19), 1764 }; 1765 static const unsigned int scif2_data_a_mux[] = { 1766 RX2_A_MARK, TX2_A_MARK, 1767 }; 1768 static const unsigned int scif2_clk_a_pins[] = { 1769 /* SCK */ 1770 RCAR_GP_PIN(4, 20), 1771 }; 1772 static const unsigned int scif2_clk_a_mux[] = { 1773 SCIF2_SCK_A_MARK, 1774 }; 1775 static const unsigned int scif2_data_b_pins[] = { 1776 /* RX, TX */ 1777 RCAR_GP_PIN(5, 25), RCAR_GP_PIN(5, 26), 1778 }; 1779 static const unsigned int scif2_data_b_mux[] = { 1780 RX2_B_MARK, TX2_B_MARK, 1781 }; 1782 static const unsigned int scif2_clk_b_pins[] = { 1783 /* SCK */ 1784 RCAR_GP_PIN(5, 27), 1785 }; 1786 static const unsigned int scif2_clk_b_mux[] = { 1787 SCIF2_SCK_B_MARK, 1788 }; 1789 static const unsigned int scif2_data_c_pins[] = { 1790 /* RX, TX */ 1791 RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 7), 1792 }; 1793 static const unsigned int scif2_data_c_mux[] = { 1794 RX2_C_MARK, TX2_C_MARK, 1795 }; 1796 /* - SCIF3 ------------------------------------------------------------------ */ 1797 static const unsigned int scif3_data_a_pins[] = { 1798 /* RX, TX */ 1799 RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 23), 1800 }; 1801 static const unsigned int scif3_data_a_mux[] = { 1802 RX3_A_MARK, TX3_A_MARK, 1803 }; 1804 static const unsigned int scif3_clk_pins[] = { 1805 /* SCK */ 1806 RCAR_GP_PIN(4, 21), 1807 }; 1808 static const unsigned int scif3_clk_mux[] = { 1809 SCIF3_SCK_MARK, 1810 }; 1811 static const unsigned int scif3_data_b_pins[] = { 1812 /* RX, TX */ 1813 RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9), 1814 }; 1815 static const unsigned int scif3_data_b_mux[] = { 1816 RX3_B_MARK, TX3_B_MARK, 1817 }; 1818 static const unsigned int scif3_data_c_pins[] = { 1819 /* RX, TX */ 1820 RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6), 1821 }; 1822 static const unsigned int scif3_data_c_mux[] = { 1823 RX3_C_MARK, TX3_C_MARK, 1824 }; 1825 /* - SCIF4 ------------------------------------------------------------------ */ 1826 static const unsigned int scif4_data_a_pins[] = { 1827 /* RX, TX */ 1828 RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3), 1829 }; 1830 static const unsigned int scif4_data_a_mux[] = { 1831 RX4_A_MARK, TX4_A_MARK, 1832 }; 1833 static const unsigned int scif4_data_b_pins[] = { 1834 /* RX, TX */ 1835 RCAR_GP_PIN(1, 2), RCAR_GP_PIN(1, 3), 1836 }; 1837 static const unsigned int scif4_data_b_mux[] = { 1838 RX4_B_MARK, TX4_B_MARK, 1839 }; 1840 static const unsigned int scif4_data_c_pins[] = { 1841 /* RX, TX */ 1842 RCAR_GP_PIN(1, 13), RCAR_GP_PIN(1, 14), 1843 }; 1844 static const unsigned int scif4_data_c_mux[] = { 1845 RX4_C_MARK, TX4_C_MARK, 1846 }; 1847 static const unsigned int scif4_data_d_pins[] = { 1848 /* RX, TX */ 1849 RCAR_GP_PIN(2, 10), RCAR_GP_PIN(2, 11), 1850 }; 1851 static const unsigned int scif4_data_d_mux[] = { 1852 RX4_D_MARK, TX4_D_MARK, 1853 }; 1854 static const unsigned int scif4_data_e_pins[] = { 1855 /* RX, TX */ 1856 RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 8), 1857 }; 1858 static const unsigned int scif4_data_e_mux[] = { 1859 RX4_E_MARK, TX4_E_MARK, 1860 }; 1861 /* - SCIF5 ------------------------------------------------------------------ */ 1862 static const unsigned int scif5_data_a_pins[] = { 1863 /* RX, TX */ 1864 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), 1865 }; 1866 static const unsigned int scif5_data_a_mux[] = { 1867 RX5_A_MARK, TX5_A_MARK, 1868 }; 1869 static const unsigned int scif5_data_b_pins[] = { 1870 /* RX, TX */ 1871 RCAR_GP_PIN(1, 0), RCAR_GP_PIN(1, 1), 1872 }; 1873 static const unsigned int scif5_data_b_mux[] = { 1874 RX5_B_MARK, TX5_B_MARK, 1875 }; 1876 static const unsigned int scif5_data_c_pins[] = { 1877 /* RX, TX */ 1878 RCAR_GP_PIN(2, 0), RCAR_GP_PIN(2, 1), 1879 }; 1880 static const unsigned int scif5_data_c_mux[] = { 1881 RX5_C_MARK, TX5_C_MARK, 1882 }; 1883 static const unsigned int scif5_data_d_pins[] = { 1884 /* RX, TX */ 1885 RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10), 1886 }; 1887 static const unsigned int scif5_data_d_mux[] = { 1888 RX5_D_MARK, TX5_D_MARK, 1889 }; 1890 static const unsigned int scif5_data_e_pins[] = { 1891 /* RX, TX */ 1892 RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10), 1893 }; 1894 static const unsigned int scif5_data_e_mux[] = { 1895 RX5_E_MARK, TX5_E_MARK, 1896 }; 1897 static const unsigned int scif5_data_f_pins[] = { 1898 /* RX, TX */ 1899 RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 28), 1900 }; 1901 static const unsigned int scif5_data_f_mux[] = { 1902 RX5_F_MARK, TX5_F_MARK, 1903 }; 1904 /* - SCIF Clock ------------------------------------------------------------- */ 1905 static const unsigned int scif_clk_a_pins[] = { 1906 /* SCIF_CLK */ 1907 RCAR_GP_PIN(1, 22), 1908 }; 1909 static const unsigned int scif_clk_a_mux[] = { 1910 SCIF_CLK_A_MARK, 1911 }; 1912 static const unsigned int scif_clk_b_pins[] = { 1913 /* SCIF_CLK */ 1914 RCAR_GP_PIN(3, 29), 1915 }; 1916 static const unsigned int scif_clk_b_mux[] = { 1917 SCIF_CLK_B_MARK, 1918 }; 1919 /* - SDHI0 ------------------------------------------------------------------ */ 1920 static const unsigned int sdhi0_data1_pins[] = { 1921 /* D0 */ 1922 RCAR_GP_PIN(0, 7), 1923 }; 1924 static const unsigned int sdhi0_data1_mux[] = { 1925 SD0_DAT0_MARK, 1926 }; 1927 static const unsigned int sdhi0_data4_pins[] = { 1928 /* D[0:3] */ 1929 RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 8), 1930 RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10), 1931 }; 1932 static const unsigned int sdhi0_data4_mux[] = { 1933 SD0_DAT0_MARK, SD0_DAT1_MARK, SD0_DAT2_MARK, SD0_DAT3_MARK, 1934 }; 1935 static const unsigned int sdhi0_ctrl_pins[] = { 1936 /* CLK, CMD */ 1937 RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6), 1938 }; 1939 static const unsigned int sdhi0_ctrl_mux[] = { 1940 SD0_CLK_MARK, SD0_CMD_MARK, 1941 }; 1942 static const unsigned int sdhi0_cd_pins[] = { 1943 /* CD */ 1944 RCAR_GP_PIN(0, 11), 1945 }; 1946 static const unsigned int sdhi0_cd_mux[] = { 1947 SD0_CD_MARK, 1948 }; 1949 static const unsigned int sdhi0_wp_pins[] = { 1950 /* WP */ 1951 RCAR_GP_PIN(0, 12), 1952 }; 1953 static const unsigned int sdhi0_wp_mux[] = { 1954 SD0_WP_MARK, 1955 }; 1956 /* - SDHI1 ------------------------------------------------------------------ */ 1957 static const unsigned int sdhi1_data1_pins[] = { 1958 /* D0 */ 1959 RCAR_GP_PIN(0, 15), 1960 }; 1961 static const unsigned int sdhi1_data1_mux[] = { 1962 MMC0_D0_SDHI1_D0_MARK, 1963 }; 1964 static const unsigned int sdhi1_data4_pins[] = { 1965 /* D[0:3] */ 1966 RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16), 1967 RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18), 1968 }; 1969 static const unsigned int sdhi1_data4_mux[] = { 1970 MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK, 1971 MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK, 1972 }; 1973 static const unsigned int sdhi1_ctrl_pins[] = { 1974 /* CLK, CMD */ 1975 RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 14), 1976 }; 1977 static const unsigned int sdhi1_ctrl_mux[] = { 1978 MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK, 1979 }; 1980 static const unsigned int sdhi1_cd_pins[] = { 1981 /* CD */ 1982 RCAR_GP_PIN(0, 19), 1983 }; 1984 static const unsigned int sdhi1_cd_mux[] = { 1985 SD1_CD_MARK, 1986 }; 1987 static const unsigned int sdhi1_wp_pins[] = { 1988 /* WP */ 1989 RCAR_GP_PIN(0, 20), 1990 }; 1991 static const unsigned int sdhi1_wp_mux[] = { 1992 SD1_WP_MARK, 1993 }; 1994 /* - SDHI2 ------------------------------------------------------------------ */ 1995 static const unsigned int sdhi2_data1_pins[] = { 1996 /* D0 */ 1997 RCAR_GP_PIN(4, 16), 1998 }; 1999 static const unsigned int sdhi2_data1_mux[] = { 2000 SD2_DAT0_MARK, 2001 }; 2002 static const unsigned int sdhi2_data4_pins[] = { 2003 /* D[0:3] */ 2004 RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17), 2005 RCAR_GP_PIN(4, 18), RCAR_GP_PIN(4, 19), 2006 }; 2007 static const unsigned int sdhi2_data4_mux[] = { 2008 SD2_DAT0_MARK, SD2_DAT1_MARK, SD2_DAT2_MARK, SD2_DAT3_MARK, 2009 }; 2010 static const unsigned int sdhi2_ctrl_pins[] = { 2011 /* CLK, CMD */ 2012 RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 15), 2013 }; 2014 static const unsigned int sdhi2_ctrl_mux[] = { 2015 SD2_CLK_MARK, SD2_CMD_MARK, 2016 }; 2017 static const unsigned int sdhi2_cd_pins[] = { 2018 /* CD */ 2019 RCAR_GP_PIN(4, 20), 2020 }; 2021 static const unsigned int sdhi2_cd_mux[] = { 2022 SD2_CD_MARK, 2023 }; 2024 static const unsigned int sdhi2_wp_pins[] = { 2025 /* WP */ 2026 RCAR_GP_PIN(4, 21), 2027 }; 2028 static const unsigned int sdhi2_wp_mux[] = { 2029 SD2_WP_MARK, 2030 }; 2031 /* - USB0 ------------------------------------------------------------------- */ 2032 static const unsigned int usb0_pins[] = { 2033 RCAR_GP_PIN(0, 0), /* PWEN */ 2034 RCAR_GP_PIN(0, 1), /* OVC */ 2035 }; 2036 static const unsigned int usb0_mux[] = { 2037 USB0_PWEN_MARK, 2038 USB0_OVC_MARK, 2039 }; 2040 /* - USB1 ------------------------------------------------------------------- */ 2041 static const unsigned int usb1_pins[] = { 2042 RCAR_GP_PIN(0, 2), /* PWEN */ 2043 RCAR_GP_PIN(0, 3), /* OVC */ 2044 }; 2045 static const unsigned int usb1_mux[] = { 2046 USB1_PWEN_MARK, 2047 USB1_OVC_MARK, 2048 }; 2049 /* - VIN0 ------------------------------------------------------------------- */ 2050 static const union vin_data vin0_data_pins = { 2051 .data24 = { 2052 /* B */ 2053 RCAR_GP_PIN(5, 20), RCAR_GP_PIN(5, 21), 2054 RCAR_GP_PIN(5, 22), RCAR_GP_PIN(5, 23), 2055 RCAR_GP_PIN(5, 24), RCAR_GP_PIN(5, 25), 2056 RCAR_GP_PIN(5, 26), RCAR_GP_PIN(5, 27), 2057 /* G */ 2058 RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3), 2059 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), 2060 RCAR_GP_PIN(4, 6), RCAR_GP_PIN(5, 8), 2061 RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10), 2062 /* R */ 2063 RCAR_GP_PIN(5, 11), RCAR_GP_PIN(5, 12), 2064 RCAR_GP_PIN(5, 13), RCAR_GP_PIN(5, 14), 2065 RCAR_GP_PIN(5, 15), RCAR_GP_PIN(5, 16), 2066 RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 19), 2067 }, 2068 }; 2069 static const union vin_data vin0_data_mux = { 2070 .data24 = { 2071 /* B */ 2072 VI0_DATA0_VI0_B0_MARK, VI0_DATA1_VI0_B1_MARK, 2073 VI0_DATA2_VI0_B2_MARK, VI0_DATA3_VI0_B3_MARK, 2074 VI0_DATA4_VI0_B4_MARK, VI0_DATA5_VI0_B5_MARK, 2075 VI0_DATA6_VI0_B6_MARK, VI0_DATA7_VI0_B7_MARK, 2076 /* G */ 2077 VI0_G0_MARK, VI0_G1_MARK, 2078 VI0_G2_MARK, VI0_G3_MARK, 2079 VI0_G4_MARK, VI0_G5_MARK, 2080 VI0_G6_MARK, VI0_G7_MARK, 2081 /* R */ 2082 VI0_R0_MARK, VI0_R1_MARK, 2083 VI0_R2_MARK, VI0_R3_MARK, 2084 VI0_R4_MARK, VI0_R5_MARK, 2085 VI0_R6_MARK, VI0_R7_MARK, 2086 }, 2087 }; 2088 static const unsigned int vin0_data18_pins[] = { 2089 /* B */ 2090 RCAR_GP_PIN(5, 22), RCAR_GP_PIN(5, 23), 2091 RCAR_GP_PIN(5, 24), RCAR_GP_PIN(5, 25), 2092 RCAR_GP_PIN(5, 26), RCAR_GP_PIN(5, 27), 2093 /* G */ 2094 RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), 2095 RCAR_GP_PIN(4, 6), RCAR_GP_PIN(5, 8), 2096 RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10), 2097 /* R */ 2098 RCAR_GP_PIN(5, 13), RCAR_GP_PIN(5, 14), 2099 RCAR_GP_PIN(5, 15), RCAR_GP_PIN(5, 16), 2100 RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 19), 2101 }; 2102 static const unsigned int vin0_data18_mux[] = { 2103 /* B */ 2104 VI0_DATA2_VI0_B2_MARK, VI0_DATA3_VI0_B3_MARK, 2105 VI0_DATA4_VI0_B4_MARK, VI0_DATA5_VI0_B5_MARK, 2106 VI0_DATA6_VI0_B6_MARK, VI0_DATA7_VI0_B7_MARK, 2107 /* G */ 2108 VI0_G2_MARK, VI0_G3_MARK, 2109 VI0_G4_MARK, VI0_G5_MARK, 2110 VI0_G6_MARK, VI0_G7_MARK, 2111 /* R */ 2112 VI0_R2_MARK, VI0_R3_MARK, 2113 VI0_R4_MARK, VI0_R5_MARK, 2114 VI0_R6_MARK, VI0_R7_MARK, 2115 }; 2116 static const unsigned int vin0_sync_pins[] = { 2117 RCAR_GP_PIN(5, 30), /* HSYNC */ 2118 RCAR_GP_PIN(5, 31), /* VSYNC */ 2119 }; 2120 static const unsigned int vin0_sync_mux[] = { 2121 VI0_HSYNC_N_MARK, 2122 VI0_VSYNC_N_MARK, 2123 }; 2124 static const unsigned int vin0_field_pins[] = { 2125 RCAR_GP_PIN(5, 29), 2126 }; 2127 static const unsigned int vin0_field_mux[] = { 2128 VI0_FIELD_MARK, 2129 }; 2130 static const unsigned int vin0_clkenb_pins[] = { 2131 RCAR_GP_PIN(5, 28), 2132 }; 2133 static const unsigned int vin0_clkenb_mux[] = { 2134 VI0_CLKENB_MARK, 2135 }; 2136 static const unsigned int vin0_clk_pins[] = { 2137 RCAR_GP_PIN(5, 18), 2138 }; 2139 static const unsigned int vin0_clk_mux[] = { 2140 VI0_CLK_MARK, 2141 }; 2142 /* - VIN1 ------------------------------------------------------------------- */ 2143 static const union vin_data vin1_data_pins = { 2144 .data12 = { 2145 RCAR_GP_PIN(3, 1), RCAR_GP_PIN(3, 2), 2146 RCAR_GP_PIN(3, 3), RCAR_GP_PIN(3, 4), 2147 RCAR_GP_PIN(3, 5), RCAR_GP_PIN(3, 6), 2148 RCAR_GP_PIN(3, 7), RCAR_GP_PIN(3, 8), 2149 RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14), 2150 RCAR_GP_PIN(3, 15), RCAR_GP_PIN(3, 16), 2151 }, 2152 }; 2153 static const union vin_data vin1_data_mux = { 2154 .data12 = { 2155 VI1_DATA0_MARK, VI1_DATA1_MARK, 2156 VI1_DATA2_MARK, VI1_DATA3_MARK, 2157 VI1_DATA4_MARK, VI1_DATA5_MARK, 2158 VI1_DATA6_MARK, VI1_DATA7_MARK, 2159 VI1_DATA8_MARK, VI1_DATA9_MARK, 2160 VI1_DATA10_MARK, VI1_DATA11_MARK, 2161 }, 2162 }; 2163 static const unsigned int vin1_sync_pins[] = { 2164 RCAR_GP_PIN(3, 11), /* HSYNC */ 2165 RCAR_GP_PIN(3, 12), /* VSYNC */ 2166 }; 2167 static const unsigned int vin1_sync_mux[] = { 2168 VI1_HSYNC_N_MARK, 2169 VI1_VSYNC_N_MARK, 2170 }; 2171 static const unsigned int vin1_field_pins[] = { 2172 RCAR_GP_PIN(3, 10), 2173 }; 2174 static const unsigned int vin1_field_mux[] = { 2175 VI1_FIELD_MARK, 2176 }; 2177 static const unsigned int vin1_clkenb_pins[] = { 2178 RCAR_GP_PIN(3, 9), 2179 }; 2180 static const unsigned int vin1_clkenb_mux[] = { 2181 VI1_CLKENB_MARK, 2182 }; 2183 static const unsigned int vin1_clk_pins[] = { 2184 RCAR_GP_PIN(3, 0), 2185 }; 2186 static const unsigned int vin1_clk_mux[] = { 2187 VI1_CLK_MARK, 2188 }; 2189 2190 static const struct sh_pfc_pin_group pinmux_groups[] = { 2191 SH_PFC_PIN_GROUP(avb_col), 2192 SH_PFC_PIN_GROUP(avb_crs), 2193 SH_PFC_PIN_GROUP(avb_link), 2194 SH_PFC_PIN_GROUP(avb_magic), 2195 SH_PFC_PIN_GROUP(avb_phy_int), 2196 SH_PFC_PIN_GROUP(avb_mdio), 2197 SH_PFC_PIN_GROUP(avb_mii_tx_rx), 2198 SH_PFC_PIN_GROUP(avb_mii_tx_er), 2199 SH_PFC_PIN_GROUP(avb_gmii_tx_rx), 2200 SH_PFC_PIN_GROUP(avb_avtp_match_a), 2201 SH_PFC_PIN_GROUP(avb_avtp_capture_a), 2202 SH_PFC_PIN_GROUP(avb_avtp_match_b), 2203 SH_PFC_PIN_GROUP(avb_avtp_capture_b), 2204 SH_PFC_PIN_GROUP(du0_rgb666), 2205 SH_PFC_PIN_GROUP(du0_rgb888), 2206 SH_PFC_PIN_GROUP(du0_clk0_out), 2207 SH_PFC_PIN_GROUP(du0_clk1_out), 2208 SH_PFC_PIN_GROUP(du0_clk_in), 2209 SH_PFC_PIN_GROUP(du0_sync), 2210 SH_PFC_PIN_GROUP(du0_oddf), 2211 SH_PFC_PIN_GROUP(du0_cde), 2212 SH_PFC_PIN_GROUP(du0_disp), 2213 SH_PFC_PIN_GROUP(du1_rgb666), 2214 SH_PFC_PIN_GROUP(du1_rgb888), 2215 SH_PFC_PIN_GROUP(du1_clk0_out), 2216 SH_PFC_PIN_GROUP(du1_clk1_out), 2217 SH_PFC_PIN_GROUP(du1_clk_in), 2218 SH_PFC_PIN_GROUP(du1_sync), 2219 SH_PFC_PIN_GROUP(du1_oddf), 2220 SH_PFC_PIN_GROUP(du1_cde), 2221 SH_PFC_PIN_GROUP(du1_disp), 2222 SH_PFC_PIN_GROUP(i2c0_a), 2223 SH_PFC_PIN_GROUP(i2c0_b), 2224 SH_PFC_PIN_GROUP(i2c0_c), 2225 SH_PFC_PIN_GROUP(i2c0_d), 2226 SH_PFC_PIN_GROUP(i2c0_e), 2227 SH_PFC_PIN_GROUP(i2c1_a), 2228 SH_PFC_PIN_GROUP(i2c1_b), 2229 SH_PFC_PIN_GROUP(i2c1_c), 2230 SH_PFC_PIN_GROUP(i2c1_d), 2231 SH_PFC_PIN_GROUP(i2c1_e), 2232 SH_PFC_PIN_GROUP(i2c2_a), 2233 SH_PFC_PIN_GROUP(i2c2_b), 2234 SH_PFC_PIN_GROUP(i2c2_c), 2235 SH_PFC_PIN_GROUP(i2c2_d), 2236 SH_PFC_PIN_GROUP(i2c3_a), 2237 SH_PFC_PIN_GROUP(i2c3_b), 2238 SH_PFC_PIN_GROUP(i2c3_c), 2239 SH_PFC_PIN_GROUP(i2c3_d), 2240 SH_PFC_PIN_GROUP(i2c3_e), 2241 SH_PFC_PIN_GROUP(i2c4_a), 2242 SH_PFC_PIN_GROUP(i2c4_b), 2243 SH_PFC_PIN_GROUP(i2c4_c), 2244 SH_PFC_PIN_GROUP(i2c4_d), 2245 SH_PFC_PIN_GROUP(i2c4_e), 2246 SH_PFC_PIN_GROUP(mmc_data1), 2247 SH_PFC_PIN_GROUP(mmc_data4), 2248 SH_PFC_PIN_GROUP(mmc_data8), 2249 SH_PFC_PIN_GROUP(mmc_ctrl), 2250 SH_PFC_PIN_GROUP(qspi0_ctrl), 2251 SH_PFC_PIN_GROUP(qspi0_data2), 2252 SH_PFC_PIN_GROUP(qspi0_data4), 2253 SH_PFC_PIN_GROUP(qspi1_ctrl), 2254 SH_PFC_PIN_GROUP(qspi1_data2), 2255 SH_PFC_PIN_GROUP(qspi1_data4), 2256 SH_PFC_PIN_GROUP(scif0_data_a), 2257 SH_PFC_PIN_GROUP(scif0_data_b), 2258 SH_PFC_PIN_GROUP(scif0_data_c), 2259 SH_PFC_PIN_GROUP(scif0_data_d), 2260 SH_PFC_PIN_GROUP(scif1_data_a), 2261 SH_PFC_PIN_GROUP(scif1_clk_a), 2262 SH_PFC_PIN_GROUP(scif1_data_b), 2263 SH_PFC_PIN_GROUP(scif1_clk_b), 2264 SH_PFC_PIN_GROUP(scif1_data_c), 2265 SH_PFC_PIN_GROUP(scif1_clk_c), 2266 SH_PFC_PIN_GROUP(scif1_data_d), 2267 SH_PFC_PIN_GROUP(scif2_data_a), 2268 SH_PFC_PIN_GROUP(scif2_clk_a), 2269 SH_PFC_PIN_GROUP(scif2_data_b), 2270 SH_PFC_PIN_GROUP(scif2_clk_b), 2271 SH_PFC_PIN_GROUP(scif2_data_c), 2272 SH_PFC_PIN_GROUP(scif3_data_a), 2273 SH_PFC_PIN_GROUP(scif3_clk), 2274 SH_PFC_PIN_GROUP(scif3_data_b), 2275 SH_PFC_PIN_GROUP(scif3_data_c), 2276 SH_PFC_PIN_GROUP(scif4_data_a), 2277 SH_PFC_PIN_GROUP(scif4_data_b), 2278 SH_PFC_PIN_GROUP(scif4_data_c), 2279 SH_PFC_PIN_GROUP(scif4_data_d), 2280 SH_PFC_PIN_GROUP(scif4_data_e), 2281 SH_PFC_PIN_GROUP(scif5_data_a), 2282 SH_PFC_PIN_GROUP(scif5_data_b), 2283 SH_PFC_PIN_GROUP(scif5_data_c), 2284 SH_PFC_PIN_GROUP(scif5_data_d), 2285 SH_PFC_PIN_GROUP(scif5_data_e), 2286 SH_PFC_PIN_GROUP(scif5_data_f), 2287 SH_PFC_PIN_GROUP(scif_clk_a), 2288 SH_PFC_PIN_GROUP(scif_clk_b), 2289 SH_PFC_PIN_GROUP(sdhi0_data1), 2290 SH_PFC_PIN_GROUP(sdhi0_data4), 2291 SH_PFC_PIN_GROUP(sdhi0_ctrl), 2292 SH_PFC_PIN_GROUP(sdhi0_cd), 2293 SH_PFC_PIN_GROUP(sdhi0_wp), 2294 SH_PFC_PIN_GROUP(sdhi1_data1), 2295 SH_PFC_PIN_GROUP(sdhi1_data4), 2296 SH_PFC_PIN_GROUP(sdhi1_ctrl), 2297 SH_PFC_PIN_GROUP(sdhi1_cd), 2298 SH_PFC_PIN_GROUP(sdhi1_wp), 2299 SH_PFC_PIN_GROUP(sdhi2_data1), 2300 SH_PFC_PIN_GROUP(sdhi2_data4), 2301 SH_PFC_PIN_GROUP(sdhi2_ctrl), 2302 SH_PFC_PIN_GROUP(sdhi2_cd), 2303 SH_PFC_PIN_GROUP(sdhi2_wp), 2304 SH_PFC_PIN_GROUP(usb0), 2305 SH_PFC_PIN_GROUP(usb1), 2306 VIN_DATA_PIN_GROUP(vin0_data, 24), 2307 VIN_DATA_PIN_GROUP(vin0_data, 20), 2308 SH_PFC_PIN_GROUP(vin0_data18), 2309 VIN_DATA_PIN_GROUP(vin0_data, 16), 2310 VIN_DATA_PIN_GROUP(vin0_data, 12), 2311 VIN_DATA_PIN_GROUP(vin0_data, 10), 2312 VIN_DATA_PIN_GROUP(vin0_data, 8), 2313 SH_PFC_PIN_GROUP(vin0_sync), 2314 SH_PFC_PIN_GROUP(vin0_field), 2315 SH_PFC_PIN_GROUP(vin0_clkenb), 2316 SH_PFC_PIN_GROUP(vin0_clk), 2317 VIN_DATA_PIN_GROUP(vin1_data, 12), 2318 VIN_DATA_PIN_GROUP(vin1_data, 10), 2319 VIN_DATA_PIN_GROUP(vin1_data, 8), 2320 SH_PFC_PIN_GROUP(vin1_sync), 2321 SH_PFC_PIN_GROUP(vin1_field), 2322 SH_PFC_PIN_GROUP(vin1_clkenb), 2323 SH_PFC_PIN_GROUP(vin1_clk), 2324 }; 2325 2326 static const char * const avb_groups[] = { 2327 "avb_col", 2328 "avb_crs", 2329 "avb_link", 2330 "avb_magic", 2331 "avb_phy_int", 2332 "avb_mdio", 2333 "avb_mii_tx_rx", 2334 "avb_mii_tx_er", 2335 "avb_gmii_tx_rx", 2336 "avb_avtp_match_a", 2337 "avb_avtp_capture_a", 2338 "avb_avtp_match_b", 2339 "avb_avtp_capture_b", 2340 }; 2341 2342 static const char * const du0_groups[] = { 2343 "du0_rgb666", 2344 "du0_rgb888", 2345 "du0_clk0_out", 2346 "du0_clk1_out", 2347 "du0_clk_in", 2348 "du0_sync", 2349 "du0_oddf", 2350 "du0_cde", 2351 "du0_disp", 2352 }; 2353 2354 static const char * const du1_groups[] = { 2355 "du1_rgb666", 2356 "du1_rgb888", 2357 "du1_clk0_out", 2358 "du1_clk1_out", 2359 "du1_clk_in", 2360 "du1_sync", 2361 "du1_oddf", 2362 "du1_cde", 2363 "du1_disp", 2364 }; 2365 2366 static const char * const i2c0_groups[] = { 2367 "i2c0_a", 2368 "i2c0_b", 2369 "i2c0_c", 2370 "i2c0_d", 2371 "i2c0_e", 2372 }; 2373 2374 static const char * const i2c1_groups[] = { 2375 "i2c1_a", 2376 "i2c1_b", 2377 "i2c1_c", 2378 "i2c1_d", 2379 "i2c1_e", 2380 }; 2381 2382 static const char * const i2c2_groups[] = { 2383 "i2c2_a", 2384 "i2c2_b", 2385 "i2c2_c", 2386 "i2c2_d", 2387 }; 2388 2389 static const char * const i2c3_groups[] = { 2390 "i2c3_a", 2391 "i2c3_b", 2392 "i2c3_c", 2393 "i2c3_d", 2394 "i2c3_e", 2395 }; 2396 2397 static const char * const i2c4_groups[] = { 2398 "i2c4_a", 2399 "i2c4_b", 2400 "i2c4_c", 2401 "i2c4_d", 2402 "i2c4_e", 2403 }; 2404 2405 static const char * const mmc_groups[] = { 2406 "mmc_data1", 2407 "mmc_data4", 2408 "mmc_data8", 2409 "mmc_ctrl", 2410 }; 2411 2412 static const char * const qspi0_groups[] = { 2413 "qspi0_ctrl", 2414 "qspi0_data2", 2415 "qspi0_data4", 2416 }; 2417 2418 static const char * const qspi1_groups[] = { 2419 "qspi1_ctrl", 2420 "qspi1_data2", 2421 "qspi1_data4", 2422 }; 2423 2424 static const char * const scif0_groups[] = { 2425 "scif0_data_a", 2426 "scif0_data_b", 2427 "scif0_data_c", 2428 "scif0_data_d", 2429 }; 2430 2431 static const char * const scif1_groups[] = { 2432 "scif1_data_a", 2433 "scif1_clk_a", 2434 "scif1_data_b", 2435 "scif1_clk_b", 2436 "scif1_data_c", 2437 "scif1_clk_c", 2438 "scif1_data_d", 2439 }; 2440 2441 static const char * const scif2_groups[] = { 2442 "scif2_data_a", 2443 "scif2_clk_a", 2444 "scif2_data_b", 2445 "scif2_clk_b", 2446 "scif2_data_c", 2447 }; 2448 2449 static const char * const scif3_groups[] = { 2450 "scif3_data_a", 2451 "scif3_clk", 2452 "scif3_data_b", 2453 "scif3_data_c", 2454 }; 2455 2456 static const char * const scif4_groups[] = { 2457 "scif4_data_a", 2458 "scif4_data_b", 2459 "scif4_data_c", 2460 "scif4_data_d", 2461 "scif4_data_e", 2462 }; 2463 2464 static const char * const scif5_groups[] = { 2465 "scif5_data_a", 2466 "scif5_data_b", 2467 "scif5_data_c", 2468 "scif5_data_d", 2469 "scif5_data_e", 2470 "scif5_data_f", 2471 }; 2472 2473 static const char * const scif_clk_groups[] = { 2474 "scif_clk_a", 2475 "scif_clk_b", 2476 }; 2477 2478 static const char * const sdhi0_groups[] = { 2479 "sdhi0_data1", 2480 "sdhi0_data4", 2481 "sdhi0_ctrl", 2482 "sdhi0_cd", 2483 "sdhi0_wp", 2484 }; 2485 2486 static const char * const sdhi1_groups[] = { 2487 "sdhi1_data1", 2488 "sdhi1_data4", 2489 "sdhi1_ctrl", 2490 "sdhi1_cd", 2491 "sdhi1_wp", 2492 }; 2493 2494 static const char * const sdhi2_groups[] = { 2495 "sdhi2_data1", 2496 "sdhi2_data4", 2497 "sdhi2_ctrl", 2498 "sdhi2_cd", 2499 "sdhi2_wp", 2500 }; 2501 2502 static const char * const usb0_groups[] = { 2503 "usb0", 2504 }; 2505 2506 static const char * const usb1_groups[] = { 2507 "usb1", 2508 }; 2509 2510 static const char * const vin0_groups[] = { 2511 "vin0_data24", 2512 "vin0_data20", 2513 "vin0_data18", 2514 "vin0_data16", 2515 "vin0_data12", 2516 "vin0_data10", 2517 "vin0_data8", 2518 "vin0_sync", 2519 "vin0_field", 2520 "vin0_clkenb", 2521 "vin0_clk", 2522 }; 2523 2524 static const char * const vin1_groups[] = { 2525 "vin1_data12", 2526 "vin1_data10", 2527 "vin1_data8", 2528 "vin1_sync", 2529 "vin1_field", 2530 "vin1_clkenb", 2531 "vin1_clk", 2532 }; 2533 2534 static const struct sh_pfc_function pinmux_functions[] = { 2535 SH_PFC_FUNCTION(avb), 2536 SH_PFC_FUNCTION(du0), 2537 SH_PFC_FUNCTION(du1), 2538 SH_PFC_FUNCTION(i2c0), 2539 SH_PFC_FUNCTION(i2c1), 2540 SH_PFC_FUNCTION(i2c2), 2541 SH_PFC_FUNCTION(i2c3), 2542 SH_PFC_FUNCTION(i2c4), 2543 SH_PFC_FUNCTION(mmc), 2544 SH_PFC_FUNCTION(qspi0), 2545 SH_PFC_FUNCTION(qspi1), 2546 SH_PFC_FUNCTION(scif0), 2547 SH_PFC_FUNCTION(scif1), 2548 SH_PFC_FUNCTION(scif2), 2549 SH_PFC_FUNCTION(scif3), 2550 SH_PFC_FUNCTION(scif4), 2551 SH_PFC_FUNCTION(scif5), 2552 SH_PFC_FUNCTION(scif_clk), 2553 SH_PFC_FUNCTION(sdhi0), 2554 SH_PFC_FUNCTION(sdhi1), 2555 SH_PFC_FUNCTION(sdhi2), 2556 SH_PFC_FUNCTION(usb0), 2557 SH_PFC_FUNCTION(usb1), 2558 SH_PFC_FUNCTION(vin0), 2559 SH_PFC_FUNCTION(vin1), 2560 }; 2561 2562 static const struct pinmux_cfg_reg pinmux_config_regs[] = { 2563 { PINMUX_CFG_REG("GPSR0", 0xE6060004, 32, 1, GROUP( 2564 0, 0, 2565 0, 0, 2566 0, 0, 2567 0, 0, 2568 0, 0, 2569 0, 0, 2570 0, 0, 2571 0, 0, 2572 0, 0, 2573 GP_0_22_FN, FN_MMC0_D7, 2574 GP_0_21_FN, FN_MMC0_D6, 2575 GP_0_20_FN, FN_IP1_7_4, 2576 GP_0_19_FN, FN_IP1_3_0, 2577 GP_0_18_FN, FN_MMC0_D3_SDHI1_D3, 2578 GP_0_17_FN, FN_MMC0_D2_SDHI1_D2, 2579 GP_0_16_FN, FN_MMC0_D1_SDHI1_D1, 2580 GP_0_15_FN, FN_MMC0_D0_SDHI1_D0, 2581 GP_0_14_FN, FN_MMC0_CMD_SDHI1_CMD, 2582 GP_0_13_FN, FN_MMC0_CLK_SDHI1_CLK, 2583 GP_0_12_FN, FN_IP0_31_28, 2584 GP_0_11_FN, FN_IP0_27_24, 2585 GP_0_10_FN, FN_IP0_23_20, 2586 GP_0_9_FN, FN_IP0_19_16, 2587 GP_0_8_FN, FN_IP0_15_12, 2588 GP_0_7_FN, FN_IP0_11_8, 2589 GP_0_6_FN, FN_IP0_7_4, 2590 GP_0_5_FN, FN_IP0_3_0, 2591 GP_0_4_FN, FN_CLKOUT, 2592 GP_0_3_FN, FN_USB1_OVC, 2593 GP_0_2_FN, FN_USB1_PWEN, 2594 GP_0_1_FN, FN_USB0_OVC, 2595 GP_0_0_FN, FN_USB0_PWEN, )) 2596 }, 2597 { PINMUX_CFG_REG("GPSR1", 0xE6060008, 32, 1, GROUP( 2598 0, 0, 2599 0, 0, 2600 0, 0, 2601 0, 0, 2602 0, 0, 2603 0, 0, 2604 0, 0, 2605 0, 0, 2606 0, 0, 2607 GP_1_22_FN, FN_IP4_3_0, 2608 GP_1_21_FN, FN_IP3_31_28, 2609 GP_1_20_FN, FN_IP3_27_24, 2610 GP_1_19_FN, FN_IP3_23_20, 2611 GP_1_18_FN, FN_IP3_19_16, 2612 GP_1_17_FN, FN_IP3_15_12, 2613 GP_1_16_FN, FN_IP3_11_8, 2614 GP_1_15_FN, FN_IP3_7_4, 2615 GP_1_14_FN, FN_IP3_3_0, 2616 GP_1_13_FN, FN_IP2_31_28, 2617 GP_1_12_FN, FN_IP2_27_24, 2618 GP_1_11_FN, FN_IP2_23_20, 2619 GP_1_10_FN, FN_IP2_19_16, 2620 GP_1_9_FN, FN_IP2_15_12, 2621 GP_1_8_FN, FN_IP2_11_8, 2622 GP_1_7_FN, FN_IP2_7_4, 2623 GP_1_6_FN, FN_IP2_3_0, 2624 GP_1_5_FN, FN_IP1_31_28, 2625 GP_1_4_FN, FN_IP1_27_24, 2626 GP_1_3_FN, FN_IP1_23_20, 2627 GP_1_2_FN, FN_IP1_19_16, 2628 GP_1_1_FN, FN_IP1_15_12, 2629 GP_1_0_FN, FN_IP1_11_8, )) 2630 }, 2631 { PINMUX_CFG_REG("GPSR2", 0xE606000C, 32, 1, GROUP( 2632 GP_2_31_FN, FN_IP8_3_0, 2633 GP_2_30_FN, FN_IP7_31_28, 2634 GP_2_29_FN, FN_IP7_27_24, 2635 GP_2_28_FN, FN_IP7_23_20, 2636 GP_2_27_FN, FN_IP7_19_16, 2637 GP_2_26_FN, FN_IP7_15_12, 2638 GP_2_25_FN, FN_IP7_11_8, 2639 GP_2_24_FN, FN_IP7_7_4, 2640 GP_2_23_FN, FN_IP7_3_0, 2641 GP_2_22_FN, FN_IP6_31_28, 2642 GP_2_21_FN, FN_IP6_27_24, 2643 GP_2_20_FN, FN_IP6_23_20, 2644 GP_2_19_FN, FN_IP6_19_16, 2645 GP_2_18_FN, FN_IP6_15_12, 2646 GP_2_17_FN, FN_IP6_11_8, 2647 GP_2_16_FN, FN_IP6_7_4, 2648 GP_2_15_FN, FN_IP6_3_0, 2649 GP_2_14_FN, FN_IP5_31_28, 2650 GP_2_13_FN, FN_IP5_27_24, 2651 GP_2_12_FN, FN_IP5_23_20, 2652 GP_2_11_FN, FN_IP5_19_16, 2653 GP_2_10_FN, FN_IP5_15_12, 2654 GP_2_9_FN, FN_IP5_11_8, 2655 GP_2_8_FN, FN_IP5_7_4, 2656 GP_2_7_FN, FN_IP5_3_0, 2657 GP_2_6_FN, FN_IP4_31_28, 2658 GP_2_5_FN, FN_IP4_27_24, 2659 GP_2_4_FN, FN_IP4_23_20, 2660 GP_2_3_FN, FN_IP4_19_16, 2661 GP_2_2_FN, FN_IP4_15_12, 2662 GP_2_1_FN, FN_IP4_11_8, 2663 GP_2_0_FN, FN_IP4_7_4, )) 2664 }, 2665 { PINMUX_CFG_REG("GPSR3", 0xE6060010, 32, 1, GROUP( 2666 0, 0, 2667 0, 0, 2668 GP_3_29_FN, FN_IP10_19_16, 2669 GP_3_28_FN, FN_IP10_15_12, 2670 GP_3_27_FN, FN_IP10_11_8, 2671 0, 0, 2672 0, 0, 2673 0, 0, 2674 0, 0, 2675 0, 0, 2676 0, 0, 2677 0, 0, 2678 0, 0, 2679 0, 0, 2680 0, 0, 2681 GP_3_16_FN, FN_IP10_7_4, 2682 GP_3_15_FN, FN_IP10_3_0, 2683 GP_3_14_FN, FN_IP9_31_28, 2684 GP_3_13_FN, FN_IP9_27_24, 2685 GP_3_12_FN, FN_IP9_23_20, 2686 GP_3_11_FN, FN_IP9_19_16, 2687 GP_3_10_FN, FN_IP9_15_12, 2688 GP_3_9_FN, FN_IP9_11_8, 2689 GP_3_8_FN, FN_IP9_7_4, 2690 GP_3_7_FN, FN_IP9_3_0, 2691 GP_3_6_FN, FN_IP8_31_28, 2692 GP_3_5_FN, FN_IP8_27_24, 2693 GP_3_4_FN, FN_IP8_23_20, 2694 GP_3_3_FN, FN_IP8_19_16, 2695 GP_3_2_FN, FN_IP8_15_12, 2696 GP_3_1_FN, FN_IP8_11_8, 2697 GP_3_0_FN, FN_IP8_7_4, )) 2698 }, 2699 { PINMUX_CFG_REG("GPSR4", 0xE6060014, 32, 1, GROUP( 2700 0, 0, 2701 0, 0, 2702 0, 0, 2703 0, 0, 2704 0, 0, 2705 0, 0, 2706 GP_4_25_FN, FN_IP13_27_24, 2707 GP_4_24_FN, FN_IP13_23_20, 2708 GP_4_23_FN, FN_IP13_19_16, 2709 GP_4_22_FN, FN_IP13_15_12, 2710 GP_4_21_FN, FN_IP13_11_8, 2711 GP_4_20_FN, FN_IP13_7_4, 2712 GP_4_19_FN, FN_IP13_3_0, 2713 GP_4_18_FN, FN_IP12_31_28, 2714 GP_4_17_FN, FN_IP12_27_24, 2715 GP_4_16_FN, FN_IP12_23_20, 2716 GP_4_15_FN, FN_IP12_19_16, 2717 GP_4_14_FN, FN_IP12_15_12, 2718 GP_4_13_FN, FN_IP12_11_8, 2719 GP_4_12_FN, FN_IP12_7_4, 2720 GP_4_11_FN, FN_IP12_3_0, 2721 GP_4_10_FN, FN_IP11_31_28, 2722 GP_4_9_FN, FN_IP11_27_24, 2723 GP_4_8_FN, FN_IP11_23_20, 2724 GP_4_7_FN, FN_IP11_19_16, 2725 GP_4_6_FN, FN_IP11_15_12, 2726 GP_4_5_FN, FN_IP11_11_8, 2727 GP_4_4_FN, FN_IP11_7_4, 2728 GP_4_3_FN, FN_IP11_3_0, 2729 GP_4_2_FN, FN_IP10_31_28, 2730 GP_4_1_FN, FN_IP10_27_24, 2731 GP_4_0_FN, FN_IP10_23_20, )) 2732 }, 2733 { PINMUX_CFG_REG("GPSR5", 0xE6060018, 32, 1, GROUP( 2734 GP_5_31_FN, FN_IP17_27_24, 2735 GP_5_30_FN, FN_IP17_23_20, 2736 GP_5_29_FN, FN_IP17_19_16, 2737 GP_5_28_FN, FN_IP17_15_12, 2738 GP_5_27_FN, FN_IP17_11_8, 2739 GP_5_26_FN, FN_IP17_7_4, 2740 GP_5_25_FN, FN_IP17_3_0, 2741 GP_5_24_FN, FN_IP16_31_28, 2742 GP_5_23_FN, FN_IP16_27_24, 2743 GP_5_22_FN, FN_IP16_23_20, 2744 GP_5_21_FN, FN_IP16_19_16, 2745 GP_5_20_FN, FN_IP16_15_12, 2746 GP_5_19_FN, FN_IP16_11_8, 2747 GP_5_18_FN, FN_IP16_7_4, 2748 GP_5_17_FN, FN_IP16_3_0, 2749 GP_5_16_FN, FN_IP15_31_28, 2750 GP_5_15_FN, FN_IP15_27_24, 2751 GP_5_14_FN, FN_IP15_23_20, 2752 GP_5_13_FN, FN_IP15_19_16, 2753 GP_5_12_FN, FN_IP15_15_12, 2754 GP_5_11_FN, FN_IP15_11_8, 2755 GP_5_10_FN, FN_IP15_7_4, 2756 GP_5_9_FN, FN_IP15_3_0, 2757 GP_5_8_FN, FN_IP14_31_28, 2758 GP_5_7_FN, FN_IP14_27_24, 2759 GP_5_6_FN, FN_IP14_23_20, 2760 GP_5_5_FN, FN_IP14_19_16, 2761 GP_5_4_FN, FN_IP14_15_12, 2762 GP_5_3_FN, FN_IP14_11_8, 2763 GP_5_2_FN, FN_IP14_7_4, 2764 GP_5_1_FN, FN_IP14_3_0, 2765 GP_5_0_FN, FN_IP13_31_28, )) 2766 }, 2767 { PINMUX_CFG_REG_VAR("IPSR0", 0xE6060040, 32, 2768 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2769 GROUP( 2770 /* IP0_31_28 [4] */ 2771 FN_SD0_WP, FN_IRQ7, FN_CAN0_TX_A, 0, 0, 0, 0, 0, 2772 0, 0, 0, 0, 0, 0, 0, 0, 2773 /* IP0_27_24 [4] */ 2774 FN_SD0_CD, 0, FN_CAN0_RX_A, 0, 0, 0, 0, 0, 2775 0, 0, 0, 0, 0, 0, 0, 0, 2776 /* IP0_23_20 [4] */ 2777 FN_SD0_DAT3, 0, 0, FN_SSI_SDATA0_B, FN_TX5_E, 0, 0, 0, 2778 0, 0, 0, 0, 0, 0, 0, 0, 2779 /* IP0_19_16 [4] */ 2780 FN_SD0_DAT2, 0, 0, FN_SSI_WS0129_B, FN_RX5_E, 0, 0, 0, 2781 0, 0, 0, 0, 0, 0, 0, 0, 2782 /* IP0_15_12 [4] */ 2783 FN_SD0_DAT1, 0, 0, FN_SSI_SCK0129_B, FN_TX4_E, 0, 0, 0, 2784 0, 0, 0, 0, 0, 0, 0, 0, 2785 /* IP0_11_8 [4] */ 2786 FN_SD0_DAT0, 0, 0, FN_SSI_SDATA1_C, FN_RX4_E, 0, 0, 0, 2787 0, 0, 0, 0, 0, 0, 0, 0, 2788 /* IP0_7_4 [4] */ 2789 FN_SD0_CMD, 0, 0, FN_SSI_WS1_C, FN_TX3_C, 0, 0, 0, 2790 0, 0, 0, 0, 0, 0, 0, 0, 2791 /* IP0_3_0 [4] */ 2792 FN_SD0_CLK, 0, 0, FN_SSI_SCK1_C, FN_RX3_C, 0, 0, 0, 2793 0, 0, 0, 0, 0, 0, 0, 0, )) 2794 }, 2795 { PINMUX_CFG_REG_VAR("IPSR1", 0xE6060044, 32, 2796 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2797 GROUP( 2798 /* IP1_31_28 [4] */ 2799 FN_D5, FN_HRX2, FN_SCL1_B, FN_PWM2_C, FN_TCLK2_B, 0, 0, 0, 2800 0, 0, 0, 0, 0, 0, 0, 0, 2801 /* IP1_27_24 [4] */ 2802 FN_D4, 0, FN_IRQ3, FN_TCLK1_A, FN_PWM6_C, 0, 0, 0, 2803 0, 0, 0, 0, 0, 0, 0, 0, 2804 /* IP1_23_20 [4] */ 2805 FN_D3, 0, FN_TX4_B, FN_SDA0_D, FN_PWM0_A, 2806 FN_MSIOF2_SYNC_C, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2807 /* IP1_19_16 [4] */ 2808 FN_D2, 0, FN_RX4_B, FN_SCL0_D, FN_PWM1_C, 2809 FN_MSIOF2_SCK_C, FN_SSI_SCK5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2810 /* IP1_15_12 [4] */ 2811 FN_D1, 0, FN_SDA3_B, FN_TX5_B, 0, FN_MSIOF2_TXD_C, 2812 FN_SSI_WS5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2813 /* IP1_11_8 [4] */ 2814 FN_D0, 0, FN_SCL3_B, FN_RX5_B, FN_IRQ4, 2815 FN_MSIOF2_RXD_C, FN_SSI_SDATA5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2816 /* IP1_7_4 [4] */ 2817 FN_MMC0_D5, FN_SD1_WP, 0, 0, 0, 0, 0, 0, 2818 0, 0, 0, 0, 0, 0, 0, 0, 2819 /* IP1_3_0 [4] */ 2820 FN_MMC0_D4, FN_SD1_CD, 0, 0, 0, 0, 0, 0, 2821 0, 0, 0, 0, 0, 0, 0, 0, )) 2822 }, 2823 { PINMUX_CFG_REG_VAR("IPSR2", 0xE6060048, 32, 2824 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2825 GROUP( 2826 /* IP2_31_28 [4] */ 2827 FN_D13, FN_MSIOF2_SYNC_A, 0, FN_RX4_C, 0, 0, 0, 0, 0, 2828 0, 0, 0, 0, 0, 0, 0, 2829 /* IP2_27_24 [4] */ 2830 FN_D12, FN_MSIOF2_SCK_A, FN_HSCK0, 0, FN_CAN_CLK_C, 2831 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2832 /* IP2_23_20 [4] */ 2833 FN_D11, FN_MSIOF2_TXD_A, FN_HTX0_B, 0, 0, 0, 0, 0, 0, 2834 0, 0, 0, 0, 0, 0, 0, 2835 /* IP2_19_16 [4] */ 2836 FN_D10, FN_MSIOF2_RXD_A, FN_HRX0_B, 0, 0, 0, 0, 0, 0, 2837 0, 0, 0, 0, 0, 0, 0, 2838 /* IP2_15_12 [4] */ 2839 FN_D9, FN_HRTS2_N, FN_TX1_C, FN_SDA1_D, 0, 0, 0, 2840 0, 0, 0, 0, 0, 0, 0, 0, 0, 2841 /* IP2_11_8 [4] */ 2842 FN_D8, FN_HCTS2_N, FN_RX1_C, FN_SCL1_D, FN_PWM3_C, 0, 2843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2844 /* IP2_7_4 [4] */ 2845 FN_D7, FN_HSCK2, FN_SCIF1_SCK_C, FN_IRQ6, FN_PWM5_C, 2846 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2847 /* IP2_3_0 [4] */ 2848 FN_D6, FN_HTX2, FN_SDA1_B, FN_PWM4_C, 0, 0, 0, 0, 2849 0, 0, 0, 0, 0, 0, 0, 0, )) 2850 }, 2851 { PINMUX_CFG_REG_VAR("IPSR3", 0xE606004C, 32, 2852 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2853 GROUP( 2854 /* IP3_31_28 [4] */ 2855 FN_QSPI0_SSL, FN_WE1_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2856 0, 0, 2857 /* IP3_27_24 [4] */ 2858 FN_QSPI0_IO3, FN_RD_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2859 0, 0, 2860 /* IP3_23_20 [4] */ 2861 FN_QSPI0_IO2, FN_CS0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2862 0, 0, 2863 /* IP3_19_16 [4] */ 2864 FN_QSPI0_MISO_QSPI0_IO1, FN_RD_WR_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2865 0, 0, 0, 0, 2866 /* IP3_15_12 [4] */ 2867 FN_QSPI0_MOSI_QSPI0_IO0, FN_BS_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2868 0, 0, 0, 2869 /* IP3_11_8 [4] */ 2870 FN_QSPI0_SPCLK, FN_WE0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2871 0, 0, 2872 /* IP3_7_4 [4] */ 2873 FN_D15, FN_MSIOF2_SS2, FN_PWM4_A, 0, FN_CAN1_TX_B, FN_IRQ2, 2874 FN_AVB_AVTP_MATCH_A, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2875 /* IP3_3_0 [4] */ 2876 FN_D14, FN_MSIOF2_SS1, 0, FN_TX4_C, FN_CAN1_RX_B, 2877 0, FN_AVB_AVTP_CAPTURE_A, 2878 0, 0, 0, 0, 0, 0, 0, 0, 0, )) 2879 }, 2880 { PINMUX_CFG_REG_VAR("IPSR4", 0xE6060050, 32, 2881 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2882 GROUP( 2883 /* IP4_31_28 [4] */ 2884 FN_DU0_DR6, 0, FN_RX2_C, 0, 0, 0, FN_A6, 0, 2885 0, 0, 0, 0, 0, 0, 0, 0, 2886 /* IP4_27_24 [4] */ 2887 FN_DU0_DR5, 0, FN_TX1_D, 0, FN_PWM1_B, 0, FN_A5, 0, 2888 0, 0, 0, 0, 0, 0, 0, 0, 2889 /* IP4_23_20 [4] */ 2890 FN_DU0_DR4, 0, FN_RX1_D, 0, 0, 0, FN_A4, 0, 0, 0, 0, 2891 0, 0, 0, 0, 0, 2892 /* IP4_19_16 [4] */ 2893 FN_DU0_DR3, 0, FN_TX0_D, FN_SDA0_E, FN_PWM0_B, 0, 2894 FN_A3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2895 /* IP4_15_12 [4] */ 2896 FN_DU0_DR2, 0, FN_RX0_D, FN_SCL0_E, 0, 0, FN_A2, 0, 2897 0, 0, 0, 0, 0, 0, 0, 0, 2898 /* IP4_11_8 [4] */ 2899 FN_DU0_DR1, 0, FN_TX5_C, FN_SDA2_D, 0, 0, FN_A1, 0, 2900 0, 0, 0, 0, 0, 0, 0, 0, 2901 /* IP4_7_4 [4] */ 2902 FN_DU0_DR0, 0, FN_RX5_C, FN_SCL2_D, 0, 0, FN_A0, 0, 2903 0, 0, 0, 0, 0, 0, 0, 0, 2904 /* IP4_3_0 [4] */ 2905 FN_EX_WAIT0, FN_CAN_CLK_B, FN_SCIF_CLK_A, 0, 0, 0, 0, 2906 0, 0, 0, 0, 0, 0, 0, 0, 0, )) 2907 }, 2908 { PINMUX_CFG_REG_VAR("IPSR5", 0xE6060054, 32, 2909 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2910 GROUP( 2911 /* IP5_31_28 [4] */ 2912 FN_DU0_DG6, 0, FN_HRX1_C, 0, 0, 0, FN_A14, 0, 0, 0, 2913 0, 0, 0, 0, 0, 0, 2914 /* IP5_27_24 [4] */ 2915 FN_DU0_DG5, 0, FN_HTX0_A, 0, FN_PWM5_B, 0, FN_A13, 2916 0, 0, 0, 0, 0, 0, 0, 0, 0, 2917 /* IP5_23_20 [4] */ 2918 FN_DU0_DG4, 0, FN_HRX0_A, 0, 0, 0, FN_A12, 0, 0, 0, 2919 0, 0, 0, 0, 0, 0, 2920 /* IP5_19_16 [4] */ 2921 FN_DU0_DG3, 0, FN_TX4_D, 0, FN_PWM4_B, 0, FN_A11, 0, 2922 0, 0, 0, 0, 0, 0, 0, 0, 2923 /* IP5_15_12 [4] */ 2924 FN_DU0_DG2, 0, FN_RX4_D, 0, 0, 0, FN_A10, 0, 0, 0, 2925 0, 0, 0, 0, 0, 0, 2926 /* IP5_11_8 [4] */ 2927 FN_DU0_DG1, 0, FN_TX3_B, FN_SDA3_D, FN_PWM3_B, 0, 2928 FN_A9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2929 /* IP5_7_4 [4] */ 2930 FN_DU0_DG0, 0, FN_RX3_B, FN_SCL3_D, 0, 0, FN_A8, 0, 2931 0, 0, 0, 0, 0, 0, 0, 0, 2932 /* IP5_3_0 [4] */ 2933 FN_DU0_DR7, 0, FN_TX2_C, 0, FN_PWM2_B, 0, FN_A7, 0, 2934 0, 0, 0, 0, 0, 0, 0, 0, )) 2935 }, 2936 { PINMUX_CFG_REG_VAR("IPSR6", 0xE6060058, 32, 2937 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2938 GROUP( 2939 /* IP6_31_28 [4] */ 2940 FN_DU0_DB6, 0, 0, 0, 0, 0, FN_A22, 0, 0, 2941 0, 0, 0, 0, 0, 0, 0, 2942 /* IP6_27_24 [4] */ 2943 FN_DU0_DB5, 0, FN_HRTS1_N_C, 0, 0, 0, 2944 FN_A21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2945 /* IP6_23_20 [4] */ 2946 FN_DU0_DB4, 0, FN_HCTS1_N_C, 0, 0, 0, 2947 FN_A20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2948 /* IP6_19_16 [4] */ 2949 FN_DU0_DB3, 0, FN_HRTS0_N, 0, 0, 0, FN_A19, 0, 0, 0, 2950 0, 0, 0, 0, 0, 0, 2951 /* IP6_15_12 [4] */ 2952 FN_DU0_DB2, 0, FN_HCTS0_N, 0, 0, 0, FN_A18, 0, 0, 0, 2953 0, 0, 0, 0, 0, 0, 2954 /* IP6_11_8 [4] */ 2955 FN_DU0_DB1, 0, 0, FN_SDA4_D, FN_CAN0_TX_C, 0, FN_A17, 2956 0, 0, 0, 0, 0, 0, 0, 0, 0, 2957 /* IP6_7_4 [4] */ 2958 FN_DU0_DB0, 0, 0, FN_SCL4_D, FN_CAN0_RX_C, 0, FN_A16, 2959 0, 0, 0, 0, 0, 0, 0, 0, 0, 2960 /* IP6_3_0 [4] */ 2961 FN_DU0_DG7, 0, FN_HTX1_C, 0, FN_PWM6_B, 0, FN_A15, 2962 0, 0, 0, 0, 0, 0, 0, 0, 0, )) 2963 }, 2964 { PINMUX_CFG_REG_VAR("IPSR7", 0xE606005C, 32, 2965 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2966 GROUP( 2967 /* IP7_31_28 [4] */ 2968 FN_DU0_DISP, 0, 0, 0, FN_CAN1_RX_C, 0, 0, 0, 0, 0, 0, 2969 0, 0, 0, 0, 0, 2970 /* IP7_27_24 [4] */ 2971 FN_DU0_EXODDF_DU0_ODDF_DISP_CDE, 0, FN_MSIOF2_SCK_B, 2972 0, 0, 0, FN_DRACK0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2973 /* IP7_23_20 [4] */ 2974 FN_DU0_EXVSYNC_DU0_VSYNC, 0, FN_MSIOF2_SYNC_B, 0, 2975 0, 0, FN_DACK0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2976 /* IP7_19_16 [4] */ 2977 FN_DU0_EXHSYNC_DU0_HSYNC, 0, FN_MSIOF2_TXD_B, 0, 2978 0, 0, FN_DREQ0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2979 /* IP7_15_12 [4] */ 2980 FN_DU0_DOTCLKOUT1, 0, FN_MSIOF2_RXD_B, 0, 0, 0, 2981 FN_CS1_N_A26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2982 /* IP7_11_8 [4] */ 2983 FN_DU0_DOTCLKOUT0, 0, 0, 0, 0, 0, FN_A25, 0, 0, 0, 0, 2984 0, 0, 0, 0, 0, 2985 /* IP7_7_4 [4] */ 2986 FN_DU0_DOTCLKIN, 0, 0, 0, 0, 0, FN_A24, 0, 0, 0, 2987 0, 0, 0, 0, 0, 0, 2988 /* IP7_3_0 [4] */ 2989 FN_DU0_DB7, 0, 0, 0, 0, 0, FN_A23, 0, 0, 2990 0, 0, 0, 0, 0, 0, 0, )) 2991 }, 2992 { PINMUX_CFG_REG_VAR("IPSR8", 0xE6060060, 32, 2993 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 2994 GROUP( 2995 /* IP8_31_28 [4] */ 2996 FN_VI1_DATA5, 0, 0, 0, FN_AVB_RXD4, FN_ETH_LINK, 0, 0, 0, 0, 2997 0, 0, 0, 0, 0, 0, 2998 /* IP8_27_24 [4] */ 2999 FN_VI1_DATA4, 0, 0, 0, FN_AVB_RXD3, FN_ETH_RX_ER, 0, 0, 0, 0, 3000 0, 0, 0, 0, 0, 0, 3001 /* IP8_23_20 [4] */ 3002 FN_VI1_DATA3, 0, 0, 0, FN_AVB_RXD2, FN_ETH_MDIO, 0, 0, 0, 0, 3003 0, 0, 0, 0, 0, 0, 3004 /* IP8_19_16 [4] */ 3005 FN_VI1_DATA2, 0, 0, 0, FN_AVB_RXD1, FN_ETH_RXD1, 0, 0, 0, 0, 3006 0, 0, 0, 0, 0, 0, 3007 /* IP8_15_12 [4] */ 3008 FN_VI1_DATA1, 0, 0, 0, FN_AVB_RXD0, FN_ETH_RXD0, 0, 0, 0, 0, 3009 0, 0, 0, 0, 0, 0, 3010 /* IP8_11_8 [4] */ 3011 FN_VI1_DATA0, 0, 0, 0, FN_AVB_RX_DV, FN_ETH_CRS_DV, 0, 0, 0, 3012 0, 0, 0, 0, 0, 0, 0, 3013 /* IP8_7_4 [4] */ 3014 FN_VI1_CLK, 0, 0, 0, FN_AVB_RX_CLK, FN_ETH_REF_CLK, 0, 0, 0, 3015 0, 0, 0, 0, 0, 0, 0, 3016 /* IP8_3_0 [4] */ 3017 FN_DU0_CDE, 0, 0, 0, FN_CAN1_TX_C, 0, 0, 0, 0, 0, 0, 0, 3018 0, 0, 0, 0, )) 3019 }, 3020 { PINMUX_CFG_REG_VAR("IPSR9", 0xE6060064, 32, 3021 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3022 GROUP( 3023 /* IP9_31_28 [4] */ 3024 FN_VI1_DATA9, 0, 0, FN_SDA2_B, FN_AVB_TXD0, 0, 0, 0, 0, 0, 0, 3025 0, 0, 0, 0, 0, 3026 /* IP9_27_24 [4] */ 3027 FN_VI1_DATA8, 0, 0, FN_SCL2_B, FN_AVB_TX_EN, 0, 0, 0, 0, 0, 0, 3028 0, 0, 0, 0, 0, 3029 /* IP9_23_20 [4] */ 3030 FN_VI1_VSYNC_N, FN_TX0_B, FN_SDA0_C, FN_AUDIO_CLKOUT_B, 3031 FN_AVB_TX_CLK, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3032 /* IP9_19_16 [4] */ 3033 FN_VI1_HSYNC_N, FN_RX0_B, FN_SCL0_C, 0, FN_AVB_GTXREFCLK, 3034 FN_ETH_MDC, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3035 /* IP9_15_12 [4] */ 3036 FN_VI1_FIELD, FN_SDA3_A, 0, 0, FN_AVB_RX_ER, FN_ETH_TXD0, 0, 3037 0, 0, 0, 0, 0, 0, 0, 0, 0, 3038 /* IP9_11_8 [4] */ 3039 FN_VI1_CLKENB, FN_SCL3_A, 0, 0, FN_AVB_RXD7, FN_ETH_MAGIC, 0, 3040 0, 0, 0, 0, 0, 0, 0, 0, 0, 3041 /* IP9_7_4 [4] */ 3042 FN_VI1_DATA7, 0, 0, 0, FN_AVB_RXD6, FN_ETH_TX_EN, 0, 0, 0, 0, 3043 0, 0, 0, 0, 0, 0, 3044 /* IP9_3_0 [4] */ 3045 FN_VI1_DATA6, 0, 0, 0, FN_AVB_RXD5, FN_ETH_TXD1, 0, 0, 0, 0, 3046 0, 0, 0, 0, 0, 0, )) 3047 }, 3048 { PINMUX_CFG_REG_VAR("IPSR10", 0xE6060068, 32, 3049 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3050 GROUP( 3051 /* IP10_31_28 [4] */ 3052 FN_SCL1_A, FN_RX4_A, FN_PWM5_D, FN_DU1_DR0, 0, 0, 3053 FN_SSI_SCK6_B, FN_VI0_G0, 0, 0, 0, 0, 0, 0, 0, 0, 3054 /* IP10_27_24 [4] */ 3055 FN_SDA0_A, FN_TX0_C, FN_IRQ5, FN_CAN_CLK_A, FN_AVB_GTX_CLK, 3056 FN_CAN1_TX_D, FN_DVC_MUTE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3057 /* IP10_23_20 [4] */ 3058 FN_SCL0_A, FN_RX0_C, FN_PWM5_A, FN_TCLK1_B, FN_AVB_TXD6, 3059 FN_CAN1_RX_D, FN_MSIOF0_SYNC_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3060 /* IP10_19_16 [4] */ 3061 FN_AVB_TXD5, FN_SCIF_CLK_B, FN_AUDIO_CLKC_B, 0, 3062 FN_SSI_SDATA1_D, 0, FN_MSIOF0_SCK_B, 0, 0, 0, 0, 0, 0, 0, 3063 0, 0, 3064 /* IP10_15_12 [4] */ 3065 FN_AVB_TXD4, 0, FN_AUDIO_CLKB_B, 0, FN_SSI_WS1_D, FN_TX5_F, 3066 FN_MSIOF0_TXD_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3067 /* IP10_11_8 [4] */ 3068 FN_AVB_TXD3, 0, FN_AUDIO_CLKA_B, 0, FN_SSI_SCK1_D, FN_RX5_F, 3069 FN_MSIOF0_RXD_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3070 /* IP10_7_4 [4] */ 3071 FN_VI1_DATA11, 0, 0, FN_CAN0_TX_B, FN_AVB_TXD2, 0, 0, 0, 0, 3072 0, 0, 0, 0, 0, 0, 0, 3073 /* IP10_3_0 [4] */ 3074 FN_VI1_DATA10, 0, 0, FN_CAN0_RX_B, FN_AVB_TXD1, 0, 0, 0, 0, 3075 0, 0, 0, 0, 0, 0, 0, )) 3076 }, 3077 { PINMUX_CFG_REG_VAR("IPSR11", 0xE606006C, 32, 3078 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3079 GROUP( 3080 /* IP11_31_28 [4] */ 3081 FN_HRX1_A, FN_SCL4_A, FN_PWM6_A, FN_DU1_DG0, FN_RX0_A, 0, 0, 3082 0, 0, 0, 0, 0, 0, 0, 0, 0, 3083 /* IP11_27_24 [4] */ 3084 FN_MSIOF0_SS2_A, 0, 0, FN_DU1_DR7, 0, 3085 FN_QSPI1_SSL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3086 /* IP11_23_20 [4] */ 3087 FN_MSIOF0_SS1_A, 0, 0, FN_DU1_DR6, 0, 3088 FN_QSPI1_IO3, FN_SSI_SDATA8_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3089 /* IP11_19_16 [4] */ 3090 FN_MSIOF0_SYNC_A, FN_PWM1_A, 0, FN_DU1_DR5, 3091 0, FN_QSPI1_IO2, FN_SSI_SDATA7_B, 0, 0, 0, 0, 0, 3092 0, 0, 0, 0, 3093 /* IP11_15_12 [4] */ 3094 FN_MSIOF0_SCK_A, FN_IRQ0, 0, FN_DU1_DR4, 3095 0, FN_QSPI1_SPCLK, FN_SSI_SCK78_B, FN_VI0_G4, 3096 0, 0, 0, 0, 0, 0, 0, 0, 3097 /* IP11_11_8 [4] */ 3098 FN_MSIOF0_TXD_A, FN_TX5_A, FN_SDA2_C, FN_DU1_DR3, 0, 3099 FN_QSPI1_MISO_QSPI1_IO1, FN_SSI_WS78_B, FN_VI0_G3, 3100 0, 0, 0, 0, 0, 0, 0, 0, 3101 /* IP11_7_4 [4] */ 3102 FN_MSIOF0_RXD_A, FN_RX5_A, FN_SCL2_C, FN_DU1_DR2, 0, 3103 FN_QSPI1_MOSI_QSPI1_IO0, FN_SSI_SDATA6_B, FN_VI0_G2, 3104 0, 0, 0, 0, 0, 0, 0, 0, 3105 /* IP11_3_0 [4] */ 3106 FN_SDA1_A, FN_TX4_A, 0, FN_DU1_DR1, 0, 0, FN_SSI_WS6_B, 3107 FN_VI0_G1, 0, 0, 0, 0, 0, 0, 0, 0, )) 3108 }, 3109 { PINMUX_CFG_REG_VAR("IPSR12", 0xE6060070, 32, 3110 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3111 GROUP( 3112 /* IP12_31_28 [4] */ 3113 FN_SD2_DAT2, FN_RX2_A, 0, FN_DU1_DB0, FN_SSI_SDATA2_B, 0, 0, 3114 0, 0, 0, 0, 0, 0, 0, 0, 0, 3115 /* IP12_27_24 [4] */ 3116 FN_SD2_DAT1, FN_TX1_A, FN_SDA1_E, FN_DU1_DG7, FN_SSI_WS2_B, 3117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3118 /* IP12_23_20 [4] */ 3119 FN_SD2_DAT0, FN_RX1_A, FN_SCL1_E, FN_DU1_DG6, 3120 FN_SSI_SDATA1_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3121 /* IP12_19_16 [4] */ 3122 FN_SD2_CMD, FN_SCIF1_SCK_A, FN_TCLK2_A, FN_DU1_DG5, 3123 FN_SSI_SCK2_B, FN_PWM3_A, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3124 /* IP12_15_12 [4] */ 3125 FN_SD2_CLK, FN_HSCK1, 0, FN_DU1_DG4, FN_SSI_SCK1_B, 0, 0, 0, 3126 0, 0, 0, 0, 0, 0, 0, 0, 3127 /* IP12_11_8 [4] */ 3128 FN_HRTS1_N_A, 0, 0, FN_DU1_DG3, FN_SSI_WS1_B, FN_IRQ1, 0, 0, 3129 0, 0, 0, 0, 0, 0, 0, 0, 3130 /* IP12_7_4 [4] */ 3131 FN_HCTS1_N_A, FN_PWM2_A, 0, FN_DU1_DG2, FN_REMOCON_B, 3132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3133 /* IP12_3_0 [4] */ 3134 FN_HTX1_A, FN_SDA4_A, 0, FN_DU1_DG1, FN_TX0_A, 0, 0, 0, 0, 0, 3135 0, 0, 0, 0, 0, 0, )) 3136 }, 3137 { PINMUX_CFG_REG_VAR("IPSR13", 0xE6060074, 32, 3138 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3139 GROUP( 3140 /* IP13_31_28 [4] */ 3141 FN_SSI_SCK5_A, 0, 0, FN_DU1_DOTCLKOUT1, 0, 0, 0, 0, 0, 0, 0, 3142 0, 0, 0, 0, 0, 3143 /* IP13_27_24 [4] */ 3144 FN_SDA2_A, 0, FN_MSIOF1_SYNC_B, FN_DU1_DB7, FN_AUDIO_CLKOUT_C, 3145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3146 /* IP13_23_20 [4] */ 3147 FN_SCL2_A, 0, FN_MSIOF1_SCK_B, FN_DU1_DB6, FN_AUDIO_CLKC_C, 3148 FN_SSI_SCK4_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3149 /* IP13_19_16 [4] */ 3150 FN_TX3_A, FN_SDA1_C, FN_MSIOF1_TXD_B, FN_DU1_DB5, 3151 FN_AUDIO_CLKB_C, FN_SSI_WS4_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3152 /* IP13_15_12 [4] */ 3153 FN_RX3_A, FN_SCL1_C, FN_MSIOF1_RXD_B, FN_DU1_DB4, 3154 FN_AUDIO_CLKA_C, FN_SSI_SDATA4_B, 0, 0, 0, 0, 0, 0, 0, 0, 3155 0, 0, 3156 /* IP13_11_8 [4] */ 3157 FN_SD2_WP, FN_SCIF3_SCK, 0, FN_DU1_DB3, FN_SSI_SDATA9_B, 0, 3158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3159 /* IP13_7_4 [4] */ 3160 FN_SD2_CD, FN_SCIF2_SCK_A, 0, FN_DU1_DB2, FN_SSI_SCK9_B, 0, 0, 3161 0, 0, 0, 0, 0, 0, 0, 0, 0, 3162 /* IP13_3_0 [4] */ 3163 FN_SD2_DAT3, FN_TX2_A, 0, FN_DU1_DB1, FN_SSI_WS9_B, 0, 0, 0, 3164 0, 0, 0, 0, 0, 0, 0, 0, )) 3165 }, 3166 { PINMUX_CFG_REG_VAR("IPSR14", 0xE6060078, 32, 3167 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3168 GROUP( 3169 /* IP14_31_28 [4] */ 3170 FN_SSI_SDATA7_A, 0, 0, FN_IRQ8, FN_AUDIO_CLKA_D, FN_CAN_CLK_D, 3171 FN_VI0_G5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3172 /* IP14_27_24 [4] */ 3173 FN_SSI_WS78_A, 0, FN_SCL4_E, FN_DU1_CDE, 0, 0, 0, 0, 0, 0, 0, 3174 0, 0, 0, 0, 0, 3175 /* IP14_23_20 [4] */ 3176 FN_SSI_SCK78_A, 0, FN_SDA4_E, FN_DU1_DISP, 0, 0, 0, 0, 0, 0, 3177 0, 0, 0, 0, 0, 0, 3178 /* IP14_19_16 [4] */ 3179 FN_SSI_SDATA6_A, 0, FN_SDA4_C, FN_DU1_EXVSYNC_DU1_VSYNC, 0, 0, 3180 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3181 /* IP14_15_12 [4] */ 3182 FN_SSI_WS6_A, 0, FN_SCL4_C, FN_DU1_EXHSYNC_DU1_HSYNC, 0, 0, 0, 3183 0, 0, 0, 0, 0, 0, 0, 0, 0, 3184 /* IP14_11_8 [4] */ 3185 FN_SSI_SCK6_A, 0, 0, FN_DU1_EXODDF_DU1_ODDF_DISP_CDE, 0, 0, 3186 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3187 /* IP14_7_4 [4] */ 3188 FN_SSI_SDATA5_A, 0, FN_SDA3_C, FN_DU1_DOTCLKOUT0, 0, 0, 0, 3189 0, 0, 0, 0, 0, 0, 0, 0, 0, 3190 /* IP14_3_0 [4] */ 3191 FN_SSI_WS5_A, 0, FN_SCL3_C, FN_DU1_DOTCLKIN, 0, 0, 0, 0, 0, 0, 3192 0, 0, 0, 0, 0, 0, )) 3193 }, 3194 { PINMUX_CFG_REG_VAR("IPSR15", 0xE606007C, 32, 3195 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3196 GROUP( 3197 /* IP15_31_28 [4] */ 3198 FN_SSI_WS4_A, 0, FN_AVB_PHY_INT, 0, 0, 0, FN_VI0_R5, 0, 0, 0, 3199 0, 0, 0, 0, 0, 0, 3200 /* IP15_27_24 [4] */ 3201 FN_SSI_SCK4_A, 0, FN_AVB_MAGIC, 0, 0, 0, FN_VI0_R4, 0, 0, 0, 3202 0, 0, 0, 0, 0, 0, 3203 /* IP15_23_20 [4] */ 3204 FN_SSI_SDATA3, FN_MSIOF1_SS2_A, FN_AVB_LINK, 0, FN_CAN1_TX_A, 3205 FN_DREQ2_N, FN_VI0_R3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3206 /* IP15_19_16 [4] */ 3207 FN_SSI_WS34, FN_MSIOF1_SS1_A, FN_AVB_MDIO, 0, FN_CAN1_RX_A, 3208 FN_DREQ1_N, FN_VI0_R2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3209 /* IP15_15_12 [4] */ 3210 FN_SSI_SCK34, FN_MSIOF1_SCK_A, FN_AVB_MDC, 0, 0, FN_DACK1, 3211 FN_VI0_R1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3212 /* IP15_11_8 [4] */ 3213 FN_SSI_SDATA0_A, FN_MSIOF1_SYNC_A, FN_PWM0_C, 0, 0, 0, 3214 FN_VI0_R0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3215 /* IP15_7_4 [4] */ 3216 FN_SSI_WS0129_A, FN_MSIOF1_TXD_A, FN_TX5_D, 0, 0, 0, 3217 FN_VI0_G7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3218 /* IP15_3_0 [4] */ 3219 FN_SSI_SCK0129_A, FN_MSIOF1_RXD_A, FN_RX5_D, 0, 0, 0, 3220 FN_VI0_G6, 0, 0, 0, 0, 0, 0, 0, 0, 0, )) 3221 }, 3222 { PINMUX_CFG_REG_VAR("IPSR16", 0xE6060080, 32, 3223 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3224 GROUP( 3225 /* IP16_31_28 [4] */ 3226 FN_SSI_SDATA2_A, FN_HRTS1_N_B, 0, 0, 0, 0, 3227 FN_VI0_DATA4_VI0_B4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3228 /* IP16_27_24 [4] */ 3229 FN_SSI_WS2_A, FN_HCTS1_N_B, 0, 0, 0, FN_AVB_TX_ER, 3230 FN_VI0_DATA3_VI0_B3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3231 /* IP16_23_20 [4] */ 3232 FN_SSI_SCK2_A, FN_HTX1_B, 0, 0, 0, FN_AVB_TXD7, 3233 FN_VI0_DATA2_VI0_B2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3234 /* IP16_19_16 [4] */ 3235 FN_SSI_SDATA1_A, FN_HRX1_B, 0, 0, 0, 0, FN_VI0_DATA1_VI0_B1, 3236 0, 0, 0, 0, 0, 0, 0, 0, 0, 3237 /* IP16_15_12 [4] */ 3238 FN_SSI_WS1_A, FN_TX1_B, 0, 0, FN_CAN0_TX_D, 3239 FN_AVB_AVTP_MATCH_B, FN_VI0_DATA0_VI0_B0, 0, 0, 0, 0, 0, 0, 3240 0, 0, 0, 3241 /* IP16_11_8 [4] */ 3242 FN_SSI_SDATA8_A, FN_RX1_B, 0, 0, FN_CAN0_RX_D, 3243 FN_AVB_AVTP_CAPTURE_B, FN_VI0_R7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3244 /* IP16_7_4 [4] */ 3245 FN_SSI_SCK1_A, FN_SCIF1_SCK_B, FN_PWM1_D, FN_IRQ9, FN_REMOCON_A, 3246 FN_DACK2, FN_VI0_CLK, FN_AVB_COL, 0, 0, 0, 0, 0, 0, 0, 0, 3247 /* IP16_3_0 [4] */ 3248 FN_SSI_SDATA4_A, 0, FN_AVB_CRS, 0, 0, 0, FN_VI0_R6, 0, 0, 0, 3249 0, 0, 0, 0, 0, 0, )) 3250 }, 3251 { PINMUX_CFG_REG_VAR("IPSR17", 0xE6060084, 32, 3252 GROUP(4, 4, 4, 4, 4, 4, 4, 4), 3253 GROUP( 3254 /* IP17_31_28 [4] */ 3255 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3256 /* IP17_27_24 [4] */ 3257 FN_AUDIO_CLKOUT_A, FN_SDA4_B, 0, 0, 0, 0, 3258 FN_VI0_VSYNC_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3259 /* IP17_23_20 [4] */ 3260 FN_AUDIO_CLKC_A, FN_SCL4_B, 0, 0, 0, 0, 3261 FN_VI0_HSYNC_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3262 /* IP17_19_16 [4] */ 3263 FN_AUDIO_CLKB_A, FN_SDA0_B, 0, 0, 0, 0, 3264 FN_VI0_FIELD, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3265 /* IP17_15_12 [4] */ 3266 FN_AUDIO_CLKA_A, FN_SCL0_B, 0, 0, 0, 0, 3267 FN_VI0_CLKENB, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3268 /* IP17_11_8 [4] */ 3269 FN_SSI_SDATA9_A, FN_SCIF2_SCK_B, FN_PWM2_D, 0, 0, 0, 3270 FN_VI0_DATA7_VI0_B7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3271 /* IP17_7_4 [4] */ 3272 FN_SSI_WS9_A, FN_TX2_B, FN_SDA3_E, 0, 0, 0, 3273 FN_VI0_DATA6_VI0_B6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3274 /* IP17_3_0 [4] */ 3275 FN_SSI_SCK9_A, FN_RX2_B, FN_SCL3_E, 0, 0, FN_EX_WAIT1, 3276 FN_VI0_DATA5_VI0_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, )) 3277 }, 3278 { PINMUX_CFG_REG_VAR("MOD_SEL0", 0xE60600C0, 32, 3279 GROUP(1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 3280 3, 3, 1, 2, 3, 3, 1), 3281 GROUP( 3282 /* RESERVED [1] */ 3283 0, 0, 3284 /* RESERVED [1] */ 3285 0, 0, 3286 /* RESERVED [1] */ 3287 0, 0, 3288 /* RESERVED [1] */ 3289 0, 0, 3290 /* RESERVED [1] */ 3291 0, 0, 3292 /* SEL_ADGA [2] */ 3293 FN_SEL_ADGA_0, FN_SEL_ADGA_1, FN_SEL_ADGA_2, FN_SEL_ADGA_3, 3294 /* RESERVED [1] */ 3295 0, 0, 3296 /* RESERVED [1] */ 3297 0, 0, 3298 /* SEL_CANCLK [2] */ 3299 FN_SEL_CANCLK_0, FN_SEL_CANCLK_1, FN_SEL_CANCLK_2, 3300 FN_SEL_CANCLK_3, 3301 /* SEL_CAN1 [2] */ 3302 FN_SEL_CAN1_0, FN_SEL_CAN1_1, FN_SEL_CAN1_2, FN_SEL_CAN1_3, 3303 /* SEL_CAN0 [2] */ 3304 FN_SEL_CAN0_0, FN_SEL_CAN0_1, FN_SEL_CAN0_2, FN_SEL_CAN0_3, 3305 /* RESERVED [1] */ 3306 0, 0, 3307 /* SEL_I2C04 [3] */ 3308 FN_SEL_I2C04_0, FN_SEL_I2C04_1, FN_SEL_I2C04_2, FN_SEL_I2C04_3, 3309 FN_SEL_I2C04_4, 0, 0, 0, 3310 /* SEL_I2C03 [3] */ 3311 FN_SEL_I2C03_0, FN_SEL_I2C03_1, FN_SEL_I2C03_2, FN_SEL_I2C03_3, 3312 FN_SEL_I2C03_4, 0, 0, 0, 3313 /* RESERVED [1] */ 3314 0, 0, 3315 /* SEL_I2C02 [2] */ 3316 FN_SEL_I2C02_0, FN_SEL_I2C02_1, FN_SEL_I2C02_2, FN_SEL_I2C02_3, 3317 /* SEL_I2C01 [3] */ 3318 FN_SEL_I2C01_0, FN_SEL_I2C01_1, FN_SEL_I2C01_2, FN_SEL_I2C01_3, 3319 FN_SEL_I2C01_4, 0, 0, 0, 3320 /* SEL_I2C00 [3] */ 3321 FN_SEL_I2C00_0, FN_SEL_I2C00_1, FN_SEL_I2C00_2, FN_SEL_I2C00_3, 3322 FN_SEL_I2C00_4, 0, 0, 0, 3323 /* SEL_AVB [1] */ 3324 FN_SEL_AVB_0, FN_SEL_AVB_1, )) 3325 }, 3326 { PINMUX_CFG_REG_VAR("MOD_SEL1", 0xE60600C4, 32, 3327 GROUP(1, 3, 3, 2, 2, 1, 2, 2, 2, 1, 1, 1, 3328 1, 1, 2, 1, 1, 2, 2, 1), 3329 GROUP( 3330 /* SEL_SCIFCLK [1] */ 3331 FN_SEL_SCIFCLK_0, FN_SEL_SCIFCLK_1, 3332 /* SEL_SCIF5 [3] */ 3333 FN_SEL_SCIF5_0, FN_SEL_SCIF5_1, FN_SEL_SCIF5_2, FN_SEL_SCIF5_3, 3334 FN_SEL_SCIF5_4, FN_SEL_SCIF5_5, 0, 0, 3335 /* SEL_SCIF4 [3] */ 3336 FN_SEL_SCIF4_0, FN_SEL_SCIF4_1, FN_SEL_SCIF4_2, FN_SEL_SCIF4_3, 3337 FN_SEL_SCIF4_4, 0, 0, 0, 3338 /* SEL_SCIF3 [2] */ 3339 FN_SEL_SCIF3_0, FN_SEL_SCIF3_1, FN_SEL_SCIF3_2, 0, 3340 /* SEL_SCIF2 [2] */ 3341 FN_SEL_SCIF2_0, FN_SEL_SCIF2_1, FN_SEL_SCIF2_2, 0, 3342 /* SEL_SCIF2_CLK [1] */ 3343 FN_SEL_SCIF2_CLK_0, FN_SEL_SCIF2_CLK_1, 3344 /* SEL_SCIF1 [2] */ 3345 FN_SEL_SCIF1_0, FN_SEL_SCIF1_1, FN_SEL_SCIF1_2, FN_SEL_SCIF1_3, 3346 /* SEL_SCIF0 [2] */ 3347 FN_SEL_SCIF0_0, FN_SEL_SCIF0_1, FN_SEL_SCIF0_2, FN_SEL_SCIF0_3, 3348 /* SEL_MSIOF2 [2] */ 3349 FN_SEL_MSIOF2_0, FN_SEL_MSIOF2_1, FN_SEL_MSIOF2_2, 0, 3350 /* RESERVED [1] */ 3351 0, 0, 3352 /* SEL_MSIOF1 [1] */ 3353 FN_SEL_MSIOF1_0, FN_SEL_MSIOF1_1, 3354 /* RESERVED [1] */ 3355 0, 0, 3356 /* SEL_MSIOF0 [1] */ 3357 FN_SEL_MSIOF0_0, FN_SEL_MSIOF0_1, 3358 /* SEL_RCN [1] */ 3359 FN_SEL_RCN_0, FN_SEL_RCN_1, 3360 /* RESERVED [2] */ 3361 0, 0, 0, 0, 3362 /* SEL_TMU2 [1] */ 3363 FN_SEL_TMU2_0, FN_SEL_TMU2_1, 3364 /* SEL_TMU1 [1] */ 3365 FN_SEL_TMU1_0, FN_SEL_TMU1_1, 3366 /* RESERVED [2] */ 3367 0, 0, 0, 0, 3368 /* SEL_HSCIF1 [2] */ 3369 FN_SEL_HSCIF1_0, FN_SEL_HSCIF1_1, FN_SEL_HSCIF1_2, 0, 3370 /* SEL_HSCIF0 [1] */ 3371 FN_SEL_HSCIF0_0, FN_SEL_HSCIF0_1, )) 3372 }, 3373 { PINMUX_CFG_REG_VAR("MOD_SEL2", 0xE60600C8, 32, 3374 GROUP(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3375 2, 2, 2, 2, 2, 2, 2, 2, 2), 3376 GROUP( 3377 /* RESERVED [1] */ 3378 0, 0, 3379 /* RESERVED [1] */ 3380 0, 0, 3381 /* RESERVED [1] */ 3382 0, 0, 3383 /* RESERVED [1] */ 3384 0, 0, 3385 /* RESERVED [1] */ 3386 0, 0, 3387 /* RESERVED [1] */ 3388 0, 0, 3389 /* RESERVED [1] */ 3390 0, 0, 3391 /* RESERVED [1] */ 3392 0, 0, 3393 /* RESERVED [1] */ 3394 0, 0, 3395 /* RESERVED [1] */ 3396 0, 0, 3397 /* SEL_ADGB [2] */ 3398 FN_SEL_ADGB_0, FN_SEL_ADGB_1, FN_SEL_ADGB_2, 0, 3399 /* SEL_ADGC [2] */ 3400 FN_SEL_ADGC_0, FN_SEL_ADGC_1, FN_SEL_ADGC_2, 0, 3401 /* SEL_SSI9 [2] */ 3402 FN_SEL_SSI9_0, FN_SEL_SSI9_1, 0, 0, 3403 /* SEL_SSI8 [2] */ 3404 FN_SEL_SSI8_0, FN_SEL_SSI8_1, 0, 0, 3405 /* SEL_SSI7 [2] */ 3406 FN_SEL_SSI7_0, FN_SEL_SSI7_1, 0, 0, 3407 /* SEL_SSI6 [2] */ 3408 FN_SEL_SSI6_0, FN_SEL_SSI6_1, 0, 0, 3409 /* SEL_SSI5 [2] */ 3410 FN_SEL_SSI5_0, FN_SEL_SSI5_1, 0, 0, 3411 /* SEL_SSI4 [2] */ 3412 FN_SEL_SSI4_0, FN_SEL_SSI4_1, 0, 0, 3413 /* SEL_SSI2 [2] */ 3414 FN_SEL_SSI2_0, FN_SEL_SSI2_1, 0, 0, 3415 /* SEL_SSI1 [2] */ 3416 FN_SEL_SSI1_0, FN_SEL_SSI1_1, FN_SEL_SSI1_2, FN_SEL_SSI1_3, 3417 /* SEL_SSI0 [2] */ 3418 FN_SEL_SSI0_0, FN_SEL_SSI0_1, 0, 0, )) 3419 }, 3420 { }, 3421 }; 3422 3423 static int r8a77470_pin_to_pocctrl(struct sh_pfc *pfc, unsigned int pin, 3424 u32 *pocctrl) 3425 { 3426 int bit = -EINVAL; 3427 3428 *pocctrl = 0xe60600b0; 3429 3430 if (pin >= RCAR_GP_PIN(0, 5) && pin <= RCAR_GP_PIN(0, 10)) 3431 bit = 0; 3432 3433 if (pin >= RCAR_GP_PIN(0, 13) && pin <= RCAR_GP_PIN(0, 22)) 3434 bit = 2; 3435 3436 if (pin >= RCAR_GP_PIN(4, 14) && pin <= RCAR_GP_PIN(4, 19)) 3437 bit = 1; 3438 3439 return bit; 3440 } 3441 3442 static const struct pinmux_bias_reg pinmux_bias_regs[] = { 3443 { PINMUX_BIAS_REG("PUPR0", 0xe6060100, "N/A", 0) { 3444 /* PUPR0 pull-up pins */ 3445 [ 0] = RCAR_GP_PIN(1, 0), /* D0 */ 3446 [ 1] = RCAR_GP_PIN(0, 22), /* MMC0_D7 */ 3447 [ 2] = RCAR_GP_PIN(0, 21), /* MMC0_D6 */ 3448 [ 3] = RCAR_GP_PIN(0, 20), /* MMC0_D5 */ 3449 [ 4] = RCAR_GP_PIN(0, 19), /* MMC0_D4 */ 3450 [ 5] = RCAR_GP_PIN(0, 18), /* MMC0_D3 */ 3451 [ 6] = RCAR_GP_PIN(0, 17), /* MMC0_D2 */ 3452 [ 7] = RCAR_GP_PIN(0, 16), /* MMC0_D1 */ 3453 [ 8] = RCAR_GP_PIN(0, 15), /* MMC0_D0 */ 3454 [ 9] = RCAR_GP_PIN(0, 14), /* MMC0_CMD */ 3455 [10] = RCAR_GP_PIN(0, 13), /* MMC0_CLK */ 3456 [11] = RCAR_GP_PIN(0, 12), /* SD0_WP */ 3457 [12] = RCAR_GP_PIN(0, 11), /* SD0_CD */ 3458 [13] = RCAR_GP_PIN(0, 10), /* SD0_DAT3 */ 3459 [14] = RCAR_GP_PIN(0, 9), /* SD0_DAT2 */ 3460 [15] = RCAR_GP_PIN(0, 8), /* SD0_DAT1 */ 3461 [16] = RCAR_GP_PIN(0, 7), /* SD0_DAT0 */ 3462 [17] = RCAR_GP_PIN(0, 6), /* SD0_CMD */ 3463 [18] = RCAR_GP_PIN(0, 5), /* SD0_CLK */ 3464 [19] = RCAR_GP_PIN(0, 4), /* CLKOUT */ 3465 [20] = PIN_NMI, /* NMI */ 3466 [21] = RCAR_GP_PIN(0, 3), /* USB1_OVC */ 3467 [22] = RCAR_GP_PIN(0, 2), /* USB1_PWEN */ 3468 [23] = RCAR_GP_PIN(0, 1), /* USB0_OVC */ 3469 [24] = RCAR_GP_PIN(0, 0), /* USB0_PWEN */ 3470 [25] = SH_PFC_PIN_NONE, 3471 [26] = PIN_TDO, /* TDO */ 3472 [27] = PIN_TDI, /* TDI */ 3473 [28] = PIN_TMS, /* TMS */ 3474 [29] = PIN_TCK, /* TCK */ 3475 [30] = PIN_TRST_N, /* TRST# */ 3476 [31] = PIN_PRESETOUT_N, /* PRESETOUT# */ 3477 } }, 3478 { PINMUX_BIAS_REG("N/A", 0, "PUPR0", 0xe6060100) { 3479 /* PUPR0 pull-down pins */ 3480 [ 0] = SH_PFC_PIN_NONE, 3481 [ 1] = SH_PFC_PIN_NONE, 3482 [ 2] = SH_PFC_PIN_NONE, 3483 [ 3] = SH_PFC_PIN_NONE, 3484 [ 4] = SH_PFC_PIN_NONE, 3485 [ 5] = SH_PFC_PIN_NONE, 3486 [ 6] = SH_PFC_PIN_NONE, 3487 [ 7] = SH_PFC_PIN_NONE, 3488 [ 8] = SH_PFC_PIN_NONE, 3489 [ 9] = SH_PFC_PIN_NONE, 3490 [10] = SH_PFC_PIN_NONE, 3491 [11] = SH_PFC_PIN_NONE, 3492 [12] = SH_PFC_PIN_NONE, 3493 [13] = SH_PFC_PIN_NONE, 3494 [14] = SH_PFC_PIN_NONE, 3495 [15] = SH_PFC_PIN_NONE, 3496 [16] = SH_PFC_PIN_NONE, 3497 [17] = SH_PFC_PIN_NONE, 3498 [18] = SH_PFC_PIN_NONE, 3499 [19] = SH_PFC_PIN_NONE, 3500 [20] = SH_PFC_PIN_NONE, 3501 [21] = SH_PFC_PIN_NONE, 3502 [22] = SH_PFC_PIN_NONE, 3503 [23] = SH_PFC_PIN_NONE, 3504 [24] = SH_PFC_PIN_NONE, 3505 [25] = PIN_ASEBRK_N_ACK, /* ASEBRK#/ACK */ 3506 [26] = SH_PFC_PIN_NONE, 3507 [27] = SH_PFC_PIN_NONE, 3508 [28] = SH_PFC_PIN_NONE, 3509 [29] = SH_PFC_PIN_NONE, 3510 [30] = SH_PFC_PIN_NONE, 3511 [31] = SH_PFC_PIN_NONE, 3512 } }, 3513 { PINMUX_BIAS_REG("PUPR1", 0xe6060104, "N/A", 0) { 3514 [ 0] = RCAR_GP_PIN(2, 9), /* DU0_DG1 */ 3515 [ 1] = RCAR_GP_PIN(2, 8), /* DU0_DG0 */ 3516 [ 2] = RCAR_GP_PIN(2, 7), /* DU0_DR7 */ 3517 [ 3] = RCAR_GP_PIN(2, 6), /* DU0_DR6 */ 3518 [ 4] = RCAR_GP_PIN(2, 5), /* DU0_DR5 */ 3519 [ 5] = RCAR_GP_PIN(2, 4), /* DU0_DR4 */ 3520 [ 6] = RCAR_GP_PIN(2, 3), /* DU0_DR3 */ 3521 [ 7] = RCAR_GP_PIN(2, 2), /* DU0_DR2 */ 3522 [ 8] = RCAR_GP_PIN(2, 1), /* DU0_DR1 */ 3523 [ 9] = RCAR_GP_PIN(2, 0), /* DU0_DR0 */ 3524 [10] = RCAR_GP_PIN(1, 22), /* EX_WAIT0 */ 3525 [11] = RCAR_GP_PIN(1, 21), /* QSPI0_SSL */ 3526 [12] = RCAR_GP_PIN(1, 20), /* QSPI0_IO3 */ 3527 [13] = RCAR_GP_PIN(1, 19), /* QSPI0_IO2 */ 3528 [14] = RCAR_GP_PIN(1, 18), /* QSPI0_MISO/QSPI0_IO1 */ 3529 [15] = RCAR_GP_PIN(1, 17), /* QSPI0_MOSI/QSPI0_IO0 */ 3530 [16] = RCAR_GP_PIN(1, 16), /* QSPI0_SPCLK */ 3531 [17] = RCAR_GP_PIN(1, 15), /* D15 */ 3532 [18] = RCAR_GP_PIN(1, 14), /* D14 */ 3533 [19] = RCAR_GP_PIN(1, 13), /* D13 */ 3534 [20] = RCAR_GP_PIN(1, 12), /* D12 */ 3535 [21] = RCAR_GP_PIN(1, 11), /* D11 */ 3536 [22] = RCAR_GP_PIN(1, 10), /* D10 */ 3537 [23] = RCAR_GP_PIN(1, 9), /* D9 */ 3538 [24] = RCAR_GP_PIN(1, 8), /* D8 */ 3539 [25] = RCAR_GP_PIN(1, 7), /* D7 */ 3540 [26] = RCAR_GP_PIN(1, 6), /* D6 */ 3541 [27] = RCAR_GP_PIN(1, 5), /* D5 */ 3542 [28] = RCAR_GP_PIN(1, 4), /* D4 */ 3543 [29] = RCAR_GP_PIN(1, 3), /* D3 */ 3544 [30] = RCAR_GP_PIN(1, 2), /* D2 */ 3545 [31] = RCAR_GP_PIN(1, 1), /* D1 */ 3546 } }, 3547 { PINMUX_BIAS_REG("PUPR2", 0xe6060108, "N/A", 0) { 3548 [ 0] = RCAR_GP_PIN(3, 9), /* VI1_CLKENB */ 3549 [ 1] = RCAR_GP_PIN(3, 8), /* VI1_DATA7 */ 3550 [ 2] = RCAR_GP_PIN(3, 7), /* VI1_DATA6 */ 3551 [ 3] = RCAR_GP_PIN(3, 6), /* VI1_DATA5 */ 3552 [ 4] = RCAR_GP_PIN(3, 5), /* VI1_DATA4 */ 3553 [ 5] = RCAR_GP_PIN(3, 4), /* VI1_DATA3 */ 3554 [ 6] = RCAR_GP_PIN(3, 3), /* VI1_DATA2 */ 3555 [ 7] = RCAR_GP_PIN(3, 2), /* VI1_DATA1 */ 3556 [ 8] = RCAR_GP_PIN(3, 1), /* VI1_DATA0 */ 3557 [ 9] = RCAR_GP_PIN(3, 0), /* VI1_CLK */ 3558 [10] = RCAR_GP_PIN(2, 31), /* DU0_CDE */ 3559 [11] = RCAR_GP_PIN(2, 30), /* DU0_DISP */ 3560 [12] = RCAR_GP_PIN(2, 29), /* DU0_EXODDF/DU0_ODDF_DISP_CDE */ 3561 [13] = RCAR_GP_PIN(2, 28), /* DU0_EXVSYNC/DU0_VSYNC */ 3562 [14] = RCAR_GP_PIN(2, 27), /* DU0_EXHSYNC/DU0_HSYNC */ 3563 [15] = RCAR_GP_PIN(2, 26), /* DU0_DOTCLKOUT1 */ 3564 [16] = RCAR_GP_PIN(2, 25), /* DU0_DOTCLKOUT0 */ 3565 [17] = RCAR_GP_PIN(2, 24), /* DU0_DOTCLKIN */ 3566 [18] = RCAR_GP_PIN(2, 23), /* DU0_DB7 */ 3567 [19] = RCAR_GP_PIN(2, 22), /* DU0_DB6 */ 3568 [20] = RCAR_GP_PIN(2, 21), /* DU0_DB5 */ 3569 [21] = RCAR_GP_PIN(2, 20), /* DU0_DB4 */ 3570 [22] = RCAR_GP_PIN(2, 19), /* DU0_DB3 */ 3571 [23] = RCAR_GP_PIN(2, 18), /* DU0_DB2 */ 3572 [24] = RCAR_GP_PIN(2, 17), /* DU0_DB1 */ 3573 [25] = RCAR_GP_PIN(2, 16), /* DU0_DB0 */ 3574 [26] = RCAR_GP_PIN(2, 15), /* DU0_DG7 */ 3575 [27] = RCAR_GP_PIN(2, 14), /* DU0_DG6 */ 3576 [28] = RCAR_GP_PIN(2, 13), /* DU0_DG5 */ 3577 [29] = RCAR_GP_PIN(2, 12), /* DU0_DG4 */ 3578 [30] = RCAR_GP_PIN(2, 11), /* DU0_DG3 */ 3579 [31] = RCAR_GP_PIN(2, 10), /* DU0_DG2 */ 3580 } }, 3581 { PINMUX_BIAS_REG("PUPR3", 0xe606010c, "N/A", 0) { 3582 [ 0] = RCAR_GP_PIN(4, 21), /* SD2_WP */ 3583 [ 1] = RCAR_GP_PIN(4, 20), /* SD2_CD */ 3584 [ 2] = RCAR_GP_PIN(4, 19), /* SD2_DAT3 */ 3585 [ 3] = RCAR_GP_PIN(4, 18), /* SD2_DAT2 */ 3586 [ 4] = RCAR_GP_PIN(4, 17), /* SD2_DAT1 */ 3587 [ 5] = RCAR_GP_PIN(4, 16), /* SD2_DAT0 */ 3588 [ 6] = RCAR_GP_PIN(4, 15), /* SD2_CMD */ 3589 [ 7] = RCAR_GP_PIN(4, 14), /* SD2_CLK */ 3590 [ 8] = RCAR_GP_PIN(4, 13), /* HRTS1#_A */ 3591 [ 9] = RCAR_GP_PIN(4, 12), /* HCTS1#_A */ 3592 [10] = RCAR_GP_PIN(4, 11), /* HTX1_A */ 3593 [11] = RCAR_GP_PIN(4, 10), /* HRX1_A */ 3594 [12] = RCAR_GP_PIN(4, 9), /* MSIOF0_SS2_A */ 3595 [13] = RCAR_GP_PIN(4, 8), /* MSIOF0_SS1_A */ 3596 [14] = RCAR_GP_PIN(4, 7), /* MSIOF0_SYNC_A */ 3597 [15] = RCAR_GP_PIN(4, 6), /* MSIOF0_SCK_A */ 3598 [16] = RCAR_GP_PIN(4, 5), /* MSIOF0_TXD_A */ 3599 [17] = RCAR_GP_PIN(4, 4), /* MSIOF0_RXD_A */ 3600 [18] = RCAR_GP_PIN(4, 3), /* SDA1_A */ 3601 [19] = RCAR_GP_PIN(4, 2), /* SCL1_A */ 3602 [20] = RCAR_GP_PIN(4, 1), /* SDA0_A */ 3603 [21] = RCAR_GP_PIN(4, 0), /* SCL0_A */ 3604 [22] = RCAR_GP_PIN(3, 29), /* AVB_TXD5 */ 3605 [23] = RCAR_GP_PIN(3, 28), /* AVB_TXD4 */ 3606 [24] = RCAR_GP_PIN(3, 27), /* AVB_TXD3 */ 3607 [25] = RCAR_GP_PIN(3, 16), /* VI1_DATA11 */ 3608 [26] = RCAR_GP_PIN(3, 15), /* VI1_DATA10 */ 3609 [27] = RCAR_GP_PIN(3, 14), /* VI1_DATA9 */ 3610 [28] = RCAR_GP_PIN(3, 13), /* VI1_DATA8 */ 3611 [29] = RCAR_GP_PIN(3, 12), /* VI1_VSYNC# */ 3612 [30] = RCAR_GP_PIN(3, 11), /* VI1_HSYNC# */ 3613 [31] = RCAR_GP_PIN(3, 10), /* VI1_FIELD */ 3614 } }, 3615 { PINMUX_BIAS_REG("PUPR4", 0xe6060110, "N/A", 0) { 3616 [ 0] = RCAR_GP_PIN(5, 27), /* SSI_SDATA9_A */ 3617 [ 1] = RCAR_GP_PIN(5, 26), /* SSI_WS9_A */ 3618 [ 2] = RCAR_GP_PIN(5, 25), /* SSI_SCK9_A */ 3619 [ 3] = RCAR_GP_PIN(5, 24), /* SSI_SDATA2_A */ 3620 [ 4] = RCAR_GP_PIN(5, 23), /* SSI_WS2_A */ 3621 [ 5] = RCAR_GP_PIN(5, 22), /* SSI_SCK2_A */ 3622 [ 6] = RCAR_GP_PIN(5, 21), /* SSI_SDATA1_A */ 3623 [ 7] = RCAR_GP_PIN(5, 20), /* SSI_WS1_A */ 3624 [ 8] = RCAR_GP_PIN(5, 19), /* SSI_SDATA8_A */ 3625 [ 9] = RCAR_GP_PIN(5, 18), /* SSI_SCK1_A */ 3626 [10] = RCAR_GP_PIN(5, 17), /* SSI_SDATA4_A */ 3627 [11] = RCAR_GP_PIN(5, 16), /* SSI_WS4_A */ 3628 [12] = RCAR_GP_PIN(5, 15), /* SSI_SCK4_A */ 3629 [13] = RCAR_GP_PIN(5, 14), /* SSI_SDATA3 */ 3630 [14] = RCAR_GP_PIN(5, 13), /* SSI_WS34 */ 3631 [15] = RCAR_GP_PIN(5, 12), /* SSI_SCK34 */ 3632 [16] = RCAR_GP_PIN(5, 11), /* SSI_SDATA0_A */ 3633 [17] = RCAR_GP_PIN(5, 10), /* SSI_WS0129_A */ 3634 [18] = RCAR_GP_PIN(5, 9), /* SSI_SCK0129_A */ 3635 [19] = RCAR_GP_PIN(5, 8), /* SSI_SDATA7_A */ 3636 [20] = RCAR_GP_PIN(5, 7), /* SSI_WS78_A */ 3637 [21] = RCAR_GP_PIN(5, 6), /* SSI_SCK78_A */ 3638 [22] = RCAR_GP_PIN(5, 5), /* SSI_SDATA6_A */ 3639 [23] = RCAR_GP_PIN(5, 4), /* SSI_WS6_A */ 3640 [24] = RCAR_GP_PIN(5, 3), /* SSI_SCK6_A */ 3641 [25] = RCAR_GP_PIN(5, 2), /* SSI_SDATA5_A */ 3642 [26] = RCAR_GP_PIN(5, 1), /* SSI_WS5_A */ 3643 [27] = RCAR_GP_PIN(5, 0), /* SSI_SCK5_A */ 3644 [28] = RCAR_GP_PIN(4, 25), /* SDA2_A */ 3645 [29] = RCAR_GP_PIN(4, 24), /* SCL2_A */ 3646 [30] = RCAR_GP_PIN(4, 23), /* TX3_A */ 3647 [31] = RCAR_GP_PIN(4, 22), /* RX3_A */ 3648 } }, 3649 { PINMUX_BIAS_REG("PUPR5", 0xe6060114, "N/A", 0) { 3650 [ 0] = SH_PFC_PIN_NONE, 3651 [ 1] = SH_PFC_PIN_NONE, 3652 [ 2] = SH_PFC_PIN_NONE, 3653 [ 3] = SH_PFC_PIN_NONE, 3654 [ 4] = SH_PFC_PIN_NONE, 3655 [ 5] = SH_PFC_PIN_NONE, 3656 [ 6] = SH_PFC_PIN_NONE, 3657 [ 7] = SH_PFC_PIN_NONE, 3658 [ 8] = SH_PFC_PIN_NONE, 3659 [ 9] = SH_PFC_PIN_NONE, 3660 [10] = SH_PFC_PIN_NONE, 3661 [11] = SH_PFC_PIN_NONE, 3662 [12] = SH_PFC_PIN_NONE, 3663 [13] = SH_PFC_PIN_NONE, 3664 [14] = SH_PFC_PIN_NONE, 3665 [15] = SH_PFC_PIN_NONE, 3666 [16] = SH_PFC_PIN_NONE, 3667 [17] = SH_PFC_PIN_NONE, 3668 [18] = SH_PFC_PIN_NONE, 3669 [19] = SH_PFC_PIN_NONE, 3670 [20] = SH_PFC_PIN_NONE, 3671 [21] = SH_PFC_PIN_NONE, 3672 [22] = SH_PFC_PIN_NONE, 3673 [23] = SH_PFC_PIN_NONE, 3674 [24] = SH_PFC_PIN_NONE, 3675 [25] = SH_PFC_PIN_NONE, 3676 [26] = SH_PFC_PIN_NONE, 3677 [27] = SH_PFC_PIN_NONE, 3678 [28] = RCAR_GP_PIN(5, 31), /* AUDIO_CLKOUT_A */ 3679 [29] = RCAR_GP_PIN(5, 30), /* AUDIO_CLKC_A */ 3680 [30] = RCAR_GP_PIN(5, 29), /* AUDIO_CLKB_A */ 3681 [31] = RCAR_GP_PIN(5, 28), /* AUDIO_CLKA_A */ 3682 } }, 3683 { /* sentinel */ } 3684 }; 3685 3686 static const struct sh_pfc_soc_operations r8a77470_pinmux_ops = { 3687 .pin_to_pocctrl = r8a77470_pin_to_pocctrl, 3688 .get_bias = rcar_pinmux_get_bias, 3689 .set_bias = rcar_pinmux_set_bias, 3690 }; 3691 3692 #ifdef CONFIG_PINCTRL_PFC_R8A77470 3693 const struct sh_pfc_soc_info r8a77470_pinmux_info = { 3694 .name = "r8a77470_pfc", 3695 .ops = &r8a77470_pinmux_ops, 3696 .unlock_reg = 0xe6060000, /* PMMR */ 3697 3698 .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END }, 3699 3700 .pins = pinmux_pins, 3701 .nr_pins = ARRAY_SIZE(pinmux_pins), 3702 .groups = pinmux_groups, 3703 .nr_groups = ARRAY_SIZE(pinmux_groups), 3704 .functions = pinmux_functions, 3705 .nr_functions = ARRAY_SIZE(pinmux_functions), 3706 3707 .cfg_regs = pinmux_config_regs, 3708 .bias_regs = pinmux_bias_regs, 3709 3710 .pinmux_data = pinmux_data, 3711 .pinmux_data_size = ARRAY_SIZE(pinmux_data), 3712 }; 3713 #endif 3714