1 // SPDX-License-Identifier: GPL-2.0 2 #include <linux/kernel.h> 3 #include <cpu/sh7722.h> 4 5 #include "sh_pfc.h" 6 7 enum { 8 PINMUX_RESERVED = 0, 9 10 PINMUX_DATA_BEGIN, 11 PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA, 12 PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA, 13 PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA, 14 PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA, 15 PTC7_DATA, PTC5_DATA, PTC4_DATA, PTC3_DATA, PTC2_DATA, PTC0_DATA, 16 PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA, 17 PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA, 18 PTE7_DATA, PTE6_DATA, PTE5_DATA, PTE4_DATA, PTE1_DATA, PTE0_DATA, 19 PTF6_DATA, PTF5_DATA, PTF4_DATA, 20 PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA, 21 PTG4_DATA, PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA, 22 PTH7_DATA, PTH6_DATA, PTH5_DATA, PTH4_DATA, 23 PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA, 24 PTJ7_DATA, PTJ6_DATA, PTJ5_DATA, PTJ1_DATA, PTJ0_DATA, 25 PTK6_DATA, PTK5_DATA, PTK4_DATA, 26 PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA, 27 PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA, 28 PTL3_DATA, PTL2_DATA, PTL1_DATA, PTL0_DATA, 29 PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA, 30 PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA, 31 PTN7_DATA, PTN6_DATA, PTN5_DATA, PTN4_DATA, 32 PTN3_DATA, PTN2_DATA, PTN1_DATA, PTN0_DATA, 33 PTQ6_DATA, PTQ5_DATA, PTQ4_DATA, 34 PTQ3_DATA, PTQ2_DATA, PTQ1_DATA, PTQ0_DATA, 35 PTR4_DATA, PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA, 36 PTS4_DATA, PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA, 37 PTT4_DATA, PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA, 38 PTU4_DATA, PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA, 39 PTV4_DATA, PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA, 40 PTW6_DATA, PTW5_DATA, PTW4_DATA, 41 PTW3_DATA, PTW2_DATA, PTW1_DATA, PTW0_DATA, 42 PTX6_DATA, PTX5_DATA, PTX4_DATA, 43 PTX3_DATA, PTX2_DATA, PTX1_DATA, PTX0_DATA, 44 PTY6_DATA, PTY5_DATA, PTY4_DATA, 45 PTY3_DATA, PTY2_DATA, PTY1_DATA, PTY0_DATA, 46 PTZ5_DATA, PTZ4_DATA, PTZ3_DATA, PTZ2_DATA, PTZ1_DATA, PTZ0_DATA, 47 PINMUX_DATA_END, 48 49 PINMUX_INPUT_BEGIN, 50 PTA7_IN, PTA6_IN, PTA5_IN, PTA4_IN, 51 PTA3_IN, PTA2_IN, PTA1_IN, PTA0_IN, 52 PTB7_IN, PTB6_IN, PTB5_IN, PTB4_IN, 53 PTB3_IN, PTB2_IN, PTB1_IN, PTB0_IN, 54 PTC7_IN, PTC5_IN, PTC4_IN, PTC3_IN, PTC2_IN, PTC0_IN, 55 PTD7_IN, PTD6_IN, PTD5_IN, PTD4_IN, PTD3_IN, PTD2_IN, PTD1_IN, 56 PTE7_IN, PTE6_IN, PTE5_IN, PTE4_IN, PTE1_IN, PTE0_IN, 57 PTF6_IN, PTF5_IN, PTF4_IN, PTF3_IN, PTF2_IN, PTF1_IN, 58 PTH6_IN, PTH5_IN, PTH1_IN, PTH0_IN, 59 PTJ1_IN, PTJ0_IN, 60 PTK6_IN, PTK5_IN, PTK4_IN, PTK3_IN, PTK2_IN, PTK0_IN, 61 PTL7_IN, PTL6_IN, PTL5_IN, PTL4_IN, 62 PTL3_IN, PTL2_IN, PTL1_IN, PTL0_IN, 63 PTM7_IN, PTM6_IN, PTM5_IN, PTM4_IN, 64 PTM3_IN, PTM2_IN, PTM1_IN, PTM0_IN, 65 PTN7_IN, PTN6_IN, PTN5_IN, PTN4_IN, 66 PTN3_IN, PTN2_IN, PTN1_IN, PTN0_IN, 67 PTQ5_IN, PTQ4_IN, PTQ3_IN, PTQ2_IN, PTQ0_IN, 68 PTR2_IN, 69 PTS4_IN, PTS2_IN, PTS1_IN, 70 PTT4_IN, PTT3_IN, PTT2_IN, PTT1_IN, 71 PTU4_IN, PTU3_IN, PTU2_IN, PTU1_IN, PTU0_IN, 72 PTV4_IN, PTV3_IN, PTV2_IN, PTV1_IN, PTV0_IN, 73 PTW6_IN, PTW4_IN, PTW3_IN, PTW2_IN, PTW1_IN, PTW0_IN, 74 PTX6_IN, PTX5_IN, PTX4_IN, PTX3_IN, PTX2_IN, PTX1_IN, PTX0_IN, 75 PTY5_IN, PTY4_IN, PTY3_IN, PTY2_IN, PTY0_IN, 76 PTZ5_IN, PTZ4_IN, PTZ3_IN, PTZ2_IN, PTZ1_IN, 77 PINMUX_INPUT_END, 78 79 PINMUX_OUTPUT_BEGIN, 80 PTA7_OUT, PTA5_OUT, 81 PTB7_OUT, PTB6_OUT, PTB5_OUT, PTB4_OUT, 82 PTB3_OUT, PTB2_OUT, PTB1_OUT, PTB0_OUT, 83 PTC4_OUT, PTC3_OUT, PTC2_OUT, PTC0_OUT, 84 PTD6_OUT, PTD5_OUT, PTD4_OUT, 85 PTD3_OUT, PTD2_OUT, PTD1_OUT, PTD0_OUT, 86 PTE7_OUT, PTE6_OUT, PTE5_OUT, PTE4_OUT, PTE1_OUT, PTE0_OUT, 87 PTF6_OUT, PTF5_OUT, PTF4_OUT, PTF3_OUT, PTF2_OUT, PTF0_OUT, 88 PTG4_OUT, PTG3_OUT, PTG2_OUT, PTG1_OUT, PTG0_OUT, 89 PTH7_OUT, PTH6_OUT, PTH5_OUT, PTH4_OUT, 90 PTH3_OUT, PTH2_OUT, PTH1_OUT, PTH0_OUT, 91 PTJ7_OUT, PTJ6_OUT, PTJ5_OUT, PTJ1_OUT, PTJ0_OUT, 92 PTK6_OUT, PTK5_OUT, PTK4_OUT, PTK3_OUT, PTK1_OUT, PTK0_OUT, 93 PTL7_OUT, PTL6_OUT, PTL5_OUT, PTL4_OUT, 94 PTL3_OUT, PTL2_OUT, PTL1_OUT, PTL0_OUT, 95 PTM7_OUT, PTM6_OUT, PTM5_OUT, PTM4_OUT, 96 PTM3_OUT, PTM2_OUT, PTM1_OUT, PTM0_OUT, 97 PTN7_OUT, PTN6_OUT, PTN5_OUT, PTN4_OUT, 98 PTN3_OUT, PTN2_OUT, PTN1_OUT, PTN0_OUT, PTQ6_OUT, PTQ5_OUT, PTQ4_OUT, 99 PTQ3_OUT, PTQ2_OUT, PTQ1_OUT, PTQ0_OUT, 100 PTR4_OUT, PTR3_OUT, PTR1_OUT, PTR0_OUT, 101 PTS3_OUT, PTS2_OUT, PTS0_OUT, 102 PTT4_OUT, PTT3_OUT, PTT2_OUT, PTT0_OUT, 103 PTU4_OUT, PTU3_OUT, PTU2_OUT, PTU0_OUT, 104 PTV4_OUT, PTV3_OUT, PTV2_OUT, PTV1_OUT, PTV0_OUT, 105 PTW5_OUT, PTW4_OUT, PTW3_OUT, PTW2_OUT, PTW1_OUT, PTW0_OUT, 106 PTX6_OUT, PTX5_OUT, PTX4_OUT, PTX3_OUT, PTX2_OUT, PTX1_OUT, PTX0_OUT, 107 PTY5_OUT, PTY4_OUT, PTY3_OUT, PTY2_OUT, PTY1_OUT, PTY0_OUT, 108 PINMUX_OUTPUT_END, 109 110 PINMUX_MARK_BEGIN, 111 SCIF0_TXD_MARK, SCIF0_RXD_MARK, 112 SCIF0_RTS_MARK, SCIF0_CTS_MARK, SCIF0_SCK_MARK, 113 SCIF1_TXD_MARK, SCIF1_RXD_MARK, 114 SCIF1_RTS_MARK, SCIF1_CTS_MARK, SCIF1_SCK_MARK, 115 SCIF2_TXD_MARK, SCIF2_RXD_MARK, 116 SCIF2_RTS_MARK, SCIF2_CTS_MARK, SCIF2_SCK_MARK, 117 SIOTXD_MARK, SIORXD_MARK, 118 SIOD_MARK, SIOSTRB0_MARK, SIOSTRB1_MARK, 119 SIOSCK_MARK, SIOMCK_MARK, 120 VIO_D15_MARK, VIO_D14_MARK, VIO_D13_MARK, VIO_D12_MARK, 121 VIO_D11_MARK, VIO_D10_MARK, VIO_D9_MARK, VIO_D8_MARK, 122 VIO_D7_MARK, VIO_D6_MARK, VIO_D5_MARK, VIO_D4_MARK, 123 VIO_D3_MARK, VIO_D2_MARK, VIO_D1_MARK, VIO_D0_MARK, 124 VIO_CLK_MARK, VIO_VD_MARK, VIO_HD_MARK, VIO_FLD_MARK, 125 VIO_CKO_MARK, VIO_STEX_MARK, VIO_STEM_MARK, VIO_VD2_MARK, 126 VIO_HD2_MARK, VIO_CLK2_MARK, 127 LCDD23_MARK, LCDD22_MARK, LCDD21_MARK, LCDD20_MARK, 128 LCDD19_MARK, LCDD18_MARK, LCDD17_MARK, LCDD16_MARK, 129 LCDD15_MARK, LCDD14_MARK, LCDD13_MARK, LCDD12_MARK, 130 LCDD11_MARK, LCDD10_MARK, LCDD9_MARK, LCDD8_MARK, 131 LCDD7_MARK, LCDD6_MARK, LCDD5_MARK, LCDD4_MARK, 132 LCDD3_MARK, LCDD2_MARK, LCDD1_MARK, LCDD0_MARK, 133 LCDLCLK_MARK, LCDDON_MARK, LCDVCPWC_MARK, LCDVEPWC_MARK, 134 LCDVSYN_MARK, LCDDCK_MARK, LCDHSYN_MARK, LCDDISP_MARK, 135 LCDRS_MARK, LCDCS_MARK, LCDWR_MARK, LCDRD_MARK, 136 LCDDON2_MARK, LCDVCPWC2_MARK, LCDVEPWC2_MARK, LCDVSYN2_MARK, 137 LCDCS2_MARK, 138 IOIS16_MARK, A25_MARK, A24_MARK, A23_MARK, A22_MARK, 139 BS_MARK, CS6B_CE1B_MARK, WAIT_MARK, CS6A_CE2B_MARK, 140 HPD63_MARK, HPD62_MARK, HPD61_MARK, HPD60_MARK, 141 HPD59_MARK, HPD58_MARK, HPD57_MARK, HPD56_MARK, 142 HPD55_MARK, HPD54_MARK, HPD53_MARK, HPD52_MARK, 143 HPD51_MARK, HPD50_MARK, HPD49_MARK, HPD48_MARK, 144 HPDQM7_MARK, HPDQM6_MARK, HPDQM5_MARK, HPDQM4_MARK, 145 IRQ0_MARK, IRQ1_MARK, IRQ2_MARK, IRQ3_MARK, 146 IRQ4_MARK, IRQ5_MARK, IRQ6_MARK, IRQ7_MARK, 147 SDHICD_MARK, SDHIWP_MARK, SDHID3_MARK, SDHID2_MARK, 148 SDHID1_MARK, SDHID0_MARK, SDHICMD_MARK, SDHICLK_MARK, 149 SIUAOLR_MARK, SIUAOBT_MARK, SIUAISLD_MARK, SIUAILR_MARK, 150 SIUAIBT_MARK, SIUAOSLD_MARK, SIUMCKA_MARK, SIUFCKA_MARK, 151 SIUBOLR_MARK, SIUBOBT_MARK, SIUBISLD_MARK, SIUBILR_MARK, 152 SIUBIBT_MARK, SIUBOSLD_MARK, SIUMCKB_MARK, SIUFCKB_MARK, 153 AUDSYNC_MARK, AUDATA3_MARK, AUDATA2_MARK, AUDATA1_MARK, AUDATA0_MARK, 154 DACK_MARK, DREQ0_MARK, 155 DV_CLKI_MARK, DV_CLK_MARK, DV_HSYNC_MARK, DV_VSYNC_MARK, 156 DV_D15_MARK, DV_D14_MARK, DV_D13_MARK, DV_D12_MARK, 157 DV_D11_MARK, DV_D10_MARK, DV_D9_MARK, DV_D8_MARK, 158 DV_D7_MARK, DV_D6_MARK, DV_D5_MARK, DV_D4_MARK, 159 DV_D3_MARK, DV_D2_MARK, DV_D1_MARK, DV_D0_MARK, 160 STATUS0_MARK, PDSTATUS_MARK, 161 SIOF0_MCK_MARK, SIOF0_SCK_MARK, 162 SIOF0_SYNC_MARK, SIOF0_SS1_MARK, SIOF0_SS2_MARK, 163 SIOF0_TXD_MARK, SIOF0_RXD_MARK, 164 SIOF1_MCK_MARK, SIOF1_SCK_MARK, 165 SIOF1_SYNC_MARK, SIOF1_SS1_MARK, SIOF1_SS2_MARK, 166 SIOF1_TXD_MARK, SIOF1_RXD_MARK, 167 SIM_D_MARK, SIM_CLK_MARK, SIM_RST_MARK, 168 TS_SDAT_MARK, TS_SCK_MARK, TS_SDEN_MARK, TS_SPSYNC_MARK, 169 IRDA_IN_MARK, IRDA_OUT_MARK, 170 TPUTO_MARK, 171 FCE_MARK, NAF7_MARK, NAF6_MARK, NAF5_MARK, NAF4_MARK, 172 NAF3_MARK, NAF2_MARK, NAF1_MARK, NAF0_MARK, FCDE_MARK, 173 FOE_MARK, FSC_MARK, FWE_MARK, FRB_MARK, 174 KEYIN0_MARK, KEYIN1_MARK, KEYIN2_MARK, KEYIN3_MARK, KEYIN4_MARK, 175 KEYOUT0_MARK, KEYOUT1_MARK, KEYOUT2_MARK, KEYOUT3_MARK, 176 KEYOUT4_IN6_MARK, KEYOUT5_IN5_MARK, 177 PINMUX_MARK_END, 178 179 PINMUX_FUNCTION_BEGIN, 180 VIO_D7_SCIF1_SCK, VIO_D6_SCIF1_RXD, VIO_D5_SCIF1_TXD, VIO_D4, 181 VIO_D3, VIO_D2, VIO_D1, VIO_D0_LCDLCLK, 182 HPD55, HPD54, HPD53, HPD52, HPD51, HPD50, HPD49, HPD48, 183 IOIS16, HPDQM7, HPDQM6, HPDQM5, HPDQM4, 184 SDHICD, SDHIWP, SDHID3, IRQ2_SDHID2, SDHID1, SDHID0, SDHICMD, SDHICLK, 185 A25, A24, A23, A22, IRQ5, IRQ4_BS, 186 PTF6, SIOSCK_SIUBOBT, SIOSTRB1_SIUBOLR, 187 SIOSTRB0_SIUBIBT, SIOD_SIUBILR, SIORXD_SIUBISLD, SIOTXD_SIUBOSLD, 188 AUDSYNC, AUDATA3, AUDATA2, AUDATA1, AUDATA0, 189 LCDVCPWC_LCDVCPWC2, LCDVSYN2_DACK, LCDVSYN, LCDDISP_LCDRS, 190 LCDHSYN_LCDCS, LCDDON_LCDDON2, LCDD17_DV_HSYNC, LCDD16_DV_VSYNC, 191 STATUS0, PDSTATUS, IRQ1, IRQ0, 192 SIUAILR_SIOF1_SS2, SIUAIBT_SIOF1_SS1, SIUAOLR_SIOF1_SYNC, 193 SIUAOBT_SIOF1_SCK, SIUAISLD_SIOF1_RXD, SIUAOSLD_SIOF1_TXD, PTK0, 194 LCDD15_DV_D15, LCDD14_DV_D14, LCDD13_DV_D13, LCDD12_DV_D12, 195 LCDD11_DV_D11, LCDD10_DV_D10, LCDD9_DV_D9, LCDD8_DV_D8, 196 LCDD7_DV_D7, LCDD6_DV_D6, LCDD5_DV_D5, LCDD4_DV_D4, 197 LCDD3_DV_D3, LCDD2_DV_D2, LCDD1_DV_D1, LCDD0_DV_D0, 198 HPD63, HPD62, HPD61, HPD60, HPD59, HPD58, HPD57, HPD56, 199 SIOF0_SS2_SIM_RST, SIOF0_SS1_TS_SPSYNC, SIOF0_SYNC_TS_SDEN, 200 SIOF0_SCK_TS_SCK, PTQ2, PTQ1, PTQ0, 201 LCDRD, CS6B_CE1B_LCDCS2, WAIT, LCDDCK_LCDWR, LCDVEPWC_LCDVEPWC2, 202 SCIF0_CTS_SIUAISPD, SCIF0_RTS_SIUAOSPD, 203 SCIF0_SCK_TPUTO, SCIF0_RXD, SCIF0_TXD, 204 FOE_VIO_VD2, FWE, FSC, DREQ0, FCDE, 205 NAF2_VIO_D10, NAF1_VIO_D9, NAF0_VIO_D8, 206 FRB_VIO_CLK2, FCE_VIO_HD2, 207 NAF7_VIO_D15, NAF6_VIO_D14, NAF5_VIO_D13, NAF4_VIO_D12, NAF3_VIO_D11, 208 VIO_FLD_SCIF2_CTS, VIO_CKO_SCIF2_RTS, VIO_STEX_SCIF2_SCK, 209 VIO_STEM_SCIF2_TXD, VIO_HD_SCIF2_RXD, 210 VIO_VD_SCIF1_CTS, VIO_CLK_SCIF1_RTS, 211 CS6A_CE2B, LCDD23, LCDD22, LCDD21, LCDD20, 212 LCDD19_DV_CLKI, LCDD18_DV_CLK, 213 KEYOUT5_IN5, KEYOUT4_IN6, KEYOUT3, KEYOUT2, KEYOUT1, KEYOUT0, 214 KEYIN4_IRQ7, KEYIN3, KEYIN2, KEYIN1, KEYIN0_IRQ6, 215 216 PSA15_KEYIN0, PSA15_IRQ6, PSA14_KEYIN4, PSA14_IRQ7, 217 PSA9_IRQ4, PSA9_BS, PSA4_IRQ2, PSA4_SDHID2, 218 PSB15_SIOTXD, PSB15_SIUBOSLD, PSB14_SIORXD, PSB14_SIUBISLD, 219 PSB13_SIOD, PSB13_SIUBILR, PSB12_SIOSTRB0, PSB12_SIUBIBT, 220 PSB11_SIOSTRB1, PSB11_SIUBOLR, PSB10_SIOSCK, PSB10_SIUBOBT, 221 PSB9_SIOMCK, PSB9_SIUMCKB, PSB8_SIOF0_MCK, PSB8_IRQ3, 222 PSB7_SIOF0_TXD, PSB7_IRDA_OUT, PSB6_SIOF0_RXD, PSB6_IRDA_IN, 223 PSB5_SIOF0_SCK, PSB5_TS_SCK, PSB4_SIOF0_SYNC, PSB4_TS_SDEN, 224 PSB3_SIOF0_SS1, PSB3_TS_SPSYNC, PSB2_SIOF0_SS2, PSB2_SIM_RST, 225 PSB1_SIUMCKA, PSB1_SIOF1_MCK, PSB0_SIUAOSLD, PSB0_SIOF1_TXD, 226 PSC15_SIUAISLD, PSC15_SIOF1_RXD, PSC14_SIUAOBT, PSC14_SIOF1_SCK, 227 PSC13_SIUAOLR, PSC13_SIOF1_SYNC, PSC12_SIUAIBT, PSC12_SIOF1_SS1, 228 PSC11_SIUAILR, PSC11_SIOF1_SS2, PSC0_NAF, PSC0_VIO, 229 PSD13_VIO, PSD13_SCIF2, PSD12_VIO, PSD12_SCIF1, 230 PSD11_VIO, PSD11_SCIF1, PSD10_VIO_D0, PSD10_LCDLCLK, 231 PSD9_SIOMCK_SIUMCKB, PSD9_SIUFCKB, PSD8_SCIF0_SCK, PSD8_TPUTO, 232 PSD7_SCIF0_RTS, PSD7_SIUAOSPD, PSD6_SCIF0_CTS, PSD6_SIUAISPD, 233 PSD5_CS6B_CE1B, PSD5_LCDCS2, 234 PSD3_LCDVEPWC_LCDVCPWC, PSD3_LCDVEPWC2_LCDVCPWC2, 235 PSD2_LCDDON, PSD2_LCDDON2, PSD0_LCDD19_LCDD0, PSD0_DV, 236 PSE15_SIOF0_MCK_IRQ3, PSE15_SIM_D, 237 PSE14_SIOF0_TXD_IRDA_OUT, PSE14_SIM_CLK, 238 PSE13_SIOF0_RXD_IRDA_IN, PSE13_TS_SDAT, PSE12_LCDVSYN2, PSE12_DACK, 239 PSE11_SIUMCKA_SIOF1_MCK, PSE11_SIUFCKA, 240 PSE3_FLCTL, PSE3_VIO, PSE2_NAF2, PSE2_VIO_D10, 241 PSE1_NAF1, PSE1_VIO_D9, PSE0_NAF0, PSE0_VIO_D8, 242 243 HIZA14_KEYSC, HIZA14_HIZ, 244 HIZA10_NAF, HIZA10_HIZ, 245 HIZA9_VIO, HIZA9_HIZ, 246 HIZA8_LCDC, HIZA8_HIZ, 247 HIZA7_LCDC, HIZA7_HIZ, 248 HIZA6_LCDC, HIZA6_HIZ, 249 HIZB4_SIUA, HIZB4_HIZ, 250 HIZB1_VIO, HIZB1_HIZ, 251 HIZB0_VIO, HIZB0_HIZ, 252 HIZC15_IRQ7, HIZC15_HIZ, 253 HIZC14_IRQ6, HIZC14_HIZ, 254 HIZC13_IRQ5, HIZC13_HIZ, 255 HIZC12_IRQ4, HIZC12_HIZ, 256 HIZC11_IRQ3, HIZC11_HIZ, 257 HIZC10_IRQ2, HIZC10_HIZ, 258 HIZC9_IRQ1, HIZC9_HIZ, 259 HIZC8_IRQ0, HIZC8_HIZ, 260 MSELB9_VIO, MSELB9_VIO2, 261 MSELB8_RGB, MSELB8_SYS, 262 PINMUX_FUNCTION_END, 263 }; 264 265 static const u16 pinmux_data[] = { 266 /* PTA */ 267 PINMUX_DATA(PTA7_DATA, PTA7_IN, PTA7_OUT), 268 PINMUX_DATA(PTA6_DATA, PTA6_IN), 269 PINMUX_DATA(PTA5_DATA, PTA5_IN, PTA5_OUT), 270 PINMUX_DATA(PTA4_DATA, PTA4_IN), 271 PINMUX_DATA(PTA3_DATA, PTA3_IN), 272 PINMUX_DATA(PTA2_DATA, PTA2_IN), 273 PINMUX_DATA(PTA1_DATA, PTA1_IN), 274 PINMUX_DATA(PTA0_DATA, PTA0_IN), 275 276 /* PTB */ 277 PINMUX_DATA(PTB7_DATA, PTB7_IN, PTB7_OUT), 278 PINMUX_DATA(PTB6_DATA, PTB6_IN, PTB6_OUT), 279 PINMUX_DATA(PTB5_DATA, PTB5_IN, PTB5_OUT), 280 PINMUX_DATA(PTB4_DATA, PTB4_IN, PTB4_OUT), 281 PINMUX_DATA(PTB3_DATA, PTB3_IN, PTB3_OUT), 282 PINMUX_DATA(PTB2_DATA, PTB2_IN, PTB2_OUT), 283 PINMUX_DATA(PTB1_DATA, PTB1_IN, PTB1_OUT), 284 PINMUX_DATA(PTB0_DATA, PTB0_IN, PTB0_OUT), 285 286 /* PTC */ 287 PINMUX_DATA(PTC7_DATA, PTC7_IN), 288 PINMUX_DATA(PTC5_DATA, PTC5_IN), 289 PINMUX_DATA(PTC4_DATA, PTC4_IN, PTC4_OUT), 290 PINMUX_DATA(PTC3_DATA, PTC3_IN, PTC3_OUT), 291 PINMUX_DATA(PTC2_DATA, PTC2_IN, PTC2_OUT), 292 PINMUX_DATA(PTC0_DATA, PTC0_IN, PTC0_OUT), 293 294 /* PTD */ 295 PINMUX_DATA(PTD7_DATA, PTD7_IN), 296 PINMUX_DATA(PTD6_DATA, PTD6_OUT, PTD6_IN), 297 PINMUX_DATA(PTD5_DATA, PTD5_OUT, PTD5_IN), 298 PINMUX_DATA(PTD4_DATA, PTD4_OUT, PTD4_IN), 299 PINMUX_DATA(PTD3_DATA, PTD3_OUT, PTD3_IN), 300 PINMUX_DATA(PTD2_DATA, PTD2_OUT, PTD2_IN), 301 PINMUX_DATA(PTD1_DATA, PTD1_OUT, PTD1_IN), 302 PINMUX_DATA(PTD0_DATA, PTD0_OUT), 303 304 /* PTE */ 305 PINMUX_DATA(PTE7_DATA, PTE7_OUT, PTE7_IN), 306 PINMUX_DATA(PTE6_DATA, PTE6_OUT, PTE6_IN), 307 PINMUX_DATA(PTE5_DATA, PTE5_OUT, PTE5_IN), 308 PINMUX_DATA(PTE4_DATA, PTE4_OUT, PTE4_IN), 309 PINMUX_DATA(PTE1_DATA, PTE1_OUT, PTE1_IN), 310 PINMUX_DATA(PTE0_DATA, PTE0_OUT, PTE0_IN), 311 312 /* PTF */ 313 PINMUX_DATA(PTF6_DATA, PTF6_OUT, PTF6_IN), 314 PINMUX_DATA(PTF5_DATA, PTF5_OUT, PTF5_IN), 315 PINMUX_DATA(PTF4_DATA, PTF4_OUT, PTF4_IN), 316 PINMUX_DATA(PTF3_DATA, PTF3_OUT, PTF3_IN), 317 PINMUX_DATA(PTF2_DATA, PTF2_OUT, PTF2_IN), 318 PINMUX_DATA(PTF1_DATA, PTF1_IN), 319 PINMUX_DATA(PTF0_DATA, PTF0_OUT), 320 321 /* PTG */ 322 PINMUX_DATA(PTG4_DATA, PTG4_OUT), 323 PINMUX_DATA(PTG3_DATA, PTG3_OUT), 324 PINMUX_DATA(PTG2_DATA, PTG2_OUT), 325 PINMUX_DATA(PTG1_DATA, PTG1_OUT), 326 PINMUX_DATA(PTG0_DATA, PTG0_OUT), 327 328 /* PTH */ 329 PINMUX_DATA(PTH7_DATA, PTH7_OUT), 330 PINMUX_DATA(PTH6_DATA, PTH6_OUT, PTH6_IN), 331 PINMUX_DATA(PTH5_DATA, PTH5_OUT, PTH5_IN), 332 PINMUX_DATA(PTH4_DATA, PTH4_OUT), 333 PINMUX_DATA(PTH3_DATA, PTH3_OUT), 334 PINMUX_DATA(PTH2_DATA, PTH2_OUT), 335 PINMUX_DATA(PTH1_DATA, PTH1_OUT, PTH1_IN), 336 PINMUX_DATA(PTH0_DATA, PTH0_OUT, PTH0_IN), 337 338 /* PTJ */ 339 PINMUX_DATA(PTJ7_DATA, PTJ7_OUT), 340 PINMUX_DATA(PTJ6_DATA, PTJ6_OUT), 341 PINMUX_DATA(PTJ5_DATA, PTJ5_OUT), 342 PINMUX_DATA(PTJ1_DATA, PTJ1_OUT, PTJ1_IN), 343 PINMUX_DATA(PTJ0_DATA, PTJ0_OUT, PTJ0_IN), 344 345 /* PTK */ 346 PINMUX_DATA(PTK6_DATA, PTK6_OUT, PTK6_IN), 347 PINMUX_DATA(PTK5_DATA, PTK5_OUT, PTK5_IN), 348 PINMUX_DATA(PTK4_DATA, PTK4_OUT, PTK4_IN), 349 PINMUX_DATA(PTK3_DATA, PTK3_OUT, PTK3_IN), 350 PINMUX_DATA(PTK2_DATA, PTK2_IN), 351 PINMUX_DATA(PTK1_DATA, PTK1_OUT), 352 PINMUX_DATA(PTK0_DATA, PTK0_OUT, PTK0_IN), 353 354 /* PTL */ 355 PINMUX_DATA(PTL7_DATA, PTL7_OUT, PTL7_IN), 356 PINMUX_DATA(PTL6_DATA, PTL6_OUT, PTL6_IN), 357 PINMUX_DATA(PTL5_DATA, PTL5_OUT, PTL5_IN), 358 PINMUX_DATA(PTL4_DATA, PTL4_OUT, PTL4_IN), 359 PINMUX_DATA(PTL3_DATA, PTL3_OUT, PTL3_IN), 360 PINMUX_DATA(PTL2_DATA, PTL2_OUT, PTL2_IN), 361 PINMUX_DATA(PTL1_DATA, PTL1_OUT, PTL1_IN), 362 PINMUX_DATA(PTL0_DATA, PTL0_OUT, PTL0_IN), 363 364 /* PTM */ 365 PINMUX_DATA(PTM7_DATA, PTM7_OUT, PTM7_IN), 366 PINMUX_DATA(PTM6_DATA, PTM6_OUT, PTM6_IN), 367 PINMUX_DATA(PTM5_DATA, PTM5_OUT, PTM5_IN), 368 PINMUX_DATA(PTM4_DATA, PTM4_OUT, PTM4_IN), 369 PINMUX_DATA(PTM3_DATA, PTM3_OUT, PTM3_IN), 370 PINMUX_DATA(PTM2_DATA, PTM2_OUT, PTM2_IN), 371 PINMUX_DATA(PTM1_DATA, PTM1_OUT, PTM1_IN), 372 PINMUX_DATA(PTM0_DATA, PTM0_OUT, PTM0_IN), 373 374 /* PTN */ 375 PINMUX_DATA(PTN7_DATA, PTN7_OUT, PTN7_IN), 376 PINMUX_DATA(PTN6_DATA, PTN6_OUT, PTN6_IN), 377 PINMUX_DATA(PTN5_DATA, PTN5_OUT, PTN5_IN), 378 PINMUX_DATA(PTN4_DATA, PTN4_OUT, PTN4_IN), 379 PINMUX_DATA(PTN3_DATA, PTN3_OUT, PTN3_IN), 380 PINMUX_DATA(PTN2_DATA, PTN2_OUT, PTN2_IN), 381 PINMUX_DATA(PTN1_DATA, PTN1_OUT, PTN1_IN), 382 PINMUX_DATA(PTN0_DATA, PTN0_OUT, PTN0_IN), 383 384 /* PTQ */ 385 PINMUX_DATA(PTQ6_DATA, PTQ6_OUT), 386 PINMUX_DATA(PTQ5_DATA, PTQ5_OUT, PTQ5_IN), 387 PINMUX_DATA(PTQ4_DATA, PTQ4_OUT, PTQ4_IN), 388 PINMUX_DATA(PTQ3_DATA, PTQ3_OUT, PTQ3_IN), 389 PINMUX_DATA(PTQ2_DATA, PTQ2_IN), 390 PINMUX_DATA(PTQ1_DATA, PTQ1_OUT), 391 PINMUX_DATA(PTQ0_DATA, PTQ0_OUT, PTQ0_IN), 392 393 /* PTR */ 394 PINMUX_DATA(PTR4_DATA, PTR4_OUT), 395 PINMUX_DATA(PTR3_DATA, PTR3_OUT), 396 PINMUX_DATA(PTR2_DATA, PTR2_IN), 397 PINMUX_DATA(PTR1_DATA, PTR1_OUT), 398 PINMUX_DATA(PTR0_DATA, PTR0_OUT), 399 400 /* PTS */ 401 PINMUX_DATA(PTS4_DATA, PTS4_IN), 402 PINMUX_DATA(PTS3_DATA, PTS3_OUT), 403 PINMUX_DATA(PTS2_DATA, PTS2_OUT, PTS2_IN), 404 PINMUX_DATA(PTS1_DATA, PTS1_IN), 405 PINMUX_DATA(PTS0_DATA, PTS0_OUT), 406 407 /* PTT */ 408 PINMUX_DATA(PTT4_DATA, PTT4_OUT, PTT4_IN), 409 PINMUX_DATA(PTT3_DATA, PTT3_OUT, PTT3_IN), 410 PINMUX_DATA(PTT2_DATA, PTT2_OUT, PTT2_IN), 411 PINMUX_DATA(PTT1_DATA, PTT1_IN), 412 PINMUX_DATA(PTT0_DATA, PTT0_OUT), 413 414 /* PTU */ 415 PINMUX_DATA(PTU4_DATA, PTU4_OUT, PTU4_IN), 416 PINMUX_DATA(PTU3_DATA, PTU3_OUT, PTU3_IN), 417 PINMUX_DATA(PTU2_DATA, PTU2_OUT, PTU2_IN), 418 PINMUX_DATA(PTU1_DATA, PTU1_IN), 419 PINMUX_DATA(PTU0_DATA, PTU0_OUT, PTU0_IN), 420 421 /* PTV */ 422 PINMUX_DATA(PTV4_DATA, PTV4_OUT, PTV4_IN), 423 PINMUX_DATA(PTV3_DATA, PTV3_OUT, PTV3_IN), 424 PINMUX_DATA(PTV2_DATA, PTV2_OUT, PTV2_IN), 425 PINMUX_DATA(PTV1_DATA, PTV1_OUT, PTV1_IN), 426 PINMUX_DATA(PTV0_DATA, PTV0_OUT, PTV0_IN), 427 428 /* PTW */ 429 PINMUX_DATA(PTW6_DATA, PTW6_IN), 430 PINMUX_DATA(PTW5_DATA, PTW5_OUT), 431 PINMUX_DATA(PTW4_DATA, PTW4_OUT, PTW4_IN), 432 PINMUX_DATA(PTW3_DATA, PTW3_OUT, PTW3_IN), 433 PINMUX_DATA(PTW2_DATA, PTW2_OUT, PTW2_IN), 434 PINMUX_DATA(PTW1_DATA, PTW1_OUT, PTW1_IN), 435 PINMUX_DATA(PTW0_DATA, PTW0_OUT, PTW0_IN), 436 437 /* PTX */ 438 PINMUX_DATA(PTX6_DATA, PTX6_OUT, PTX6_IN), 439 PINMUX_DATA(PTX5_DATA, PTX5_OUT, PTX5_IN), 440 PINMUX_DATA(PTX4_DATA, PTX4_OUT, PTX4_IN), 441 PINMUX_DATA(PTX3_DATA, PTX3_OUT, PTX3_IN), 442 PINMUX_DATA(PTX2_DATA, PTX2_OUT, PTX2_IN), 443 PINMUX_DATA(PTX1_DATA, PTX1_OUT, PTX1_IN), 444 PINMUX_DATA(PTX0_DATA, PTX0_OUT, PTX0_IN), 445 446 /* PTY */ 447 PINMUX_DATA(PTY5_DATA, PTY5_OUT, PTY5_IN), 448 PINMUX_DATA(PTY4_DATA, PTY4_OUT, PTY4_IN), 449 PINMUX_DATA(PTY3_DATA, PTY3_OUT, PTY3_IN), 450 PINMUX_DATA(PTY2_DATA, PTY2_OUT, PTY2_IN), 451 PINMUX_DATA(PTY1_DATA, PTY1_OUT), 452 PINMUX_DATA(PTY0_DATA, PTY0_OUT, PTY0_IN), 453 454 /* PTZ */ 455 PINMUX_DATA(PTZ5_DATA, PTZ5_IN), 456 PINMUX_DATA(PTZ4_DATA, PTZ4_IN), 457 PINMUX_DATA(PTZ3_DATA, PTZ3_IN), 458 PINMUX_DATA(PTZ2_DATA, PTZ2_IN), 459 PINMUX_DATA(PTZ1_DATA, PTZ1_IN), 460 461 /* SCIF0 */ 462 PINMUX_DATA(SCIF0_TXD_MARK, SCIF0_TXD), 463 PINMUX_DATA(SCIF0_RXD_MARK, SCIF0_RXD), 464 PINMUX_DATA(SCIF0_RTS_MARK, PSD7_SCIF0_RTS, SCIF0_RTS_SIUAOSPD), 465 PINMUX_DATA(SCIF0_CTS_MARK, PSD6_SCIF0_CTS, SCIF0_CTS_SIUAISPD), 466 PINMUX_DATA(SCIF0_SCK_MARK, PSD8_SCIF0_SCK, SCIF0_SCK_TPUTO), 467 468 /* SCIF1 */ 469 PINMUX_DATA(SCIF1_TXD_MARK, PSD11_SCIF1, VIO_D5_SCIF1_TXD), 470 PINMUX_DATA(SCIF1_RXD_MARK, PSD11_SCIF1, VIO_D6_SCIF1_RXD), 471 PINMUX_DATA(SCIF1_RTS_MARK, PSD12_SCIF1, VIO_CLK_SCIF1_RTS), 472 PINMUX_DATA(SCIF1_CTS_MARK, PSD12_SCIF1, VIO_VD_SCIF1_CTS), 473 PINMUX_DATA(SCIF1_SCK_MARK, PSD11_SCIF1, VIO_D7_SCIF1_SCK), 474 475 /* SCIF2 */ 476 PINMUX_DATA(SCIF2_TXD_MARK, PSD13_SCIF2, VIO_STEM_SCIF2_TXD), 477 PINMUX_DATA(SCIF2_RXD_MARK, PSD13_SCIF2, VIO_HD_SCIF2_RXD), 478 PINMUX_DATA(SCIF2_RTS_MARK, PSD13_SCIF2, VIO_CKO_SCIF2_RTS), 479 PINMUX_DATA(SCIF2_CTS_MARK, PSD13_SCIF2, VIO_FLD_SCIF2_CTS), 480 PINMUX_DATA(SCIF2_SCK_MARK, PSD13_SCIF2, VIO_STEX_SCIF2_SCK), 481 482 /* SIO */ 483 PINMUX_DATA(SIOTXD_MARK, PSB15_SIOTXD, SIOTXD_SIUBOSLD), 484 PINMUX_DATA(SIORXD_MARK, PSB14_SIORXD, SIORXD_SIUBISLD), 485 PINMUX_DATA(SIOD_MARK, PSB13_SIOD, SIOD_SIUBILR), 486 PINMUX_DATA(SIOSTRB0_MARK, PSB12_SIOSTRB0, SIOSTRB0_SIUBIBT), 487 PINMUX_DATA(SIOSTRB1_MARK, PSB11_SIOSTRB1, SIOSTRB1_SIUBOLR), 488 PINMUX_DATA(SIOSCK_MARK, PSB10_SIOSCK, SIOSCK_SIUBOBT), 489 PINMUX_DATA(SIOMCK_MARK, PSD9_SIOMCK_SIUMCKB, PSB9_SIOMCK, PTF6), 490 491 /* CEU */ 492 PINMUX_DATA(VIO_D15_MARK, PSC0_VIO, HIZA10_NAF, NAF7_VIO_D15), 493 PINMUX_DATA(VIO_D14_MARK, PSC0_VIO, HIZA10_NAF, NAF6_VIO_D14), 494 PINMUX_DATA(VIO_D13_MARK, PSC0_VIO, HIZA10_NAF, NAF5_VIO_D13), 495 PINMUX_DATA(VIO_D12_MARK, PSC0_VIO, HIZA10_NAF, NAF4_VIO_D12), 496 PINMUX_DATA(VIO_D11_MARK, PSC0_VIO, HIZA10_NAF, NAF3_VIO_D11), 497 PINMUX_DATA(VIO_D10_MARK, PSE2_VIO_D10, HIZB0_VIO, NAF2_VIO_D10), 498 PINMUX_DATA(VIO_D9_MARK, PSE1_VIO_D9, HIZB0_VIO, NAF1_VIO_D9), 499 PINMUX_DATA(VIO_D8_MARK, PSE0_VIO_D8, HIZB0_VIO, NAF0_VIO_D8), 500 PINMUX_DATA(VIO_D7_MARK, PSD11_VIO, VIO_D7_SCIF1_SCK), 501 PINMUX_DATA(VIO_D6_MARK, PSD11_VIO, VIO_D6_SCIF1_RXD), 502 PINMUX_DATA(VIO_D5_MARK, PSD11_VIO, VIO_D5_SCIF1_TXD), 503 PINMUX_DATA(VIO_D4_MARK, VIO_D4), 504 PINMUX_DATA(VIO_D3_MARK, VIO_D3), 505 PINMUX_DATA(VIO_D2_MARK, VIO_D2), 506 PINMUX_DATA(VIO_D1_MARK, VIO_D1), 507 PINMUX_DATA(VIO_D0_MARK, PSD10_VIO_D0, VIO_D0_LCDLCLK), 508 PINMUX_DATA(VIO_CLK_MARK, PSD12_VIO, MSELB9_VIO, VIO_CLK_SCIF1_RTS), 509 PINMUX_DATA(VIO_VD_MARK, PSD12_VIO, MSELB9_VIO, VIO_VD_SCIF1_CTS), 510 PINMUX_DATA(VIO_HD_MARK, PSD13_VIO, MSELB9_VIO, VIO_HD_SCIF2_RXD), 511 PINMUX_DATA(VIO_FLD_MARK, PSD13_VIO, HIZA9_VIO, VIO_FLD_SCIF2_CTS), 512 PINMUX_DATA(VIO_CKO_MARK, PSD13_VIO, HIZA9_VIO, VIO_CKO_SCIF2_RTS), 513 PINMUX_DATA(VIO_STEX_MARK, PSD13_VIO, HIZA9_VIO, VIO_STEX_SCIF2_SCK), 514 PINMUX_DATA(VIO_STEM_MARK, PSD13_VIO, HIZA9_VIO, VIO_STEM_SCIF2_TXD), 515 PINMUX_DATA(VIO_VD2_MARK, PSE3_VIO, MSELB9_VIO2, 516 HIZB0_VIO, FOE_VIO_VD2), 517 PINMUX_DATA(VIO_HD2_MARK, PSE3_VIO, MSELB9_VIO2, 518 HIZB1_VIO, FCE_VIO_HD2), 519 PINMUX_DATA(VIO_CLK2_MARK, PSE3_VIO, MSELB9_VIO2, 520 HIZB1_VIO, FRB_VIO_CLK2), 521 522 /* LCDC */ 523 PINMUX_DATA(LCDD23_MARK, HIZA8_LCDC, LCDD23), 524 PINMUX_DATA(LCDD22_MARK, HIZA8_LCDC, LCDD22), 525 PINMUX_DATA(LCDD21_MARK, HIZA8_LCDC, LCDD21), 526 PINMUX_DATA(LCDD20_MARK, HIZA8_LCDC, LCDD20), 527 PINMUX_DATA(LCDD19_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD19_DV_CLKI), 528 PINMUX_DATA(LCDD18_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD18_DV_CLK), 529 PINMUX_DATA(LCDD17_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, 530 LCDD17_DV_HSYNC), 531 PINMUX_DATA(LCDD16_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, 532 LCDD16_DV_VSYNC), 533 PINMUX_DATA(LCDD15_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD15_DV_D15), 534 PINMUX_DATA(LCDD14_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD14_DV_D14), 535 PINMUX_DATA(LCDD13_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD13_DV_D13), 536 PINMUX_DATA(LCDD12_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD12_DV_D12), 537 PINMUX_DATA(LCDD11_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD11_DV_D11), 538 PINMUX_DATA(LCDD10_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD10_DV_D10), 539 PINMUX_DATA(LCDD9_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD9_DV_D9), 540 PINMUX_DATA(LCDD8_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD8_DV_D8), 541 PINMUX_DATA(LCDD7_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD7_DV_D7), 542 PINMUX_DATA(LCDD6_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD6_DV_D6), 543 PINMUX_DATA(LCDD5_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD5_DV_D5), 544 PINMUX_DATA(LCDD4_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD4_DV_D4), 545 PINMUX_DATA(LCDD3_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD3_DV_D3), 546 PINMUX_DATA(LCDD2_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD2_DV_D2), 547 PINMUX_DATA(LCDD1_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD1_DV_D1), 548 PINMUX_DATA(LCDD0_MARK, PSD0_LCDD19_LCDD0, HIZA8_LCDC, LCDD0_DV_D0), 549 PINMUX_DATA(LCDLCLK_MARK, PSD10_LCDLCLK, VIO_D0_LCDLCLK), 550 /* Main LCD */ 551 PINMUX_DATA(LCDDON_MARK, PSD2_LCDDON, HIZA7_LCDC, LCDDON_LCDDON2), 552 PINMUX_DATA(LCDVCPWC_MARK, PSD3_LCDVEPWC_LCDVCPWC, 553 HIZA6_LCDC, LCDVCPWC_LCDVCPWC2), 554 PINMUX_DATA(LCDVEPWC_MARK, PSD3_LCDVEPWC_LCDVCPWC, 555 HIZA6_LCDC, LCDVEPWC_LCDVEPWC2), 556 PINMUX_DATA(LCDVSYN_MARK, HIZA7_LCDC, LCDVSYN), 557 /* Main LCD - RGB Mode */ 558 PINMUX_DATA(LCDDCK_MARK, MSELB8_RGB, HIZA8_LCDC, LCDDCK_LCDWR), 559 PINMUX_DATA(LCDHSYN_MARK, MSELB8_RGB, HIZA7_LCDC, LCDHSYN_LCDCS), 560 PINMUX_DATA(LCDDISP_MARK, MSELB8_RGB, HIZA7_LCDC, LCDDISP_LCDRS), 561 /* Main LCD - SYS Mode */ 562 PINMUX_DATA(LCDRS_MARK, MSELB8_SYS, HIZA7_LCDC, LCDDISP_LCDRS), 563 PINMUX_DATA(LCDCS_MARK, MSELB8_SYS, HIZA7_LCDC, LCDHSYN_LCDCS), 564 PINMUX_DATA(LCDWR_MARK, MSELB8_SYS, HIZA8_LCDC, LCDDCK_LCDWR), 565 PINMUX_DATA(LCDRD_MARK, HIZA7_LCDC, LCDRD), 566 /* Sub LCD - SYS Mode */ 567 PINMUX_DATA(LCDDON2_MARK, PSD2_LCDDON2, HIZA7_LCDC, LCDDON_LCDDON2), 568 PINMUX_DATA(LCDVCPWC2_MARK, PSD3_LCDVEPWC2_LCDVCPWC2, 569 HIZA6_LCDC, LCDVCPWC_LCDVCPWC2), 570 PINMUX_DATA(LCDVEPWC2_MARK, PSD3_LCDVEPWC2_LCDVCPWC2, 571 HIZA6_LCDC, LCDVEPWC_LCDVEPWC2), 572 PINMUX_DATA(LCDVSYN2_MARK, PSE12_LCDVSYN2, HIZA8_LCDC, LCDVSYN2_DACK), 573 PINMUX_DATA(LCDCS2_MARK, PSD5_LCDCS2, CS6B_CE1B_LCDCS2), 574 575 /* BSC */ 576 PINMUX_DATA(IOIS16_MARK, IOIS16), 577 PINMUX_DATA(A25_MARK, A25), 578 PINMUX_DATA(A24_MARK, A24), 579 PINMUX_DATA(A23_MARK, A23), 580 PINMUX_DATA(A22_MARK, A22), 581 PINMUX_DATA(BS_MARK, PSA9_BS, IRQ4_BS), 582 PINMUX_DATA(CS6B_CE1B_MARK, PSD5_CS6B_CE1B, CS6B_CE1B_LCDCS2), 583 PINMUX_DATA(WAIT_MARK, WAIT), 584 PINMUX_DATA(CS6A_CE2B_MARK, CS6A_CE2B), 585 586 /* SBSC */ 587 PINMUX_DATA(HPD63_MARK, HPD63), 588 PINMUX_DATA(HPD62_MARK, HPD62), 589 PINMUX_DATA(HPD61_MARK, HPD61), 590 PINMUX_DATA(HPD60_MARK, HPD60), 591 PINMUX_DATA(HPD59_MARK, HPD59), 592 PINMUX_DATA(HPD58_MARK, HPD58), 593 PINMUX_DATA(HPD57_MARK, HPD57), 594 PINMUX_DATA(HPD56_MARK, HPD56), 595 PINMUX_DATA(HPD55_MARK, HPD55), 596 PINMUX_DATA(HPD54_MARK, HPD54), 597 PINMUX_DATA(HPD53_MARK, HPD53), 598 PINMUX_DATA(HPD52_MARK, HPD52), 599 PINMUX_DATA(HPD51_MARK, HPD51), 600 PINMUX_DATA(HPD50_MARK, HPD50), 601 PINMUX_DATA(HPD49_MARK, HPD49), 602 PINMUX_DATA(HPD48_MARK, HPD48), 603 PINMUX_DATA(HPDQM7_MARK, HPDQM7), 604 PINMUX_DATA(HPDQM6_MARK, HPDQM6), 605 PINMUX_DATA(HPDQM5_MARK, HPDQM5), 606 PINMUX_DATA(HPDQM4_MARK, HPDQM4), 607 608 /* IRQ */ 609 PINMUX_DATA(IRQ0_MARK, HIZC8_IRQ0, IRQ0), 610 PINMUX_DATA(IRQ1_MARK, HIZC9_IRQ1, IRQ1), 611 PINMUX_DATA(IRQ2_MARK, PSA4_IRQ2, HIZC10_IRQ2, IRQ2_SDHID2), 612 PINMUX_DATA(IRQ3_MARK, PSE15_SIOF0_MCK_IRQ3, PSB8_IRQ3, 613 HIZC11_IRQ3, PTQ0), 614 PINMUX_DATA(IRQ4_MARK, PSA9_IRQ4, HIZC12_IRQ4, IRQ4_BS), 615 PINMUX_DATA(IRQ5_MARK, HIZC13_IRQ5, IRQ5), 616 PINMUX_DATA(IRQ6_MARK, PSA15_IRQ6, HIZC14_IRQ6, KEYIN0_IRQ6), 617 PINMUX_DATA(IRQ7_MARK, PSA14_IRQ7, HIZC15_IRQ7, KEYIN4_IRQ7), 618 619 /* SDHI */ 620 PINMUX_DATA(SDHICD_MARK, SDHICD), 621 PINMUX_DATA(SDHIWP_MARK, SDHIWP), 622 PINMUX_DATA(SDHID3_MARK, SDHID3), 623 PINMUX_DATA(SDHID2_MARK, PSA4_SDHID2, IRQ2_SDHID2), 624 PINMUX_DATA(SDHID1_MARK, SDHID1), 625 PINMUX_DATA(SDHID0_MARK, SDHID0), 626 PINMUX_DATA(SDHICMD_MARK, SDHICMD), 627 PINMUX_DATA(SDHICLK_MARK, SDHICLK), 628 629 /* SIU - Port A */ 630 PINMUX_DATA(SIUAOLR_MARK, PSC13_SIUAOLR, HIZB4_SIUA, SIUAOLR_SIOF1_SYNC), 631 PINMUX_DATA(SIUAOBT_MARK, PSC14_SIUAOBT, HIZB4_SIUA, SIUAOBT_SIOF1_SCK), 632 PINMUX_DATA(SIUAISLD_MARK, PSC15_SIUAISLD, HIZB4_SIUA, SIUAISLD_SIOF1_RXD), 633 PINMUX_DATA(SIUAILR_MARK, PSC11_SIUAILR, HIZB4_SIUA, SIUAILR_SIOF1_SS2), 634 PINMUX_DATA(SIUAIBT_MARK, PSC12_SIUAIBT, HIZB4_SIUA, SIUAIBT_SIOF1_SS1), 635 PINMUX_DATA(SIUAOSLD_MARK, PSB0_SIUAOSLD, HIZB4_SIUA, SIUAOSLD_SIOF1_TXD), 636 PINMUX_DATA(SIUMCKA_MARK, PSE11_SIUMCKA_SIOF1_MCK, HIZB4_SIUA, PSB1_SIUMCKA, PTK0), 637 PINMUX_DATA(SIUFCKA_MARK, PSE11_SIUFCKA, HIZB4_SIUA, PTK0), 638 639 /* SIU - Port B */ 640 PINMUX_DATA(SIUBOLR_MARK, PSB11_SIUBOLR, SIOSTRB1_SIUBOLR), 641 PINMUX_DATA(SIUBOBT_MARK, PSB10_SIUBOBT, SIOSCK_SIUBOBT), 642 PINMUX_DATA(SIUBISLD_MARK, PSB14_SIUBISLD, SIORXD_SIUBISLD), 643 PINMUX_DATA(SIUBILR_MARK, PSB13_SIUBILR, SIOD_SIUBILR), 644 PINMUX_DATA(SIUBIBT_MARK, PSB12_SIUBIBT, SIOSTRB0_SIUBIBT), 645 PINMUX_DATA(SIUBOSLD_MARK, PSB15_SIUBOSLD, SIOTXD_SIUBOSLD), 646 PINMUX_DATA(SIUMCKB_MARK, PSD9_SIOMCK_SIUMCKB, PSB9_SIUMCKB, PTF6), 647 PINMUX_DATA(SIUFCKB_MARK, PSD9_SIUFCKB, PTF6), 648 649 /* AUD */ 650 PINMUX_DATA(AUDSYNC_MARK, AUDSYNC), 651 PINMUX_DATA(AUDATA3_MARK, AUDATA3), 652 PINMUX_DATA(AUDATA2_MARK, AUDATA2), 653 PINMUX_DATA(AUDATA1_MARK, AUDATA1), 654 PINMUX_DATA(AUDATA0_MARK, AUDATA0), 655 656 /* DMAC */ 657 PINMUX_DATA(DACK_MARK, PSE12_DACK, LCDVSYN2_DACK), 658 PINMUX_DATA(DREQ0_MARK, DREQ0), 659 660 /* VOU */ 661 PINMUX_DATA(DV_CLKI_MARK, PSD0_DV, LCDD19_DV_CLKI), 662 PINMUX_DATA(DV_CLK_MARK, PSD0_DV, LCDD18_DV_CLK), 663 PINMUX_DATA(DV_HSYNC_MARK, PSD0_DV, LCDD17_DV_HSYNC), 664 PINMUX_DATA(DV_VSYNC_MARK, PSD0_DV, LCDD16_DV_VSYNC), 665 PINMUX_DATA(DV_D15_MARK, PSD0_DV, LCDD15_DV_D15), 666 PINMUX_DATA(DV_D14_MARK, PSD0_DV, LCDD14_DV_D14), 667 PINMUX_DATA(DV_D13_MARK, PSD0_DV, LCDD13_DV_D13), 668 PINMUX_DATA(DV_D12_MARK, PSD0_DV, LCDD12_DV_D12), 669 PINMUX_DATA(DV_D11_MARK, PSD0_DV, LCDD11_DV_D11), 670 PINMUX_DATA(DV_D10_MARK, PSD0_DV, LCDD10_DV_D10), 671 PINMUX_DATA(DV_D9_MARK, PSD0_DV, LCDD9_DV_D9), 672 PINMUX_DATA(DV_D8_MARK, PSD0_DV, LCDD8_DV_D8), 673 PINMUX_DATA(DV_D7_MARK, PSD0_DV, LCDD7_DV_D7), 674 PINMUX_DATA(DV_D6_MARK, PSD0_DV, LCDD6_DV_D6), 675 PINMUX_DATA(DV_D5_MARK, PSD0_DV, LCDD5_DV_D5), 676 PINMUX_DATA(DV_D4_MARK, PSD0_DV, LCDD4_DV_D4), 677 PINMUX_DATA(DV_D3_MARK, PSD0_DV, LCDD3_DV_D3), 678 PINMUX_DATA(DV_D2_MARK, PSD0_DV, LCDD2_DV_D2), 679 PINMUX_DATA(DV_D1_MARK, PSD0_DV, LCDD1_DV_D1), 680 PINMUX_DATA(DV_D0_MARK, PSD0_DV, LCDD0_DV_D0), 681 682 /* CPG */ 683 PINMUX_DATA(STATUS0_MARK, STATUS0), 684 PINMUX_DATA(PDSTATUS_MARK, PDSTATUS), 685 686 /* SIOF0 */ 687 PINMUX_DATA(SIOF0_MCK_MARK, PSE15_SIOF0_MCK_IRQ3, PSB8_SIOF0_MCK, PTQ0), 688 PINMUX_DATA(SIOF0_SCK_MARK, PSB5_SIOF0_SCK, SIOF0_SCK_TS_SCK), 689 PINMUX_DATA(SIOF0_SYNC_MARK, PSB4_SIOF0_SYNC, SIOF0_SYNC_TS_SDEN), 690 PINMUX_DATA(SIOF0_SS1_MARK, PSB3_SIOF0_SS1, SIOF0_SS1_TS_SPSYNC), 691 PINMUX_DATA(SIOF0_SS2_MARK, PSB2_SIOF0_SS2, SIOF0_SS2_SIM_RST), 692 PINMUX_DATA(SIOF0_TXD_MARK, PSE14_SIOF0_TXD_IRDA_OUT, 693 PSB7_SIOF0_TXD, PTQ1), 694 PINMUX_DATA(SIOF0_RXD_MARK, PSE13_SIOF0_RXD_IRDA_IN, 695 PSB6_SIOF0_RXD, PTQ2), 696 697 /* SIOF1 */ 698 PINMUX_DATA(SIOF1_MCK_MARK, PSE11_SIUMCKA_SIOF1_MCK, 699 PSB1_SIOF1_MCK, PTK0), 700 PINMUX_DATA(SIOF1_SCK_MARK, PSC14_SIOF1_SCK, SIUAOBT_SIOF1_SCK), 701 PINMUX_DATA(SIOF1_SYNC_MARK, PSC13_SIOF1_SYNC, SIUAOLR_SIOF1_SYNC), 702 PINMUX_DATA(SIOF1_SS1_MARK, PSC12_SIOF1_SS1, SIUAIBT_SIOF1_SS1), 703 PINMUX_DATA(SIOF1_SS2_MARK, PSC11_SIOF1_SS2, SIUAILR_SIOF1_SS2), 704 PINMUX_DATA(SIOF1_TXD_MARK, PSB0_SIOF1_TXD, SIUAOSLD_SIOF1_TXD), 705 PINMUX_DATA(SIOF1_RXD_MARK, PSC15_SIOF1_RXD, SIUAISLD_SIOF1_RXD), 706 707 /* SIM */ 708 PINMUX_DATA(SIM_D_MARK, PSE15_SIM_D, PTQ0), 709 PINMUX_DATA(SIM_CLK_MARK, PSE14_SIM_CLK, PTQ1), 710 PINMUX_DATA(SIM_RST_MARK, PSB2_SIM_RST, SIOF0_SS2_SIM_RST), 711 712 /* TSIF */ 713 PINMUX_DATA(TS_SDAT_MARK, PSE13_TS_SDAT, PTQ2), 714 PINMUX_DATA(TS_SCK_MARK, PSB5_TS_SCK, SIOF0_SCK_TS_SCK), 715 PINMUX_DATA(TS_SDEN_MARK, PSB4_TS_SDEN, SIOF0_SYNC_TS_SDEN), 716 PINMUX_DATA(TS_SPSYNC_MARK, PSB3_TS_SPSYNC, SIOF0_SS1_TS_SPSYNC), 717 718 /* IRDA */ 719 PINMUX_DATA(IRDA_IN_MARK, PSE13_SIOF0_RXD_IRDA_IN, PSB6_IRDA_IN, PTQ2), 720 PINMUX_DATA(IRDA_OUT_MARK, PSE14_SIOF0_TXD_IRDA_OUT, 721 PSB7_IRDA_OUT, PTQ1), 722 723 /* TPU */ 724 PINMUX_DATA(TPUTO_MARK, PSD8_TPUTO, SCIF0_SCK_TPUTO), 725 726 /* FLCTL */ 727 PINMUX_DATA(FCE_MARK, PSE3_FLCTL, FCE_VIO_HD2), 728 PINMUX_DATA(NAF7_MARK, PSC0_NAF, HIZA10_NAF, NAF7_VIO_D15), 729 PINMUX_DATA(NAF6_MARK, PSC0_NAF, HIZA10_NAF, NAF6_VIO_D14), 730 PINMUX_DATA(NAF5_MARK, PSC0_NAF, HIZA10_NAF, NAF5_VIO_D13), 731 PINMUX_DATA(NAF4_MARK, PSC0_NAF, HIZA10_NAF, NAF4_VIO_D12), 732 PINMUX_DATA(NAF3_MARK, PSC0_NAF, HIZA10_NAF, NAF3_VIO_D11), 733 PINMUX_DATA(NAF2_MARK, PSE2_NAF2, HIZB0_VIO, NAF2_VIO_D10), 734 PINMUX_DATA(NAF1_MARK, PSE1_NAF1, HIZB0_VIO, NAF1_VIO_D9), 735 PINMUX_DATA(NAF0_MARK, PSE0_NAF0, HIZB0_VIO, NAF0_VIO_D8), 736 PINMUX_DATA(FCDE_MARK, FCDE), 737 PINMUX_DATA(FOE_MARK, PSE3_FLCTL, HIZB0_VIO, FOE_VIO_VD2), 738 PINMUX_DATA(FSC_MARK, FSC), 739 PINMUX_DATA(FWE_MARK, FWE), 740 PINMUX_DATA(FRB_MARK, PSE3_FLCTL, FRB_VIO_CLK2), 741 742 /* KEYSC */ 743 PINMUX_DATA(KEYIN0_MARK, PSA15_KEYIN0, HIZC14_IRQ6, KEYIN0_IRQ6), 744 PINMUX_DATA(KEYIN1_MARK, HIZA14_KEYSC, KEYIN1), 745 PINMUX_DATA(KEYIN2_MARK, HIZA14_KEYSC, KEYIN2), 746 PINMUX_DATA(KEYIN3_MARK, HIZA14_KEYSC, KEYIN3), 747 PINMUX_DATA(KEYIN4_MARK, PSA14_KEYIN4, HIZC15_IRQ7, KEYIN4_IRQ7), 748 PINMUX_DATA(KEYOUT0_MARK, HIZA14_KEYSC, KEYOUT0), 749 PINMUX_DATA(KEYOUT1_MARK, HIZA14_KEYSC, KEYOUT1), 750 PINMUX_DATA(KEYOUT2_MARK, HIZA14_KEYSC, KEYOUT2), 751 PINMUX_DATA(KEYOUT3_MARK, HIZA14_KEYSC, KEYOUT3), 752 PINMUX_DATA(KEYOUT4_IN6_MARK, HIZA14_KEYSC, KEYOUT4_IN6), 753 PINMUX_DATA(KEYOUT5_IN5_MARK, HIZA14_KEYSC, KEYOUT5_IN5), 754 }; 755 756 static const struct sh_pfc_pin pinmux_pins[] = { 757 /* PTA */ 758 PINMUX_GPIO(PTA7), 759 PINMUX_GPIO(PTA6), 760 PINMUX_GPIO(PTA5), 761 PINMUX_GPIO(PTA4), 762 PINMUX_GPIO(PTA3), 763 PINMUX_GPIO(PTA2), 764 PINMUX_GPIO(PTA1), 765 PINMUX_GPIO(PTA0), 766 767 /* PTB */ 768 PINMUX_GPIO(PTB7), 769 PINMUX_GPIO(PTB6), 770 PINMUX_GPIO(PTB5), 771 PINMUX_GPIO(PTB4), 772 PINMUX_GPIO(PTB3), 773 PINMUX_GPIO(PTB2), 774 PINMUX_GPIO(PTB1), 775 PINMUX_GPIO(PTB0), 776 777 /* PTC */ 778 PINMUX_GPIO(PTC7), 779 PINMUX_GPIO(PTC5), 780 PINMUX_GPIO(PTC4), 781 PINMUX_GPIO(PTC3), 782 PINMUX_GPIO(PTC2), 783 PINMUX_GPIO(PTC0), 784 785 /* PTD */ 786 PINMUX_GPIO(PTD7), 787 PINMUX_GPIO(PTD6), 788 PINMUX_GPIO(PTD5), 789 PINMUX_GPIO(PTD4), 790 PINMUX_GPIO(PTD3), 791 PINMUX_GPIO(PTD2), 792 PINMUX_GPIO(PTD1), 793 PINMUX_GPIO(PTD0), 794 795 /* PTE */ 796 PINMUX_GPIO(PTE7), 797 PINMUX_GPIO(PTE6), 798 PINMUX_GPIO(PTE5), 799 PINMUX_GPIO(PTE4), 800 PINMUX_GPIO(PTE1), 801 PINMUX_GPIO(PTE0), 802 803 /* PTF */ 804 PINMUX_GPIO(PTF6), 805 PINMUX_GPIO(PTF5), 806 PINMUX_GPIO(PTF4), 807 PINMUX_GPIO(PTF3), 808 PINMUX_GPIO(PTF2), 809 PINMUX_GPIO(PTF1), 810 PINMUX_GPIO(PTF0), 811 812 /* PTG */ 813 PINMUX_GPIO(PTG4), 814 PINMUX_GPIO(PTG3), 815 PINMUX_GPIO(PTG2), 816 PINMUX_GPIO(PTG1), 817 PINMUX_GPIO(PTG0), 818 819 /* PTH */ 820 PINMUX_GPIO(PTH7), 821 PINMUX_GPIO(PTH6), 822 PINMUX_GPIO(PTH5), 823 PINMUX_GPIO(PTH4), 824 PINMUX_GPIO(PTH3), 825 PINMUX_GPIO(PTH2), 826 PINMUX_GPIO(PTH1), 827 PINMUX_GPIO(PTH0), 828 829 /* PTJ */ 830 PINMUX_GPIO(PTJ7), 831 PINMUX_GPIO(PTJ6), 832 PINMUX_GPIO(PTJ5), 833 PINMUX_GPIO(PTJ1), 834 PINMUX_GPIO(PTJ0), 835 836 /* PTK */ 837 PINMUX_GPIO(PTK6), 838 PINMUX_GPIO(PTK5), 839 PINMUX_GPIO(PTK4), 840 PINMUX_GPIO(PTK3), 841 PINMUX_GPIO(PTK2), 842 PINMUX_GPIO(PTK1), 843 PINMUX_GPIO(PTK0), 844 845 /* PTL */ 846 PINMUX_GPIO(PTL7), 847 PINMUX_GPIO(PTL6), 848 PINMUX_GPIO(PTL5), 849 PINMUX_GPIO(PTL4), 850 PINMUX_GPIO(PTL3), 851 PINMUX_GPIO(PTL2), 852 PINMUX_GPIO(PTL1), 853 PINMUX_GPIO(PTL0), 854 855 /* PTM */ 856 PINMUX_GPIO(PTM7), 857 PINMUX_GPIO(PTM6), 858 PINMUX_GPIO(PTM5), 859 PINMUX_GPIO(PTM4), 860 PINMUX_GPIO(PTM3), 861 PINMUX_GPIO(PTM2), 862 PINMUX_GPIO(PTM1), 863 PINMUX_GPIO(PTM0), 864 865 /* PTN */ 866 PINMUX_GPIO(PTN7), 867 PINMUX_GPIO(PTN6), 868 PINMUX_GPIO(PTN5), 869 PINMUX_GPIO(PTN4), 870 PINMUX_GPIO(PTN3), 871 PINMUX_GPIO(PTN2), 872 PINMUX_GPIO(PTN1), 873 PINMUX_GPIO(PTN0), 874 875 /* PTQ */ 876 PINMUX_GPIO(PTQ6), 877 PINMUX_GPIO(PTQ5), 878 PINMUX_GPIO(PTQ4), 879 PINMUX_GPIO(PTQ3), 880 PINMUX_GPIO(PTQ2), 881 PINMUX_GPIO(PTQ1), 882 PINMUX_GPIO(PTQ0), 883 884 /* PTR */ 885 PINMUX_GPIO(PTR4), 886 PINMUX_GPIO(PTR3), 887 PINMUX_GPIO(PTR2), 888 PINMUX_GPIO(PTR1), 889 PINMUX_GPIO(PTR0), 890 891 /* PTS */ 892 PINMUX_GPIO(PTS4), 893 PINMUX_GPIO(PTS3), 894 PINMUX_GPIO(PTS2), 895 PINMUX_GPIO(PTS1), 896 PINMUX_GPIO(PTS0), 897 898 /* PTT */ 899 PINMUX_GPIO(PTT4), 900 PINMUX_GPIO(PTT3), 901 PINMUX_GPIO(PTT2), 902 PINMUX_GPIO(PTT1), 903 PINMUX_GPIO(PTT0), 904 905 /* PTU */ 906 PINMUX_GPIO(PTU4), 907 PINMUX_GPIO(PTU3), 908 PINMUX_GPIO(PTU2), 909 PINMUX_GPIO(PTU1), 910 PINMUX_GPIO(PTU0), 911 912 /* PTV */ 913 PINMUX_GPIO(PTV4), 914 PINMUX_GPIO(PTV3), 915 PINMUX_GPIO(PTV2), 916 PINMUX_GPIO(PTV1), 917 PINMUX_GPIO(PTV0), 918 919 /* PTW */ 920 PINMUX_GPIO(PTW6), 921 PINMUX_GPIO(PTW5), 922 PINMUX_GPIO(PTW4), 923 PINMUX_GPIO(PTW3), 924 PINMUX_GPIO(PTW2), 925 PINMUX_GPIO(PTW1), 926 PINMUX_GPIO(PTW0), 927 928 /* PTX */ 929 PINMUX_GPIO(PTX6), 930 PINMUX_GPIO(PTX5), 931 PINMUX_GPIO(PTX4), 932 PINMUX_GPIO(PTX3), 933 PINMUX_GPIO(PTX2), 934 PINMUX_GPIO(PTX1), 935 PINMUX_GPIO(PTX0), 936 937 /* PTY */ 938 PINMUX_GPIO(PTY5), 939 PINMUX_GPIO(PTY4), 940 PINMUX_GPIO(PTY3), 941 PINMUX_GPIO(PTY2), 942 PINMUX_GPIO(PTY1), 943 PINMUX_GPIO(PTY0), 944 945 /* PTZ */ 946 PINMUX_GPIO(PTZ5), 947 PINMUX_GPIO(PTZ4), 948 PINMUX_GPIO(PTZ3), 949 PINMUX_GPIO(PTZ2), 950 PINMUX_GPIO(PTZ1), 951 }; 952 953 #define PINMUX_FN_BASE ARRAY_SIZE(pinmux_pins) 954 955 static const struct pinmux_func pinmux_func_gpios[] = { 956 /* SCIF0 */ 957 GPIO_FN(SCIF0_TXD), 958 GPIO_FN(SCIF0_RXD), 959 GPIO_FN(SCIF0_RTS), 960 GPIO_FN(SCIF0_CTS), 961 GPIO_FN(SCIF0_SCK), 962 963 /* SCIF1 */ 964 GPIO_FN(SCIF1_TXD), 965 GPIO_FN(SCIF1_RXD), 966 GPIO_FN(SCIF1_RTS), 967 GPIO_FN(SCIF1_CTS), 968 GPIO_FN(SCIF1_SCK), 969 970 /* SCIF2 */ 971 GPIO_FN(SCIF2_TXD), 972 GPIO_FN(SCIF2_RXD), 973 GPIO_FN(SCIF2_RTS), 974 GPIO_FN(SCIF2_CTS), 975 GPIO_FN(SCIF2_SCK), 976 977 /* SIO */ 978 GPIO_FN(SIOTXD), 979 GPIO_FN(SIORXD), 980 GPIO_FN(SIOD), 981 GPIO_FN(SIOSTRB0), 982 GPIO_FN(SIOSTRB1), 983 GPIO_FN(SIOSCK), 984 GPIO_FN(SIOMCK), 985 986 /* CEU */ 987 GPIO_FN(VIO_D15), 988 GPIO_FN(VIO_D14), 989 GPIO_FN(VIO_D13), 990 GPIO_FN(VIO_D12), 991 GPIO_FN(VIO_D11), 992 GPIO_FN(VIO_D10), 993 GPIO_FN(VIO_D9), 994 GPIO_FN(VIO_D8), 995 GPIO_FN(VIO_D7), 996 GPIO_FN(VIO_D6), 997 GPIO_FN(VIO_D5), 998 GPIO_FN(VIO_D4), 999 GPIO_FN(VIO_D3), 1000 GPIO_FN(VIO_D2), 1001 GPIO_FN(VIO_D1), 1002 GPIO_FN(VIO_D0), 1003 GPIO_FN(VIO_CLK), 1004 GPIO_FN(VIO_VD), 1005 GPIO_FN(VIO_HD), 1006 GPIO_FN(VIO_FLD), 1007 GPIO_FN(VIO_CKO), 1008 GPIO_FN(VIO_STEX), 1009 GPIO_FN(VIO_STEM), 1010 GPIO_FN(VIO_VD2), 1011 GPIO_FN(VIO_HD2), 1012 GPIO_FN(VIO_CLK2), 1013 1014 /* LCDC */ 1015 GPIO_FN(LCDD23), 1016 GPIO_FN(LCDD22), 1017 GPIO_FN(LCDD21), 1018 GPIO_FN(LCDD20), 1019 GPIO_FN(LCDD19), 1020 GPIO_FN(LCDD18), 1021 GPIO_FN(LCDD17), 1022 GPIO_FN(LCDD16), 1023 GPIO_FN(LCDD15), 1024 GPIO_FN(LCDD14), 1025 GPIO_FN(LCDD13), 1026 GPIO_FN(LCDD12), 1027 GPIO_FN(LCDD11), 1028 GPIO_FN(LCDD10), 1029 GPIO_FN(LCDD9), 1030 GPIO_FN(LCDD8), 1031 GPIO_FN(LCDD7), 1032 GPIO_FN(LCDD6), 1033 GPIO_FN(LCDD5), 1034 GPIO_FN(LCDD4), 1035 GPIO_FN(LCDD3), 1036 GPIO_FN(LCDD2), 1037 GPIO_FN(LCDD1), 1038 GPIO_FN(LCDD0), 1039 GPIO_FN(LCDLCLK), 1040 /* Main LCD */ 1041 GPIO_FN(LCDDON), 1042 GPIO_FN(LCDVCPWC), 1043 GPIO_FN(LCDVEPWC), 1044 GPIO_FN(LCDVSYN), 1045 /* Main LCD - RGB Mode */ 1046 GPIO_FN(LCDDCK), 1047 GPIO_FN(LCDHSYN), 1048 GPIO_FN(LCDDISP), 1049 /* Main LCD - SYS Mode */ 1050 GPIO_FN(LCDRS), 1051 GPIO_FN(LCDCS), 1052 GPIO_FN(LCDWR), 1053 GPIO_FN(LCDRD), 1054 /* Sub LCD - SYS Mode */ 1055 GPIO_FN(LCDDON2), 1056 GPIO_FN(LCDVCPWC2), 1057 GPIO_FN(LCDVEPWC2), 1058 GPIO_FN(LCDVSYN2), 1059 GPIO_FN(LCDCS2), 1060 1061 /* BSC */ 1062 GPIO_FN(IOIS16), 1063 GPIO_FN(A25), 1064 GPIO_FN(A24), 1065 GPIO_FN(A23), 1066 GPIO_FN(A22), 1067 GPIO_FN(BS), 1068 GPIO_FN(CS6B_CE1B), 1069 GPIO_FN(WAIT), 1070 GPIO_FN(CS6A_CE2B), 1071 1072 /* SBSC */ 1073 GPIO_FN(HPD63), 1074 GPIO_FN(HPD62), 1075 GPIO_FN(HPD61), 1076 GPIO_FN(HPD60), 1077 GPIO_FN(HPD59), 1078 GPIO_FN(HPD58), 1079 GPIO_FN(HPD57), 1080 GPIO_FN(HPD56), 1081 GPIO_FN(HPD55), 1082 GPIO_FN(HPD54), 1083 GPIO_FN(HPD53), 1084 GPIO_FN(HPD52), 1085 GPIO_FN(HPD51), 1086 GPIO_FN(HPD50), 1087 GPIO_FN(HPD49), 1088 GPIO_FN(HPD48), 1089 GPIO_FN(HPDQM7), 1090 GPIO_FN(HPDQM6), 1091 GPIO_FN(HPDQM5), 1092 GPIO_FN(HPDQM4), 1093 1094 /* IRQ */ 1095 GPIO_FN(IRQ0), 1096 GPIO_FN(IRQ1), 1097 GPIO_FN(IRQ2), 1098 GPIO_FN(IRQ3), 1099 GPIO_FN(IRQ4), 1100 GPIO_FN(IRQ5), 1101 GPIO_FN(IRQ6), 1102 GPIO_FN(IRQ7), 1103 1104 /* SDHI */ 1105 GPIO_FN(SDHICD), 1106 GPIO_FN(SDHIWP), 1107 GPIO_FN(SDHID3), 1108 GPIO_FN(SDHID2), 1109 GPIO_FN(SDHID1), 1110 GPIO_FN(SDHID0), 1111 GPIO_FN(SDHICMD), 1112 GPIO_FN(SDHICLK), 1113 1114 /* SIU - Port A */ 1115 GPIO_FN(SIUAOLR), 1116 GPIO_FN(SIUAOBT), 1117 GPIO_FN(SIUAISLD), 1118 GPIO_FN(SIUAILR), 1119 GPIO_FN(SIUAIBT), 1120 GPIO_FN(SIUAOSLD), 1121 GPIO_FN(SIUMCKA), 1122 GPIO_FN(SIUFCKA), 1123 1124 /* SIU - Port B */ 1125 GPIO_FN(SIUBOLR), 1126 GPIO_FN(SIUBOBT), 1127 GPIO_FN(SIUBISLD), 1128 GPIO_FN(SIUBILR), 1129 GPIO_FN(SIUBIBT), 1130 GPIO_FN(SIUBOSLD), 1131 GPIO_FN(SIUMCKB), 1132 GPIO_FN(SIUFCKB), 1133 1134 /* AUD */ 1135 GPIO_FN(AUDSYNC), 1136 GPIO_FN(AUDATA3), 1137 GPIO_FN(AUDATA2), 1138 GPIO_FN(AUDATA1), 1139 GPIO_FN(AUDATA0), 1140 1141 /* DMAC */ 1142 GPIO_FN(DACK), 1143 GPIO_FN(DREQ0), 1144 1145 /* VOU */ 1146 GPIO_FN(DV_CLKI), 1147 GPIO_FN(DV_CLK), 1148 GPIO_FN(DV_HSYNC), 1149 GPIO_FN(DV_VSYNC), 1150 GPIO_FN(DV_D15), 1151 GPIO_FN(DV_D14), 1152 GPIO_FN(DV_D13), 1153 GPIO_FN(DV_D12), 1154 GPIO_FN(DV_D11), 1155 GPIO_FN(DV_D10), 1156 GPIO_FN(DV_D9), 1157 GPIO_FN(DV_D8), 1158 GPIO_FN(DV_D7), 1159 GPIO_FN(DV_D6), 1160 GPIO_FN(DV_D5), 1161 GPIO_FN(DV_D4), 1162 GPIO_FN(DV_D3), 1163 GPIO_FN(DV_D2), 1164 GPIO_FN(DV_D1), 1165 GPIO_FN(DV_D0), 1166 1167 /* CPG */ 1168 GPIO_FN(STATUS0), 1169 GPIO_FN(PDSTATUS), 1170 1171 /* SIOF0 */ 1172 GPIO_FN(SIOF0_MCK), 1173 GPIO_FN(SIOF0_SCK), 1174 GPIO_FN(SIOF0_SYNC), 1175 GPIO_FN(SIOF0_SS1), 1176 GPIO_FN(SIOF0_SS2), 1177 GPIO_FN(SIOF0_TXD), 1178 GPIO_FN(SIOF0_RXD), 1179 1180 /* SIOF1 */ 1181 GPIO_FN(SIOF1_MCK), 1182 GPIO_FN(SIOF1_SCK), 1183 GPIO_FN(SIOF1_SYNC), 1184 GPIO_FN(SIOF1_SS1), 1185 GPIO_FN(SIOF1_SS2), 1186 GPIO_FN(SIOF1_TXD), 1187 GPIO_FN(SIOF1_RXD), 1188 1189 /* SIM */ 1190 GPIO_FN(SIM_D), 1191 GPIO_FN(SIM_CLK), 1192 GPIO_FN(SIM_RST), 1193 1194 /* TSIF */ 1195 GPIO_FN(TS_SDAT), 1196 GPIO_FN(TS_SCK), 1197 GPIO_FN(TS_SDEN), 1198 GPIO_FN(TS_SPSYNC), 1199 1200 /* IRDA */ 1201 GPIO_FN(IRDA_IN), 1202 GPIO_FN(IRDA_OUT), 1203 1204 /* TPU */ 1205 GPIO_FN(TPUTO), 1206 1207 /* FLCTL */ 1208 GPIO_FN(FCE), 1209 GPIO_FN(NAF7), 1210 GPIO_FN(NAF6), 1211 GPIO_FN(NAF5), 1212 GPIO_FN(NAF4), 1213 GPIO_FN(NAF3), 1214 GPIO_FN(NAF2), 1215 GPIO_FN(NAF1), 1216 GPIO_FN(NAF0), 1217 GPIO_FN(FCDE), 1218 GPIO_FN(FOE), 1219 GPIO_FN(FSC), 1220 GPIO_FN(FWE), 1221 GPIO_FN(FRB), 1222 1223 /* KEYSC */ 1224 GPIO_FN(KEYIN0), 1225 GPIO_FN(KEYIN1), 1226 GPIO_FN(KEYIN2), 1227 GPIO_FN(KEYIN3), 1228 GPIO_FN(KEYIN4), 1229 GPIO_FN(KEYOUT0), 1230 GPIO_FN(KEYOUT1), 1231 GPIO_FN(KEYOUT2), 1232 GPIO_FN(KEYOUT3), 1233 GPIO_FN(KEYOUT4_IN6), 1234 GPIO_FN(KEYOUT5_IN5), 1235 }; 1236 1237 static const struct pinmux_cfg_reg pinmux_config_regs[] = { 1238 { PINMUX_CFG_REG("PACR", 0xa4050100, 16, 2, GROUP( 1239 VIO_D7_SCIF1_SCK, PTA7_OUT, 0, PTA7_IN, 1240 VIO_D6_SCIF1_RXD, 0, 0, PTA6_IN, 1241 VIO_D5_SCIF1_TXD, PTA5_OUT, 0, PTA5_IN, 1242 VIO_D4, 0, 0, PTA4_IN, 1243 VIO_D3, 0, 0, PTA3_IN, 1244 VIO_D2, 0, 0, PTA2_IN, 1245 VIO_D1, 0, 0, PTA1_IN, 1246 VIO_D0_LCDLCLK, 0, 0, PTA0_IN )) 1247 }, 1248 { PINMUX_CFG_REG("PBCR", 0xa4050102, 16, 2, GROUP( 1249 HPD55, PTB7_OUT, 0, PTB7_IN, 1250 HPD54, PTB6_OUT, 0, PTB6_IN, 1251 HPD53, PTB5_OUT, 0, PTB5_IN, 1252 HPD52, PTB4_OUT, 0, PTB4_IN, 1253 HPD51, PTB3_OUT, 0, PTB3_IN, 1254 HPD50, PTB2_OUT, 0, PTB2_IN, 1255 HPD49, PTB1_OUT, 0, PTB1_IN, 1256 HPD48, PTB0_OUT, 0, PTB0_IN )) 1257 }, 1258 { PINMUX_CFG_REG_VAR("PCCR", 0xa4050104, 16, 1259 GROUP(2, -2, 2, 2, 2, 2, -2, 2), 1260 GROUP( 1261 0, 0, 0, PTC7_IN, 1262 /* RESERVED [2] */ 1263 IOIS16, 0, 0, PTC5_IN, 1264 HPDQM7, PTC4_OUT, 0, PTC4_IN, 1265 HPDQM6, PTC3_OUT, 0, PTC3_IN, 1266 HPDQM5, PTC2_OUT, 0, PTC2_IN, 1267 /* RESERVED [2] */ 1268 HPDQM4, PTC0_OUT, 0, PTC0_IN )) 1269 }, 1270 { PINMUX_CFG_REG("PDCR", 0xa4050106, 16, 2, GROUP( 1271 SDHICD, 0, 0, PTD7_IN, 1272 SDHIWP, PTD6_OUT, 0, PTD6_IN, 1273 SDHID3, PTD5_OUT, 0, PTD5_IN, 1274 IRQ2_SDHID2, PTD4_OUT, 0, PTD4_IN, 1275 SDHID1, PTD3_OUT, 0, PTD3_IN, 1276 SDHID0, PTD2_OUT, 0, PTD2_IN, 1277 SDHICMD, PTD1_OUT, 0, PTD1_IN, 1278 SDHICLK, PTD0_OUT, 0, 0 )) 1279 }, 1280 { PINMUX_CFG_REG_VAR("PECR", 0xa4050108, 16, 1281 GROUP(2, 2, 2, 2, -4, 2, 2), 1282 GROUP( 1283 A25, PTE7_OUT, 0, PTE7_IN, 1284 A24, PTE6_OUT, 0, PTE6_IN, 1285 A23, PTE5_OUT, 0, PTE5_IN, 1286 A22, PTE4_OUT, 0, PTE4_IN, 1287 /* RESERVED [4] */ 1288 IRQ5, PTE1_OUT, 0, PTE1_IN, 1289 IRQ4_BS, PTE0_OUT, 0, PTE0_IN )) 1290 }, 1291 { PINMUX_CFG_REG("PFCR", 0xa405010a, 16, 2, GROUP( 1292 0, 0, 0, 0, 1293 PTF6, PTF6_OUT, 0, PTF6_IN, 1294 SIOSCK_SIUBOBT, PTF5_OUT, 0, PTF5_IN, 1295 SIOSTRB1_SIUBOLR, PTF4_OUT, 0, PTF4_IN, 1296 SIOSTRB0_SIUBIBT, PTF3_OUT, 0, PTF3_IN, 1297 SIOD_SIUBILR, PTF2_OUT, 0, PTF2_IN, 1298 SIORXD_SIUBISLD, 0, 0, PTF1_IN, 1299 SIOTXD_SIUBOSLD, PTF0_OUT, 0, 0 )) 1300 }, 1301 { PINMUX_CFG_REG_VAR("PGCR", 0xa405010c, 16, 1302 GROUP(-6, 2, 2, 2, 2, 2), 1303 GROUP( 1304 /* RESERVED [6] */ 1305 AUDSYNC, PTG4_OUT, 0, 0, 1306 AUDATA3, PTG3_OUT, 0, 0, 1307 AUDATA2, PTG2_OUT, 0, 0, 1308 AUDATA1, PTG1_OUT, 0, 0, 1309 AUDATA0, PTG0_OUT, 0, 0 )) 1310 }, 1311 { PINMUX_CFG_REG("PHCR", 0xa405010e, 16, 2, GROUP( 1312 LCDVCPWC_LCDVCPWC2, PTH7_OUT, 0, 0, 1313 LCDVSYN2_DACK, PTH6_OUT, 0, PTH6_IN, 1314 LCDVSYN, PTH5_OUT, 0, PTH5_IN, 1315 LCDDISP_LCDRS, PTH4_OUT, 0, 0, 1316 LCDHSYN_LCDCS, PTH3_OUT, 0, 0, 1317 LCDDON_LCDDON2, PTH2_OUT, 0, 0, 1318 LCDD17_DV_HSYNC, PTH1_OUT, 0, PTH1_IN, 1319 LCDD16_DV_VSYNC, PTH0_OUT, 0, PTH0_IN )) 1320 }, 1321 { PINMUX_CFG_REG_VAR("PJCR", 0xa4050110, 16, 1322 GROUP(2, 2, 2, -6, 2, 2), 1323 GROUP( 1324 STATUS0, PTJ7_OUT, 0, 0, 1325 0, PTJ6_OUT, 0, 0, 1326 PDSTATUS, PTJ5_OUT, 0, 0, 1327 /* RESERVED [6] */ 1328 IRQ1, PTJ1_OUT, 0, PTJ1_IN, 1329 IRQ0, PTJ0_OUT, 0, PTJ0_IN )) 1330 }, 1331 { PINMUX_CFG_REG("PKCR", 0xa4050112, 16, 2, GROUP( 1332 0, 0, 0, 0, 1333 SIUAILR_SIOF1_SS2, PTK6_OUT, 0, PTK6_IN, 1334 SIUAIBT_SIOF1_SS1, PTK5_OUT, 0, PTK5_IN, 1335 SIUAOLR_SIOF1_SYNC, PTK4_OUT, 0, PTK4_IN, 1336 SIUAOBT_SIOF1_SCK, PTK3_OUT, 0, PTK3_IN, 1337 SIUAISLD_SIOF1_RXD, 0, 0, PTK2_IN, 1338 SIUAOSLD_SIOF1_TXD, PTK1_OUT, 0, 0, 1339 PTK0, PTK0_OUT, 0, PTK0_IN )) 1340 }, 1341 { PINMUX_CFG_REG("PLCR", 0xa4050114, 16, 2, GROUP( 1342 LCDD15_DV_D15, PTL7_OUT, 0, PTL7_IN, 1343 LCDD14_DV_D14, PTL6_OUT, 0, PTL6_IN, 1344 LCDD13_DV_D13, PTL5_OUT, 0, PTL5_IN, 1345 LCDD12_DV_D12, PTL4_OUT, 0, PTL4_IN, 1346 LCDD11_DV_D11, PTL3_OUT, 0, PTL3_IN, 1347 LCDD10_DV_D10, PTL2_OUT, 0, PTL2_IN, 1348 LCDD9_DV_D9, PTL1_OUT, 0, PTL1_IN, 1349 LCDD8_DV_D8, PTL0_OUT, 0, PTL0_IN )) 1350 }, 1351 { PINMUX_CFG_REG("PMCR", 0xa4050116, 16, 2, GROUP( 1352 LCDD7_DV_D7, PTM7_OUT, 0, PTM7_IN, 1353 LCDD6_DV_D6, PTM6_OUT, 0, PTM6_IN, 1354 LCDD5_DV_D5, PTM5_OUT, 0, PTM5_IN, 1355 LCDD4_DV_D4, PTM4_OUT, 0, PTM4_IN, 1356 LCDD3_DV_D3, PTM3_OUT, 0, PTM3_IN, 1357 LCDD2_DV_D2, PTM2_OUT, 0, PTM2_IN, 1358 LCDD1_DV_D1, PTM1_OUT, 0, PTM1_IN, 1359 LCDD0_DV_D0, PTM0_OUT, 0, PTM0_IN )) 1360 }, 1361 { PINMUX_CFG_REG("PNCR", 0xa4050118, 16, 2, GROUP( 1362 HPD63, PTN7_OUT, 0, PTN7_IN, 1363 HPD62, PTN6_OUT, 0, PTN6_IN, 1364 HPD61, PTN5_OUT, 0, PTN5_IN, 1365 HPD60, PTN4_OUT, 0, PTN4_IN, 1366 HPD59, PTN3_OUT, 0, PTN3_IN, 1367 HPD58, PTN2_OUT, 0, PTN2_IN, 1368 HPD57, PTN1_OUT, 0, PTN1_IN, 1369 HPD56, PTN0_OUT, 0, PTN0_IN )) 1370 }, 1371 { PINMUX_CFG_REG("PQCR", 0xa405011a, 16, 2, GROUP( 1372 0, 0, 0, 0, 1373 SIOF0_SS2_SIM_RST, PTQ6_OUT, 0, 0, 1374 SIOF0_SS1_TS_SPSYNC, PTQ5_OUT, 0, PTQ5_IN, 1375 SIOF0_SYNC_TS_SDEN, PTQ4_OUT, 0, PTQ4_IN, 1376 SIOF0_SCK_TS_SCK, PTQ3_OUT, 0, PTQ3_IN, 1377 PTQ2, 0, 0, PTQ2_IN, 1378 PTQ1, PTQ1_OUT, 0, 0, 1379 PTQ0, PTQ0_OUT, 0, PTQ0_IN )) 1380 }, 1381 { PINMUX_CFG_REG_VAR("PRCR", 0xa405011c, 16, 1382 GROUP(-6, 2, 2, 2, 2, 2), 1383 GROUP( 1384 /* RESERVED [6] */ 1385 LCDRD, PTR4_OUT, 0, 0, 1386 CS6B_CE1B_LCDCS2, PTR3_OUT, 0, 0, 1387 WAIT, 0, 0, PTR2_IN, 1388 LCDDCK_LCDWR, PTR1_OUT, 0, 0, 1389 LCDVEPWC_LCDVEPWC2, PTR0_OUT, 0, 0 )) 1390 }, 1391 { PINMUX_CFG_REG_VAR("PSCR", 0xa405011e, 16, 1392 GROUP(-6, 2, 2, 2, 2, 2), 1393 GROUP( 1394 /* RESERVED [6] */ 1395 SCIF0_CTS_SIUAISPD, 0, 0, PTS4_IN, 1396 SCIF0_RTS_SIUAOSPD, PTS3_OUT, 0, 0, 1397 SCIF0_SCK_TPUTO, PTS2_OUT, 0, PTS2_IN, 1398 SCIF0_RXD, 0, 0, PTS1_IN, 1399 SCIF0_TXD, PTS0_OUT, 0, 0 )) 1400 }, 1401 { PINMUX_CFG_REG_VAR("PTCR", 0xa4050140, 16, 1402 GROUP(-6, 2, 2, 2, 2, 2), 1403 GROUP( 1404 /* RESERVED [6] */ 1405 FOE_VIO_VD2, PTT4_OUT, 0, PTT4_IN, 1406 FWE, PTT3_OUT, 0, PTT3_IN, 1407 FSC, PTT2_OUT, 0, PTT2_IN, 1408 DREQ0, 0, 0, PTT1_IN, 1409 FCDE, PTT0_OUT, 0, 0 )) 1410 }, 1411 { PINMUX_CFG_REG_VAR("PUCR", 0xa4050142, 16, 1412 GROUP(-6, 2, 2, 2, 2, 2), 1413 GROUP( 1414 /* RESERVED [6] */ 1415 NAF2_VIO_D10, PTU4_OUT, 0, PTU4_IN, 1416 NAF1_VIO_D9, PTU3_OUT, 0, PTU3_IN, 1417 NAF0_VIO_D8, PTU2_OUT, 0, PTU2_IN, 1418 FRB_VIO_CLK2, 0, 0, PTU1_IN, 1419 FCE_VIO_HD2, PTU0_OUT, 0, PTU0_IN )) 1420 }, 1421 { PINMUX_CFG_REG_VAR("PVCR", 0xa4050144, 16, 1422 GROUP(-6, 2, 2, 2, 2, 2), 1423 GROUP( 1424 /* RESERVED [6] */ 1425 NAF7_VIO_D15, PTV4_OUT, 0, PTV4_IN, 1426 NAF6_VIO_D14, PTV3_OUT, 0, PTV3_IN, 1427 NAF5_VIO_D13, PTV2_OUT, 0, PTV2_IN, 1428 NAF4_VIO_D12, PTV1_OUT, 0, PTV1_IN, 1429 NAF3_VIO_D11, PTV0_OUT, 0, PTV0_IN )) 1430 }, 1431 { PINMUX_CFG_REG("PWCR", 0xa4050146, 16, 2, GROUP( 1432 0, 0, 0, 0, 1433 VIO_FLD_SCIF2_CTS, 0, 0, PTW6_IN, 1434 VIO_CKO_SCIF2_RTS, PTW5_OUT, 0, 0, 1435 VIO_STEX_SCIF2_SCK, PTW4_OUT, 0, PTW4_IN, 1436 VIO_STEM_SCIF2_TXD, PTW3_OUT, 0, PTW3_IN, 1437 VIO_HD_SCIF2_RXD, PTW2_OUT, 0, PTW2_IN, 1438 VIO_VD_SCIF1_CTS, PTW1_OUT, 0, PTW1_IN, 1439 VIO_CLK_SCIF1_RTS, PTW0_OUT, 0, PTW0_IN )) 1440 }, 1441 { PINMUX_CFG_REG("PXCR", 0xa4050148, 16, 2, GROUP( 1442 0, 0, 0, 0, 1443 CS6A_CE2B, PTX6_OUT, 0, PTX6_IN, 1444 LCDD23, PTX5_OUT, 0, PTX5_IN, 1445 LCDD22, PTX4_OUT, 0, PTX4_IN, 1446 LCDD21, PTX3_OUT, 0, PTX3_IN, 1447 LCDD20, PTX2_OUT, 0, PTX2_IN, 1448 LCDD19_DV_CLKI, PTX1_OUT, 0, PTX1_IN, 1449 LCDD18_DV_CLK, PTX0_OUT, 0, PTX0_IN )) 1450 }, 1451 { PINMUX_CFG_REG_VAR("PYCR", 0xa405014a, 16, 1452 GROUP(-4, 2, 2, 2, 2, 2, 2), 1453 GROUP( 1454 /* RESERVED [4] */ 1455 KEYOUT5_IN5, PTY5_OUT, 0, PTY5_IN, 1456 KEYOUT4_IN6, PTY4_OUT, 0, PTY4_IN, 1457 KEYOUT3, PTY3_OUT, 0, PTY3_IN, 1458 KEYOUT2, PTY2_OUT, 0, PTY2_IN, 1459 KEYOUT1, PTY1_OUT, 0, 0, 1460 KEYOUT0, PTY0_OUT, 0, PTY0_IN )) 1461 }, 1462 { PINMUX_CFG_REG_VAR("PZCR", 0xa405014c, 16, 1463 GROUP(-4, 2, 2, 2, 2, 2, -2), 1464 GROUP( 1465 /* RESERVED [4] */ 1466 KEYIN4_IRQ7, 0, 0, PTZ5_IN, 1467 KEYIN3, 0, 0, PTZ4_IN, 1468 KEYIN2, 0, 0, PTZ3_IN, 1469 KEYIN1, 0, 0, PTZ2_IN, 1470 KEYIN0_IRQ6, 0, 0, PTZ1_IN, 1471 /* RESERVED [2] */ )) 1472 }, 1473 { PINMUX_CFG_REG_VAR("PSELA", 0xa405014e, 16, 1474 GROUP(1, 1, -4, 1, -4, 1, -4), 1475 GROUP( 1476 PSA15_KEYIN0, PSA15_IRQ6, 1477 PSA14_KEYIN4, PSA14_IRQ7, 1478 /* RESERVED [4] */ 1479 PSA9_IRQ4, PSA9_BS, 1480 /* RESERVED [4] */ 1481 PSA4_IRQ2, PSA4_SDHID2, 1482 /* RESERVED [4] */ )) 1483 }, 1484 { PINMUX_CFG_REG("PSELB", 0xa4050150, 16, 1, GROUP( 1485 PSB15_SIOTXD, PSB15_SIUBOSLD, 1486 PSB14_SIORXD, PSB14_SIUBISLD, 1487 PSB13_SIOD, PSB13_SIUBILR, 1488 PSB12_SIOSTRB0, PSB12_SIUBIBT, 1489 PSB11_SIOSTRB1, PSB11_SIUBOLR, 1490 PSB10_SIOSCK, PSB10_SIUBOBT, 1491 PSB9_SIOMCK, PSB9_SIUMCKB, 1492 PSB8_SIOF0_MCK, PSB8_IRQ3, 1493 PSB7_SIOF0_TXD, PSB7_IRDA_OUT, 1494 PSB6_SIOF0_RXD, PSB6_IRDA_IN, 1495 PSB5_SIOF0_SCK, PSB5_TS_SCK, 1496 PSB4_SIOF0_SYNC, PSB4_TS_SDEN, 1497 PSB3_SIOF0_SS1, PSB3_TS_SPSYNC, 1498 PSB2_SIOF0_SS2, PSB2_SIM_RST, 1499 PSB1_SIUMCKA, PSB1_SIOF1_MCK, 1500 PSB0_SIUAOSLD, PSB0_SIOF1_TXD )) 1501 }, 1502 { PINMUX_CFG_REG_VAR("PSELC", 0xa4050152, 16, 1503 GROUP(1, 1, 1, 1, 1, -10, 1), 1504 GROUP( 1505 PSC15_SIUAISLD, PSC15_SIOF1_RXD, 1506 PSC14_SIUAOBT, PSC14_SIOF1_SCK, 1507 PSC13_SIUAOLR, PSC13_SIOF1_SYNC, 1508 PSC12_SIUAIBT, PSC12_SIOF1_SS1, 1509 PSC11_SIUAILR, PSC11_SIOF1_SS2, 1510 /* RESERVED [10] */ 1511 PSC0_NAF, PSC0_VIO )) 1512 }, 1513 { PINMUX_CFG_REG("PSELD", 0xa4050154, 16, 1, GROUP( 1514 0, 0, 1515 0, 0, 1516 PSD13_VIO, PSD13_SCIF2, 1517 PSD12_VIO, PSD12_SCIF1, 1518 PSD11_VIO, PSD11_SCIF1, 1519 PSD10_VIO_D0, PSD10_LCDLCLK, 1520 PSD9_SIOMCK_SIUMCKB, PSD9_SIUFCKB, 1521 PSD8_SCIF0_SCK, PSD8_TPUTO, 1522 PSD7_SCIF0_RTS, PSD7_SIUAOSPD, 1523 PSD6_SCIF0_CTS, PSD6_SIUAISPD, 1524 PSD5_CS6B_CE1B, PSD5_LCDCS2, 1525 0, 0, 1526 PSD3_LCDVEPWC_LCDVCPWC, PSD3_LCDVEPWC2_LCDVCPWC2, 1527 PSD2_LCDDON, PSD2_LCDDON2, 1528 0, 0, 1529 PSD0_LCDD19_LCDD0, PSD0_DV )) 1530 }, 1531 { PINMUX_CFG_REG_VAR("PSELE", 0xa4050156, 16, 1532 GROUP(1, 1, 1, 1, 1, -7, 1, 1, 1, 1), 1533 GROUP( 1534 PSE15_SIOF0_MCK_IRQ3, PSE15_SIM_D, 1535 PSE14_SIOF0_TXD_IRDA_OUT, PSE14_SIM_CLK, 1536 PSE13_SIOF0_RXD_IRDA_IN, PSE13_TS_SDAT, 1537 PSE12_LCDVSYN2, PSE12_DACK, 1538 PSE11_SIUMCKA_SIOF1_MCK, PSE11_SIUFCKA, 1539 /* RESERVED [7] */ 1540 PSE3_FLCTL, PSE3_VIO, 1541 PSE2_NAF2, PSE2_VIO_D10, 1542 PSE1_NAF1, PSE1_VIO_D9, 1543 PSE0_NAF0, PSE0_VIO_D8 )) 1544 }, 1545 { PINMUX_CFG_REG_VAR("HIZCRA", 0xa4050158, 16, 1546 GROUP(-1, 1, -3, 1, 1, 1, 1, 1, -6), 1547 GROUP( 1548 /* RESERVED [1] */ 1549 HIZA14_KEYSC, HIZA14_HIZ, 1550 /* RESERVED [3] */ 1551 HIZA10_NAF, HIZA10_HIZ, 1552 HIZA9_VIO, HIZA9_HIZ, 1553 HIZA8_LCDC, HIZA8_HIZ, 1554 HIZA7_LCDC, HIZA7_HIZ, 1555 HIZA6_LCDC, HIZA6_HIZ, 1556 /* RESERVED [6] */ )) 1557 }, 1558 { PINMUX_CFG_REG_VAR("HIZCRB", 0xa405015a, 16, 1559 GROUP(-11, 1, -2, 1, 1), 1560 GROUP( 1561 /* RESERVED [11] */ 1562 HIZB4_SIUA, HIZB4_HIZ, 1563 /* RESERVED [2] */ 1564 HIZB1_VIO, HIZB1_HIZ, 1565 HIZB0_VIO, HIZB0_HIZ )) 1566 }, 1567 { PINMUX_CFG_REG_VAR("HIZCRC", 0xa405015c, 16, 1568 GROUP(1, 1, 1, 1, 1, 1, 1, 1, -8), 1569 GROUP( 1570 HIZC15_IRQ7, HIZC15_HIZ, 1571 HIZC14_IRQ6, HIZC14_HIZ, 1572 HIZC13_IRQ5, HIZC13_HIZ, 1573 HIZC12_IRQ4, HIZC12_HIZ, 1574 HIZC11_IRQ3, HIZC11_HIZ, 1575 HIZC10_IRQ2, HIZC10_HIZ, 1576 HIZC9_IRQ1, HIZC9_HIZ, 1577 HIZC8_IRQ0, HIZC8_HIZ, 1578 /* RESERVED [8] */ )) 1579 }, 1580 { PINMUX_CFG_REG_VAR("MSELCRB", 0xa4050182, 16, 1581 GROUP(-6, 1, 1, -8), 1582 GROUP( 1583 /* RESERVED [6] */ 1584 MSELB9_VIO, MSELB9_VIO2, 1585 MSELB8_RGB, MSELB8_SYS, 1586 /* RESERVED [8] */ )) 1587 }, 1588 { /* sentinel */ } 1589 }; 1590 1591 static const struct pinmux_data_reg pinmux_data_regs[] = { 1592 { PINMUX_DATA_REG("PADR", 0xa4050120, 8, GROUP( 1593 PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA, 1594 PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA )) 1595 }, 1596 { PINMUX_DATA_REG("PBDR", 0xa4050122, 8, GROUP( 1597 PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA, 1598 PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA )) 1599 }, 1600 { PINMUX_DATA_REG("PCDR", 0xa4050124, 8, GROUP( 1601 PTC7_DATA, 0, PTC5_DATA, PTC4_DATA, 1602 PTC3_DATA, PTC2_DATA, 0, PTC0_DATA )) 1603 }, 1604 { PINMUX_DATA_REG("PDDR", 0xa4050126, 8, GROUP( 1605 PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA, 1606 PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA )) 1607 }, 1608 { PINMUX_DATA_REG("PEDR", 0xa4050128, 8, GROUP( 1609 PTE7_DATA, PTE6_DATA, PTE5_DATA, PTE4_DATA, 1610 0, 0, PTE1_DATA, PTE0_DATA )) 1611 }, 1612 { PINMUX_DATA_REG("PFDR", 0xa405012a, 8, GROUP( 1613 0, PTF6_DATA, PTF5_DATA, PTF4_DATA, 1614 PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA )) 1615 }, 1616 { PINMUX_DATA_REG("PGDR", 0xa405012c, 8, GROUP( 1617 0, 0, 0, PTG4_DATA, 1618 PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA )) 1619 }, 1620 { PINMUX_DATA_REG("PHDR", 0xa405012e, 8, GROUP( 1621 PTH7_DATA, PTH6_DATA, PTH5_DATA, PTH4_DATA, 1622 PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA )) 1623 }, 1624 { PINMUX_DATA_REG("PJDR", 0xa4050130, 8, GROUP( 1625 PTJ7_DATA, PTJ6_DATA, PTJ5_DATA, 0, 1626 0, 0, PTJ1_DATA, PTJ0_DATA )) 1627 }, 1628 { PINMUX_DATA_REG("PKDR", 0xa4050132, 8, GROUP( 1629 0, PTK6_DATA, PTK5_DATA, PTK4_DATA, 1630 PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA )) 1631 }, 1632 { PINMUX_DATA_REG("PLDR", 0xa4050134, 8, GROUP( 1633 PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA, 1634 PTL3_DATA, PTL2_DATA, PTL1_DATA, PTL0_DATA )) 1635 }, 1636 { PINMUX_DATA_REG("PMDR", 0xa4050136, 8, GROUP( 1637 PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA, 1638 PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA )) 1639 }, 1640 { PINMUX_DATA_REG("PNDR", 0xa4050138, 8, GROUP( 1641 PTN7_DATA, PTN6_DATA, PTN5_DATA, PTN4_DATA, 1642 PTN3_DATA, PTN2_DATA, PTN1_DATA, PTN0_DATA )) 1643 }, 1644 { PINMUX_DATA_REG("PQDR", 0xa405013a, 8, GROUP( 1645 0, PTQ6_DATA, PTQ5_DATA, PTQ4_DATA, 1646 PTQ3_DATA, PTQ2_DATA, PTQ1_DATA, PTQ0_DATA )) 1647 }, 1648 { PINMUX_DATA_REG("PRDR", 0xa405013c, 8, GROUP( 1649 0, 0, 0, PTR4_DATA, 1650 PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA )) 1651 }, 1652 { PINMUX_DATA_REG("PSDR", 0xa405013e, 8, GROUP( 1653 0, 0, 0, PTS4_DATA, 1654 PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA )) 1655 }, 1656 { PINMUX_DATA_REG("PTDR", 0xa4050160, 8, GROUP( 1657 0, 0, 0, PTT4_DATA, 1658 PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA )) 1659 }, 1660 { PINMUX_DATA_REG("PUDR", 0xa4050162, 8, GROUP( 1661 0, 0, 0, PTU4_DATA, 1662 PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA )) 1663 }, 1664 { PINMUX_DATA_REG("PVDR", 0xa4050164, 8, GROUP( 1665 0, 0, 0, PTV4_DATA, 1666 PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA )) 1667 }, 1668 { PINMUX_DATA_REG("PWDR", 0xa4050166, 8, GROUP( 1669 0, PTW6_DATA, PTW5_DATA, PTW4_DATA, 1670 PTW3_DATA, PTW2_DATA, PTW1_DATA, PTW0_DATA )) 1671 }, 1672 { PINMUX_DATA_REG("PXDR", 0xa4050168, 8, GROUP( 1673 0, PTX6_DATA, PTX5_DATA, PTX4_DATA, 1674 PTX3_DATA, PTX2_DATA, PTX1_DATA, PTX0_DATA )) 1675 }, 1676 { PINMUX_DATA_REG("PYDR", 0xa405016a, 8, GROUP( 1677 0, PTY6_DATA, PTY5_DATA, PTY4_DATA, 1678 PTY3_DATA, PTY2_DATA, PTY1_DATA, PTY0_DATA )) 1679 }, 1680 { PINMUX_DATA_REG("PZDR", 0xa405016c, 8, GROUP( 1681 0, 0, PTZ5_DATA, PTZ4_DATA, 1682 PTZ3_DATA, PTZ2_DATA, PTZ1_DATA, PTZ0_DATA )) 1683 }, 1684 { /* sentinel */ } 1685 }; 1686 1687 const struct sh_pfc_soc_info sh7722_pinmux_info = { 1688 .name = "sh7722_pfc", 1689 .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END }, 1690 .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END }, 1691 .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END }, 1692 1693 .pins = pinmux_pins, 1694 .nr_pins = ARRAY_SIZE(pinmux_pins), 1695 .func_gpios = pinmux_func_gpios, 1696 .nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios), 1697 1698 .cfg_regs = pinmux_config_regs, 1699 .data_regs = pinmux_data_regs, 1700 1701 .pinmux_data = pinmux_data, 1702 .pinmux_data_size = ARRAY_SIZE(pinmux_data), 1703 }; 1704