4174 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * sh73a0 processor support - PFC hardware block4 *5 * Copyright (C) 2010 Renesas Solutions Corp.6 * Copyright (C) 2010 NISHIMOTO Hiroki7 */8#include <linux/io.h>9#include <linux/kernel.h>10#include <linux/module.h>11#include <linux/pinctrl/pinconf-generic.h>12#include <linux/regulator/driver.h>13#include <linux/regulator/machine.h>14#include <linux/slab.h>15 16#include "sh_pfc.h"17 18#define CPU_ALL_PORT(fn, pfx, sfx) \19 PORT_10(0, fn, pfx, sfx), PORT_90(0, fn, pfx, sfx), \20 PORT_10(100, fn, pfx##10, sfx), \21 PORT_1(110, fn, pfx##110, sfx), PORT_1(111, fn, pfx##111, sfx), \22 PORT_1(112, fn, pfx##112, sfx), PORT_1(113, fn, pfx##113, sfx), \23 PORT_1(114, fn, pfx##114, sfx), PORT_1(115, fn, pfx##115, sfx), \24 PORT_1(116, fn, pfx##116, sfx), PORT_1(117, fn, pfx##117, sfx), \25 PORT_1(118, fn, pfx##118, sfx), \26 PORT_1(128, fn, pfx##128, sfx), PORT_1(129, fn, pfx##129, sfx), \27 PORT_10(130, fn, pfx##13, sfx), PORT_10(140, fn, pfx##14, sfx), \28 PORT_10(150, fn, pfx##15, sfx), \29 PORT_1(160, fn, pfx##160, sfx), PORT_1(161, fn, pfx##161, sfx), \30 PORT_1(162, fn, pfx##162, sfx), PORT_1(163, fn, pfx##163, sfx), \31 PORT_1(164, fn, pfx##164, sfx), \32 PORT_1(192, fn, pfx##192, sfx), PORT_1(193, fn, pfx##193, sfx), \33 PORT_1(194, fn, pfx##194, sfx), PORT_1(195, fn, pfx##195, sfx), \34 PORT_1(196, fn, pfx##196, sfx), PORT_1(197, fn, pfx##197, sfx), \35 PORT_1(198, fn, pfx##198, sfx), PORT_1(199, fn, pfx##199, sfx), \36 PORT_10(200, fn, pfx##20, sfx), PORT_10(210, fn, pfx##21, sfx), \37 PORT_10(220, fn, pfx##22, sfx), PORT_10(230, fn, pfx##23, sfx), \38 PORT_10(240, fn, pfx##24, sfx), PORT_10(250, fn, pfx##25, sfx), \39 PORT_10(260, fn, pfx##26, sfx), PORT_10(270, fn, pfx##27, sfx), \40 PORT_1(280, fn, pfx##280, sfx), PORT_1(281, fn, pfx##281, sfx), \41 PORT_1(282, fn, pfx##282, sfx), \42 PORT_1(288, fn, pfx##288, sfx), PORT_1(289, fn, pfx##289, sfx), \43 PORT_10(290, fn, pfx##29, sfx), PORT_10(300, fn, pfx##30, sfx)44 45#define CPU_ALL_NOGP(fn) \46 PIN_NOGP(A11, "F26", fn)47 48enum {49 PINMUX_RESERVED = 0,50 51 PINMUX_DATA_BEGIN,52 PORT_ALL(DATA), /* PORT0_DATA -> PORT309_DATA */53 PINMUX_DATA_END,54 55 PINMUX_INPUT_BEGIN,56 PORT_ALL(IN), /* PORT0_IN -> PORT309_IN */57 PINMUX_INPUT_END,58 59 PINMUX_OUTPUT_BEGIN,60 PORT_ALL(OUT), /* PORT0_OUT -> PORT309_OUT */61 PINMUX_OUTPUT_END,62 63 PINMUX_FUNCTION_BEGIN,64 PORT_ALL(FN_IN), /* PORT0_FN_IN -> PORT309_FN_IN */65 PORT_ALL(FN_OUT), /* PORT0_FN_OUT -> PORT309_FN_OUT */66 PORT_ALL(FN0), /* PORT0_FN0 -> PORT309_FN0 */67 PORT_ALL(FN1), /* PORT0_FN1 -> PORT309_FN1 */68 PORT_ALL(FN2), /* PORT0_FN2 -> PORT309_FN2 */69 PORT_ALL(FN3), /* PORT0_FN3 -> PORT309_FN3 */70 PORT_ALL(FN4), /* PORT0_FN4 -> PORT309_FN4 */71 PORT_ALL(FN5), /* PORT0_FN5 -> PORT309_FN5 */72 PORT_ALL(FN6), /* PORT0_FN6 -> PORT309_FN6 */73 PORT_ALL(FN7), /* PORT0_FN7 -> PORT309_FN7 */74 75 MSEL2CR_MSEL19_0, MSEL2CR_MSEL19_1,76 MSEL2CR_MSEL18_0, MSEL2CR_MSEL18_1,77 MSEL2CR_MSEL17_0, MSEL2CR_MSEL17_1,78 MSEL2CR_MSEL16_0, MSEL2CR_MSEL16_1,79 MSEL2CR_MSEL14_0, MSEL2CR_MSEL14_1,80 MSEL2CR_MSEL13_0, MSEL2CR_MSEL13_1,81 MSEL2CR_MSEL12_0, MSEL2CR_MSEL12_1,82 MSEL2CR_MSEL11_0, MSEL2CR_MSEL11_1,83 MSEL2CR_MSEL10_0, MSEL2CR_MSEL10_1,84 MSEL2CR_MSEL9_0, MSEL2CR_MSEL9_1,85 MSEL2CR_MSEL8_0, MSEL2CR_MSEL8_1,86 MSEL2CR_MSEL7_0, MSEL2CR_MSEL7_1,87 MSEL2CR_MSEL6_0, MSEL2CR_MSEL6_1,88 MSEL2CR_MSEL4_0, MSEL2CR_MSEL4_1,89 MSEL2CR_MSEL5_0, MSEL2CR_MSEL5_1,90 MSEL2CR_MSEL3_0, MSEL2CR_MSEL3_1,91 MSEL2CR_MSEL2_0, MSEL2CR_MSEL2_1,92 MSEL2CR_MSEL1_0, MSEL2CR_MSEL1_1,93 MSEL2CR_MSEL0_0, MSEL2CR_MSEL0_1,94 MSEL3CR_MSEL28_0, MSEL3CR_MSEL28_1,95 MSEL3CR_MSEL15_0, MSEL3CR_MSEL15_1,96 MSEL3CR_MSEL11_0, MSEL3CR_MSEL11_1,97 MSEL3CR_MSEL9_0, MSEL3CR_MSEL9_1,98 MSEL3CR_MSEL6_0, MSEL3CR_MSEL6_1,99 MSEL3CR_MSEL2_0, MSEL3CR_MSEL2_1,100 MSEL4CR_MSEL29_0, MSEL4CR_MSEL29_1,101 MSEL4CR_MSEL27_0, MSEL4CR_MSEL27_1,102 MSEL4CR_MSEL26_0, MSEL4CR_MSEL26_1,103 MSEL4CR_MSEL22_0, MSEL4CR_MSEL22_1,104 MSEL4CR_MSEL21_0, MSEL4CR_MSEL21_1,105 MSEL4CR_MSEL20_0, MSEL4CR_MSEL20_1,106 MSEL4CR_MSEL19_0, MSEL4CR_MSEL19_1,107 MSEL4CR_MSEL15_0, MSEL4CR_MSEL15_1,108 MSEL4CR_MSEL13_0, MSEL4CR_MSEL13_1,109 MSEL4CR_MSEL12_0, MSEL4CR_MSEL12_1,110 MSEL4CR_MSEL11_0, MSEL4CR_MSEL11_1,111 MSEL4CR_MSEL10_0, MSEL4CR_MSEL10_1,112 MSEL4CR_MSEL9_0, MSEL4CR_MSEL9_1,113 MSEL4CR_MSEL8_0, MSEL4CR_MSEL8_1,114 MSEL4CR_MSEL7_0, MSEL4CR_MSEL7_1,115 MSEL4CR_MSEL4_0, MSEL4CR_MSEL4_1,116 MSEL4CR_MSEL1_0, MSEL4CR_MSEL1_1,117 PINMUX_FUNCTION_END,118 119 PINMUX_MARK_BEGIN,120 /* Hardware manual Table 25-1 (Function 0-7) */121 VBUS_0_MARK,122 GPI0_MARK,123 GPI1_MARK,124 GPI2_MARK,125 GPI3_MARK,126 GPI4_MARK,127 GPI5_MARK,128 GPI6_MARK,129 GPI7_MARK,130 SCIFA7_RXD_MARK,131 SCIFA7_CTS__MARK,132 GPO7_MARK, MFG0_OUT2_MARK,133 GPO6_MARK, MFG1_OUT2_MARK,134 GPO5_MARK, SCIFA0_SCK_MARK, FSICOSLDT3_MARK, PORT16_VIO_CKOR_MARK,135 SCIFA0_TXD_MARK,136 SCIFA7_TXD_MARK,137 SCIFA7_RTS__MARK, PORT19_VIO_CKO2_MARK,138 GPO0_MARK,139 GPO1_MARK,140 GPO2_MARK, STATUS0_MARK,141 GPO3_MARK, STATUS1_MARK,142 GPO4_MARK, STATUS2_MARK,143 VINT_MARK,144 TCKON_MARK,145 XDVFS1_MARK, PORT27_I2C_SCL2_MARK, PORT27_I2C_SCL3_MARK, \146 MFG0_OUT1_MARK, PORT27_IROUT_MARK,147 XDVFS2_MARK, PORT28_I2C_SDA2_MARK, PORT28_I2C_SDA3_MARK, \148 PORT28_TPU1TO1_MARK,149 SIM_RST_MARK, PORT29_TPU1TO1_MARK,150 SIM_CLK_MARK, PORT30_VIO_CKOR_MARK,151 SIM_D_MARK, PORT31_IROUT_MARK,152 SCIFA4_TXD_MARK,153 SCIFA4_RXD_MARK, XWUP_MARK,154 SCIFA4_RTS__MARK,155 SCIFA4_CTS__MARK,156 FSIBOBT_MARK, FSIBIBT_MARK,157 FSIBOLR_MARK, FSIBILR_MARK,158 FSIBOSLD_MARK,159 FSIBISLD_MARK,160 VACK_MARK,161 XTAL1L_MARK,162 SCIFA0_RTS__MARK, FSICOSLDT2_MARK,163 SCIFA0_RXD_MARK,164 SCIFA0_CTS__MARK, FSICOSLDT1_MARK,165 FSICOBT_MARK, FSICIBT_MARK, FSIDOBT_MARK, FSIDIBT_MARK,166 FSICOLR_MARK, FSICILR_MARK, FSIDOLR_MARK, FSIDILR_MARK,167 FSICOSLD_MARK, PORT47_FSICSPDIF_MARK,168 FSICISLD_MARK, FSIDISLD_MARK,169 FSIACK_MARK, PORT49_IRDA_OUT_MARK, PORT49_IROUT_MARK, FSIAOMC_MARK,170 FSIAOLR_MARK, BBIF2_TSYNC2_MARK, TPU2TO2_MARK, FSIAILR_MARK,171 172 FSIAOBT_MARK, BBIF2_TSCK2_MARK, TPU2TO3_MARK, FSIAIBT_MARK,173 FSIAOSLD_MARK, BBIF2_TXD2_MARK,174 FSIASPDIF_MARK, PORT53_IRDA_IN_MARK, TPU3TO3_MARK, FSIBSPDIF_MARK, \175 PORT53_FSICSPDIF_MARK,176 FSIBCK_MARK, PORT54_IRDA_FIRSEL_MARK, TPU3TO2_MARK, FSIBOMC_MARK, \177 FSICCK_MARK, FSICOMC_MARK,178 FSIAISLD_MARK, TPU0TO0_MARK,179 A0_MARK, BS__MARK,180 A12_MARK, PORT58_KEYOUT7_MARK, TPU4TO2_MARK,181 A13_MARK, PORT59_KEYOUT6_MARK, TPU0TO1_MARK,182 A14_MARK, KEYOUT5_MARK,183 A15_MARK, KEYOUT4_MARK,184 A16_MARK, KEYOUT3_MARK, MSIOF0_SS1_MARK,185 A17_MARK, KEYOUT2_MARK, MSIOF0_TSYNC_MARK,186 A18_MARK, KEYOUT1_MARK, MSIOF0_TSCK_MARK,187 A19_MARK, KEYOUT0_MARK, MSIOF0_TXD_MARK,188 A20_MARK, KEYIN0_MARK, MSIOF0_RSCK_MARK,189 A21_MARK, KEYIN1_MARK, MSIOF0_RSYNC_MARK,190 A22_MARK, KEYIN2_MARK, MSIOF0_MCK0_MARK,191 A23_MARK, KEYIN3_MARK, MSIOF0_MCK1_MARK,192 A24_MARK, KEYIN4_MARK, MSIOF0_RXD_MARK,193 A25_MARK, KEYIN5_MARK, MSIOF0_SS2_MARK,194 A26_MARK, KEYIN6_MARK,195 KEYIN7_MARK,196 D0_NAF0_MARK,197 D1_NAF1_MARK,198 D2_NAF2_MARK,199 D3_NAF3_MARK,200 D4_NAF4_MARK,201 D5_NAF5_MARK,202 D6_NAF6_MARK,203 D7_NAF7_MARK,204 D8_NAF8_MARK,205 D9_NAF9_MARK,206 D10_NAF10_MARK,207 D11_NAF11_MARK,208 D12_NAF12_MARK,209 D13_NAF13_MARK,210 D14_NAF14_MARK,211 D15_NAF15_MARK,212 CS4__MARK,213 CS5A__MARK, PORT91_RDWR_MARK,214 CS5B__MARK, FCE1__MARK,215 CS6B__MARK, DACK0_MARK,216 FCE0__MARK, CS6A__MARK,217 WAIT__MARK, DREQ0_MARK,218 RD__FSC_MARK,219 WE0__FWE_MARK, RDWR_FWE_MARK,220 WE1__MARK,221 FRB_MARK,222 CKO_MARK,223 NBRSTOUT__MARK,224 NBRST__MARK,225 BBIF2_TXD_MARK,226 BBIF2_RXD_MARK,227 BBIF2_SYNC_MARK,228 BBIF2_SCK_MARK,229 SCIFA3_CTS__MARK, MFG3_IN2_MARK,230 SCIFA3_RXD_MARK, MFG3_IN1_MARK,231 BBIF1_SS2_MARK, SCIFA3_RTS__MARK, MFG3_OUT1_MARK,232 SCIFA3_TXD_MARK,233 HSI_RX_DATA_MARK, BBIF1_RXD_MARK,234 HSI_TX_WAKE_MARK, BBIF1_TSCK_MARK,235 HSI_TX_DATA_MARK, BBIF1_TSYNC_MARK,236 HSI_TX_READY_MARK, BBIF1_TXD_MARK,237 HSI_RX_READY_MARK, BBIF1_RSCK_MARK, PORT115_I2C_SCL2_MARK, \238 PORT115_I2C_SCL3_MARK,239 HSI_RX_WAKE_MARK, BBIF1_RSYNC_MARK, PORT116_I2C_SDA2_MARK, \240 PORT116_I2C_SDA3_MARK,241 HSI_RX_FLAG_MARK, BBIF1_SS1_MARK, BBIF1_FLOW_MARK,242 HSI_TX_FLAG_MARK,243 VIO_VD_MARK, PORT128_LCD2VSYN_MARK, VIO2_VD_MARK, LCD2D0_MARK,244 245 VIO_HD_MARK, PORT129_LCD2HSYN_MARK, PORT129_LCD2CS__MARK, \246 VIO2_HD_MARK, LCD2D1_MARK,247 VIO_D0_MARK, PORT130_MSIOF2_RXD_MARK, LCD2D10_MARK,248 VIO_D1_MARK, PORT131_KEYOUT6_MARK, PORT131_MSIOF2_SS1_MARK, \249 PORT131_KEYOUT11_MARK, LCD2D11_MARK,250 VIO_D2_MARK, PORT132_KEYOUT7_MARK, PORT132_MSIOF2_SS2_MARK, \251 PORT132_KEYOUT10_MARK, LCD2D12_MARK,252 VIO_D3_MARK, MSIOF2_TSYNC_MARK, LCD2D13_MARK,253 VIO_D4_MARK, MSIOF2_TXD_MARK, LCD2D14_MARK,254 VIO_D5_MARK, MSIOF2_TSCK_MARK, LCD2D15_MARK,255 VIO_D6_MARK, PORT136_KEYOUT8_MARK, LCD2D16_MARK,256 VIO_D7_MARK, PORT137_KEYOUT9_MARK, LCD2D17_MARK,257 VIO_D8_MARK, PORT138_KEYOUT8_MARK, VIO2_D0_MARK, LCD2D6_MARK,258 VIO_D9_MARK, PORT139_KEYOUT9_MARK, VIO2_D1_MARK, LCD2D7_MARK,259 VIO_D10_MARK, TPU0TO2_MARK, VIO2_D2_MARK, LCD2D8_MARK,260 VIO_D11_MARK, TPU0TO3_MARK, VIO2_D3_MARK, LCD2D9_MARK,261 VIO_D12_MARK, PORT142_KEYOUT10_MARK, VIO2_D4_MARK, LCD2D2_MARK,262 VIO_D13_MARK, PORT143_KEYOUT11_MARK, PORT143_KEYOUT6_MARK, \263 VIO2_D5_MARK, LCD2D3_MARK,264 VIO_D14_MARK, PORT144_KEYOUT7_MARK, VIO2_D6_MARK, LCD2D4_MARK,265 VIO_D15_MARK, TPU1TO3_MARK, PORT145_LCD2DISP_MARK, \266 PORT145_LCD2RS_MARK, VIO2_D7_MARK, LCD2D5_MARK,267 VIO_CLK_MARK, LCD2DCK_MARK, PORT146_LCD2WR__MARK, VIO2_CLK_MARK, \268 LCD2D18_MARK,269 VIO_FIELD_MARK, LCD2RD__MARK, VIO2_FIELD_MARK, LCD2D19_MARK,270 VIO_CKO_MARK,271 A27_MARK, PORT149_RDWR_MARK, MFG0_IN1_MARK, PORT149_KEYOUT9_MARK,272 MFG0_IN2_MARK,273 TS_SPSYNC3_MARK, MSIOF2_RSCK_MARK,274 TS_SDAT3_MARK, MSIOF2_RSYNC_MARK,275 TPU1TO2_MARK, TS_SDEN3_MARK, PORT153_MSIOF2_SS1_MARK,276 SCIFA2_TXD1_MARK, MSIOF2_MCK0_MARK,277 SCIFA2_RXD1_MARK, MSIOF2_MCK1_MARK,278 SCIFA2_RTS1__MARK, PORT156_MSIOF2_SS2_MARK,279 SCIFA2_CTS1__MARK, PORT157_MSIOF2_RXD_MARK,280 DINT__MARK, SCIFA2_SCK1_MARK, TS_SCK3_MARK,281 PORT159_SCIFB_SCK_MARK, PORT159_SCIFA5_SCK_MARK, NMI_MARK,282 PORT160_SCIFB_TXD_MARK, PORT160_SCIFA5_TXD_MARK,283 PORT161_SCIFB_CTS__MARK, PORT161_SCIFA5_CTS__MARK,284 PORT162_SCIFB_RXD_MARK, PORT162_SCIFA5_RXD_MARK,285 PORT163_SCIFB_RTS__MARK, PORT163_SCIFA5_RTS__MARK, TPU3TO0_MARK,286 LCDD0_MARK,287 LCDD1_MARK, PORT193_SCIFA5_CTS__MARK, BBIF2_TSYNC1_MARK,288 LCDD2_MARK, PORT194_SCIFA5_RTS__MARK, BBIF2_TSCK1_MARK,289 LCDD3_MARK, PORT195_SCIFA5_RXD_MARK, BBIF2_TXD1_MARK,290 LCDD4_MARK, PORT196_SCIFA5_TXD_MARK,291 LCDD5_MARK, PORT197_SCIFA5_SCK_MARK, MFG2_OUT2_MARK, TPU2TO1_MARK,292 LCDD6_MARK,293 LCDD7_MARK, TPU4TO1_MARK, MFG4_OUT2_MARK,294 LCDD8_MARK, D16_MARK,295 LCDD9_MARK, D17_MARK,296 LCDD10_MARK, D18_MARK,297 LCDD11_MARK, D19_MARK,298 LCDD12_MARK, D20_MARK,299 LCDD13_MARK, D21_MARK,300 LCDD14_MARK, D22_MARK,301 LCDD15_MARK, PORT207_MSIOF0L_SS1_MARK, D23_MARK,302 LCDD16_MARK, PORT208_MSIOF0L_SS2_MARK, D24_MARK,303 LCDD17_MARK, D25_MARK,304 LCDD18_MARK, DREQ2_MARK, PORT210_MSIOF0L_SS1_MARK, D26_MARK,305 LCDD19_MARK, PORT211_MSIOF0L_SS2_MARK, D27_MARK,306 LCDD20_MARK, TS_SPSYNC1_MARK, MSIOF0L_MCK0_MARK, D28_MARK,307 LCDD21_MARK, TS_SDAT1_MARK, MSIOF0L_MCK1_MARK, D29_MARK,308 LCDD22_MARK, TS_SDEN1_MARK, MSIOF0L_RSCK_MARK, D30_MARK,309 LCDD23_MARK, TS_SCK1_MARK, MSIOF0L_RSYNC_MARK, D31_MARK,310 LCDDCK_MARK, LCDWR__MARK,311 LCDRD__MARK, DACK2_MARK, PORT217_LCD2RS_MARK, MSIOF0L_TSYNC_MARK, \312 VIO2_FIELD3_MARK, PORT217_LCD2DISP_MARK,313 LCDHSYN_MARK, LCDCS__MARK, LCDCS2__MARK, DACK3_MARK, \314 PORT218_VIO_CKOR_MARK,315 LCDDISP_MARK, LCDRS_MARK, PORT219_LCD2WR__MARK, DREQ3_MARK, \316 MSIOF0L_TSCK_MARK, VIO2_CLK3_MARK, LCD2DCK_2_MARK,317 LCDVSYN_MARK, LCDVSYN2_MARK,318 LCDLCLK_MARK, DREQ1_MARK, PORT221_LCD2CS__MARK, PWEN_MARK, \319 MSIOF0L_RXD_MARK, VIO2_HD3_MARK, PORT221_LCD2HSYN_MARK,320 LCDDON_MARK, LCDDON2_MARK, DACK1_MARK, OVCN_MARK, MSIOF0L_TXD_MARK, \321 VIO2_VD3_MARK, PORT222_LCD2VSYN_MARK,322 323 SCIFA1_TXD_MARK, OVCN2_MARK,324 EXTLP_MARK, SCIFA1_SCK_MARK, PORT226_VIO_CKO2_MARK,325 SCIFA1_RTS__MARK, IDIN_MARK,326 SCIFA1_RXD_MARK,327 SCIFA1_CTS__MARK, MFG1_IN1_MARK,328 MSIOF1_TXD_MARK, SCIFA2_TXD2_MARK,329 MSIOF1_TSYNC_MARK, SCIFA2_CTS2__MARK,330 MSIOF1_TSCK_MARK, SCIFA2_SCK2_MARK,331 MSIOF1_RXD_MARK, SCIFA2_RXD2_MARK,332 MSIOF1_RSCK_MARK, SCIFA2_RTS2__MARK, VIO2_CLK2_MARK, LCD2D20_MARK,333 MSIOF1_RSYNC_MARK, MFG1_IN2_MARK, VIO2_VD2_MARK, LCD2D21_MARK,334 MSIOF1_MCK0_MARK, PORT236_I2C_SDA2_MARK,335 MSIOF1_MCK1_MARK, PORT237_I2C_SCL2_MARK,336 MSIOF1_SS1_MARK, VIO2_FIELD2_MARK, LCD2D22_MARK,337 MSIOF1_SS2_MARK, VIO2_HD2_MARK, LCD2D23_MARK,338 SCIFA6_TXD_MARK,339 PORT241_IRDA_OUT_MARK, PORT241_IROUT_MARK, MFG4_OUT1_MARK, TPU4TO0_MARK,340 PORT242_IRDA_IN_MARK, MFG4_IN2_MARK,341 PORT243_IRDA_FIRSEL_MARK, PORT243_VIO_CKO2_MARK,342 PORT244_SCIFA5_CTS__MARK, MFG2_IN1_MARK, PORT244_SCIFB_CTS__MARK, \343 MSIOF2R_RXD_MARK,344 PORT245_SCIFA5_RTS__MARK, MFG2_IN2_MARK, PORT245_SCIFB_RTS__MARK, \345 MSIOF2R_TXD_MARK,346 PORT246_SCIFA5_RXD_MARK, MFG1_OUT1_MARK, PORT246_SCIFB_RXD_MARK, \347 TPU1TO0_MARK,348 PORT247_SCIFA5_TXD_MARK, MFG3_OUT2_MARK, PORT247_SCIFB_TXD_MARK, \349 TPU3TO1_MARK,350 PORT248_SCIFA5_SCK_MARK, MFG2_OUT1_MARK, PORT248_SCIFB_SCK_MARK, \351 TPU2TO0_MARK, PORT248_I2C_SCL3_MARK, MSIOF2R_TSCK_MARK,352 PORT249_IROUT_MARK, MFG4_IN1_MARK, PORT249_I2C_SDA3_MARK, \353 MSIOF2R_TSYNC_MARK,354 SDHICLK0_MARK,355 SDHICD0_MARK,356 SDHID0_0_MARK,357 SDHID0_1_MARK,358 SDHID0_2_MARK,359 SDHID0_3_MARK,360 SDHICMD0_MARK,361 SDHIWP0_MARK,362 SDHICLK1_MARK,363 SDHID1_0_MARK, TS_SPSYNC2_MARK,364 SDHID1_1_MARK, TS_SDAT2_MARK,365 SDHID1_2_MARK, TS_SDEN2_MARK,366 SDHID1_3_MARK, TS_SCK2_MARK,367 SDHICMD1_MARK,368 SDHICLK2_MARK,369 SDHID2_0_MARK, TS_SPSYNC4_MARK,370 SDHID2_1_MARK, TS_SDAT4_MARK,371 SDHID2_2_MARK, TS_SDEN4_MARK,372 SDHID2_3_MARK, TS_SCK4_MARK,373 SDHICMD2_MARK,374 MMCCLK0_MARK,375 MMCD0_0_MARK,376 MMCD0_1_MARK,377 MMCD0_2_MARK,378 MMCD0_3_MARK,379 MMCD0_4_MARK, TS_SPSYNC5_MARK,380 MMCD0_5_MARK, TS_SDAT5_MARK,381 MMCD0_6_MARK, TS_SDEN5_MARK,382 MMCD0_7_MARK, TS_SCK5_MARK,383 MMCCMD0_MARK,384 RESETOUTS__MARK, EXTAL2OUT_MARK,385 MCP_WAIT__MCP_FRB_MARK,386 MCP_CKO_MARK, MMCCLK1_MARK,387 MCP_D15_MCP_NAF15_MARK,388 MCP_D14_MCP_NAF14_MARK,389 MCP_D13_MCP_NAF13_MARK,390 MCP_D12_MCP_NAF12_MARK,391 MCP_D11_MCP_NAF11_MARK,392 MCP_D10_MCP_NAF10_MARK,393 MCP_D9_MCP_NAF9_MARK,394 MCP_D8_MCP_NAF8_MARK, MMCCMD1_MARK,395 MCP_D7_MCP_NAF7_MARK, MMCD1_7_MARK,396 397 MCP_D6_MCP_NAF6_MARK, MMCD1_6_MARK,398 MCP_D5_MCP_NAF5_MARK, MMCD1_5_MARK,399 MCP_D4_MCP_NAF4_MARK, MMCD1_4_MARK,400 MCP_D3_MCP_NAF3_MARK, MMCD1_3_MARK,401 MCP_D2_MCP_NAF2_MARK, MMCD1_2_MARK,402 MCP_D1_MCP_NAF1_MARK, MMCD1_1_MARK,403 MCP_D0_MCP_NAF0_MARK, MMCD1_0_MARK,404 MCP_NBRSTOUT__MARK,405 MCP_WE0__MCP_FWE_MARK, MCP_RDWR_MCP_FWE_MARK,406 407 /* MSEL2 special cases */408 TSIF2_TS_XX1_MARK,409 TSIF2_TS_XX2_MARK,410 TSIF2_TS_XX3_MARK,411 TSIF2_TS_XX4_MARK,412 TSIF2_TS_XX5_MARK,413 TSIF1_TS_XX1_MARK,414 TSIF1_TS_XX2_MARK,415 TSIF1_TS_XX3_MARK,416 TSIF1_TS_XX4_MARK,417 TSIF1_TS_XX5_MARK,418 TSIF0_TS_XX1_MARK,419 TSIF0_TS_XX2_MARK,420 TSIF0_TS_XX3_MARK,421 TSIF0_TS_XX4_MARK,422 TSIF0_TS_XX5_MARK,423 MST1_TS_XX1_MARK,424 MST1_TS_XX2_MARK,425 MST1_TS_XX3_MARK,426 MST1_TS_XX4_MARK,427 MST1_TS_XX5_MARK,428 MST0_TS_XX1_MARK,429 MST0_TS_XX2_MARK,430 MST0_TS_XX3_MARK,431 MST0_TS_XX4_MARK,432 MST0_TS_XX5_MARK,433 434 /* MSEL3 special cases */435 SDHI0_VCCQ_MC0_ON_MARK,436 SDHI0_VCCQ_MC0_OFF_MARK,437 DEBUG_MON_VIO_MARK,438 DEBUG_MON_LCDD_MARK,439 LCDC_LCDC0_MARK,440 LCDC_LCDC1_MARK,441 442 /* MSEL4 special cases */443 IRQ9_MEM_INT_MARK,444 IRQ9_MCP_INT_MARK,445 A11_MARK,446 KEYOUT8_MARK,447 TPU4TO3_MARK,448 RESETA_N_PU_ON_MARK,449 RESETA_N_PU_OFF_MARK,450 EDBGREQ_PD_MARK,451 EDBGREQ_PU_MARK,452 453 PINMUX_MARK_END,454};455 456static const u16 pinmux_data[] = {457 /* specify valid pin states for each pin in GPIO mode */458 PINMUX_DATA_ALL(),459 460 /* Table 25-1 (Function 0-7) */461 PINMUX_DATA(VBUS_0_MARK, PORT0_FN1),462 PINMUX_DATA(GPI0_MARK, PORT1_FN1),463 PINMUX_DATA(GPI1_MARK, PORT2_FN1),464 PINMUX_DATA(GPI2_MARK, PORT3_FN1),465 PINMUX_DATA(GPI3_MARK, PORT4_FN1),466 PINMUX_DATA(GPI4_MARK, PORT5_FN1),467 PINMUX_DATA(GPI5_MARK, PORT6_FN1),468 PINMUX_DATA(GPI6_MARK, PORT7_FN1),469 PINMUX_DATA(GPI7_MARK, PORT8_FN1),470 PINMUX_DATA(SCIFA7_RXD_MARK, PORT12_FN2),471 PINMUX_DATA(SCIFA7_CTS__MARK, PORT13_FN2),472 PINMUX_DATA(GPO7_MARK, PORT14_FN1), \473 PINMUX_DATA(MFG0_OUT2_MARK, PORT14_FN4),474 PINMUX_DATA(GPO6_MARK, PORT15_FN1), \475 PINMUX_DATA(MFG1_OUT2_MARK, PORT15_FN4),476 PINMUX_DATA(GPO5_MARK, PORT16_FN1), \477 PINMUX_DATA(SCIFA0_SCK_MARK, PORT16_FN2), \478 PINMUX_DATA(FSICOSLDT3_MARK, PORT16_FN3), \479 PINMUX_DATA(PORT16_VIO_CKOR_MARK, PORT16_FN4),480 PINMUX_DATA(SCIFA0_TXD_MARK, PORT17_FN2),481 PINMUX_DATA(SCIFA7_TXD_MARK, PORT18_FN2),482 PINMUX_DATA(SCIFA7_RTS__MARK, PORT19_FN2), \483 PINMUX_DATA(PORT19_VIO_CKO2_MARK, PORT19_FN3),484 PINMUX_DATA(GPO0_MARK, PORT20_FN1),485 PINMUX_DATA(GPO1_MARK, PORT21_FN1),486 PINMUX_DATA(GPO2_MARK, PORT22_FN1), \487 PINMUX_DATA(STATUS0_MARK, PORT22_FN2),488 PINMUX_DATA(GPO3_MARK, PORT23_FN1), \489 PINMUX_DATA(STATUS1_MARK, PORT23_FN2),490 PINMUX_DATA(GPO4_MARK, PORT24_FN1), \491 PINMUX_DATA(STATUS2_MARK, PORT24_FN2),492 PINMUX_DATA(VINT_MARK, PORT25_FN1),493 PINMUX_DATA(TCKON_MARK, PORT26_FN1),494 PINMUX_DATA(XDVFS1_MARK, PORT27_FN1), \495 PINMUX_DATA(PORT27_I2C_SCL2_MARK, PORT27_FN2, MSEL2CR_MSEL17_0,496 MSEL2CR_MSEL16_1), \497 PINMUX_DATA(PORT27_I2C_SCL3_MARK, PORT27_FN3, MSEL2CR_MSEL19_0,498 MSEL2CR_MSEL18_1), \499 PINMUX_DATA(MFG0_OUT1_MARK, PORT27_FN4), \500 PINMUX_DATA(PORT27_IROUT_MARK, PORT27_FN7),501 PINMUX_DATA(XDVFS2_MARK, PORT28_FN1), \502 PINMUX_DATA(PORT28_I2C_SDA2_MARK, PORT28_FN2, MSEL2CR_MSEL17_0,503 MSEL2CR_MSEL16_1), \504 PINMUX_DATA(PORT28_I2C_SDA3_MARK, PORT28_FN3, MSEL2CR_MSEL19_0,505 MSEL2CR_MSEL18_1), \506 PINMUX_DATA(PORT28_TPU1TO1_MARK, PORT28_FN7),507 PINMUX_DATA(SIM_RST_MARK, PORT29_FN1), \508 PINMUX_DATA(PORT29_TPU1TO1_MARK, PORT29_FN4),509 PINMUX_DATA(SIM_CLK_MARK, PORT30_FN1), \510 PINMUX_DATA(PORT30_VIO_CKOR_MARK, PORT30_FN4),511 PINMUX_DATA(SIM_D_MARK, PORT31_FN1), \512 PINMUX_DATA(PORT31_IROUT_MARK, PORT31_FN4),513 PINMUX_DATA(SCIFA4_TXD_MARK, PORT32_FN2),514 PINMUX_DATA(SCIFA4_RXD_MARK, PORT33_FN2), \515 PINMUX_DATA(XWUP_MARK, PORT33_FN3),516 PINMUX_DATA(SCIFA4_RTS__MARK, PORT34_FN2),517 PINMUX_DATA(SCIFA4_CTS__MARK, PORT35_FN2),518 PINMUX_DATA(FSIBOBT_MARK, PORT36_FN1), \519 PINMUX_DATA(FSIBIBT_MARK, PORT36_FN2),520 PINMUX_DATA(FSIBOLR_MARK, PORT37_FN1), \521 PINMUX_DATA(FSIBILR_MARK, PORT37_FN2),522 PINMUX_DATA(FSIBOSLD_MARK, PORT38_FN1),523 PINMUX_DATA(FSIBISLD_MARK, PORT39_FN1),524 PINMUX_DATA(VACK_MARK, PORT40_FN1),525 PINMUX_DATA(XTAL1L_MARK, PORT41_FN1),526 PINMUX_DATA(SCIFA0_RTS__MARK, PORT42_FN2), \527 PINMUX_DATA(FSICOSLDT2_MARK, PORT42_FN3),528 PINMUX_DATA(SCIFA0_RXD_MARK, PORT43_FN2),529 PINMUX_DATA(SCIFA0_CTS__MARK, PORT44_FN2), \530 PINMUX_DATA(FSICOSLDT1_MARK, PORT44_FN3),531 PINMUX_DATA(FSICOBT_MARK, PORT45_FN1), \532 PINMUX_DATA(FSICIBT_MARK, PORT45_FN2), \533 PINMUX_DATA(FSIDOBT_MARK, PORT45_FN3), \534 PINMUX_DATA(FSIDIBT_MARK, PORT45_FN4),535 PINMUX_DATA(FSICOLR_MARK, PORT46_FN1), \536 PINMUX_DATA(FSICILR_MARK, PORT46_FN2), \537 PINMUX_DATA(FSIDOLR_MARK, PORT46_FN3), \538 PINMUX_DATA(FSIDILR_MARK, PORT46_FN4),539 PINMUX_DATA(FSICOSLD_MARK, PORT47_FN1), \540 PINMUX_DATA(PORT47_FSICSPDIF_MARK, PORT47_FN2),541 PINMUX_DATA(FSICISLD_MARK, PORT48_FN1), \542 PINMUX_DATA(FSIDISLD_MARK, PORT48_FN3),543 PINMUX_DATA(FSIACK_MARK, PORT49_FN1), \544 PINMUX_DATA(PORT49_IRDA_OUT_MARK, PORT49_FN2, MSEL4CR_MSEL19_1), \545 PINMUX_DATA(PORT49_IROUT_MARK, PORT49_FN4), \546 PINMUX_DATA(FSIAOMC_MARK, PORT49_FN5),547 PINMUX_DATA(FSIAOLR_MARK, PORT50_FN1), \548 PINMUX_DATA(BBIF2_TSYNC2_MARK, PORT50_FN2), \549 PINMUX_DATA(TPU2TO2_MARK, PORT50_FN3), \550 PINMUX_DATA(FSIAILR_MARK, PORT50_FN5),551 552 PINMUX_DATA(FSIAOBT_MARK, PORT51_FN1), \553 PINMUX_DATA(BBIF2_TSCK2_MARK, PORT51_FN2), \554 PINMUX_DATA(TPU2TO3_MARK, PORT51_FN3), \555 PINMUX_DATA(FSIAIBT_MARK, PORT51_FN5),556 PINMUX_DATA(FSIAOSLD_MARK, PORT52_FN1), \557 PINMUX_DATA(BBIF2_TXD2_MARK, PORT52_FN2),558 PINMUX_DATA(FSIASPDIF_MARK, PORT53_FN1), \559 PINMUX_DATA(PORT53_IRDA_IN_MARK, PORT53_FN2, MSEL4CR_MSEL19_1), \560 PINMUX_DATA(TPU3TO3_MARK, PORT53_FN3), \561 PINMUX_DATA(FSIBSPDIF_MARK, PORT53_FN5), \562 PINMUX_DATA(PORT53_FSICSPDIF_MARK, PORT53_FN6),563 PINMUX_DATA(FSIBCK_MARK, PORT54_FN1), \564 PINMUX_DATA(PORT54_IRDA_FIRSEL_MARK, PORT54_FN2, MSEL4CR_MSEL19_1), \565 PINMUX_DATA(TPU3TO2_MARK, PORT54_FN3), \566 PINMUX_DATA(FSIBOMC_MARK, PORT54_FN5), \567 PINMUX_DATA(FSICCK_MARK, PORT54_FN6), \568 PINMUX_DATA(FSICOMC_MARK, PORT54_FN7),569 PINMUX_DATA(FSIAISLD_MARK, PORT55_FN1), \570 PINMUX_DATA(TPU0TO0_MARK, PORT55_FN3),571 PINMUX_DATA(A0_MARK, PORT57_FN1), \572 PINMUX_DATA(BS__MARK, PORT57_FN2),573 PINMUX_DATA(A12_MARK, PORT58_FN1), \574 PINMUX_DATA(PORT58_KEYOUT7_MARK, PORT58_FN2), \575 PINMUX_DATA(TPU4TO2_MARK, PORT58_FN4),576 PINMUX_DATA(A13_MARK, PORT59_FN1), \577 PINMUX_DATA(PORT59_KEYOUT6_MARK, PORT59_FN2), \578 PINMUX_DATA(TPU0TO1_MARK, PORT59_FN4),579 PINMUX_DATA(A14_MARK, PORT60_FN1), \580 PINMUX_DATA(KEYOUT5_MARK, PORT60_FN2),581 PINMUX_DATA(A15_MARK, PORT61_FN1), \582 PINMUX_DATA(KEYOUT4_MARK, PORT61_FN2),583 PINMUX_DATA(A16_MARK, PORT62_FN1), \584 PINMUX_DATA(KEYOUT3_MARK, PORT62_FN2), \585 PINMUX_DATA(MSIOF0_SS1_MARK, PORT62_FN4, MSEL3CR_MSEL11_0),586 PINMUX_DATA(A17_MARK, PORT63_FN1), \587 PINMUX_DATA(KEYOUT2_MARK, PORT63_FN2), \588 PINMUX_DATA(MSIOF0_TSYNC_MARK, PORT63_FN4, MSEL3CR_MSEL11_0),589 PINMUX_DATA(A18_MARK, PORT64_FN1), \590 PINMUX_DATA(KEYOUT1_MARK, PORT64_FN2), \591 PINMUX_DATA(MSIOF0_TSCK_MARK, PORT64_FN4, MSEL3CR_MSEL11_0),592 PINMUX_DATA(A19_MARK, PORT65_FN1), \593 PINMUX_DATA(KEYOUT0_MARK, PORT65_FN2), \594 PINMUX_DATA(MSIOF0_TXD_MARK, PORT65_FN4, MSEL3CR_MSEL11_0),595 PINMUX_DATA(A20_MARK, PORT66_FN1), \596 PINMUX_DATA(KEYIN0_MARK, PORT66_FN2), \597 PINMUX_DATA(MSIOF0_RSCK_MARK, PORT66_FN4, MSEL3CR_MSEL11_0),598 PINMUX_DATA(A21_MARK, PORT67_FN1), \599 PINMUX_DATA(KEYIN1_MARK, PORT67_FN2), \600 PINMUX_DATA(MSIOF0_RSYNC_MARK, PORT67_FN4, MSEL3CR_MSEL11_0),601 PINMUX_DATA(A22_MARK, PORT68_FN1), \602 PINMUX_DATA(KEYIN2_MARK, PORT68_FN2), \603 PINMUX_DATA(MSIOF0_MCK0_MARK, PORT68_FN4, MSEL3CR_MSEL11_0),604 PINMUX_DATA(A23_MARK, PORT69_FN1), \605 PINMUX_DATA(KEYIN3_MARK, PORT69_FN2), \606 PINMUX_DATA(MSIOF0_MCK1_MARK, PORT69_FN4, MSEL3CR_MSEL11_0),607 PINMUX_DATA(A24_MARK, PORT70_FN1), \608 PINMUX_DATA(KEYIN4_MARK, PORT70_FN2), \609 PINMUX_DATA(MSIOF0_RXD_MARK, PORT70_FN4, MSEL3CR_MSEL11_0),610 PINMUX_DATA(A25_MARK, PORT71_FN1), \611 PINMUX_DATA(KEYIN5_MARK, PORT71_FN2), \612 PINMUX_DATA(MSIOF0_SS2_MARK, PORT71_FN4, MSEL3CR_MSEL11_0),613 PINMUX_DATA(A26_MARK, PORT72_FN1), \614 PINMUX_DATA(KEYIN6_MARK, PORT72_FN2),615 PINMUX_DATA(KEYIN7_MARK, PORT73_FN2),616 PINMUX_DATA(D0_NAF0_MARK, PORT74_FN1),617 PINMUX_DATA(D1_NAF1_MARK, PORT75_FN1),618 PINMUX_DATA(D2_NAF2_MARK, PORT76_FN1),619 PINMUX_DATA(D3_NAF3_MARK, PORT77_FN1),620 PINMUX_DATA(D4_NAF4_MARK, PORT78_FN1),621 PINMUX_DATA(D5_NAF5_MARK, PORT79_FN1),622 PINMUX_DATA(D6_NAF6_MARK, PORT80_FN1),623 PINMUX_DATA(D7_NAF7_MARK, PORT81_FN1),624 PINMUX_DATA(D8_NAF8_MARK, PORT82_FN1),625 PINMUX_DATA(D9_NAF9_MARK, PORT83_FN1),626 PINMUX_DATA(D10_NAF10_MARK, PORT84_FN1),627 PINMUX_DATA(D11_NAF11_MARK, PORT85_FN1),628 PINMUX_DATA(D12_NAF12_MARK, PORT86_FN1),629 PINMUX_DATA(D13_NAF13_MARK, PORT87_FN1),630 PINMUX_DATA(D14_NAF14_MARK, PORT88_FN1),631 PINMUX_DATA(D15_NAF15_MARK, PORT89_FN1),632 PINMUX_DATA(CS4__MARK, PORT90_FN1),633 PINMUX_DATA(CS5A__MARK, PORT91_FN1), \634 PINMUX_DATA(PORT91_RDWR_MARK, PORT91_FN2),635 PINMUX_DATA(CS5B__MARK, PORT92_FN1), \636 PINMUX_DATA(FCE1__MARK, PORT92_FN2),637 PINMUX_DATA(CS6B__MARK, PORT93_FN1), \638 PINMUX_DATA(DACK0_MARK, PORT93_FN4),639 PINMUX_DATA(FCE0__MARK, PORT94_FN1), \640 PINMUX_DATA(CS6A__MARK, PORT94_FN2),641 PINMUX_DATA(WAIT__MARK, PORT95_FN1), \642 PINMUX_DATA(DREQ0_MARK, PORT95_FN2),643 PINMUX_DATA(RD__FSC_MARK, PORT96_FN1),644 PINMUX_DATA(WE0__FWE_MARK, PORT97_FN1), \645 PINMUX_DATA(RDWR_FWE_MARK, PORT97_FN2),646 PINMUX_DATA(WE1__MARK, PORT98_FN1),647 PINMUX_DATA(FRB_MARK, PORT99_FN1),648 PINMUX_DATA(CKO_MARK, PORT100_FN1),649 PINMUX_DATA(NBRSTOUT__MARK, PORT101_FN1),650 PINMUX_DATA(NBRST__MARK, PORT102_FN1),651 PINMUX_DATA(BBIF2_TXD_MARK, PORT103_FN3),652 PINMUX_DATA(BBIF2_RXD_MARK, PORT104_FN3),653 PINMUX_DATA(BBIF2_SYNC_MARK, PORT105_FN3),654 PINMUX_DATA(BBIF2_SCK_MARK, PORT106_FN3),655 PINMUX_DATA(SCIFA3_CTS__MARK, PORT107_FN3), \656 PINMUX_DATA(MFG3_IN2_MARK, PORT107_FN4),657 PINMUX_DATA(SCIFA3_RXD_MARK, PORT108_FN3), \658 PINMUX_DATA(MFG3_IN1_MARK, PORT108_FN4),659 PINMUX_DATA(BBIF1_SS2_MARK, PORT109_FN2), \660 PINMUX_DATA(SCIFA3_RTS__MARK, PORT109_FN3), \661 PINMUX_DATA(MFG3_OUT1_MARK, PORT109_FN4),662 PINMUX_DATA(SCIFA3_TXD_MARK, PORT110_FN3),663 PINMUX_DATA(HSI_RX_DATA_MARK, PORT111_FN1), \664 PINMUX_DATA(BBIF1_RXD_MARK, PORT111_FN3),665 PINMUX_DATA(HSI_TX_WAKE_MARK, PORT112_FN1), \666 PINMUX_DATA(BBIF1_TSCK_MARK, PORT112_FN3),667 PINMUX_DATA(HSI_TX_DATA_MARK, PORT113_FN1), \668 PINMUX_DATA(BBIF1_TSYNC_MARK, PORT113_FN3),669 PINMUX_DATA(HSI_TX_READY_MARK, PORT114_FN1), \670 PINMUX_DATA(BBIF1_TXD_MARK, PORT114_FN3),671 PINMUX_DATA(HSI_RX_READY_MARK, PORT115_FN1), \672 PINMUX_DATA(BBIF1_RSCK_MARK, PORT115_FN3), \673 PINMUX_DATA(PORT115_I2C_SCL2_MARK, PORT115_FN5, MSEL2CR_MSEL17_1), \674 PINMUX_DATA(PORT115_I2C_SCL3_MARK, PORT115_FN6, MSEL2CR_MSEL19_1),675 PINMUX_DATA(HSI_RX_WAKE_MARK, PORT116_FN1), \676 PINMUX_DATA(BBIF1_RSYNC_MARK, PORT116_FN3), \677 PINMUX_DATA(PORT116_I2C_SDA2_MARK, PORT116_FN5, MSEL2CR_MSEL17_1), \678 PINMUX_DATA(PORT116_I2C_SDA3_MARK, PORT116_FN6, MSEL2CR_MSEL19_1),679 PINMUX_DATA(HSI_RX_FLAG_MARK, PORT117_FN1), \680 PINMUX_DATA(BBIF1_SS1_MARK, PORT117_FN2), \681 PINMUX_DATA(BBIF1_FLOW_MARK, PORT117_FN3),682 PINMUX_DATA(HSI_TX_FLAG_MARK, PORT118_FN1),683 PINMUX_DATA(VIO_VD_MARK, PORT128_FN1), \684 PINMUX_DATA(PORT128_LCD2VSYN_MARK, PORT128_FN4, MSEL3CR_MSEL2_0), \685 PINMUX_DATA(VIO2_VD_MARK, PORT128_FN6, MSEL4CR_MSEL27_0), \686 PINMUX_DATA(LCD2D0_MARK, PORT128_FN7),687 688 PINMUX_DATA(VIO_HD_MARK, PORT129_FN1), \689 PINMUX_DATA(PORT129_LCD2HSYN_MARK, PORT129_FN4), \690 PINMUX_DATA(PORT129_LCD2CS__MARK, PORT129_FN5), \691 PINMUX_DATA(VIO2_HD_MARK, PORT129_FN6, MSEL4CR_MSEL27_0), \692 PINMUX_DATA(LCD2D1_MARK, PORT129_FN7),693 PINMUX_DATA(VIO_D0_MARK, PORT130_FN1), \694 PINMUX_DATA(PORT130_MSIOF2_RXD_MARK, PORT130_FN3, MSEL4CR_MSEL11_0,695 MSEL4CR_MSEL10_1), \696 PINMUX_DATA(LCD2D10_MARK, PORT130_FN7),697 PINMUX_DATA(VIO_D1_MARK, PORT131_FN1), \698 PINMUX_DATA(PORT131_KEYOUT6_MARK, PORT131_FN2), \699 PINMUX_DATA(PORT131_MSIOF2_SS1_MARK, PORT131_FN3), \700 PINMUX_DATA(PORT131_KEYOUT11_MARK, PORT131_FN4), \701 PINMUX_DATA(LCD2D11_MARK, PORT131_FN7),702 PINMUX_DATA(VIO_D2_MARK, PORT132_FN1), \703 PINMUX_DATA(PORT132_KEYOUT7_MARK, PORT132_FN2), \704 PINMUX_DATA(PORT132_MSIOF2_SS2_MARK, PORT132_FN3), \705 PINMUX_DATA(PORT132_KEYOUT10_MARK, PORT132_FN4), \706 PINMUX_DATA(LCD2D12_MARK, PORT132_FN7),707 PINMUX_DATA(VIO_D3_MARK, PORT133_FN1), \708 PINMUX_DATA(MSIOF2_TSYNC_MARK, PORT133_FN3, MSEL4CR_MSEL11_0), \709 PINMUX_DATA(LCD2D13_MARK, PORT133_FN7),710 PINMUX_DATA(VIO_D4_MARK, PORT134_FN1), \711 PINMUX_DATA(MSIOF2_TXD_MARK, PORT134_FN3, MSEL4CR_MSEL11_0), \712 PINMUX_DATA(LCD2D14_MARK, PORT134_FN7),713 PINMUX_DATA(VIO_D5_MARK, PORT135_FN1), \714 PINMUX_DATA(MSIOF2_TSCK_MARK, PORT135_FN3, MSEL4CR_MSEL11_0), \715 PINMUX_DATA(LCD2D15_MARK, PORT135_FN7),716 PINMUX_DATA(VIO_D6_MARK, PORT136_FN1), \717 PINMUX_DATA(PORT136_KEYOUT8_MARK, PORT136_FN2), \718 PINMUX_DATA(LCD2D16_MARK, PORT136_FN7),719 PINMUX_DATA(VIO_D7_MARK, PORT137_FN1), \720 PINMUX_DATA(PORT137_KEYOUT9_MARK, PORT137_FN2), \721 PINMUX_DATA(LCD2D17_MARK, PORT137_FN7),722 PINMUX_DATA(VIO_D8_MARK, PORT138_FN1), \723 PINMUX_DATA(PORT138_KEYOUT8_MARK, PORT138_FN2), \724 PINMUX_DATA(VIO2_D0_MARK, PORT138_FN6), \725 PINMUX_DATA(LCD2D6_MARK, PORT138_FN7),726 PINMUX_DATA(VIO_D9_MARK, PORT139_FN1), \727 PINMUX_DATA(PORT139_KEYOUT9_MARK, PORT139_FN2), \728 PINMUX_DATA(VIO2_D1_MARK, PORT139_FN6), \729 PINMUX_DATA(LCD2D7_MARK, PORT139_FN7),730 PINMUX_DATA(VIO_D10_MARK, PORT140_FN1), \731 PINMUX_DATA(TPU0TO2_MARK, PORT140_FN4), \732 PINMUX_DATA(VIO2_D2_MARK, PORT140_FN6), \733 PINMUX_DATA(LCD2D8_MARK, PORT140_FN7),734 PINMUX_DATA(VIO_D11_MARK, PORT141_FN1), \735 PINMUX_DATA(TPU0TO3_MARK, PORT141_FN4), \736 PINMUX_DATA(VIO2_D3_MARK, PORT141_FN6), \737 PINMUX_DATA(LCD2D9_MARK, PORT141_FN7),738 PINMUX_DATA(VIO_D12_MARK, PORT142_FN1), \739 PINMUX_DATA(PORT142_KEYOUT10_MARK, PORT142_FN2), \740 PINMUX_DATA(VIO2_D4_MARK, PORT142_FN6), \741 PINMUX_DATA(LCD2D2_MARK, PORT142_FN7),742 PINMUX_DATA(VIO_D13_MARK, PORT143_FN1), \743 PINMUX_DATA(PORT143_KEYOUT11_MARK, PORT143_FN2), \744 PINMUX_DATA(PORT143_KEYOUT6_MARK, PORT143_FN3), \745 PINMUX_DATA(VIO2_D5_MARK, PORT143_FN6), \746 PINMUX_DATA(LCD2D3_MARK, PORT143_FN7),747 PINMUX_DATA(VIO_D14_MARK, PORT144_FN1), \748 PINMUX_DATA(PORT144_KEYOUT7_MARK, PORT144_FN2), \749 PINMUX_DATA(VIO2_D6_MARK, PORT144_FN6), \750 PINMUX_DATA(LCD2D4_MARK, PORT144_FN7),751 PINMUX_DATA(VIO_D15_MARK, PORT145_FN1), \752 PINMUX_DATA(TPU1TO3_MARK, PORT145_FN3), \753 PINMUX_DATA(PORT145_LCD2DISP_MARK, PORT145_FN4), \754 PINMUX_DATA(PORT145_LCD2RS_MARK, PORT145_FN5), \755 PINMUX_DATA(VIO2_D7_MARK, PORT145_FN6), \756 PINMUX_DATA(LCD2D5_MARK, PORT145_FN7),757 PINMUX_DATA(VIO_CLK_MARK, PORT146_FN1), \758 PINMUX_DATA(LCD2DCK_MARK, PORT146_FN4), \759 PINMUX_DATA(PORT146_LCD2WR__MARK, PORT146_FN5), \760 PINMUX_DATA(VIO2_CLK_MARK, PORT146_FN6, MSEL4CR_MSEL27_0), \761 PINMUX_DATA(LCD2D18_MARK, PORT146_FN7),762 PINMUX_DATA(VIO_FIELD_MARK, PORT147_FN1), \763 PINMUX_DATA(LCD2RD__MARK, PORT147_FN4), \764 PINMUX_DATA(VIO2_FIELD_MARK, PORT147_FN6, MSEL4CR_MSEL27_0), \765 PINMUX_DATA(LCD2D19_MARK, PORT147_FN7),766 PINMUX_DATA(VIO_CKO_MARK, PORT148_FN1),767 PINMUX_DATA(A27_MARK, PORT149_FN1), \768 PINMUX_DATA(PORT149_RDWR_MARK, PORT149_FN2), \769 PINMUX_DATA(MFG0_IN1_MARK, PORT149_FN3), \770 PINMUX_DATA(PORT149_KEYOUT9_MARK, PORT149_FN4),771 PINMUX_DATA(MFG0_IN2_MARK, PORT150_FN3),772 PINMUX_DATA(TS_SPSYNC3_MARK, PORT151_FN4), \773 PINMUX_DATA(MSIOF2_RSCK_MARK, PORT151_FN5),774 PINMUX_DATA(TS_SDAT3_MARK, PORT152_FN4), \775 PINMUX_DATA(MSIOF2_RSYNC_MARK, PORT152_FN5),776 PINMUX_DATA(TPU1TO2_MARK, PORT153_FN3), \777 PINMUX_DATA(TS_SDEN3_MARK, PORT153_FN4), \778 PINMUX_DATA(PORT153_MSIOF2_SS1_MARK, PORT153_FN5),779 PINMUX_DATA(SCIFA2_TXD1_MARK, PORT154_FN2, MSEL3CR_MSEL9_0), \780 PINMUX_DATA(MSIOF2_MCK0_MARK, PORT154_FN5),781 PINMUX_DATA(SCIFA2_RXD1_MARK, PORT155_FN2, MSEL3CR_MSEL9_0), \782 PINMUX_DATA(MSIOF2_MCK1_MARK, PORT155_FN5),783 PINMUX_DATA(SCIFA2_RTS1__MARK, PORT156_FN2, MSEL3CR_MSEL9_0), \784 PINMUX_DATA(PORT156_MSIOF2_SS2_MARK, PORT156_FN5),785 PINMUX_DATA(SCIFA2_CTS1__MARK, PORT157_FN2, MSEL3CR_MSEL9_0), \786 PINMUX_DATA(PORT157_MSIOF2_RXD_MARK, PORT157_FN5, MSEL4CR_MSEL11_0,787 MSEL4CR_MSEL10_0),788 PINMUX_DATA(DINT__MARK, PORT158_FN1), \789 PINMUX_DATA(SCIFA2_SCK1_MARK, PORT158_FN2, MSEL3CR_MSEL9_0), \790 PINMUX_DATA(TS_SCK3_MARK, PORT158_FN4),791 PINMUX_DATA(PORT159_SCIFB_SCK_MARK, PORT159_FN1, MSEL4CR_MSEL22_0), \792 PINMUX_DATA(PORT159_SCIFA5_SCK_MARK, PORT159_FN2, MSEL4CR_MSEL21_1), \793 PINMUX_DATA(NMI_MARK, PORT159_FN3),794 PINMUX_DATA(PORT160_SCIFB_TXD_MARK, PORT160_FN1, MSEL4CR_MSEL22_0), \795 PINMUX_DATA(PORT160_SCIFA5_TXD_MARK, PORT160_FN2, MSEL4CR_MSEL21_1),796 PINMUX_DATA(PORT161_SCIFB_CTS__MARK, PORT161_FN1, MSEL4CR_MSEL22_0), \797 PINMUX_DATA(PORT161_SCIFA5_CTS__MARK, PORT161_FN2, MSEL4CR_MSEL21_1),798 PINMUX_DATA(PORT162_SCIFB_RXD_MARK, PORT162_FN1, MSEL4CR_MSEL22_0), \799 PINMUX_DATA(PORT162_SCIFA5_RXD_MARK, PORT162_FN2, MSEL4CR_MSEL21_1),800 PINMUX_DATA(PORT163_SCIFB_RTS__MARK, PORT163_FN1, MSEL4CR_MSEL22_0), \801 PINMUX_DATA(PORT163_SCIFA5_RTS__MARK, PORT163_FN2, MSEL4CR_MSEL21_1), \802 PINMUX_DATA(TPU3TO0_MARK, PORT163_FN5),803 PINMUX_DATA(LCDD0_MARK, PORT192_FN1),804 PINMUX_DATA(LCDD1_MARK, PORT193_FN1), \805 PINMUX_DATA(PORT193_SCIFA5_CTS__MARK, PORT193_FN3, MSEL4CR_MSEL21_0,806 MSEL4CR_MSEL20_1), \807 PINMUX_DATA(BBIF2_TSYNC1_MARK, PORT193_FN5),808 PINMUX_DATA(LCDD2_MARK, PORT194_FN1), \809 PINMUX_DATA(PORT194_SCIFA5_RTS__MARK, PORT194_FN3, MSEL4CR_MSEL21_0,810 MSEL4CR_MSEL20_1), \811 PINMUX_DATA(BBIF2_TSCK1_MARK, PORT194_FN5),812 PINMUX_DATA(LCDD3_MARK, PORT195_FN1), \813 PINMUX_DATA(PORT195_SCIFA5_RXD_MARK, PORT195_FN3, MSEL4CR_MSEL21_0,814 MSEL4CR_MSEL20_1), \815 PINMUX_DATA(BBIF2_TXD1_MARK, PORT195_FN5),816 PINMUX_DATA(LCDD4_MARK, PORT196_FN1), \817 PINMUX_DATA(PORT196_SCIFA5_TXD_MARK, PORT196_FN3, MSEL4CR_MSEL21_0,818 MSEL4CR_MSEL20_1),819 PINMUX_DATA(LCDD5_MARK, PORT197_FN1), \820 PINMUX_DATA(PORT197_SCIFA5_SCK_MARK, PORT197_FN3, MSEL4CR_MSEL21_0,821 MSEL4CR_MSEL20_1), \822 PINMUX_DATA(MFG2_OUT2_MARK, PORT197_FN5), \823 PINMUX_DATA(TPU2TO1_MARK, PORT197_FN7),824 PINMUX_DATA(LCDD6_MARK, PORT198_FN1),825 PINMUX_DATA(LCDD7_MARK, PORT199_FN1), \826 PINMUX_DATA(TPU4TO1_MARK, PORT199_FN2), \827 PINMUX_DATA(MFG4_OUT2_MARK, PORT199_FN5),828 PINMUX_DATA(LCDD8_MARK, PORT200_FN1), \829 PINMUX_DATA(D16_MARK, PORT200_FN6),830 PINMUX_DATA(LCDD9_MARK, PORT201_FN1), \831 PINMUX_DATA(D17_MARK, PORT201_FN6),832 PINMUX_DATA(LCDD10_MARK, PORT202_FN1), \833 PINMUX_DATA(D18_MARK, PORT202_FN6),834 PINMUX_DATA(LCDD11_MARK, PORT203_FN1), \835 PINMUX_DATA(D19_MARK, PORT203_FN6),836 PINMUX_DATA(LCDD12_MARK, PORT204_FN1), \837 PINMUX_DATA(D20_MARK, PORT204_FN6),838 PINMUX_DATA(LCDD13_MARK, PORT205_FN1), \839 PINMUX_DATA(D21_MARK, PORT205_FN6),840 PINMUX_DATA(LCDD14_MARK, PORT206_FN1), \841 PINMUX_DATA(D22_MARK, PORT206_FN6),842 PINMUX_DATA(LCDD15_MARK, PORT207_FN1), \843 PINMUX_DATA(PORT207_MSIOF0L_SS1_MARK, PORT207_FN2, MSEL3CR_MSEL11_1), \844 PINMUX_DATA(D23_MARK, PORT207_FN6),845 PINMUX_DATA(LCDD16_MARK, PORT208_FN1), \846 PINMUX_DATA(PORT208_MSIOF0L_SS2_MARK, PORT208_FN2, MSEL3CR_MSEL11_1), \847 PINMUX_DATA(D24_MARK, PORT208_FN6),848 PINMUX_DATA(LCDD17_MARK, PORT209_FN1), \849 PINMUX_DATA(D25_MARK, PORT209_FN6),850 PINMUX_DATA(LCDD18_MARK, PORT210_FN1), \851 PINMUX_DATA(DREQ2_MARK, PORT210_FN2), \852 PINMUX_DATA(PORT210_MSIOF0L_SS1_MARK, PORT210_FN5, MSEL3CR_MSEL11_1), \853 PINMUX_DATA(D26_MARK, PORT210_FN6),854 PINMUX_DATA(LCDD19_MARK, PORT211_FN1), \855 PINMUX_DATA(PORT211_MSIOF0L_SS2_MARK, PORT211_FN5, MSEL3CR_MSEL11_1), \856 PINMUX_DATA(D27_MARK, PORT211_FN6),857 PINMUX_DATA(LCDD20_MARK, PORT212_FN1), \858 PINMUX_DATA(TS_SPSYNC1_MARK, PORT212_FN2), \859 PINMUX_DATA(MSIOF0L_MCK0_MARK, PORT212_FN5, MSEL3CR_MSEL11_1), \860 PINMUX_DATA(D28_MARK, PORT212_FN6),861 PINMUX_DATA(LCDD21_MARK, PORT213_FN1), \862 PINMUX_DATA(TS_SDAT1_MARK, PORT213_FN2), \863 PINMUX_DATA(MSIOF0L_MCK1_MARK, PORT213_FN5, MSEL3CR_MSEL11_1), \864 PINMUX_DATA(D29_MARK, PORT213_FN6),865 PINMUX_DATA(LCDD22_MARK, PORT214_FN1), \866 PINMUX_DATA(TS_SDEN1_MARK, PORT214_FN2), \867 PINMUX_DATA(MSIOF0L_RSCK_MARK, PORT214_FN5, MSEL3CR_MSEL11_1), \868 PINMUX_DATA(D30_MARK, PORT214_FN6),869 PINMUX_DATA(LCDD23_MARK, PORT215_FN1), \870 PINMUX_DATA(TS_SCK1_MARK, PORT215_FN2), \871 PINMUX_DATA(MSIOF0L_RSYNC_MARK, PORT215_FN5, MSEL3CR_MSEL11_1), \872 PINMUX_DATA(D31_MARK, PORT215_FN6),873 PINMUX_DATA(LCDDCK_MARK, PORT216_FN1), \874 PINMUX_DATA(LCDWR__MARK, PORT216_FN2),875 PINMUX_DATA(LCDRD__MARK, PORT217_FN1), \876 PINMUX_DATA(DACK2_MARK, PORT217_FN2), \877 PINMUX_DATA(PORT217_LCD2RS_MARK, PORT217_FN3), \878 PINMUX_DATA(MSIOF0L_TSYNC_MARK, PORT217_FN5, MSEL3CR_MSEL11_1), \879 PINMUX_DATA(VIO2_FIELD3_MARK, PORT217_FN6, MSEL4CR_MSEL27_1,880 MSEL4CR_MSEL26_1), \881 PINMUX_DATA(PORT217_LCD2DISP_MARK, PORT217_FN7),882 PINMUX_DATA(LCDHSYN_MARK, PORT218_FN1), \883 PINMUX_DATA(LCDCS__MARK, PORT218_FN2), \884 PINMUX_DATA(LCDCS2__MARK, PORT218_FN3), \885 PINMUX_DATA(DACK3_MARK, PORT218_FN4), \886 PINMUX_DATA(PORT218_VIO_CKOR_MARK, PORT218_FN5),887 PINMUX_DATA(LCDDISP_MARK, PORT219_FN1), \888 PINMUX_DATA(LCDRS_MARK, PORT219_FN2), \889 PINMUX_DATA(PORT219_LCD2WR__MARK, PORT219_FN3), \890 PINMUX_DATA(DREQ3_MARK, PORT219_FN4), \891 PINMUX_DATA(MSIOF0L_TSCK_MARK, PORT219_FN5, MSEL3CR_MSEL11_1), \892 PINMUX_DATA(VIO2_CLK3_MARK, PORT219_FN6, MSEL4CR_MSEL27_1,893 MSEL4CR_MSEL26_1), \894 PINMUX_DATA(LCD2DCK_2_MARK, PORT219_FN7),895 PINMUX_DATA(LCDVSYN_MARK, PORT220_FN1), \896 PINMUX_DATA(LCDVSYN2_MARK, PORT220_FN2),897 PINMUX_DATA(LCDLCLK_MARK, PORT221_FN1), \898 PINMUX_DATA(DREQ1_MARK, PORT221_FN2), \899 PINMUX_DATA(PORT221_LCD2CS__MARK, PORT221_FN3), \900 PINMUX_DATA(PWEN_MARK, PORT221_FN4), \901 PINMUX_DATA(MSIOF0L_RXD_MARK, PORT221_FN5, MSEL3CR_MSEL11_1), \902 PINMUX_DATA(VIO2_HD3_MARK, PORT221_FN6, MSEL4CR_MSEL27_1,903 MSEL4CR_MSEL26_1), \904 PINMUX_DATA(PORT221_LCD2HSYN_MARK, PORT221_FN7),905 PINMUX_DATA(LCDDON_MARK, PORT222_FN1), \906 PINMUX_DATA(LCDDON2_MARK, PORT222_FN2), \907 PINMUX_DATA(DACK1_MARK, PORT222_FN3), \908 PINMUX_DATA(OVCN_MARK, PORT222_FN4), \909 PINMUX_DATA(MSIOF0L_TXD_MARK, PORT222_FN5, MSEL3CR_MSEL11_1), \910 PINMUX_DATA(VIO2_VD3_MARK, PORT222_FN6, MSEL4CR_MSEL27_1,911 MSEL4CR_MSEL26_1), \912 PINMUX_DATA(PORT222_LCD2VSYN_MARK, PORT222_FN7, MSEL3CR_MSEL2_1),913 914 PINMUX_DATA(SCIFA1_TXD_MARK, PORT225_FN2), \915 PINMUX_DATA(OVCN2_MARK, PORT225_FN4),916 PINMUX_DATA(EXTLP_MARK, PORT226_FN1), \917 PINMUX_DATA(SCIFA1_SCK_MARK, PORT226_FN2), \918 PINMUX_DATA(PORT226_VIO_CKO2_MARK, PORT226_FN5),919 PINMUX_DATA(SCIFA1_RTS__MARK, PORT227_FN2), \920 PINMUX_DATA(IDIN_MARK, PORT227_FN4),921 PINMUX_DATA(SCIFA1_RXD_MARK, PORT228_FN2),922 PINMUX_DATA(SCIFA1_CTS__MARK, PORT229_FN2), \923 PINMUX_DATA(MFG1_IN1_MARK, PORT229_FN3),924 PINMUX_DATA(MSIOF1_TXD_MARK, PORT230_FN1), \925 PINMUX_DATA(SCIFA2_TXD2_MARK, PORT230_FN2, MSEL3CR_MSEL9_1),926 PINMUX_DATA(MSIOF1_TSYNC_MARK, PORT231_FN1), \927 PINMUX_DATA(SCIFA2_CTS2__MARK, PORT231_FN2, MSEL3CR_MSEL9_1),928 PINMUX_DATA(MSIOF1_TSCK_MARK, PORT232_FN1), \929 PINMUX_DATA(SCIFA2_SCK2_MARK, PORT232_FN2, MSEL3CR_MSEL9_1),930 PINMUX_DATA(MSIOF1_RXD_MARK, PORT233_FN1), \931 PINMUX_DATA(SCIFA2_RXD2_MARK, PORT233_FN2, MSEL3CR_MSEL9_1),932 PINMUX_DATA(MSIOF1_RSCK_MARK, PORT234_FN1), \933 PINMUX_DATA(SCIFA2_RTS2__MARK, PORT234_FN2, MSEL3CR_MSEL9_1), \934 PINMUX_DATA(VIO2_CLK2_MARK, PORT234_FN6, MSEL4CR_MSEL27_1,935 MSEL4CR_MSEL26_0), \936 PINMUX_DATA(LCD2D20_MARK, PORT234_FN7),937 PINMUX_DATA(MSIOF1_RSYNC_MARK, PORT235_FN1), \938 PINMUX_DATA(MFG1_IN2_MARK, PORT235_FN3), \939 PINMUX_DATA(VIO2_VD2_MARK, PORT235_FN6, MSEL4CR_MSEL27_1,940 MSEL4CR_MSEL26_0), \941 PINMUX_DATA(LCD2D21_MARK, PORT235_FN7),942 PINMUX_DATA(MSIOF1_MCK0_MARK, PORT236_FN1), \943 PINMUX_DATA(PORT236_I2C_SDA2_MARK, PORT236_FN2, MSEL2CR_MSEL17_0,944 MSEL2CR_MSEL16_0),945 PINMUX_DATA(MSIOF1_MCK1_MARK, PORT237_FN1), \946 PINMUX_DATA(PORT237_I2C_SCL2_MARK, PORT237_FN2, MSEL2CR_MSEL17_0,947 MSEL2CR_MSEL16_0),948 PINMUX_DATA(MSIOF1_SS1_MARK, PORT238_FN1), \949 PINMUX_DATA(VIO2_FIELD2_MARK, PORT238_FN6, MSEL4CR_MSEL27_1,950 MSEL4CR_MSEL26_0), \951 PINMUX_DATA(LCD2D22_MARK, PORT238_FN7),952 PINMUX_DATA(MSIOF1_SS2_MARK, PORT239_FN1), \953 PINMUX_DATA(VIO2_HD2_MARK, PORT239_FN6, MSEL4CR_MSEL27_1,954 MSEL4CR_MSEL26_0), \955 PINMUX_DATA(LCD2D23_MARK, PORT239_FN7),956 PINMUX_DATA(SCIFA6_TXD_MARK, PORT240_FN1),957 PINMUX_DATA(PORT241_IRDA_OUT_MARK, PORT241_FN1, MSEL4CR_MSEL19_0), \958 PINMUX_DATA(PORT241_IROUT_MARK, PORT241_FN2), \959 PINMUX_DATA(MFG4_OUT1_MARK, PORT241_FN3), \960 PINMUX_DATA(TPU4TO0_MARK, PORT241_FN4),961 PINMUX_DATA(PORT242_IRDA_IN_MARK, PORT242_FN1, MSEL4CR_MSEL19_0), \962 PINMUX_DATA(MFG4_IN2_MARK, PORT242_FN3),963 PINMUX_DATA(PORT243_IRDA_FIRSEL_MARK, PORT243_FN1, MSEL4CR_MSEL19_0), \964 PINMUX_DATA(PORT243_VIO_CKO2_MARK, PORT243_FN2),965 PINMUX_DATA(PORT244_SCIFA5_CTS__MARK, PORT244_FN1, MSEL4CR_MSEL21_0,966 MSEL4CR_MSEL20_0), \967 PINMUX_DATA(MFG2_IN1_MARK, PORT244_FN2), \968 PINMUX_DATA(PORT244_SCIFB_CTS__MARK, PORT244_FN3, MSEL4CR_MSEL22_1), \969 PINMUX_DATA(MSIOF2R_RXD_MARK, PORT244_FN7, MSEL4CR_MSEL11_1),970 PINMUX_DATA(PORT245_SCIFA5_RTS__MARK, PORT245_FN1, MSEL4CR_MSEL21_0,971 MSEL4CR_MSEL20_0), \972 PINMUX_DATA(MFG2_IN2_MARK, PORT245_FN2), \973 PINMUX_DATA(PORT245_SCIFB_RTS__MARK, PORT245_FN3, MSEL4CR_MSEL22_1), \974 PINMUX_DATA(MSIOF2R_TXD_MARK, PORT245_FN7, MSEL4CR_MSEL11_1),975 PINMUX_DATA(PORT246_SCIFA5_RXD_MARK, PORT246_FN1, MSEL4CR_MSEL21_0,976 MSEL4CR_MSEL20_0), \977 PINMUX_DATA(MFG1_OUT1_MARK, PORT246_FN2), \978 PINMUX_DATA(PORT246_SCIFB_RXD_MARK, PORT246_FN3, MSEL4CR_MSEL22_1), \979 PINMUX_DATA(TPU1TO0_MARK, PORT246_FN4),980 PINMUX_DATA(PORT247_SCIFA5_TXD_MARK, PORT247_FN1, MSEL4CR_MSEL21_0,981 MSEL4CR_MSEL20_0), \982 PINMUX_DATA(MFG3_OUT2_MARK, PORT247_FN2), \983 PINMUX_DATA(PORT247_SCIFB_TXD_MARK, PORT247_FN3, MSEL4CR_MSEL22_1), \984 PINMUX_DATA(TPU3TO1_MARK, PORT247_FN4),985 PINMUX_DATA(PORT248_SCIFA5_SCK_MARK, PORT248_FN1, MSEL4CR_MSEL21_0,986 MSEL4CR_MSEL20_0), \987 PINMUX_DATA(MFG2_OUT1_MARK, PORT248_FN2), \988 PINMUX_DATA(PORT248_SCIFB_SCK_MARK, PORT248_FN3, MSEL4CR_MSEL22_1), \989 PINMUX_DATA(TPU2TO0_MARK, PORT248_FN4), \990 PINMUX_DATA(PORT248_I2C_SCL3_MARK, PORT248_FN5, MSEL2CR_MSEL19_0,991 MSEL2CR_MSEL18_0), \992 PINMUX_DATA(MSIOF2R_TSCK_MARK, PORT248_FN7, MSEL4CR_MSEL11_1),993 PINMUX_DATA(PORT249_IROUT_MARK, PORT249_FN1), \994 PINMUX_DATA(MFG4_IN1_MARK, PORT249_FN2), \995 PINMUX_DATA(PORT249_I2C_SDA3_MARK, PORT249_FN5, MSEL2CR_MSEL19_0,996 MSEL2CR_MSEL18_0), \997 PINMUX_DATA(MSIOF2R_TSYNC_MARK, PORT249_FN7, MSEL4CR_MSEL11_1),998 PINMUX_DATA(SDHICLK0_MARK, PORT250_FN1),999 PINMUX_DATA(SDHICD0_MARK, PORT251_FN1),1000 PINMUX_DATA(SDHID0_0_MARK, PORT252_FN1),1001 PINMUX_DATA(SDHID0_1_MARK, PORT253_FN1),1002 PINMUX_DATA(SDHID0_2_MARK, PORT254_FN1),1003 PINMUX_DATA(SDHID0_3_MARK, PORT255_FN1),1004 PINMUX_DATA(SDHICMD0_MARK, PORT256_FN1),1005 PINMUX_DATA(SDHIWP0_MARK, PORT257_FN1),1006 PINMUX_DATA(SDHICLK1_MARK, PORT258_FN1),1007 PINMUX_DATA(SDHID1_0_MARK, PORT259_FN1), \1008 PINMUX_DATA(TS_SPSYNC2_MARK, PORT259_FN3),1009 PINMUX_DATA(SDHID1_1_MARK, PORT260_FN1), \1010 PINMUX_DATA(TS_SDAT2_MARK, PORT260_FN3),1011 PINMUX_DATA(SDHID1_2_MARK, PORT261_FN1), \1012 PINMUX_DATA(TS_SDEN2_MARK, PORT261_FN3),1013 PINMUX_DATA(SDHID1_3_MARK, PORT262_FN1), \1014 PINMUX_DATA(TS_SCK2_MARK, PORT262_FN3),1015 PINMUX_DATA(SDHICMD1_MARK, PORT263_FN1),1016 PINMUX_DATA(SDHICLK2_MARK, PORT264_FN1),1017 PINMUX_DATA(SDHID2_0_MARK, PORT265_FN1), \1018 PINMUX_DATA(TS_SPSYNC4_MARK, PORT265_FN3),1019 PINMUX_DATA(SDHID2_1_MARK, PORT266_FN1), \1020 PINMUX_DATA(TS_SDAT4_MARK, PORT266_FN3),1021 PINMUX_DATA(SDHID2_2_MARK, PORT267_FN1), \1022 PINMUX_DATA(TS_SDEN4_MARK, PORT267_FN3),1023 PINMUX_DATA(SDHID2_3_MARK, PORT268_FN1), \1024 PINMUX_DATA(TS_SCK4_MARK, PORT268_FN3),1025 PINMUX_DATA(SDHICMD2_MARK, PORT269_FN1),1026 PINMUX_DATA(MMCCLK0_MARK, PORT270_FN1, MSEL4CR_MSEL15_0),1027 PINMUX_DATA(MMCD0_0_MARK, PORT271_FN1, MSEL4CR_MSEL15_0),1028 PINMUX_DATA(MMCD0_1_MARK, PORT272_FN1, MSEL4CR_MSEL15_0),1029 PINMUX_DATA(MMCD0_2_MARK, PORT273_FN1, MSEL4CR_MSEL15_0),1030 PINMUX_DATA(MMCD0_3_MARK, PORT274_FN1, MSEL4CR_MSEL15_0),1031 PINMUX_DATA(MMCD0_4_MARK, PORT275_FN1, MSEL4CR_MSEL15_0),1032 PINMUX_DATA(TS_SPSYNC5_MARK, PORT275_FN3),1033 PINMUX_DATA(MMCD0_5_MARK, PORT276_FN1, MSEL4CR_MSEL15_0),1034 PINMUX_DATA(TS_SDAT5_MARK, PORT276_FN3),1035 PINMUX_DATA(MMCD0_6_MARK, PORT277_FN1, MSEL4CR_MSEL15_0),1036 PINMUX_DATA(TS_SDEN5_MARK, PORT277_FN3),1037 PINMUX_DATA(MMCD0_7_MARK, PORT278_FN1, MSEL4CR_MSEL15_0),1038 PINMUX_DATA(TS_SCK5_MARK, PORT278_FN3),1039 PINMUX_DATA(MMCCMD0_MARK, PORT279_FN1, MSEL4CR_MSEL15_0),1040 PINMUX_DATA(RESETOUTS__MARK, PORT281_FN1), \1041 PINMUX_DATA(EXTAL2OUT_MARK, PORT281_FN2),1042 PINMUX_DATA(MCP_WAIT__MCP_FRB_MARK, PORT288_FN1),1043 PINMUX_DATA(MCP_CKO_MARK, PORT289_FN1), \1044 PINMUX_DATA(MMCCLK1_MARK, PORT289_FN2, MSEL4CR_MSEL15_1),1045 PINMUX_DATA(MCP_D15_MCP_NAF15_MARK, PORT290_FN1),1046 PINMUX_DATA(MCP_D14_MCP_NAF14_MARK, PORT291_FN1),1047 PINMUX_DATA(MCP_D13_MCP_NAF13_MARK, PORT292_FN1),1048 PINMUX_DATA(MCP_D12_MCP_NAF12_MARK, PORT293_FN1),1049 PINMUX_DATA(MCP_D11_MCP_NAF11_MARK, PORT294_FN1),1050 PINMUX_DATA(MCP_D10_MCP_NAF10_MARK, PORT295_FN1),1051 PINMUX_DATA(MCP_D9_MCP_NAF9_MARK, PORT296_FN1),1052 PINMUX_DATA(MCP_D8_MCP_NAF8_MARK, PORT297_FN1), \1053 PINMUX_DATA(MMCCMD1_MARK, PORT297_FN2, MSEL4CR_MSEL15_1),1054 PINMUX_DATA(MCP_D7_MCP_NAF7_MARK, PORT298_FN1), \1055 PINMUX_DATA(MMCD1_7_MARK, PORT298_FN2, MSEL4CR_MSEL15_1),1056 1057 PINMUX_DATA(MCP_D6_MCP_NAF6_MARK, PORT299_FN1), \1058 PINMUX_DATA(MMCD1_6_MARK, PORT299_FN2, MSEL4CR_MSEL15_1),1059 PINMUX_DATA(MCP_D5_MCP_NAF5_MARK, PORT300_FN1), \1060 PINMUX_DATA(MMCD1_5_MARK, PORT300_FN2, MSEL4CR_MSEL15_1),1061 PINMUX_DATA(MCP_D4_MCP_NAF4_MARK, PORT301_FN1), \1062 PINMUX_DATA(MMCD1_4_MARK, PORT301_FN2, MSEL4CR_MSEL15_1),1063 PINMUX_DATA(MCP_D3_MCP_NAF3_MARK, PORT302_FN1), \1064 PINMUX_DATA(MMCD1_3_MARK, PORT302_FN2, MSEL4CR_MSEL15_1),1065 PINMUX_DATA(MCP_D2_MCP_NAF2_MARK, PORT303_FN1), \1066 PINMUX_DATA(MMCD1_2_MARK, PORT303_FN2, MSEL4CR_MSEL15_1),1067 PINMUX_DATA(MCP_D1_MCP_NAF1_MARK, PORT304_FN1), \1068 PINMUX_DATA(MMCD1_1_MARK, PORT304_FN2, MSEL4CR_MSEL15_1),1069 PINMUX_DATA(MCP_D0_MCP_NAF0_MARK, PORT305_FN1), \1070 PINMUX_DATA(MMCD1_0_MARK, PORT305_FN2, MSEL4CR_MSEL15_1),1071 PINMUX_DATA(MCP_NBRSTOUT__MARK, PORT306_FN1),1072 PINMUX_DATA(MCP_WE0__MCP_FWE_MARK, PORT309_FN1), \1073 PINMUX_DATA(MCP_RDWR_MCP_FWE_MARK, PORT309_FN2),1074 1075 /* MSEL2 special cases */1076 PINMUX_DATA(TSIF2_TS_XX1_MARK, MSEL2CR_MSEL14_0, MSEL2CR_MSEL13_0,1077 MSEL2CR_MSEL12_0),1078 PINMUX_DATA(TSIF2_TS_XX2_MARK, MSEL2CR_MSEL14_0, MSEL2CR_MSEL13_0,1079 MSEL2CR_MSEL12_1),1080 PINMUX_DATA(TSIF2_TS_XX3_MARK, MSEL2CR_MSEL14_0, MSEL2CR_MSEL13_1,1081 MSEL2CR_MSEL12_0),1082 PINMUX_DATA(TSIF2_TS_XX4_MARK, MSEL2CR_MSEL14_0, MSEL2CR_MSEL13_1,1083 MSEL2CR_MSEL12_1),1084 PINMUX_DATA(TSIF2_TS_XX5_MARK, MSEL2CR_MSEL14_1, MSEL2CR_MSEL13_0,1085 MSEL2CR_MSEL12_0),1086 PINMUX_DATA(TSIF1_TS_XX1_MARK, MSEL2CR_MSEL11_0, MSEL2CR_MSEL10_0,1087 MSEL2CR_MSEL9_0),1088 PINMUX_DATA(TSIF1_TS_XX2_MARK, MSEL2CR_MSEL11_0, MSEL2CR_MSEL10_0,1089 MSEL2CR_MSEL9_1),1090 PINMUX_DATA(TSIF1_TS_XX3_MARK, MSEL2CR_MSEL11_0, MSEL2CR_MSEL10_1,1091 MSEL2CR_MSEL9_0),1092 PINMUX_DATA(TSIF1_TS_XX4_MARK, MSEL2CR_MSEL11_0, MSEL2CR_MSEL10_1,1093 MSEL2CR_MSEL9_1),1094 PINMUX_DATA(TSIF1_TS_XX5_MARK, MSEL2CR_MSEL11_1, MSEL2CR_MSEL10_0,1095 MSEL2CR_MSEL9_0),1096 PINMUX_DATA(TSIF0_TS_XX1_MARK, MSEL2CR_MSEL8_0, MSEL2CR_MSEL7_0,1097 MSEL2CR_MSEL6_0),1098 PINMUX_DATA(TSIF0_TS_XX2_MARK, MSEL2CR_MSEL8_0, MSEL2CR_MSEL7_0,1099 MSEL2CR_MSEL6_1),1100 PINMUX_DATA(TSIF0_TS_XX3_MARK, MSEL2CR_MSEL8_0, MSEL2CR_MSEL7_1,1101 MSEL2CR_MSEL6_0),1102 PINMUX_DATA(TSIF0_TS_XX4_MARK, MSEL2CR_MSEL8_0, MSEL2CR_MSEL7_1,1103 MSEL2CR_MSEL6_1),1104 PINMUX_DATA(TSIF0_TS_XX5_MARK, MSEL2CR_MSEL8_1, MSEL2CR_MSEL7_0,1105 MSEL2CR_MSEL6_0),1106 PINMUX_DATA(MST1_TS_XX1_MARK, MSEL2CR_MSEL5_0, MSEL2CR_MSEL4_0,1107 MSEL2CR_MSEL3_0),1108 PINMUX_DATA(MST1_TS_XX2_MARK, MSEL2CR_MSEL5_0, MSEL2CR_MSEL4_0,1109 MSEL2CR_MSEL3_1),1110 PINMUX_DATA(MST1_TS_XX3_MARK, MSEL2CR_MSEL5_0, MSEL2CR_MSEL4_1,1111 MSEL2CR_MSEL3_0),1112 PINMUX_DATA(MST1_TS_XX4_MARK, MSEL2CR_MSEL5_0, MSEL2CR_MSEL4_1,1113 MSEL2CR_MSEL3_1),1114 PINMUX_DATA(MST1_TS_XX5_MARK, MSEL2CR_MSEL5_1, MSEL2CR_MSEL4_0,1115 MSEL2CR_MSEL3_0),1116 PINMUX_DATA(MST0_TS_XX1_MARK, MSEL2CR_MSEL2_0, MSEL2CR_MSEL1_0,1117 MSEL2CR_MSEL0_0),1118 PINMUX_DATA(MST0_TS_XX2_MARK, MSEL2CR_MSEL2_0, MSEL2CR_MSEL1_0,1119 MSEL2CR_MSEL0_1),1120 PINMUX_DATA(MST0_TS_XX3_MARK, MSEL2CR_MSEL2_0, MSEL2CR_MSEL1_1,1121 MSEL2CR_MSEL0_0),1122 PINMUX_DATA(MST0_TS_XX4_MARK, MSEL2CR_MSEL2_0, MSEL2CR_MSEL1_1,1123 MSEL2CR_MSEL0_1),1124 PINMUX_DATA(MST0_TS_XX5_MARK, MSEL2CR_MSEL2_1, MSEL2CR_MSEL1_0,1125 MSEL2CR_MSEL0_0),1126 1127 /* MSEL3 special cases */1128 PINMUX_DATA(SDHI0_VCCQ_MC0_ON_MARK, MSEL3CR_MSEL28_1),1129 PINMUX_DATA(SDHI0_VCCQ_MC0_OFF_MARK, MSEL3CR_MSEL28_0),1130 PINMUX_DATA(DEBUG_MON_VIO_MARK, MSEL3CR_MSEL15_0),1131 PINMUX_DATA(DEBUG_MON_LCDD_MARK, MSEL3CR_MSEL15_1),1132 PINMUX_DATA(LCDC_LCDC0_MARK, MSEL3CR_MSEL6_0),1133 PINMUX_DATA(LCDC_LCDC1_MARK, MSEL3CR_MSEL6_1),1134 1135 /* MSEL4 special cases */1136 PINMUX_DATA(IRQ9_MEM_INT_MARK, MSEL4CR_MSEL29_0),1137 PINMUX_DATA(IRQ9_MCP_INT_MARK, MSEL4CR_MSEL29_1),1138 PINMUX_DATA(A11_MARK, MSEL4CR_MSEL13_0, MSEL4CR_MSEL12_0),1139 PINMUX_DATA(KEYOUT8_MARK, MSEL4CR_MSEL13_0, MSEL4CR_MSEL12_1),1140 PINMUX_DATA(TPU4TO3_MARK, MSEL4CR_MSEL13_1, MSEL4CR_MSEL12_0),1141 PINMUX_DATA(RESETA_N_PU_ON_MARK, MSEL4CR_MSEL4_0),1142 PINMUX_DATA(RESETA_N_PU_OFF_MARK, MSEL4CR_MSEL4_1),1143 PINMUX_DATA(EDBGREQ_PD_MARK, MSEL4CR_MSEL1_0),1144 PINMUX_DATA(EDBGREQ_PU_MARK, MSEL4CR_MSEL1_1),1145};1146 1147#define __I (SH_PFC_PIN_CFG_INPUT)1148#define __O (SH_PFC_PIN_CFG_OUTPUT)1149#define __IO (SH_PFC_PIN_CFG_INPUT | SH_PFC_PIN_CFG_OUTPUT)1150#define __PD (SH_PFC_PIN_CFG_PULL_DOWN)1151#define __PU (SH_PFC_PIN_CFG_PULL_UP)1152#define __PUD (SH_PFC_PIN_CFG_PULL_UP_DOWN)1153 1154#define SH73A0_PIN_I_PD(pin) SH_PFC_PIN_CFG(pin, __I | __PD)1155#define SH73A0_PIN_I_PU(pin) SH_PFC_PIN_CFG(pin, __I | __PU)1156#define SH73A0_PIN_I_PU_PD(pin) SH_PFC_PIN_CFG(pin, __I | __PUD)1157#define SH73A0_PIN_IO(pin) SH_PFC_PIN_CFG(pin, __IO)1158#define SH73A0_PIN_IO_PD(pin) SH_PFC_PIN_CFG(pin, __IO | __PD)1159#define SH73A0_PIN_IO_PU(pin) SH_PFC_PIN_CFG(pin, __IO | __PU)1160#define SH73A0_PIN_IO_PU_PD(pin) SH_PFC_PIN_CFG(pin, __IO | __PUD)1161#define SH73A0_PIN_O(pin) SH_PFC_PIN_CFG(pin, __O)1162 1163/*1164 * Pins not associated with a GPIO port.1165 */1166enum {1167 PORT_ASSIGN_LAST(),1168 NOGP_ALL(),1169};1170 1171static const struct sh_pfc_pin pinmux_pins[] = {1172 /* Table 25-1 (I/O and Pull U/D) */1173 SH73A0_PIN_I_PD(0),1174 SH73A0_PIN_I_PU(1),1175 SH73A0_PIN_I_PU(2),1176 SH73A0_PIN_I_PU(3),1177 SH73A0_PIN_I_PU(4),1178 SH73A0_PIN_I_PU(5),1179 SH73A0_PIN_I_PU(6),1180 SH73A0_PIN_I_PU(7),1181 SH73A0_PIN_I_PU(8),1182 SH73A0_PIN_I_PD(9),1183 SH73A0_PIN_I_PD(10),1184 SH73A0_PIN_I_PU_PD(11),1185 SH73A0_PIN_IO_PU_PD(12),1186 SH73A0_PIN_IO_PU_PD(13),1187 SH73A0_PIN_IO_PU_PD(14),1188 SH73A0_PIN_IO_PU_PD(15),1189 SH73A0_PIN_IO_PD(16),1190 SH73A0_PIN_IO_PD(17),1191 SH73A0_PIN_IO_PU(18),1192 SH73A0_PIN_IO_PU(19),1193 SH73A0_PIN_O(20),1194 SH73A0_PIN_O(21),1195 SH73A0_PIN_O(22),1196 SH73A0_PIN_O(23),1197 SH73A0_PIN_O(24),1198 SH73A0_PIN_I_PD(25),1199 SH73A0_PIN_I_PD(26),1200 SH73A0_PIN_IO_PU(27),1201 SH73A0_PIN_IO_PU(28),1202 SH73A0_PIN_IO_PD(29),1203 SH73A0_PIN_IO_PD(30),1204 SH73A0_PIN_IO_PU(31),1205 SH73A0_PIN_IO_PD(32),1206 SH73A0_PIN_I_PU_PD(33),1207 SH73A0_PIN_IO_PD(34),1208 SH73A0_PIN_I_PU_PD(35),1209 SH73A0_PIN_IO_PD(36),1210 SH73A0_PIN_IO(37),1211 SH73A0_PIN_O(38),1212 SH73A0_PIN_I_PU(39),1213 SH73A0_PIN_I_PU_PD(40),1214 SH73A0_PIN_O(41),1215 SH73A0_PIN_IO_PD(42),1216 SH73A0_PIN_IO_PU_PD(43),1217 SH73A0_PIN_IO_PU_PD(44),1218 SH73A0_PIN_IO_PD(45),1219 SH73A0_PIN_IO_PD(46),1220 SH73A0_PIN_IO_PD(47),1221 SH73A0_PIN_I_PD(48),1222 SH73A0_PIN_IO_PU_PD(49),1223 SH73A0_PIN_IO_PD(50),1224 SH73A0_PIN_IO_PD(51),1225 SH73A0_PIN_O(52),1226 SH73A0_PIN_IO_PU_PD(53),1227 SH73A0_PIN_IO_PU_PD(54),1228 SH73A0_PIN_IO_PD(55),1229 SH73A0_PIN_I_PU_PD(56),1230 SH73A0_PIN_IO(57),1231 SH73A0_PIN_IO(58),1232 SH73A0_PIN_IO(59),1233 SH73A0_PIN_IO(60),1234 SH73A0_PIN_IO(61),1235 SH73A0_PIN_IO_PD(62),1236 SH73A0_PIN_IO_PD(63),1237 SH73A0_PIN_IO_PU_PD(64),1238 SH73A0_PIN_IO_PD(65),1239 SH73A0_PIN_IO_PU_PD(66),1240 SH73A0_PIN_IO_PU_PD(67),1241 SH73A0_PIN_IO_PU_PD(68),1242 SH73A0_PIN_IO_PU_PD(69),1243 SH73A0_PIN_IO_PU_PD(70),1244 SH73A0_PIN_IO_PU_PD(71),1245 SH73A0_PIN_IO_PU_PD(72),1246 SH73A0_PIN_I_PU_PD(73),1247 SH73A0_PIN_IO_PU(74),1248 SH73A0_PIN_IO_PU(75),1249 SH73A0_PIN_IO_PU(76),1250 SH73A0_PIN_IO_PU(77),1251 SH73A0_PIN_IO_PU(78),1252 SH73A0_PIN_IO_PU(79),1253 SH73A0_PIN_IO_PU(80),1254 SH73A0_PIN_IO_PU(81),1255 SH73A0_PIN_IO_PU(82),1256 SH73A0_PIN_IO_PU(83),1257 SH73A0_PIN_IO_PU(84),1258 SH73A0_PIN_IO_PU(85),1259 SH73A0_PIN_IO_PU(86),1260 SH73A0_PIN_IO_PU(87),1261 SH73A0_PIN_IO_PU(88),1262 SH73A0_PIN_IO_PU(89),1263 SH73A0_PIN_O(90),1264 SH73A0_PIN_IO_PU(91),1265 SH73A0_PIN_O(92),1266 SH73A0_PIN_IO_PU(93),1267 SH73A0_PIN_O(94),1268 SH73A0_PIN_I_PU_PD(95),1269 SH73A0_PIN_IO(96),1270 SH73A0_PIN_IO(97),1271 SH73A0_PIN_IO(98),1272 SH73A0_PIN_I_PU(99),1273 SH73A0_PIN_O(100),1274 SH73A0_PIN_O(101),1275 SH73A0_PIN_I_PU(102),1276 SH73A0_PIN_IO_PD(103),1277 SH73A0_PIN_I_PU_PD(104),1278 SH73A0_PIN_I_PD(105),1279 SH73A0_PIN_I_PD(106),1280 SH73A0_PIN_I_PU_PD(107),1281 SH73A0_PIN_I_PU_PD(108),1282 SH73A0_PIN_IO_PD(109),1283 SH73A0_PIN_IO_PD(110),1284 SH73A0_PIN_IO_PU_PD(111),1285 SH73A0_PIN_IO_PU_PD(112),1286 SH73A0_PIN_IO_PU_PD(113),1287 SH73A0_PIN_IO_PD(114),1288 SH73A0_PIN_IO_PU(115),1289 SH73A0_PIN_IO_PU(116),1290 SH73A0_PIN_IO_PU_PD(117),1291 SH73A0_PIN_IO_PU_PD(118),1292 SH73A0_PIN_IO_PD(128),1293 SH73A0_PIN_IO_PD(129),1294 SH73A0_PIN_IO_PU_PD(130),1295 SH73A0_PIN_IO_PD(131),1296 SH73A0_PIN_IO_PD(132),1297 SH73A0_PIN_IO_PD(133),1298 SH73A0_PIN_IO_PU_PD(134),1299 SH73A0_PIN_IO_PU_PD(135),1300 SH73A0_PIN_IO_PU_PD(136),1301 SH73A0_PIN_IO_PU_PD(137),1302 SH73A0_PIN_IO_PD(138),1303 SH73A0_PIN_IO_PD(139),1304 SH73A0_PIN_IO_PD(140),1305 SH73A0_PIN_IO_PD(141),1306 SH73A0_PIN_IO_PD(142),1307 SH73A0_PIN_IO_PD(143),1308 SH73A0_PIN_IO_PU_PD(144),1309 SH73A0_PIN_IO_PD(145),1310 SH73A0_PIN_IO_PU_PD(146),1311 SH73A0_PIN_IO_PU_PD(147),1312 SH73A0_PIN_IO_PU_PD(148),1313 SH73A0_PIN_IO_PU_PD(149),1314 SH73A0_PIN_I_PU_PD(150),1315 SH73A0_PIN_IO_PU_PD(151),1316 SH73A0_PIN_IO_PU_PD(152),1317 SH73A0_PIN_IO_PD(153),1318 SH73A0_PIN_IO_PD(154),1319 SH73A0_PIN_I_PU_PD(155),1320 SH73A0_PIN_IO_PU_PD(156),1321 SH73A0_PIN_I_PD(157),1322 SH73A0_PIN_IO_PD(158),1323 SH73A0_PIN_IO_PU_PD(159),1324 SH73A0_PIN_IO_PU_PD(160),1325 SH73A0_PIN_I_PU_PD(161),1326 SH73A0_PIN_I_PU_PD(162),1327 SH73A0_PIN_IO_PU_PD(163),1328 SH73A0_PIN_I_PU_PD(164),1329 SH73A0_PIN_IO_PD(192),1330 SH73A0_PIN_IO_PU_PD(193),1331 SH73A0_PIN_IO_PD(194),1332 SH73A0_PIN_IO_PU_PD(195),1333 SH73A0_PIN_IO_PD(196),1334 SH73A0_PIN_IO_PD(197),1335 SH73A0_PIN_IO_PD(198),1336 SH73A0_PIN_IO_PD(199),1337 SH73A0_PIN_IO_PU_PD(200),1338 SH73A0_PIN_IO_PU_PD(201),1339 SH73A0_PIN_IO_PU_PD(202),1340 SH73A0_PIN_IO_PU_PD(203),1341 SH73A0_PIN_IO_PU_PD(204),1342 SH73A0_PIN_IO_PU_PD(205),1343 SH73A0_PIN_IO_PU_PD(206),1344 SH73A0_PIN_IO_PD(207),1345 SH73A0_PIN_IO_PD(208),1346 SH73A0_PIN_IO_PD(209),1347 SH73A0_PIN_IO_PD(210),1348 SH73A0_PIN_IO_PD(211),1349 SH73A0_PIN_IO_PD(212),1350 SH73A0_PIN_IO_PD(213),1351 SH73A0_PIN_IO_PU_PD(214),1352 SH73A0_PIN_IO_PU_PD(215),1353 SH73A0_PIN_IO_PD(216),1354 SH73A0_PIN_IO_PD(217),1355 SH73A0_PIN_O(218),1356 SH73A0_PIN_IO_PD(219),1357 SH73A0_PIN_IO_PD(220),1358 SH73A0_PIN_IO_PU_PD(221),1359 SH73A0_PIN_IO_PU_PD(222),1360 SH73A0_PIN_I_PU_PD(223),1361 SH73A0_PIN_I_PU_PD(224),1362 SH73A0_PIN_IO_PU_PD(225),1363 SH73A0_PIN_O(226),1364 SH73A0_PIN_IO_PU_PD(227),1365 SH73A0_PIN_I_PU_PD(228),1366 SH73A0_PIN_I_PD(229),1367 SH73A0_PIN_IO(230),1368 SH73A0_PIN_IO_PU_PD(231),1369 SH73A0_PIN_IO_PU_PD(232),1370 SH73A0_PIN_I_PU_PD(233),1371 SH73A0_PIN_IO_PU_PD(234),1372 SH73A0_PIN_IO_PU_PD(235),1373 SH73A0_PIN_IO_PU_PD(236),1374 SH73A0_PIN_IO_PD(237),1375 SH73A0_PIN_IO_PU_PD(238),1376 SH73A0_PIN_IO_PU_PD(239),1377 SH73A0_PIN_IO_PU_PD(240),1378 SH73A0_PIN_O(241),1379 SH73A0_PIN_I_PD(242),1380 SH73A0_PIN_IO_PU_PD(243),1381 SH73A0_PIN_IO_PU_PD(244),1382 SH73A0_PIN_IO_PU_PD(245),1383 SH73A0_PIN_IO_PU_PD(246),1384 SH73A0_PIN_IO_PU_PD(247),1385 SH73A0_PIN_IO_PU_PD(248),1386 SH73A0_PIN_IO_PU_PD(249),1387 SH73A0_PIN_IO_PU_PD(250),1388 SH73A0_PIN_IO_PU_PD(251),1389 SH73A0_PIN_IO_PU_PD(252),1390 SH73A0_PIN_IO_PU_PD(253),1391 SH73A0_PIN_IO_PU_PD(254),1392 SH73A0_PIN_IO_PU_PD(255),1393 SH73A0_PIN_IO_PU_PD(256),1394 SH73A0_PIN_IO_PU_PD(257),1395 SH73A0_PIN_IO_PU_PD(258),1396 SH73A0_PIN_IO_PU_PD(259),1397 SH73A0_PIN_IO_PU_PD(260),1398 SH73A0_PIN_IO_PU_PD(261),1399 SH73A0_PIN_IO_PU_PD(262),1400 SH73A0_PIN_IO_PU_PD(263),1401 SH73A0_PIN_IO_PU_PD(264),1402 SH73A0_PIN_IO_PU_PD(265),1403 SH73A0_PIN_IO_PU_PD(266),1404 SH73A0_PIN_IO_PU_PD(267),1405 SH73A0_PIN_IO_PU_PD(268),1406 SH73A0_PIN_IO_PU_PD(269),1407 SH73A0_PIN_IO_PU_PD(270),1408 SH73A0_PIN_IO_PU_PD(271),1409 SH73A0_PIN_IO_PU_PD(272),1410 SH73A0_PIN_IO_PU_PD(273),1411 SH73A0_PIN_IO_PU_PD(274),1412 SH73A0_PIN_IO_PU_PD(275),1413 SH73A0_PIN_IO_PU_PD(276),1414 SH73A0_PIN_IO_PU_PD(277),1415 SH73A0_PIN_IO_PU_PD(278),1416 SH73A0_PIN_IO_PU_PD(279),1417 SH73A0_PIN_IO_PU_PD(280),1418 SH73A0_PIN_O(281),1419 SH73A0_PIN_O(282),1420 SH73A0_PIN_I_PU(288),1421 SH73A0_PIN_IO_PU_PD(289),1422 SH73A0_PIN_IO_PU_PD(290),1423 SH73A0_PIN_IO_PU_PD(291),1424 SH73A0_PIN_IO_PU_PD(292),1425 SH73A0_PIN_IO_PU_PD(293),1426 SH73A0_PIN_IO_PU_PD(294),1427 SH73A0_PIN_IO_PU_PD(295),1428 SH73A0_PIN_IO_PU_PD(296),1429 SH73A0_PIN_IO_PU_PD(297),1430 SH73A0_PIN_IO_PU_PD(298),1431 SH73A0_PIN_IO_PU_PD(299),1432 SH73A0_PIN_IO_PU_PD(300),1433 SH73A0_PIN_IO_PU_PD(301),1434 SH73A0_PIN_IO_PU_PD(302),1435 SH73A0_PIN_IO_PU_PD(303),1436 SH73A0_PIN_IO_PU_PD(304),1437 SH73A0_PIN_IO_PU_PD(305),1438 SH73A0_PIN_O(306),1439 SH73A0_PIN_O(307),1440 SH73A0_PIN_I_PU(308),1441 SH73A0_PIN_O(309),1442 1443 /* Pins not associated with a GPIO port */1444 PINMUX_NOGP_ALL(),1445};1446 1447/* - BSC -------------------------------------------------------------------- */1448static const unsigned int bsc_data_0_7_pins[] = {1449 /* D[0:7] */1450 74, 75, 76, 77, 78, 79, 80, 81,1451};1452static const unsigned int bsc_data_0_7_mux[] = {1453 D0_NAF0_MARK, D1_NAF1_MARK, D2_NAF2_MARK, D3_NAF3_MARK,1454 D4_NAF4_MARK, D5_NAF5_MARK, D6_NAF6_MARK, D7_NAF7_MARK,1455};1456static const unsigned int bsc_data_8_15_pins[] = {1457 /* D[8:15] */1458 82, 83, 84, 85, 86, 87, 88, 89,1459};1460static const unsigned int bsc_data_8_15_mux[] = {1461 D8_NAF8_MARK, D9_NAF9_MARK, D10_NAF10_MARK, D11_NAF11_MARK,1462 D12_NAF12_MARK, D13_NAF13_MARK, D14_NAF14_MARK, D15_NAF15_MARK,1463};1464static const unsigned int bsc_cs4_pins[] = {1465 /* CS */1466 90,1467};1468static const unsigned int bsc_cs4_mux[] = {1469 CS4__MARK,1470};1471static const unsigned int bsc_cs5_a_pins[] = {1472 /* CS */1473 91,1474};1475static const unsigned int bsc_cs5_a_mux[] = {1476 CS5A__MARK,1477};1478static const unsigned int bsc_cs5_b_pins[] = {1479 /* CS */1480 92,1481};1482static const unsigned int bsc_cs5_b_mux[] = {1483 CS5B__MARK,1484};1485static const unsigned int bsc_cs6_a_pins[] = {1486 /* CS */1487 94,1488};1489static const unsigned int bsc_cs6_a_mux[] = {1490 CS6A__MARK,1491};1492static const unsigned int bsc_cs6_b_pins[] = {1493 /* CS */1494 93,1495};1496static const unsigned int bsc_cs6_b_mux[] = {1497 CS6B__MARK,1498};1499static const unsigned int bsc_rd_pins[] = {1500 /* RD */1501 96,1502};1503static const unsigned int bsc_rd_mux[] = {1504 RD__FSC_MARK,1505};1506static const unsigned int bsc_rdwr_0_pins[] = {1507 /* RDWR */1508 91,1509};1510static const unsigned int bsc_rdwr_0_mux[] = {1511 PORT91_RDWR_MARK,1512};1513static const unsigned int bsc_rdwr_1_pins[] = {1514 /* RDWR */1515 97,1516};1517static const unsigned int bsc_rdwr_1_mux[] = {1518 RDWR_FWE_MARK,1519};1520static const unsigned int bsc_rdwr_2_pins[] = {1521 /* RDWR */1522 149,1523};1524static const unsigned int bsc_rdwr_2_mux[] = {1525 PORT149_RDWR_MARK,1526};1527static const unsigned int bsc_we0_pins[] = {1528 /* WE0 */1529 97,1530};1531static const unsigned int bsc_we0_mux[] = {1532 WE0__FWE_MARK,1533};1534static const unsigned int bsc_we1_pins[] = {1535 /* WE1 */1536 98,1537};1538static const unsigned int bsc_we1_mux[] = {1539 WE1__MARK,1540};1541/* - FSIA ------------------------------------------------------------------- */1542static const unsigned int fsia_mclk_in_pins[] = {1543 /* CK */1544 49,1545};1546static const unsigned int fsia_mclk_in_mux[] = {1547 FSIACK_MARK,1548};1549static const unsigned int fsia_mclk_out_pins[] = {1550 /* OMC */1551 49,1552};1553static const unsigned int fsia_mclk_out_mux[] = {1554 FSIAOMC_MARK,1555};1556static const unsigned int fsia_sclk_in_pins[] = {1557 /* ILR, IBT */1558 50, 51,1559};1560static const unsigned int fsia_sclk_in_mux[] = {1561 FSIAILR_MARK, FSIAIBT_MARK,1562};1563static const unsigned int fsia_sclk_out_pins[] = {1564 /* OLR, OBT */1565 50, 51,1566};1567static const unsigned int fsia_sclk_out_mux[] = {1568 FSIAOLR_MARK, FSIAOBT_MARK,1569};1570static const unsigned int fsia_data_in_pins[] = {1571 /* ISLD */1572 55,1573};1574static const unsigned int fsia_data_in_mux[] = {1575 FSIAISLD_MARK,1576};1577static const unsigned int fsia_data_out_pins[] = {1578 /* OSLD */1579 52,1580};1581static const unsigned int fsia_data_out_mux[] = {1582 FSIAOSLD_MARK,1583};1584static const unsigned int fsia_spdif_pins[] = {1585 /* SPDIF */1586 53,1587};1588static const unsigned int fsia_spdif_mux[] = {1589 FSIASPDIF_MARK,1590};1591/* - FSIB ------------------------------------------------------------------- */1592static const unsigned int fsib_mclk_in_pins[] = {1593 /* CK */1594 54,1595};1596static const unsigned int fsib_mclk_in_mux[] = {1597 FSIBCK_MARK,1598};1599static const unsigned int fsib_mclk_out_pins[] = {1600 /* OMC */1601 54,1602};1603static const unsigned int fsib_mclk_out_mux[] = {1604 FSIBOMC_MARK,1605};1606static const unsigned int fsib_sclk_in_pins[] = {1607 /* ILR, IBT */1608 37, 36,1609};1610static const unsigned int fsib_sclk_in_mux[] = {1611 FSIBILR_MARK, FSIBIBT_MARK,1612};1613static const unsigned int fsib_sclk_out_pins[] = {1614 /* OLR, OBT */1615 37, 36,1616};1617static const unsigned int fsib_sclk_out_mux[] = {1618 FSIBOLR_MARK, FSIBOBT_MARK,1619};1620static const unsigned int fsib_data_in_pins[] = {1621 /* ISLD */1622 39,1623};1624static const unsigned int fsib_data_in_mux[] = {1625 FSIBISLD_MARK,1626};1627static const unsigned int fsib_data_out_pins[] = {1628 /* OSLD */1629 38,1630};1631static const unsigned int fsib_data_out_mux[] = {1632 FSIBOSLD_MARK,1633};1634static const unsigned int fsib_spdif_pins[] = {1635 /* SPDIF */1636 53,1637};1638static const unsigned int fsib_spdif_mux[] = {1639 FSIBSPDIF_MARK,1640};1641/* - FSIC ------------------------------------------------------------------- */1642static const unsigned int fsic_mclk_in_pins[] = {1643 /* CK */1644 54,1645};1646static const unsigned int fsic_mclk_in_mux[] = {1647 FSICCK_MARK,1648};1649static const unsigned int fsic_mclk_out_pins[] = {1650 /* OMC */1651 54,1652};1653static const unsigned int fsic_mclk_out_mux[] = {1654 FSICOMC_MARK,1655};1656static const unsigned int fsic_sclk_in_pins[] = {1657 /* ILR, IBT */1658 46, 45,1659};1660static const unsigned int fsic_sclk_in_mux[] = {1661 FSICILR_MARK, FSICIBT_MARK,1662};1663static const unsigned int fsic_sclk_out_pins[] = {1664 /* OLR, OBT */1665 46, 45,1666};1667static const unsigned int fsic_sclk_out_mux[] = {1668 FSICOLR_MARK, FSICOBT_MARK,1669};1670static const unsigned int fsic_data_in_pins[] = {1671 /* ISLD */1672 48,1673};1674static const unsigned int fsic_data_in_mux[] = {1675 FSICISLD_MARK,1676};1677static const unsigned int fsic_data_out_pins[] = {1678 /* OSLD, OSLDT1, OSLDT2, OSLDT3 */1679 47, 44, 42, 16,1680};1681static const unsigned int fsic_data_out_mux[] = {1682 FSICOSLD_MARK, FSICOSLDT1_MARK, FSICOSLDT2_MARK, FSICOSLDT3_MARK,1683};1684static const unsigned int fsic_spdif_0_pins[] = {1685 /* SPDIF */1686 53,1687};1688static const unsigned int fsic_spdif_0_mux[] = {1689 PORT53_FSICSPDIF_MARK,1690};1691static const unsigned int fsic_spdif_1_pins[] = {1692 /* SPDIF */1693 47,1694};1695static const unsigned int fsic_spdif_1_mux[] = {1696 PORT47_FSICSPDIF_MARK,1697};1698/* - FSID ------------------------------------------------------------------- */1699static const unsigned int fsid_sclk_in_pins[] = {1700 /* ILR, IBT */1701 46, 45,1702};1703static const unsigned int fsid_sclk_in_mux[] = {1704 FSIDILR_MARK, FSIDIBT_MARK,1705};1706static const unsigned int fsid_sclk_out_pins[] = {1707 /* OLR, OBT */1708 46, 45,1709};1710static const unsigned int fsid_sclk_out_mux[] = {1711 FSIDOLR_MARK, FSIDOBT_MARK,1712};1713static const unsigned int fsid_data_in_pins[] = {1714 /* ISLD */1715 48,1716};1717static const unsigned int fsid_data_in_mux[] = {1718 FSIDISLD_MARK,1719};1720/* - I2C2 ------------------------------------------------------------------- */1721static const unsigned int i2c2_0_pins[] = {1722 /* SCL, SDA */1723 237, 236,1724};1725static const unsigned int i2c2_0_mux[] = {1726 PORT237_I2C_SCL2_MARK, PORT236_I2C_SDA2_MARK,1727};1728static const unsigned int i2c2_1_pins[] = {1729 /* SCL, SDA */1730 27, 28,1731};1732static const unsigned int i2c2_1_mux[] = {1733 PORT27_I2C_SCL2_MARK, PORT28_I2C_SDA2_MARK,1734};1735static const unsigned int i2c2_2_pins[] = {1736 /* SCL, SDA */1737 115, 116,1738};1739static const unsigned int i2c2_2_mux[] = {1740 PORT115_I2C_SCL2_MARK, PORT116_I2C_SDA2_MARK,1741};1742/* - I2C3 ------------------------------------------------------------------- */1743static const unsigned int i2c3_0_pins[] = {1744 /* SCL, SDA */1745 248, 249,1746};1747static const unsigned int i2c3_0_mux[] = {1748 PORT248_I2C_SCL3_MARK, PORT249_I2C_SDA3_MARK,1749};1750static const unsigned int i2c3_1_pins[] = {1751 /* SCL, SDA */1752 27, 28,1753};1754static const unsigned int i2c3_1_mux[] = {1755 PORT27_I2C_SCL3_MARK, PORT28_I2C_SDA3_MARK,1756};1757static const unsigned int i2c3_2_pins[] = {1758 /* SCL, SDA */1759 115, 116,1760};1761static const unsigned int i2c3_2_mux[] = {1762 PORT115_I2C_SCL3_MARK, PORT116_I2C_SDA3_MARK,1763};1764/* - IrDA ------------------------------------------------------------------- */1765static const unsigned int irda_0_pins[] = {1766 /* OUT, IN, FIRSEL */1767 241, 242, 243,1768};1769static const unsigned int irda_0_mux[] = {1770 PORT241_IRDA_OUT_MARK, PORT242_IRDA_IN_MARK, PORT243_IRDA_FIRSEL_MARK,1771};1772static const unsigned int irda_1_pins[] = {1773 /* OUT, IN, FIRSEL */1774 49, 53, 54,1775};1776static const unsigned int irda_1_mux[] = {1777 PORT49_IRDA_OUT_MARK, PORT53_IRDA_IN_MARK, PORT54_IRDA_FIRSEL_MARK,1778};1779/* - KEYSC ------------------------------------------------------------------ */1780static const unsigned int keysc_in_pins[] = {1781 /* KEYIN[0:7] */1782 66, 67, 68, 69, 70, 71, 72, 73,1783};1784static const unsigned int keysc_in_mux[] = {1785 KEYIN0_MARK, KEYIN1_MARK, KEYIN2_MARK, KEYIN3_MARK,1786 KEYIN4_MARK, KEYIN5_MARK, KEYIN6_MARK, KEYIN7_MARK,1787};1788static const unsigned int keysc_out04_pins[] = {1789 /* KEYOUT[0:4] */1790 65, 64, 63, 62, 61,1791};1792static const unsigned int keysc_out04_mux[] = {1793 KEYOUT0_MARK, KEYOUT1_MARK, KEYOUT2_MARK, KEYOUT3_MARK, KEYOUT4_MARK,1794};1795static const unsigned int keysc_out5_pins[] = {1796 /* KEYOUT5 */1797 60,1798};1799static const unsigned int keysc_out5_mux[] = {1800 KEYOUT5_MARK,1801};1802static const unsigned int keysc_out6_0_pins[] = {1803 /* KEYOUT6 */1804 59,1805};1806static const unsigned int keysc_out6_0_mux[] = {1807 PORT59_KEYOUT6_MARK,1808};1809static const unsigned int keysc_out6_1_pins[] = {1810 /* KEYOUT6 */1811 131,1812};1813static const unsigned int keysc_out6_1_mux[] = {1814 PORT131_KEYOUT6_MARK,1815};1816static const unsigned int keysc_out6_2_pins[] = {1817 /* KEYOUT6 */1818 143,1819};1820static const unsigned int keysc_out6_2_mux[] = {1821 PORT143_KEYOUT6_MARK,1822};1823static const unsigned int keysc_out7_0_pins[] = {1824 /* KEYOUT7 */1825 58,1826};1827static const unsigned int keysc_out7_0_mux[] = {1828 PORT58_KEYOUT7_MARK,1829};1830static const unsigned int keysc_out7_1_pins[] = {1831 /* KEYOUT7 */1832 132,1833};1834static const unsigned int keysc_out7_1_mux[] = {1835 PORT132_KEYOUT7_MARK,1836};1837static const unsigned int keysc_out7_2_pins[] = {1838 /* KEYOUT7 */1839 144,1840};1841static const unsigned int keysc_out7_2_mux[] = {1842 PORT144_KEYOUT7_MARK,1843};1844static const unsigned int keysc_out8_0_pins[] = {1845 /* KEYOUT8 */1846 PIN_A11,1847};1848static const unsigned int keysc_out8_0_mux[] = {1849 KEYOUT8_MARK,1850};1851static const unsigned int keysc_out8_1_pins[] = {1852 /* KEYOUT8 */1853 136,1854};1855static const unsigned int keysc_out8_1_mux[] = {1856 PORT136_KEYOUT8_MARK,1857};1858static const unsigned int keysc_out8_2_pins[] = {1859 /* KEYOUT8 */1860 138,1861};1862static const unsigned int keysc_out8_2_mux[] = {1863 PORT138_KEYOUT8_MARK,1864};1865static const unsigned int keysc_out9_0_pins[] = {1866 /* KEYOUT9 */1867 137,1868};1869static const unsigned int keysc_out9_0_mux[] = {1870 PORT137_KEYOUT9_MARK,1871};1872static const unsigned int keysc_out9_1_pins[] = {1873 /* KEYOUT9 */1874 139,1875};1876static const unsigned int keysc_out9_1_mux[] = {1877 PORT139_KEYOUT9_MARK,1878};1879static const unsigned int keysc_out9_2_pins[] = {1880 /* KEYOUT9 */1881 149,1882};1883static const unsigned int keysc_out9_2_mux[] = {1884 PORT149_KEYOUT9_MARK,1885};1886static const unsigned int keysc_out10_0_pins[] = {1887 /* KEYOUT10 */1888 132,1889};1890static const unsigned int keysc_out10_0_mux[] = {1891 PORT132_KEYOUT10_MARK,1892};1893static const unsigned int keysc_out10_1_pins[] = {1894 /* KEYOUT10 */1895 142,1896};1897static const unsigned int keysc_out10_1_mux[] = {1898 PORT142_KEYOUT10_MARK,1899};1900static const unsigned int keysc_out11_0_pins[] = {1901 /* KEYOUT11 */1902 131,1903};1904static const unsigned int keysc_out11_0_mux[] = {1905 PORT131_KEYOUT11_MARK,1906};1907static const unsigned int keysc_out11_1_pins[] = {1908 /* KEYOUT11 */1909 143,1910};1911static const unsigned int keysc_out11_1_mux[] = {1912 PORT143_KEYOUT11_MARK,1913};1914/* - LCD -------------------------------------------------------------------- */1915static const unsigned int lcd_data_pins[] = {1916 /* D[0:23] */1917 192, 193, 194, 195, 196, 197, 198, 199,1918 200, 201, 202, 203, 204, 205, 206, 207,1919 208, 209, 210, 211, 212, 213, 214, 2151920};1921static const unsigned int lcd_data_mux[] = {1922 LCDD0_MARK, LCDD1_MARK, LCDD2_MARK, LCDD3_MARK,1923 LCDD4_MARK, LCDD5_MARK, LCDD6_MARK, LCDD7_MARK,1924 LCDD8_MARK, LCDD9_MARK, LCDD10_MARK, LCDD11_MARK,1925 LCDD12_MARK, LCDD13_MARK, LCDD14_MARK, LCDD15_MARK,1926 LCDD16_MARK, LCDD17_MARK, LCDD18_MARK, LCDD19_MARK,1927 LCDD20_MARK, LCDD21_MARK, LCDD22_MARK, LCDD23_MARK,1928};1929static const unsigned int lcd_display_pins[] = {1930 /* DON */1931 222,1932};1933static const unsigned int lcd_display_mux[] = {1934 LCDDON_MARK,1935};1936static const unsigned int lcd_lclk_pins[] = {1937 /* LCLK */1938 221,1939};1940static const unsigned int lcd_lclk_mux[] = {1941 LCDLCLK_MARK,1942};1943static const unsigned int lcd_sync_pins[] = {1944 /* VSYN, HSYN, DCK, DISP */1945 220, 218, 216, 219,1946};1947static const unsigned int lcd_sync_mux[] = {1948 LCDVSYN_MARK, LCDHSYN_MARK, LCDDCK_MARK, LCDDISP_MARK,1949};1950static const unsigned int lcd_sys_pins[] = {1951 /* CS, WR, RD, RS */1952 218, 216, 217, 219,1953};1954static const unsigned int lcd_sys_mux[] = {1955 LCDCS__MARK, LCDWR__MARK, LCDRD__MARK, LCDRS_MARK,1956};1957/* - LCD2 ------------------------------------------------------------------- */1958static const unsigned int lcd2_data_pins[] = {1959 /* D[0:23] */1960 128, 129, 142, 143, 144, 145, 138, 139,1961 140, 141, 130, 131, 132, 133, 134, 135,1962 136, 137, 146, 147, 234, 235, 238, 2391963};1964static const unsigned int lcd2_data_mux[] = {1965 LCD2D0_MARK, LCD2D1_MARK, LCD2D2_MARK, LCD2D3_MARK,1966 LCD2D4_MARK, LCD2D5_MARK, LCD2D6_MARK, LCD2D7_MARK,1967 LCD2D8_MARK, LCD2D9_MARK, LCD2D10_MARK, LCD2D11_MARK,1968 LCD2D12_MARK, LCD2D13_MARK, LCD2D14_MARK, LCD2D15_MARK,1969 LCD2D16_MARK, LCD2D17_MARK, LCD2D18_MARK, LCD2D19_MARK,1970 LCD2D20_MARK, LCD2D21_MARK, LCD2D22_MARK, LCD2D23_MARK,1971};1972static const unsigned int lcd2_sync_0_pins[] = {1973 /* VSYN, HSYN, DCK, DISP */1974 128, 129, 146, 145,1975};1976static const unsigned int lcd2_sync_0_mux[] = {1977 PORT128_LCD2VSYN_MARK, PORT129_LCD2HSYN_MARK,1978 LCD2DCK_MARK, PORT145_LCD2DISP_MARK,1979};1980static const unsigned int lcd2_sync_1_pins[] = {1981 /* VSYN, HSYN, DCK, DISP */1982 222, 221, 219, 217,1983};1984static const unsigned int lcd2_sync_1_mux[] = {1985 PORT222_LCD2VSYN_MARK, PORT221_LCD2HSYN_MARK,1986 LCD2DCK_2_MARK, PORT217_LCD2DISP_MARK,1987};1988static const unsigned int lcd2_sys_0_pins[] = {1989 /* CS, WR, RD, RS */1990 129, 146, 147, 145,1991};1992static const unsigned int lcd2_sys_0_mux[] = {1993 PORT129_LCD2CS__MARK, PORT146_LCD2WR__MARK,1994 LCD2RD__MARK, PORT145_LCD2RS_MARK,1995};1996static const unsigned int lcd2_sys_1_pins[] = {1997 /* CS, WR, RD, RS */1998 221, 219, 147, 217,1999};2000static const unsigned int lcd2_sys_1_mux[] = {2001 PORT221_LCD2CS__MARK, PORT219_LCD2WR__MARK,2002 LCD2RD__MARK, PORT217_LCD2RS_MARK,2003};2004/* - MMCIF ------------------------------------------------------------------ */2005static const unsigned int mmc0_data_0_pins[] = {2006 /* D[0:7] */2007 271, 272, 273, 274, 275, 276, 277, 278,2008};2009static const unsigned int mmc0_data_0_mux[] = {2010 MMCD0_0_MARK, MMCD0_1_MARK, MMCD0_2_MARK, MMCD0_3_MARK,2011 MMCD0_4_MARK, MMCD0_5_MARK, MMCD0_6_MARK, MMCD0_7_MARK,2012};2013static const unsigned int mmc0_ctrl_0_pins[] = {2014 /* CMD, CLK */2015 279, 270,2016};2017static const unsigned int mmc0_ctrl_0_mux[] = {2018 MMCCMD0_MARK, MMCCLK0_MARK,2019};2020 2021static const unsigned int mmc0_data_1_pins[] = {2022 /* D[0:7] */2023 305, 304, 303, 302, 301, 300, 299, 298,2024};2025static const unsigned int mmc0_data_1_mux[] = {2026 MMCD1_0_MARK, MMCD1_1_MARK, MMCD1_2_MARK, MMCD1_3_MARK,2027 MMCD1_4_MARK, MMCD1_5_MARK, MMCD1_6_MARK, MMCD1_7_MARK,2028};2029static const unsigned int mmc0_ctrl_1_pins[] = {2030 /* CMD, CLK */2031 297, 289,2032};2033static const unsigned int mmc0_ctrl_1_mux[] = {2034 MMCCMD1_MARK, MMCCLK1_MARK,2035};2036/* - MSIOF0 ----------------------------------------------------------------- */2037static const unsigned int msiof0_rsck_pins[] = {2038 /* RSCK */2039 66,2040};2041static const unsigned int msiof0_rsck_mux[] = {2042 MSIOF0_RSCK_MARK,2043};2044static const unsigned int msiof0_tsck_pins[] = {2045 /* TSCK */2046 64,2047};2048static const unsigned int msiof0_tsck_mux[] = {2049 MSIOF0_TSCK_MARK,2050};2051static const unsigned int msiof0_rsync_pins[] = {2052 /* RSYNC */2053 67,2054};2055static const unsigned int msiof0_rsync_mux[] = {2056 MSIOF0_RSYNC_MARK,2057};2058static const unsigned int msiof0_tsync_pins[] = {2059 /* TSYNC */2060 63,2061};2062static const unsigned int msiof0_tsync_mux[] = {2063 MSIOF0_TSYNC_MARK,2064};2065static const unsigned int msiof0_ss1_pins[] = {2066 /* SS1 */2067 62,2068};2069static const unsigned int msiof0_ss1_mux[] = {2070 MSIOF0_SS1_MARK,2071};2072static const unsigned int msiof0_ss2_pins[] = {2073 /* SS2 */2074 71,2075};2076static const unsigned int msiof0_ss2_mux[] = {2077 MSIOF0_SS2_MARK,2078};2079static const unsigned int msiof0_rxd_pins[] = {2080 /* RXD */2081 70,2082};2083static const unsigned int msiof0_rxd_mux[] = {2084 MSIOF0_RXD_MARK,2085};2086static const unsigned int msiof0_txd_pins[] = {2087 /* TXD */2088 65,2089};2090static const unsigned int msiof0_txd_mux[] = {2091 MSIOF0_TXD_MARK,2092};2093static const unsigned int msiof0_mck0_pins[] = {2094 /* MSCK0 */2095 68,2096};2097static const unsigned int msiof0_mck0_mux[] = {2098 MSIOF0_MCK0_MARK,2099};2100 2101static const unsigned int msiof0_mck1_pins[] = {2102 /* MSCK1 */2103 69,2104};2105static const unsigned int msiof0_mck1_mux[] = {2106 MSIOF0_MCK1_MARK,2107};2108 2109static const unsigned int msiof0l_rsck_pins[] = {2110 /* RSCK */2111 214,2112};2113static const unsigned int msiof0l_rsck_mux[] = {2114 MSIOF0L_RSCK_MARK,2115};2116static const unsigned int msiof0l_tsck_pins[] = {2117 /* TSCK */2118 219,2119};2120static const unsigned int msiof0l_tsck_mux[] = {2121 MSIOF0L_TSCK_MARK,2122};2123static const unsigned int msiof0l_rsync_pins[] = {2124 /* RSYNC */2125 215,2126};2127static const unsigned int msiof0l_rsync_mux[] = {2128 MSIOF0L_RSYNC_MARK,2129};2130static const unsigned int msiof0l_tsync_pins[] = {2131 /* TSYNC */2132 217,2133};2134static const unsigned int msiof0l_tsync_mux[] = {2135 MSIOF0L_TSYNC_MARK,2136};2137static const unsigned int msiof0l_ss1_a_pins[] = {2138 /* SS1 */2139 207,2140};2141static const unsigned int msiof0l_ss1_a_mux[] = {2142 PORT207_MSIOF0L_SS1_MARK,2143};2144static const unsigned int msiof0l_ss1_b_pins[] = {2145 /* SS1 */2146 210,2147};2148static const unsigned int msiof0l_ss1_b_mux[] = {2149 PORT210_MSIOF0L_SS1_MARK,2150};2151static const unsigned int msiof0l_ss2_a_pins[] = {2152 /* SS2 */2153 208,2154};2155static const unsigned int msiof0l_ss2_a_mux[] = {2156 PORT208_MSIOF0L_SS2_MARK,2157};2158static const unsigned int msiof0l_ss2_b_pins[] = {2159 /* SS2 */2160 211,2161};2162static const unsigned int msiof0l_ss2_b_mux[] = {2163 PORT211_MSIOF0L_SS2_MARK,2164};2165static const unsigned int msiof0l_rxd_pins[] = {2166 /* RXD */2167 221,2168};2169static const unsigned int msiof0l_rxd_mux[] = {2170 MSIOF0L_RXD_MARK,2171};2172static const unsigned int msiof0l_txd_pins[] = {2173 /* TXD */2174 222,2175};2176static const unsigned int msiof0l_txd_mux[] = {2177 MSIOF0L_TXD_MARK,2178};2179static const unsigned int msiof0l_mck0_pins[] = {2180 /* MSCK0 */2181 212,2182};2183static const unsigned int msiof0l_mck0_mux[] = {2184 MSIOF0L_MCK0_MARK,2185};2186static const unsigned int msiof0l_mck1_pins[] = {2187 /* MSCK1 */2188 213,2189};2190static const unsigned int msiof0l_mck1_mux[] = {2191 MSIOF0L_MCK1_MARK,2192};2193/* - MSIOF1 ----------------------------------------------------------------- */2194static const unsigned int msiof1_rsck_pins[] = {2195 /* RSCK */2196 234,2197};2198static const unsigned int msiof1_rsck_mux[] = {2199 MSIOF1_RSCK_MARK,2200};2201static const unsigned int msiof1_tsck_pins[] = {2202 /* TSCK */2203 232,2204};2205static const unsigned int msiof1_tsck_mux[] = {2206 MSIOF1_TSCK_MARK,2207};2208static const unsigned int msiof1_rsync_pins[] = {2209 /* RSYNC */2210 235,2211};2212static const unsigned int msiof1_rsync_mux[] = {2213 MSIOF1_RSYNC_MARK,2214};2215static const unsigned int msiof1_tsync_pins[] = {2216 /* TSYNC */2217 231,2218};2219static const unsigned int msiof1_tsync_mux[] = {2220 MSIOF1_TSYNC_MARK,2221};2222static const unsigned int msiof1_ss1_pins[] = {2223 /* SS1 */2224 238,2225};2226static const unsigned int msiof1_ss1_mux[] = {2227 MSIOF1_SS1_MARK,2228};2229static const unsigned int msiof1_ss2_pins[] = {2230 /* SS2 */2231 239,2232};2233static const unsigned int msiof1_ss2_mux[] = {2234 MSIOF1_SS2_MARK,2235};2236static const unsigned int msiof1_rxd_pins[] = {2237 /* RXD */2238 233,2239};2240static const unsigned int msiof1_rxd_mux[] = {2241 MSIOF1_RXD_MARK,2242};2243static const unsigned int msiof1_txd_pins[] = {2244 /* TXD */2245 230,2246};2247static const unsigned int msiof1_txd_mux[] = {2248 MSIOF1_TXD_MARK,2249};2250static const unsigned int msiof1_mck0_pins[] = {2251 /* MSCK0 */2252 236,2253};2254static const unsigned int msiof1_mck0_mux[] = {2255 MSIOF1_MCK0_MARK,2256};2257static const unsigned int msiof1_mck1_pins[] = {2258 /* MSCK1 */2259 237,2260};2261static const unsigned int msiof1_mck1_mux[] = {2262 MSIOF1_MCK1_MARK,2263};2264/* - MSIOF2 ----------------------------------------------------------------- */2265static const unsigned int msiof2_rsck_pins[] = {2266 /* RSCK */2267 151,2268};2269static const unsigned int msiof2_rsck_mux[] = {2270 MSIOF2_RSCK_MARK,2271};2272static const unsigned int msiof2_tsck_pins[] = {2273 /* TSCK */2274 135,2275};2276static const unsigned int msiof2_tsck_mux[] = {2277 MSIOF2_TSCK_MARK,2278};2279static const unsigned int msiof2_rsync_pins[] = {2280 /* RSYNC */2281 152,2282};2283static const unsigned int msiof2_rsync_mux[] = {2284 MSIOF2_RSYNC_MARK,2285};2286static const unsigned int msiof2_tsync_pins[] = {2287 /* TSYNC */2288 133,2289};2290static const unsigned int msiof2_tsync_mux[] = {2291 MSIOF2_TSYNC_MARK,2292};2293static const unsigned int msiof2_ss1_a_pins[] = {2294 /* SS1 */2295 131,2296};2297static const unsigned int msiof2_ss1_a_mux[] = {2298 PORT131_MSIOF2_SS1_MARK,2299};2300static const unsigned int msiof2_ss1_b_pins[] = {2301 /* SS1 */2302 153,2303};2304static const unsigned int msiof2_ss1_b_mux[] = {2305 PORT153_MSIOF2_SS1_MARK,2306};2307static const unsigned int msiof2_ss2_a_pins[] = {2308 /* SS2 */2309 132,2310};2311static const unsigned int msiof2_ss2_a_mux[] = {2312 PORT132_MSIOF2_SS2_MARK,2313};2314static const unsigned int msiof2_ss2_b_pins[] = {2315 /* SS2 */2316 156,2317};2318static const unsigned int msiof2_ss2_b_mux[] = {2319 PORT156_MSIOF2_SS2_MARK,2320};2321static const unsigned int msiof2_rxd_a_pins[] = {2322 /* RXD */2323 130,2324};2325static const unsigned int msiof2_rxd_a_mux[] = {2326 PORT130_MSIOF2_RXD_MARK,2327};2328static const unsigned int msiof2_rxd_b_pins[] = {2329 /* RXD */2330 157,2331};2332static const unsigned int msiof2_rxd_b_mux[] = {2333 PORT157_MSIOF2_RXD_MARK,2334};2335static const unsigned int msiof2_txd_pins[] = {2336 /* TXD */2337 134,2338};2339static const unsigned int msiof2_txd_mux[] = {2340 MSIOF2_TXD_MARK,2341};2342static const unsigned int msiof2_mck0_pins[] = {2343 /* MSCK0 */2344 154,2345};2346static const unsigned int msiof2_mck0_mux[] = {2347 MSIOF2_MCK0_MARK,2348};2349static const unsigned int msiof2_mck1_pins[] = {2350 /* MSCK1 */2351 155,2352};2353static const unsigned int msiof2_mck1_mux[] = {2354 MSIOF2_MCK1_MARK,2355};2356 2357static const unsigned int msiof2r_tsck_pins[] = {2358 /* TSCK */2359 248,2360};2361static const unsigned int msiof2r_tsck_mux[] = {2362 MSIOF2R_TSCK_MARK,2363};2364static const unsigned int msiof2r_tsync_pins[] = {2365 /* TSYNC */2366 249,2367};2368static const unsigned int msiof2r_tsync_mux[] = {2369 MSIOF2R_TSYNC_MARK,2370};2371static const unsigned int msiof2r_rxd_pins[] = {2372 /* RXD */2373 244,2374};2375static const unsigned int msiof2r_rxd_mux[] = {2376 MSIOF2R_RXD_MARK,2377};2378static const unsigned int msiof2r_txd_pins[] = {2379 /* TXD */2380 245,2381};2382static const unsigned int msiof2r_txd_mux[] = {2383 MSIOF2R_TXD_MARK,2384};2385/* - MSIOF3 (Pin function name of MSIOF3 is named BBIF1) -------------------- */2386static const unsigned int msiof3_rsck_pins[] = {2387 /* RSCK */2388 115,2389};2390static const unsigned int msiof3_rsck_mux[] = {2391 BBIF1_RSCK_MARK,2392};2393static const unsigned int msiof3_tsck_pins[] = {2394 /* TSCK */2395 112,2396};2397static const unsigned int msiof3_tsck_mux[] = {2398 BBIF1_TSCK_MARK,2399};2400static const unsigned int msiof3_rsync_pins[] = {2401 /* RSYNC */2402 116,2403};2404static const unsigned int msiof3_rsync_mux[] = {2405 BBIF1_RSYNC_MARK,2406};2407static const unsigned int msiof3_tsync_pins[] = {2408 /* TSYNC */2409 113,2410};2411static const unsigned int msiof3_tsync_mux[] = {2412 BBIF1_TSYNC_MARK,2413};2414static const unsigned int msiof3_ss1_pins[] = {2415 /* SS1 */2416 117,2417};2418static const unsigned int msiof3_ss1_mux[] = {2419 BBIF1_SS1_MARK,2420};2421static const unsigned int msiof3_ss2_pins[] = {2422 /* SS2 */2423 109,2424};2425static const unsigned int msiof3_ss2_mux[] = {2426 BBIF1_SS2_MARK,2427};2428static const unsigned int msiof3_rxd_pins[] = {2429 /* RXD */2430 111,2431};2432static const unsigned int msiof3_rxd_mux[] = {2433 BBIF1_RXD_MARK,2434};2435static const unsigned int msiof3_txd_pins[] = {2436 /* TXD */2437 114,2438};2439static const unsigned int msiof3_txd_mux[] = {2440 BBIF1_TXD_MARK,2441};2442static const unsigned int msiof3_flow_pins[] = {2443 /* FLOW */2444 117,2445};2446static const unsigned int msiof3_flow_mux[] = {2447 BBIF1_FLOW_MARK,2448};2449 2450/* - SCIFA0 ----------------------------------------------------------------- */2451static const unsigned int scifa0_data_pins[] = {2452 /* RXD, TXD */2453 43, 17,2454};2455static const unsigned int scifa0_data_mux[] = {2456 SCIFA0_RXD_MARK, SCIFA0_TXD_MARK,2457};2458static const unsigned int scifa0_clk_pins[] = {2459 /* SCK */2460 16,2461};2462static const unsigned int scifa0_clk_mux[] = {2463 SCIFA0_SCK_MARK,2464};2465static const unsigned int scifa0_ctrl_pins[] = {2466 /* RTS, CTS */2467 42, 44,2468};2469static const unsigned int scifa0_ctrl_mux[] = {2470 SCIFA0_RTS__MARK, SCIFA0_CTS__MARK,2471};2472/* - SCIFA1 ----------------------------------------------------------------- */2473static const unsigned int scifa1_data_pins[] = {2474 /* RXD, TXD */2475 228, 225,2476};2477static const unsigned int scifa1_data_mux[] = {2478 SCIFA1_RXD_MARK, SCIFA1_TXD_MARK,2479};2480static const unsigned int scifa1_clk_pins[] = {2481 /* SCK */2482 226,2483};2484static const unsigned int scifa1_clk_mux[] = {2485 SCIFA1_SCK_MARK,2486};2487static const unsigned int scifa1_ctrl_pins[] = {2488 /* RTS, CTS */2489 227, 229,2490};2491static const unsigned int scifa1_ctrl_mux[] = {2492 SCIFA1_RTS__MARK, SCIFA1_CTS__MARK,2493};2494/* - SCIFA2 ----------------------------------------------------------------- */2495static const unsigned int scifa2_data_0_pins[] = {2496 /* RXD, TXD */2497 155, 154,2498};2499static const unsigned int scifa2_data_0_mux[] = {2500 SCIFA2_RXD1_MARK, SCIFA2_TXD1_MARK,2501};2502static const unsigned int scifa2_clk_0_pins[] = {2503 /* SCK */2504 158,2505};2506static const unsigned int scifa2_clk_0_mux[] = {2507 SCIFA2_SCK1_MARK,2508};2509static const unsigned int scifa2_ctrl_0_pins[] = {2510 /* RTS, CTS */2511 156, 157,2512};2513static const unsigned int scifa2_ctrl_0_mux[] = {2514 SCIFA2_RTS1__MARK, SCIFA2_CTS1__MARK,2515};2516static const unsigned int scifa2_data_1_pins[] = {2517 /* RXD, TXD */2518 233, 230,2519};2520static const unsigned int scifa2_data_1_mux[] = {2521 SCIFA2_RXD2_MARK, SCIFA2_TXD2_MARK,2522};2523static const unsigned int scifa2_clk_1_pins[] = {2524 /* SCK */2525 232,2526};2527static const unsigned int scifa2_clk_1_mux[] = {2528 SCIFA2_SCK2_MARK,2529};2530static const unsigned int scifa2_ctrl_1_pins[] = {2531 /* RTS, CTS */2532 234, 231,2533};2534static const unsigned int scifa2_ctrl_1_mux[] = {2535 SCIFA2_RTS2__MARK, SCIFA2_CTS2__MARK,2536};2537/* - SCIFA3 ----------------------------------------------------------------- */2538static const unsigned int scifa3_data_pins[] = {2539 /* RXD, TXD */2540 108, 110,2541};2542static const unsigned int scifa3_data_mux[] = {2543 SCIFA3_RXD_MARK, SCIFA3_TXD_MARK,2544};2545static const unsigned int scifa3_ctrl_pins[] = {2546 /* RTS, CTS */2547 109, 107,2548};2549static const unsigned int scifa3_ctrl_mux[] = {2550 SCIFA3_RTS__MARK, SCIFA3_CTS__MARK,2551};2552/* - SCIFA4 ----------------------------------------------------------------- */2553static const unsigned int scifa4_data_pins[] = {2554 /* RXD, TXD */2555 33, 32,2556};2557static const unsigned int scifa4_data_mux[] = {2558 SCIFA4_RXD_MARK, SCIFA4_TXD_MARK,2559};2560static const unsigned int scifa4_ctrl_pins[] = {2561 /* RTS, CTS */2562 34, 35,2563};2564static const unsigned int scifa4_ctrl_mux[] = {2565 SCIFA4_RTS__MARK, SCIFA4_CTS__MARK,2566};2567/* - SCIFA5 ----------------------------------------------------------------- */2568static const unsigned int scifa5_data_0_pins[] = {2569 /* RXD, TXD */2570 246, 247,2571};2572static const unsigned int scifa5_data_0_mux[] = {2573 PORT246_SCIFA5_RXD_MARK, PORT247_SCIFA5_TXD_MARK,2574};2575static const unsigned int scifa5_clk_0_pins[] = {2576 /* SCK */2577 248,2578};2579static const unsigned int scifa5_clk_0_mux[] = {2580 PORT248_SCIFA5_SCK_MARK,2581};2582static const unsigned int scifa5_ctrl_0_pins[] = {2583 /* RTS, CTS */2584 245, 244,2585};2586static const unsigned int scifa5_ctrl_0_mux[] = {2587 PORT245_SCIFA5_RTS__MARK, PORT244_SCIFA5_CTS__MARK,2588};2589static const unsigned int scifa5_data_1_pins[] = {2590 /* RXD, TXD */2591 195, 196,2592};2593static const unsigned int scifa5_data_1_mux[] = {2594 PORT195_SCIFA5_RXD_MARK, PORT196_SCIFA5_TXD_MARK,2595};2596static const unsigned int scifa5_clk_1_pins[] = {2597 /* SCK */2598 197,2599};2600static const unsigned int scifa5_clk_1_mux[] = {2601 PORT197_SCIFA5_SCK_MARK,2602};2603static const unsigned int scifa5_ctrl_1_pins[] = {2604 /* RTS, CTS */2605 194, 193,2606};2607static const unsigned int scifa5_ctrl_1_mux[] = {2608 PORT194_SCIFA5_RTS__MARK, PORT193_SCIFA5_CTS__MARK,2609};2610static const unsigned int scifa5_data_2_pins[] = {2611 /* RXD, TXD */2612 162, 160,2613};2614static const unsigned int scifa5_data_2_mux[] = {2615 PORT162_SCIFA5_RXD_MARK, PORT160_SCIFA5_TXD_MARK,2616};2617static const unsigned int scifa5_clk_2_pins[] = {2618 /* SCK */2619 159,2620};2621static const unsigned int scifa5_clk_2_mux[] = {2622 PORT159_SCIFA5_SCK_MARK,2623};2624static const unsigned int scifa5_ctrl_2_pins[] = {2625 /* RTS, CTS */2626 163, 161,2627};2628static const unsigned int scifa5_ctrl_2_mux[] = {2629 PORT163_SCIFA5_RTS__MARK, PORT161_SCIFA5_CTS__MARK,2630};2631/* - SCIFA6 ----------------------------------------------------------------- */2632static const unsigned int scifa6_pins[] = {2633 /* TXD */2634 240,2635};2636static const unsigned int scifa6_mux[] = {2637 SCIFA6_TXD_MARK,2638};2639/* - SCIFA7 ----------------------------------------------------------------- */2640static const unsigned int scifa7_data_pins[] = {2641 /* RXD, TXD */2642 12, 18,2643};2644static const unsigned int scifa7_data_mux[] = {2645 SCIFA7_RXD_MARK, SCIFA7_TXD_MARK,2646};2647static const unsigned int scifa7_ctrl_pins[] = {2648 /* RTS, CTS */2649 19, 13,2650};2651static const unsigned int scifa7_ctrl_mux[] = {2652 SCIFA7_RTS__MARK, SCIFA7_CTS__MARK,2653};2654/* - SCIFB ------------------------------------------------------------------ */2655static const unsigned int scifb_data_0_pins[] = {2656 /* RXD, TXD */2657 162, 160,2658};2659static const unsigned int scifb_data_0_mux[] = {2660 PORT162_SCIFB_RXD_MARK, PORT160_SCIFB_TXD_MARK,2661};2662static const unsigned int scifb_clk_0_pins[] = {2663 /* SCK */2664 159,2665};2666static const unsigned int scifb_clk_0_mux[] = {2667 PORT159_SCIFB_SCK_MARK,2668};2669static const unsigned int scifb_ctrl_0_pins[] = {2670 /* RTS, CTS */2671 163, 161,2672};2673static const unsigned int scifb_ctrl_0_mux[] = {2674 PORT163_SCIFB_RTS__MARK, PORT161_SCIFB_CTS__MARK,2675};2676static const unsigned int scifb_data_1_pins[] = {2677 /* RXD, TXD */2678 246, 247,2679};2680static const unsigned int scifb_data_1_mux[] = {2681 PORT246_SCIFB_RXD_MARK, PORT247_SCIFB_TXD_MARK,2682};2683static const unsigned int scifb_clk_1_pins[] = {2684 /* SCK */2685 248,2686};2687static const unsigned int scifb_clk_1_mux[] = {2688 PORT248_SCIFB_SCK_MARK,2689};2690static const unsigned int scifb_ctrl_1_pins[] = {2691 /* RTS, CTS */2692 245, 244,2693};2694static const unsigned int scifb_ctrl_1_mux[] = {2695 PORT245_SCIFB_RTS__MARK, PORT244_SCIFB_CTS__MARK,2696};2697/* - SDHI0 ------------------------------------------------------------------ */2698static const unsigned int sdhi0_data_pins[] = {2699 /* D[0:3] */2700 252, 253, 254, 255,2701};2702static const unsigned int sdhi0_data_mux[] = {2703 SDHID0_0_MARK, SDHID0_1_MARK, SDHID0_2_MARK, SDHID0_3_MARK,2704};2705static const unsigned int sdhi0_ctrl_pins[] = {2706 /* CMD, CLK */2707 256, 250,2708};2709static const unsigned int sdhi0_ctrl_mux[] = {2710 SDHICMD0_MARK, SDHICLK0_MARK,2711};2712static const unsigned int sdhi0_cd_pins[] = {2713 /* CD */2714 251,2715};2716static const unsigned int sdhi0_cd_mux[] = {2717 SDHICD0_MARK,2718};2719static const unsigned int sdhi0_wp_pins[] = {2720 /* WP */2721 257,2722};2723static const unsigned int sdhi0_wp_mux[] = {2724 SDHIWP0_MARK,2725};2726/* - SDHI1 ------------------------------------------------------------------ */2727static const unsigned int sdhi1_data_pins[] = {2728 /* D[0:3] */2729 259, 260, 261, 262,2730};2731static const unsigned int sdhi1_data_mux[] = {2732 SDHID1_0_MARK, SDHID1_1_MARK, SDHID1_2_MARK, SDHID1_3_MARK,2733};2734static const unsigned int sdhi1_ctrl_pins[] = {2735 /* CMD, CLK */2736 263, 258,2737};2738static const unsigned int sdhi1_ctrl_mux[] = {2739 SDHICMD1_MARK, SDHICLK1_MARK,2740};2741/* - SDHI2 ------------------------------------------------------------------ */2742static const unsigned int sdhi2_data_pins[] = {2743 /* D[0:3] */2744 265, 266, 267, 268,2745};2746static const unsigned int sdhi2_data_mux[] = {2747 SDHID2_0_MARK, SDHID2_1_MARK, SDHID2_2_MARK, SDHID2_3_MARK,2748};2749static const unsigned int sdhi2_ctrl_pins[] = {2750 /* CMD, CLK */2751 269, 264,2752};2753static const unsigned int sdhi2_ctrl_mux[] = {2754 SDHICMD2_MARK, SDHICLK2_MARK,2755};2756/* - TPU0 ------------------------------------------------------------------- */2757static const unsigned int tpu0_to0_pins[] = {2758 /* TO */2759 55,2760};2761static const unsigned int tpu0_to0_mux[] = {2762 TPU0TO0_MARK,2763};2764static const unsigned int tpu0_to1_pins[] = {2765 /* TO */2766 59,2767};2768static const unsigned int tpu0_to1_mux[] = {2769 TPU0TO1_MARK,2770};2771static const unsigned int tpu0_to2_pins[] = {2772 /* TO */2773 140,2774};2775static const unsigned int tpu0_to2_mux[] = {2776 TPU0TO2_MARK,2777};2778static const unsigned int tpu0_to3_pins[] = {2779 /* TO */2780 141,2781};2782static const unsigned int tpu0_to3_mux[] = {2783 TPU0TO3_MARK,2784};2785/* - TPU1 ------------------------------------------------------------------- */2786static const unsigned int tpu1_to0_pins[] = {2787 /* TO */2788 246,2789};2790static const unsigned int tpu1_to0_mux[] = {2791 TPU1TO0_MARK,2792};2793static const unsigned int tpu1_to1_0_pins[] = {2794 /* TO */2795 28,2796};2797static const unsigned int tpu1_to1_0_mux[] = {2798 PORT28_TPU1TO1_MARK,2799};2800static const unsigned int tpu1_to1_1_pins[] = {2801 /* TO */2802 29,2803};2804static const unsigned int tpu1_to1_1_mux[] = {2805 PORT29_TPU1TO1_MARK,2806};2807static const unsigned int tpu1_to2_pins[] = {2808 /* TO */2809 153,2810};2811static const unsigned int tpu1_to2_mux[] = {2812 TPU1TO2_MARK,2813};2814static const unsigned int tpu1_to3_pins[] = {2815 /* TO */2816 145,2817};2818static const unsigned int tpu1_to3_mux[] = {2819 TPU1TO3_MARK,2820};2821/* - TPU2 ------------------------------------------------------------------- */2822static const unsigned int tpu2_to0_pins[] = {2823 /* TO */2824 248,2825};2826static const unsigned int tpu2_to0_mux[] = {2827 TPU2TO0_MARK,2828};2829static const unsigned int tpu2_to1_pins[] = {2830 /* TO */2831 197,2832};2833static const unsigned int tpu2_to1_mux[] = {2834 TPU2TO1_MARK,2835};2836static const unsigned int tpu2_to2_pins[] = {2837 /* TO */2838 50,2839};2840static const unsigned int tpu2_to2_mux[] = {2841 TPU2TO2_MARK,2842};2843static const unsigned int tpu2_to3_pins[] = {2844 /* TO */2845 51,2846};2847static const unsigned int tpu2_to3_mux[] = {2848 TPU2TO3_MARK,2849};2850/* - TPU3 ------------------------------------------------------------------- */2851static const unsigned int tpu3_to0_pins[] = {2852 /* TO */2853 163,2854};2855static const unsigned int tpu3_to0_mux[] = {2856 TPU3TO0_MARK,2857};2858static const unsigned int tpu3_to1_pins[] = {2859 /* TO */2860 247,2861};2862static const unsigned int tpu3_to1_mux[] = {2863 TPU3TO1_MARK,2864};2865static const unsigned int tpu3_to2_pins[] = {2866 /* TO */2867 54,2868};2869static const unsigned int tpu3_to2_mux[] = {2870 TPU3TO2_MARK,2871};2872static const unsigned int tpu3_to3_pins[] = {2873 /* TO */2874 53,2875};2876static const unsigned int tpu3_to3_mux[] = {2877 TPU3TO3_MARK,2878};2879/* - TPU4 ------------------------------------------------------------------- */2880static const unsigned int tpu4_to0_pins[] = {2881 /* TO */2882 241,2883};2884static const unsigned int tpu4_to0_mux[] = {2885 TPU4TO0_MARK,2886};2887static const unsigned int tpu4_to1_pins[] = {2888 /* TO */2889 199,2890};2891static const unsigned int tpu4_to1_mux[] = {2892 TPU4TO1_MARK,2893};2894static const unsigned int tpu4_to2_pins[] = {2895 /* TO */2896 58,2897};2898static const unsigned int tpu4_to2_mux[] = {2899 TPU4TO2_MARK,2900};2901static const unsigned int tpu4_to3_pins[] = {2902 /* TO */2903 PIN_A11,2904};2905static const unsigned int tpu4_to3_mux[] = {2906 TPU4TO3_MARK,2907};2908/* - USB -------------------------------------------------------------------- */2909static const unsigned int usb_vbus_pins[] = {2910 /* VBUS */2911 0,2912};2913static const unsigned int usb_vbus_mux[] = {2914 VBUS_0_MARK,2915};2916 2917static const struct sh_pfc_pin_group pinmux_groups[] = {2918 SH_PFC_PIN_GROUP(bsc_data_0_7),2919 SH_PFC_PIN_GROUP(bsc_data_8_15),2920 SH_PFC_PIN_GROUP(bsc_cs4),2921 SH_PFC_PIN_GROUP(bsc_cs5_a),2922 SH_PFC_PIN_GROUP(bsc_cs5_b),2923 SH_PFC_PIN_GROUP(bsc_cs6_a),2924 SH_PFC_PIN_GROUP(bsc_cs6_b),2925 SH_PFC_PIN_GROUP(bsc_rd),2926 SH_PFC_PIN_GROUP(bsc_rdwr_0),2927 SH_PFC_PIN_GROUP(bsc_rdwr_1),2928 SH_PFC_PIN_GROUP(bsc_rdwr_2),2929 SH_PFC_PIN_GROUP(bsc_we0),2930 SH_PFC_PIN_GROUP(bsc_we1),2931 SH_PFC_PIN_GROUP(fsia_mclk_in),2932 SH_PFC_PIN_GROUP(fsia_mclk_out),2933 SH_PFC_PIN_GROUP(fsia_sclk_in),2934 SH_PFC_PIN_GROUP(fsia_sclk_out),2935 SH_PFC_PIN_GROUP(fsia_data_in),2936 SH_PFC_PIN_GROUP(fsia_data_out),2937 SH_PFC_PIN_GROUP(fsia_spdif),2938 SH_PFC_PIN_GROUP(fsib_mclk_in),2939 SH_PFC_PIN_GROUP(fsib_mclk_out),2940 SH_PFC_PIN_GROUP(fsib_sclk_in),2941 SH_PFC_PIN_GROUP(fsib_sclk_out),2942 SH_PFC_PIN_GROUP(fsib_data_in),2943 SH_PFC_PIN_GROUP(fsib_data_out),2944 SH_PFC_PIN_GROUP(fsib_spdif),2945 SH_PFC_PIN_GROUP(fsic_mclk_in),2946 SH_PFC_PIN_GROUP(fsic_mclk_out),2947 SH_PFC_PIN_GROUP(fsic_sclk_in),2948 SH_PFC_PIN_GROUP(fsic_sclk_out),2949 SH_PFC_PIN_GROUP(fsic_data_in),2950 SH_PFC_PIN_GROUP(fsic_data_out),2951 SH_PFC_PIN_GROUP(fsic_spdif_0),2952 SH_PFC_PIN_GROUP(fsic_spdif_1),2953 SH_PFC_PIN_GROUP(fsid_sclk_in),2954 SH_PFC_PIN_GROUP(fsid_sclk_out),2955 SH_PFC_PIN_GROUP(fsid_data_in),2956 SH_PFC_PIN_GROUP(i2c2_0),2957 SH_PFC_PIN_GROUP(i2c2_1),2958 SH_PFC_PIN_GROUP(i2c2_2),2959 SH_PFC_PIN_GROUP(i2c3_0),2960 SH_PFC_PIN_GROUP(i2c3_1),2961 SH_PFC_PIN_GROUP(i2c3_2),2962 SH_PFC_PIN_GROUP(irda_0),2963 SH_PFC_PIN_GROUP(irda_1),2964 BUS_DATA_PIN_GROUP(keysc_in, 5),2965 BUS_DATA_PIN_GROUP(keysc_in, 6),2966 BUS_DATA_PIN_GROUP(keysc_in, 7),2967 BUS_DATA_PIN_GROUP(keysc_in, 8),2968 SH_PFC_PIN_GROUP(keysc_out04),2969 SH_PFC_PIN_GROUP(keysc_out5),2970 SH_PFC_PIN_GROUP(keysc_out6_0),2971 SH_PFC_PIN_GROUP(keysc_out6_1),2972 SH_PFC_PIN_GROUP(keysc_out6_2),2973 SH_PFC_PIN_GROUP(keysc_out7_0),2974 SH_PFC_PIN_GROUP(keysc_out7_1),2975 SH_PFC_PIN_GROUP(keysc_out7_2),2976 SH_PFC_PIN_GROUP(keysc_out8_0),2977 SH_PFC_PIN_GROUP(keysc_out8_1),2978 SH_PFC_PIN_GROUP(keysc_out8_2),2979 SH_PFC_PIN_GROUP(keysc_out9_0),2980 SH_PFC_PIN_GROUP(keysc_out9_1),2981 SH_PFC_PIN_GROUP(keysc_out9_2),2982 SH_PFC_PIN_GROUP(keysc_out10_0),2983 SH_PFC_PIN_GROUP(keysc_out10_1),2984 SH_PFC_PIN_GROUP(keysc_out11_0),2985 SH_PFC_PIN_GROUP(keysc_out11_1),2986 BUS_DATA_PIN_GROUP(lcd_data, 8),2987 BUS_DATA_PIN_GROUP(lcd_data, 9),2988 BUS_DATA_PIN_GROUP(lcd_data, 12),2989 BUS_DATA_PIN_GROUP(lcd_data, 16),2990 BUS_DATA_PIN_GROUP(lcd_data, 18),2991 BUS_DATA_PIN_GROUP(lcd_data, 24),2992 SH_PFC_PIN_GROUP(lcd_display),2993 SH_PFC_PIN_GROUP(lcd_lclk),2994 SH_PFC_PIN_GROUP(lcd_sync),2995 SH_PFC_PIN_GROUP(lcd_sys),2996 BUS_DATA_PIN_GROUP(lcd2_data, 8),2997 BUS_DATA_PIN_GROUP(lcd2_data, 9),2998 BUS_DATA_PIN_GROUP(lcd2_data, 12),2999 BUS_DATA_PIN_GROUP(lcd2_data, 16),3000 BUS_DATA_PIN_GROUP(lcd2_data, 18),3001 BUS_DATA_PIN_GROUP(lcd2_data, 24),3002 SH_PFC_PIN_GROUP(lcd2_sync_0),3003 SH_PFC_PIN_GROUP(lcd2_sync_1),3004 SH_PFC_PIN_GROUP(lcd2_sys_0),3005 SH_PFC_PIN_GROUP(lcd2_sys_1),3006 BUS_DATA_PIN_GROUP(mmc0_data, 1, _0),3007 BUS_DATA_PIN_GROUP(mmc0_data, 4, _0),3008 BUS_DATA_PIN_GROUP(mmc0_data, 8, _0),3009 SH_PFC_PIN_GROUP(mmc0_ctrl_0),3010 BUS_DATA_PIN_GROUP(mmc0_data, 1, _1),3011 BUS_DATA_PIN_GROUP(mmc0_data, 4, _1),3012 BUS_DATA_PIN_GROUP(mmc0_data, 8, _1),3013 SH_PFC_PIN_GROUP(mmc0_ctrl_1),3014 SH_PFC_PIN_GROUP(msiof0_rsck),3015 SH_PFC_PIN_GROUP(msiof0_tsck),3016 SH_PFC_PIN_GROUP(msiof0_rsync),3017 SH_PFC_PIN_GROUP(msiof0_tsync),3018 SH_PFC_PIN_GROUP(msiof0_ss1),3019 SH_PFC_PIN_GROUP(msiof0_ss2),3020 SH_PFC_PIN_GROUP(msiof0_rxd),3021 SH_PFC_PIN_GROUP(msiof0_txd),3022 SH_PFC_PIN_GROUP(msiof0_mck0),3023 SH_PFC_PIN_GROUP(msiof0_mck1),3024 SH_PFC_PIN_GROUP(msiof0l_rsck),3025 SH_PFC_PIN_GROUP(msiof0l_tsck),3026 SH_PFC_PIN_GROUP(msiof0l_rsync),3027 SH_PFC_PIN_GROUP(msiof0l_tsync),3028 SH_PFC_PIN_GROUP(msiof0l_ss1_a),3029 SH_PFC_PIN_GROUP(msiof0l_ss1_b),3030 SH_PFC_PIN_GROUP(msiof0l_ss2_a),3031 SH_PFC_PIN_GROUP(msiof0l_ss2_b),3032 SH_PFC_PIN_GROUP(msiof0l_rxd),3033 SH_PFC_PIN_GROUP(msiof0l_txd),3034 SH_PFC_PIN_GROUP(msiof0l_mck0),3035 SH_PFC_PIN_GROUP(msiof0l_mck1),3036 SH_PFC_PIN_GROUP(msiof1_rsck),3037 SH_PFC_PIN_GROUP(msiof1_tsck),3038 SH_PFC_PIN_GROUP(msiof1_rsync),3039 SH_PFC_PIN_GROUP(msiof1_tsync),3040 SH_PFC_PIN_GROUP(msiof1_ss1),3041 SH_PFC_PIN_GROUP(msiof1_ss2),3042 SH_PFC_PIN_GROUP(msiof1_rxd),3043 SH_PFC_PIN_GROUP(msiof1_txd),3044 SH_PFC_PIN_GROUP(msiof1_mck0),3045 SH_PFC_PIN_GROUP(msiof1_mck1),3046 SH_PFC_PIN_GROUP(msiof2_rsck),3047 SH_PFC_PIN_GROUP(msiof2_tsck),3048 SH_PFC_PIN_GROUP(msiof2_rsync),3049 SH_PFC_PIN_GROUP(msiof2_tsync),3050 SH_PFC_PIN_GROUP(msiof2_ss1_a),3051 SH_PFC_PIN_GROUP(msiof2_ss1_b),3052 SH_PFC_PIN_GROUP(msiof2_ss2_a),3053 SH_PFC_PIN_GROUP(msiof2_ss2_b),3054 SH_PFC_PIN_GROUP(msiof2_rxd_a),3055 SH_PFC_PIN_GROUP(msiof2_rxd_b),3056 SH_PFC_PIN_GROUP(msiof2_txd),3057 SH_PFC_PIN_GROUP(msiof2_mck0),3058 SH_PFC_PIN_GROUP(msiof2_mck1),3059 SH_PFC_PIN_GROUP(msiof2r_tsck),3060 SH_PFC_PIN_GROUP(msiof2r_tsync),3061 SH_PFC_PIN_GROUP(msiof2r_rxd),3062 SH_PFC_PIN_GROUP(msiof2r_txd),3063 SH_PFC_PIN_GROUP(msiof3_rsck),3064 SH_PFC_PIN_GROUP(msiof3_tsck),3065 SH_PFC_PIN_GROUP(msiof3_rsync),3066 SH_PFC_PIN_GROUP(msiof3_tsync),3067 SH_PFC_PIN_GROUP(msiof3_ss1),3068 SH_PFC_PIN_GROUP(msiof3_ss2),3069 SH_PFC_PIN_GROUP(msiof3_rxd),3070 SH_PFC_PIN_GROUP(msiof3_txd),3071 SH_PFC_PIN_GROUP(msiof3_flow),3072 SH_PFC_PIN_GROUP(scifa0_data),3073 SH_PFC_PIN_GROUP(scifa0_clk),3074 SH_PFC_PIN_GROUP(scifa0_ctrl),3075 SH_PFC_PIN_GROUP(scifa1_data),3076 SH_PFC_PIN_GROUP(scifa1_clk),3077 SH_PFC_PIN_GROUP(scifa1_ctrl),3078 SH_PFC_PIN_GROUP(scifa2_data_0),3079 SH_PFC_PIN_GROUP(scifa2_clk_0),3080 SH_PFC_PIN_GROUP(scifa2_ctrl_0),3081 SH_PFC_PIN_GROUP(scifa2_data_1),3082 SH_PFC_PIN_GROUP(scifa2_clk_1),3083 SH_PFC_PIN_GROUP(scifa2_ctrl_1),3084 SH_PFC_PIN_GROUP(scifa3_data),3085 SH_PFC_PIN_GROUP(scifa3_ctrl),3086 SH_PFC_PIN_GROUP(scifa4_data),3087 SH_PFC_PIN_GROUP(scifa4_ctrl),3088 SH_PFC_PIN_GROUP(scifa5_data_0),3089 SH_PFC_PIN_GROUP(scifa5_clk_0),3090 SH_PFC_PIN_GROUP(scifa5_ctrl_0),3091 SH_PFC_PIN_GROUP(scifa5_data_1),3092 SH_PFC_PIN_GROUP(scifa5_clk_1),3093 SH_PFC_PIN_GROUP(scifa5_ctrl_1),3094 SH_PFC_PIN_GROUP(scifa5_data_2),3095 SH_PFC_PIN_GROUP(scifa5_clk_2),3096 SH_PFC_PIN_GROUP(scifa5_ctrl_2),3097 SH_PFC_PIN_GROUP(scifa6),3098 SH_PFC_PIN_GROUP(scifa7_data),3099 SH_PFC_PIN_GROUP(scifa7_ctrl),3100 SH_PFC_PIN_GROUP(scifb_data_0),3101 SH_PFC_PIN_GROUP(scifb_clk_0),3102 SH_PFC_PIN_GROUP(scifb_ctrl_0),3103 SH_PFC_PIN_GROUP(scifb_data_1),3104 SH_PFC_PIN_GROUP(scifb_clk_1),3105 SH_PFC_PIN_GROUP(scifb_ctrl_1),3106 BUS_DATA_PIN_GROUP(sdhi0_data, 1),3107 BUS_DATA_PIN_GROUP(sdhi0_data, 4),3108 SH_PFC_PIN_GROUP(sdhi0_ctrl),3109 SH_PFC_PIN_GROUP(sdhi0_cd),3110 SH_PFC_PIN_GROUP(sdhi0_wp),3111 BUS_DATA_PIN_GROUP(sdhi1_data, 1),3112 BUS_DATA_PIN_GROUP(sdhi1_data, 4),3113 SH_PFC_PIN_GROUP(sdhi1_ctrl),3114 BUS_DATA_PIN_GROUP(sdhi2_data, 1),3115 BUS_DATA_PIN_GROUP(sdhi2_data, 4),3116 SH_PFC_PIN_GROUP(sdhi2_ctrl),3117 SH_PFC_PIN_GROUP(tpu0_to0),3118 SH_PFC_PIN_GROUP(tpu0_to1),3119 SH_PFC_PIN_GROUP(tpu0_to2),3120 SH_PFC_PIN_GROUP(tpu0_to3),3121 SH_PFC_PIN_GROUP(tpu1_to0),3122 SH_PFC_PIN_GROUP(tpu1_to1_0),3123 SH_PFC_PIN_GROUP(tpu1_to1_1),3124 SH_PFC_PIN_GROUP(tpu1_to2),3125 SH_PFC_PIN_GROUP(tpu1_to3),3126 SH_PFC_PIN_GROUP(tpu2_to0),3127 SH_PFC_PIN_GROUP(tpu2_to1),3128 SH_PFC_PIN_GROUP(tpu2_to2),3129 SH_PFC_PIN_GROUP(tpu2_to3),3130 SH_PFC_PIN_GROUP(tpu3_to0),3131 SH_PFC_PIN_GROUP(tpu3_to1),3132 SH_PFC_PIN_GROUP(tpu3_to2),3133 SH_PFC_PIN_GROUP(tpu3_to3),3134 SH_PFC_PIN_GROUP(tpu4_to0),3135 SH_PFC_PIN_GROUP(tpu4_to1),3136 SH_PFC_PIN_GROUP(tpu4_to2),3137 SH_PFC_PIN_GROUP(tpu4_to3),3138 SH_PFC_PIN_GROUP(usb_vbus),3139};3140 3141static const char * const bsc_groups[] = {3142 "bsc_data_0_7",3143 "bsc_data_8_15",3144 "bsc_cs4",3145 "bsc_cs5_a",3146 "bsc_cs5_b",3147 "bsc_cs6_a",3148 "bsc_cs6_b",3149 "bsc_rd",3150 "bsc_rdwr_0",3151 "bsc_rdwr_1",3152 "bsc_rdwr_2",3153 "bsc_we0",3154 "bsc_we1",3155};3156 3157static const char * const fsia_groups[] = {3158 "fsia_mclk_in",3159 "fsia_mclk_out",3160 "fsia_sclk_in",3161 "fsia_sclk_out",3162 "fsia_data_in",3163 "fsia_data_out",3164 "fsia_spdif",3165};3166 3167static const char * const fsib_groups[] = {3168 "fsib_mclk_in",3169 "fsib_mclk_out",3170 "fsib_sclk_in",3171 "fsib_sclk_out",3172 "fsib_data_in",3173 "fsib_data_out",3174 "fsib_spdif",3175};3176 3177static const char * const fsic_groups[] = {3178 "fsic_mclk_in",3179 "fsic_mclk_out",3180 "fsic_sclk_in",3181 "fsic_sclk_out",3182 "fsic_data_in",3183 "fsic_data_out",3184 "fsic_spdif_0",3185 "fsic_spdif_1",3186};3187 3188static const char * const fsid_groups[] = {3189 "fsid_sclk_in",3190 "fsid_sclk_out",3191 "fsid_data_in",3192};3193 3194static const char * const i2c2_groups[] = {3195 "i2c2_0",3196 "i2c2_1",3197 "i2c2_2",3198};3199 3200static const char * const i2c3_groups[] = {3201 "i2c3_0",3202 "i2c3_1",3203 "i2c3_2",3204};3205 3206static const char * const irda_groups[] = {3207 "irda_0",3208 "irda_1",3209};3210 3211static const char * const keysc_groups[] = {3212 "keysc_in5",3213 "keysc_in6",3214 "keysc_in7",3215 "keysc_in8",3216 "keysc_out04",3217 "keysc_out5",3218 "keysc_out6_0",3219 "keysc_out6_1",3220 "keysc_out6_2",3221 "keysc_out7_0",3222 "keysc_out7_1",3223 "keysc_out7_2",3224 "keysc_out8_0",3225 "keysc_out8_1",3226 "keysc_out8_2",3227 "keysc_out9_0",3228 "keysc_out9_1",3229 "keysc_out9_2",3230 "keysc_out10_0",3231 "keysc_out10_1",3232 "keysc_out11_0",3233 "keysc_out11_1",3234};3235 3236static const char * const lcd_groups[] = {3237 "lcd_data8",3238 "lcd_data9",3239 "lcd_data12",3240 "lcd_data16",3241 "lcd_data18",3242 "lcd_data24",3243 "lcd_display",3244 "lcd_lclk",3245 "lcd_sync",3246 "lcd_sys",3247};3248 3249static const char * const lcd2_groups[] = {3250 "lcd2_data8",3251 "lcd2_data9",3252 "lcd2_data12",3253 "lcd2_data16",3254 "lcd2_data18",3255 "lcd2_data24",3256 "lcd2_sync_0",3257 "lcd2_sync_1",3258 "lcd2_sys_0",3259 "lcd2_sys_1",3260};3261 3262static const char * const mmc0_groups[] = {3263 "mmc0_data1_0",3264 "mmc0_data4_0",3265 "mmc0_data8_0",3266 "mmc0_ctrl_0",3267 "mmc0_data1_1",3268 "mmc0_data4_1",3269 "mmc0_data8_1",3270 "mmc0_ctrl_1",3271};3272 3273static const char * const msiof0_groups[] = {3274 "msiof0_rsck",3275 "msiof0_tsck",3276 "msiof0_rsync",3277 "msiof0_tsync",3278 "msiof0_ss1",3279 "msiof0_ss2",3280 "msiof0_rxd",3281 "msiof0_txd",3282 "msiof0_mck0",3283 "msiof0_mck1",3284 "msiof0l_rsck",3285 "msiof0l_tsck",3286 "msiof0l_rsync",3287 "msiof0l_tsync",3288 "msiof0l_ss1_a",3289 "msiof0l_ss1_b",3290 "msiof0l_ss2_a",3291 "msiof0l_ss2_b",3292 "msiof0l_rxd",3293 "msiof0l_txd",3294 "msiof0l_mck0",3295 "msiof0l_mck1",3296};3297 3298static const char * const msiof1_groups[] = {3299 "msiof1_rsck",3300 "msiof1_tsck",3301 "msiof1_rsync",3302 "msiof1_tsync",3303 "msiof1_ss1",3304 "msiof1_ss2",3305 "msiof1_rxd",3306 "msiof1_txd",3307 "msiof1_mck0",3308 "msiof1_mck1",3309};3310 3311static const char * const msiof2_groups[] = {3312 "msiof2_rsck",3313 "msiof2_tsck",3314 "msiof2_rsync",3315 "msiof2_tsync",3316 "msiof2_ss1_a",3317 "msiof2_ss1_b",3318 "msiof2_ss2_a",3319 "msiof2_ss2_b",3320 "msiof2_rxd_a",3321 "msiof2_rxd_b",3322 "msiof2_txd",3323 "msiof2_mck0",3324 "msiof2_mck1",3325 "msiof2r_tsck",3326 "msiof2r_tsync",3327 "msiof2r_rxd",3328 "msiof2r_txd",3329};3330 3331static const char * const msiof3_groups[] = {3332 "msiof3_rsck",3333 "msiof3_tsck",3334 "msiof3_rsync",3335 "msiof3_tsync",3336 "msiof3_ss1",3337 "msiof3_ss2",3338 "msiof3_rxd",3339 "msiof3_txd",3340 "msiof3_flow",3341};3342 3343static const char * const scifa0_groups[] = {3344 "scifa0_data",3345 "scifa0_clk",3346 "scifa0_ctrl",3347};3348 3349static const char * const scifa1_groups[] = {3350 "scifa1_data",3351 "scifa1_clk",3352 "scifa1_ctrl",3353};3354 3355static const char * const scifa2_groups[] = {3356 "scifa2_data_0",3357 "scifa2_clk_0",3358 "scifa2_ctrl_0",3359 "scifa2_data_1",3360 "scifa2_clk_1",3361 "scifa2_ctrl_1",3362};3363 3364static const char * const scifa3_groups[] = {3365 "scifa3_data",3366 "scifa3_ctrl",3367};3368 3369static const char * const scifa4_groups[] = {3370 "scifa4_data",3371 "scifa4_ctrl",3372};3373 3374static const char * const scifa5_groups[] = {3375 "scifa5_data_0",3376 "scifa5_clk_0",3377 "scifa5_ctrl_0",3378 "scifa5_data_1",3379 "scifa5_clk_1",3380 "scifa5_ctrl_1",3381 "scifa5_data_2",3382 "scifa5_clk_2",3383 "scifa5_ctrl_2",3384};3385 3386static const char * const scifa6_groups[] = {3387 "scifa6",3388};3389 3390static const char * const scifa7_groups[] = {3391 "scifa7_data",3392 "scifa7_ctrl",3393};3394 3395static const char * const scifb_groups[] = {3396 "scifb_data_0",3397 "scifb_clk_0",3398 "scifb_ctrl_0",3399 "scifb_data_1",3400 "scifb_clk_1",3401 "scifb_ctrl_1",3402};3403 3404static const char * const sdhi0_groups[] = {3405 "sdhi0_data1",3406 "sdhi0_data4",3407 "sdhi0_ctrl",3408 "sdhi0_cd",3409 "sdhi0_wp",3410};3411 3412static const char * const sdhi1_groups[] = {3413 "sdhi1_data1",3414 "sdhi1_data4",3415 "sdhi1_ctrl",3416};3417 3418static const char * const sdhi2_groups[] = {3419 "sdhi2_data1",3420 "sdhi2_data4",3421 "sdhi2_ctrl",3422};3423 3424static const char * const usb_groups[] = {3425 "usb_vbus",3426};3427 3428static const char * const tpu0_groups[] = {3429 "tpu0_to0",3430 "tpu0_to1",3431 "tpu0_to2",3432 "tpu0_to3",3433};3434 3435static const char * const tpu1_groups[] = {3436 "tpu1_to0",3437 "tpu1_to1_0",3438 "tpu1_to1_1",3439 "tpu1_to2",3440 "tpu1_to3",3441};3442 3443static const char * const tpu2_groups[] = {3444 "tpu2_to0",3445 "tpu2_to1",3446 "tpu2_to2",3447 "tpu2_to3",3448};3449 3450static const char * const tpu3_groups[] = {3451 "tpu3_to0",3452 "tpu3_to1",3453 "tpu3_to2",3454 "tpu3_to3",3455};3456 3457static const char * const tpu4_groups[] = {3458 "tpu4_to0",3459 "tpu4_to1",3460 "tpu4_to2",3461 "tpu4_to3",3462};3463 3464static const struct sh_pfc_function pinmux_functions[] = {3465 SH_PFC_FUNCTION(bsc),3466 SH_PFC_FUNCTION(fsia),3467 SH_PFC_FUNCTION(fsib),3468 SH_PFC_FUNCTION(fsic),3469 SH_PFC_FUNCTION(fsid),3470 SH_PFC_FUNCTION(i2c2),3471 SH_PFC_FUNCTION(i2c3),3472 SH_PFC_FUNCTION(irda),3473 SH_PFC_FUNCTION(keysc),3474 SH_PFC_FUNCTION(lcd),3475 SH_PFC_FUNCTION(lcd2),3476 SH_PFC_FUNCTION(mmc0),3477 SH_PFC_FUNCTION(msiof0),3478 SH_PFC_FUNCTION(msiof1),3479 SH_PFC_FUNCTION(msiof2),3480 SH_PFC_FUNCTION(msiof3),3481 SH_PFC_FUNCTION(scifa0),3482 SH_PFC_FUNCTION(scifa1),3483 SH_PFC_FUNCTION(scifa2),3484 SH_PFC_FUNCTION(scifa3),3485 SH_PFC_FUNCTION(scifa4),3486 SH_PFC_FUNCTION(scifa5),3487 SH_PFC_FUNCTION(scifa6),3488 SH_PFC_FUNCTION(scifa7),3489 SH_PFC_FUNCTION(scifb),3490 SH_PFC_FUNCTION(sdhi0),3491 SH_PFC_FUNCTION(sdhi1),3492 SH_PFC_FUNCTION(sdhi2),3493 SH_PFC_FUNCTION(tpu0),3494 SH_PFC_FUNCTION(tpu1),3495 SH_PFC_FUNCTION(tpu2),3496 SH_PFC_FUNCTION(tpu3),3497 SH_PFC_FUNCTION(tpu4),3498 SH_PFC_FUNCTION(usb),3499};3500 3501static const struct pinmux_cfg_reg pinmux_config_regs[] = {3502 PORTCR(0, 0xe6050000), /* PORT0CR */3503 PORTCR(1, 0xe6050001), /* PORT1CR */3504 PORTCR(2, 0xe6050002), /* PORT2CR */3505 PORTCR(3, 0xe6050003), /* PORT3CR */3506 PORTCR(4, 0xe6050004), /* PORT4CR */3507 PORTCR(5, 0xe6050005), /* PORT5CR */3508 PORTCR(6, 0xe6050006), /* PORT6CR */3509 PORTCR(7, 0xe6050007), /* PORT7CR */3510 PORTCR(8, 0xe6050008), /* PORT8CR */3511 PORTCR(9, 0xe6050009), /* PORT9CR */3512 3513 PORTCR(10, 0xe605000a), /* PORT10CR */3514 PORTCR(11, 0xe605000b), /* PORT11CR */3515 PORTCR(12, 0xe605000c), /* PORT12CR */3516 PORTCR(13, 0xe605000d), /* PORT13CR */3517 PORTCR(14, 0xe605000e), /* PORT14CR */3518 PORTCR(15, 0xe605000f), /* PORT15CR */3519 PORTCR(16, 0xe6050010), /* PORT16CR */3520 PORTCR(17, 0xe6050011), /* PORT17CR */3521 PORTCR(18, 0xe6050012), /* PORT18CR */3522 PORTCR(19, 0xe6050013), /* PORT19CR */3523 3524 PORTCR(20, 0xe6050014), /* PORT20CR */3525 PORTCR(21, 0xe6050015), /* PORT21CR */3526 PORTCR(22, 0xe6050016), /* PORT22CR */3527 PORTCR(23, 0xe6050017), /* PORT23CR */3528 PORTCR(24, 0xe6050018), /* PORT24CR */3529 PORTCR(25, 0xe6050019), /* PORT25CR */3530 PORTCR(26, 0xe605001a), /* PORT26CR */3531 PORTCR(27, 0xe605001b), /* PORT27CR */3532 PORTCR(28, 0xe605001c), /* PORT28CR */3533 PORTCR(29, 0xe605001d), /* PORT29CR */3534 3535 PORTCR(30, 0xe605001e), /* PORT30CR */3536 PORTCR(31, 0xe605001f), /* PORT31CR */3537 PORTCR(32, 0xe6051020), /* PORT32CR */3538 PORTCR(33, 0xe6051021), /* PORT33CR */3539 PORTCR(34, 0xe6051022), /* PORT34CR */3540 PORTCR(35, 0xe6051023), /* PORT35CR */3541 PORTCR(36, 0xe6051024), /* PORT36CR */3542 PORTCR(37, 0xe6051025), /* PORT37CR */3543 PORTCR(38, 0xe6051026), /* PORT38CR */3544 PORTCR(39, 0xe6051027), /* PORT39CR */3545 3546 PORTCR(40, 0xe6051028), /* PORT40CR */3547 PORTCR(41, 0xe6051029), /* PORT41CR */3548 PORTCR(42, 0xe605102a), /* PORT42CR */3549 PORTCR(43, 0xe605102b), /* PORT43CR */3550 PORTCR(44, 0xe605102c), /* PORT44CR */3551 PORTCR(45, 0xe605102d), /* PORT45CR */3552 PORTCR(46, 0xe605102e), /* PORT46CR */3553 PORTCR(47, 0xe605102f), /* PORT47CR */3554 PORTCR(48, 0xe6051030), /* PORT48CR */3555 PORTCR(49, 0xe6051031), /* PORT49CR */3556 3557 PORTCR(50, 0xe6051032), /* PORT50CR */3558 PORTCR(51, 0xe6051033), /* PORT51CR */3559 PORTCR(52, 0xe6051034), /* PORT52CR */3560 PORTCR(53, 0xe6051035), /* PORT53CR */3561 PORTCR(54, 0xe6051036), /* PORT54CR */3562 PORTCR(55, 0xe6051037), /* PORT55CR */3563 PORTCR(56, 0xe6051038), /* PORT56CR */3564 PORTCR(57, 0xe6051039), /* PORT57CR */3565 PORTCR(58, 0xe605103a), /* PORT58CR */3566 PORTCR(59, 0xe605103b), /* PORT59CR */3567 3568 PORTCR(60, 0xe605103c), /* PORT60CR */3569 PORTCR(61, 0xe605103d), /* PORT61CR */3570 PORTCR(62, 0xe605103e), /* PORT62CR */3571 PORTCR(63, 0xe605103f), /* PORT63CR */3572 PORTCR(64, 0xe6051040), /* PORT64CR */3573 PORTCR(65, 0xe6051041), /* PORT65CR */3574 PORTCR(66, 0xe6051042), /* PORT66CR */3575 PORTCR(67, 0xe6051043), /* PORT67CR */3576 PORTCR(68, 0xe6051044), /* PORT68CR */3577 PORTCR(69, 0xe6051045), /* PORT69CR */3578 3579 PORTCR(70, 0xe6051046), /* PORT70CR */3580 PORTCR(71, 0xe6051047), /* PORT71CR */3581 PORTCR(72, 0xe6051048), /* PORT72CR */3582 PORTCR(73, 0xe6051049), /* PORT73CR */3583 PORTCR(74, 0xe605104a), /* PORT74CR */3584 PORTCR(75, 0xe605104b), /* PORT75CR */3585 PORTCR(76, 0xe605104c), /* PORT76CR */3586 PORTCR(77, 0xe605104d), /* PORT77CR */3587 PORTCR(78, 0xe605104e), /* PORT78CR */3588 PORTCR(79, 0xe605104f), /* PORT79CR */3589 3590 PORTCR(80, 0xe6051050), /* PORT80CR */3591 PORTCR(81, 0xe6051051), /* PORT81CR */3592 PORTCR(82, 0xe6051052), /* PORT82CR */3593 PORTCR(83, 0xe6051053), /* PORT83CR */3594 PORTCR(84, 0xe6051054), /* PORT84CR */3595 PORTCR(85, 0xe6051055), /* PORT85CR */3596 PORTCR(86, 0xe6051056), /* PORT86CR */3597 PORTCR(87, 0xe6051057), /* PORT87CR */3598 PORTCR(88, 0xe6051058), /* PORT88CR */3599 PORTCR(89, 0xe6051059), /* PORT89CR */3600 3601 PORTCR(90, 0xe605105a), /* PORT90CR */3602 PORTCR(91, 0xe605105b), /* PORT91CR */3603 PORTCR(92, 0xe605105c), /* PORT92CR */3604 PORTCR(93, 0xe605105d), /* PORT93CR */3605 PORTCR(94, 0xe605105e), /* PORT94CR */3606 PORTCR(95, 0xe605105f), /* PORT95CR */3607 PORTCR(96, 0xe6052060), /* PORT96CR */3608 PORTCR(97, 0xe6052061), /* PORT97CR */3609 PORTCR(98, 0xe6052062), /* PORT98CR */3610 PORTCR(99, 0xe6052063), /* PORT99CR */3611 3612 PORTCR(100, 0xe6052064), /* PORT100CR */3613 PORTCR(101, 0xe6052065), /* PORT101CR */3614 PORTCR(102, 0xe6052066), /* PORT102CR */3615 PORTCR(103, 0xe6052067), /* PORT103CR */3616 PORTCR(104, 0xe6052068), /* PORT104CR */3617 PORTCR(105, 0xe6052069), /* PORT105CR */3618 PORTCR(106, 0xe605206a), /* PORT106CR */3619 PORTCR(107, 0xe605206b), /* PORT107CR */3620 PORTCR(108, 0xe605206c), /* PORT108CR */3621 PORTCR(109, 0xe605206d), /* PORT109CR */3622 3623 PORTCR(110, 0xe605206e), /* PORT110CR */3624 PORTCR(111, 0xe605206f), /* PORT111CR */3625 PORTCR(112, 0xe6052070), /* PORT112CR */3626 PORTCR(113, 0xe6052071), /* PORT113CR */3627 PORTCR(114, 0xe6052072), /* PORT114CR */3628 PORTCR(115, 0xe6052073), /* PORT115CR */3629 PORTCR(116, 0xe6052074), /* PORT116CR */3630 PORTCR(117, 0xe6052075), /* PORT117CR */3631 PORTCR(118, 0xe6052076), /* PORT118CR */3632 3633 PORTCR(128, 0xe6052080), /* PORT128CR */3634 PORTCR(129, 0xe6052081), /* PORT129CR */3635 3636 PORTCR(130, 0xe6052082), /* PORT130CR */3637 PORTCR(131, 0xe6052083), /* PORT131CR */3638 PORTCR(132, 0xe6052084), /* PORT132CR */3639 PORTCR(133, 0xe6052085), /* PORT133CR */3640 PORTCR(134, 0xe6052086), /* PORT134CR */3641 PORTCR(135, 0xe6052087), /* PORT135CR */3642 PORTCR(136, 0xe6052088), /* PORT136CR */3643 PORTCR(137, 0xe6052089), /* PORT137CR */3644 PORTCR(138, 0xe605208a), /* PORT138CR */3645 PORTCR(139, 0xe605208b), /* PORT139CR */3646 3647 PORTCR(140, 0xe605208c), /* PORT140CR */3648 PORTCR(141, 0xe605208d), /* PORT141CR */3649 PORTCR(142, 0xe605208e), /* PORT142CR */3650 PORTCR(143, 0xe605208f), /* PORT143CR */3651 PORTCR(144, 0xe6052090), /* PORT144CR */3652 PORTCR(145, 0xe6052091), /* PORT145CR */3653 PORTCR(146, 0xe6052092), /* PORT146CR */3654 PORTCR(147, 0xe6052093), /* PORT147CR */3655 PORTCR(148, 0xe6052094), /* PORT148CR */3656 PORTCR(149, 0xe6052095), /* PORT149CR */3657 3658 PORTCR(150, 0xe6052096), /* PORT150CR */3659 PORTCR(151, 0xe6052097), /* PORT151CR */3660 PORTCR(152, 0xe6052098), /* PORT152CR */3661 PORTCR(153, 0xe6052099), /* PORT153CR */3662 PORTCR(154, 0xe605209a), /* PORT154CR */3663 PORTCR(155, 0xe605209b), /* PORT155CR */3664 PORTCR(156, 0xe605209c), /* PORT156CR */3665 PORTCR(157, 0xe605209d), /* PORT157CR */3666 PORTCR(158, 0xe605209e), /* PORT158CR */3667 PORTCR(159, 0xe605209f), /* PORT159CR */3668 3669 PORTCR(160, 0xe60520a0), /* PORT160CR */3670 PORTCR(161, 0xe60520a1), /* PORT161CR */3671 PORTCR(162, 0xe60520a2), /* PORT162CR */3672 PORTCR(163, 0xe60520a3), /* PORT163CR */3673 PORTCR(164, 0xe60520a4), /* PORT164CR */3674 3675 PORTCR(192, 0xe60520c0), /* PORT192CR */3676 PORTCR(193, 0xe60520c1), /* PORT193CR */3677 PORTCR(194, 0xe60520c2), /* PORT194CR */3678 PORTCR(195, 0xe60520c3), /* PORT195CR */3679 PORTCR(196, 0xe60520c4), /* PORT196CR */3680 PORTCR(197, 0xe60520c5), /* PORT197CR */3681 PORTCR(198, 0xe60520c6), /* PORT198CR */3682 PORTCR(199, 0xe60520c7), /* PORT199CR */3683 3684 PORTCR(200, 0xe60520c8), /* PORT200CR */3685 PORTCR(201, 0xe60520c9), /* PORT201CR */3686 PORTCR(202, 0xe60520ca), /* PORT202CR */3687 PORTCR(203, 0xe60520cb), /* PORT203CR */3688 PORTCR(204, 0xe60520cc), /* PORT204CR */3689 PORTCR(205, 0xe60520cd), /* PORT205CR */3690 PORTCR(206, 0xe60520ce), /* PORT206CR */3691 PORTCR(207, 0xe60520cf), /* PORT207CR */3692 PORTCR(208, 0xe60520d0), /* PORT208CR */3693 PORTCR(209, 0xe60520d1), /* PORT209CR */3694 3695 PORTCR(210, 0xe60520d2), /* PORT210CR */3696 PORTCR(211, 0xe60520d3), /* PORT211CR */3697 PORTCR(212, 0xe60520d4), /* PORT212CR */3698 PORTCR(213, 0xe60520d5), /* PORT213CR */3699 PORTCR(214, 0xe60520d6), /* PORT214CR */3700 PORTCR(215, 0xe60520d7), /* PORT215CR */3701 PORTCR(216, 0xe60520d8), /* PORT216CR */3702 PORTCR(217, 0xe60520d9), /* PORT217CR */3703 PORTCR(218, 0xe60520da), /* PORT218CR */3704 PORTCR(219, 0xe60520db), /* PORT219CR */3705 3706 PORTCR(220, 0xe60520dc), /* PORT220CR */3707 PORTCR(221, 0xe60520dd), /* PORT221CR */3708 PORTCR(222, 0xe60520de), /* PORT222CR */3709 PORTCR(223, 0xe60520df), /* PORT223CR */3710 PORTCR(224, 0xe60530e0), /* PORT224CR */3711 PORTCR(225, 0xe60530e1), /* PORT225CR */3712 PORTCR(226, 0xe60530e2), /* PORT226CR */3713 PORTCR(227, 0xe60530e3), /* PORT227CR */3714 PORTCR(228, 0xe60530e4), /* PORT228CR */3715 PORTCR(229, 0xe60530e5), /* PORT229CR */3716 3717 PORTCR(230, 0xe60530e6), /* PORT230CR */3718 PORTCR(231, 0xe60530e7), /* PORT231CR */3719 PORTCR(232, 0xe60530e8), /* PORT232CR */3720 PORTCR(233, 0xe60530e9), /* PORT233CR */3721 PORTCR(234, 0xe60530ea), /* PORT234CR */3722 PORTCR(235, 0xe60530eb), /* PORT235CR */3723 PORTCR(236, 0xe60530ec), /* PORT236CR */3724 PORTCR(237, 0xe60530ed), /* PORT237CR */3725 PORTCR(238, 0xe60530ee), /* PORT238CR */3726 PORTCR(239, 0xe60530ef), /* PORT239CR */3727 3728 PORTCR(240, 0xe60530f0), /* PORT240CR */3729 PORTCR(241, 0xe60530f1), /* PORT241CR */3730 PORTCR(242, 0xe60530f2), /* PORT242CR */3731 PORTCR(243, 0xe60530f3), /* PORT243CR */3732 PORTCR(244, 0xe60530f4), /* PORT244CR */3733 PORTCR(245, 0xe60530f5), /* PORT245CR */3734 PORTCR(246, 0xe60530f6), /* PORT246CR */3735 PORTCR(247, 0xe60530f7), /* PORT247CR */3736 PORTCR(248, 0xe60530f8), /* PORT248CR */3737 PORTCR(249, 0xe60530f9), /* PORT249CR */3738 3739 PORTCR(250, 0xe60530fa), /* PORT250CR */3740 PORTCR(251, 0xe60530fb), /* PORT251CR */3741 PORTCR(252, 0xe60530fc), /* PORT252CR */3742 PORTCR(253, 0xe60530fd), /* PORT253CR */3743 PORTCR(254, 0xe60530fe), /* PORT254CR */3744 PORTCR(255, 0xe60530ff), /* PORT255CR */3745 PORTCR(256, 0xe6053100), /* PORT256CR */3746 PORTCR(257, 0xe6053101), /* PORT257CR */3747 PORTCR(258, 0xe6053102), /* PORT258CR */3748 PORTCR(259, 0xe6053103), /* PORT259CR */3749 3750 PORTCR(260, 0xe6053104), /* PORT260CR */3751 PORTCR(261, 0xe6053105), /* PORT261CR */3752 PORTCR(262, 0xe6053106), /* PORT262CR */3753 PORTCR(263, 0xe6053107), /* PORT263CR */3754 PORTCR(264, 0xe6053108), /* PORT264CR */3755 PORTCR(265, 0xe6053109), /* PORT265CR */3756 PORTCR(266, 0xe605310a), /* PORT266CR */3757 PORTCR(267, 0xe605310b), /* PORT267CR */3758 PORTCR(268, 0xe605310c), /* PORT268CR */3759 PORTCR(269, 0xe605310d), /* PORT269CR */3760 3761 PORTCR(270, 0xe605310e), /* PORT270CR */3762 PORTCR(271, 0xe605310f), /* PORT271CR */3763 PORTCR(272, 0xe6053110), /* PORT272CR */3764 PORTCR(273, 0xe6053111), /* PORT273CR */3765 PORTCR(274, 0xe6053112), /* PORT274CR */3766 PORTCR(275, 0xe6053113), /* PORT275CR */3767 PORTCR(276, 0xe6053114), /* PORT276CR */3768 PORTCR(277, 0xe6053115), /* PORT277CR */3769 PORTCR(278, 0xe6053116), /* PORT278CR */3770 PORTCR(279, 0xe6053117), /* PORT279CR */3771 3772 PORTCR(280, 0xe6053118), /* PORT280CR */3773 PORTCR(281, 0xe6053119), /* PORT281CR */3774 PORTCR(282, 0xe605311a), /* PORT282CR */3775 3776 PORTCR(288, 0xe6052120), /* PORT288CR */3777 PORTCR(289, 0xe6052121), /* PORT289CR */3778 3779 PORTCR(290, 0xe6052122), /* PORT290CR */3780 PORTCR(291, 0xe6052123), /* PORT291CR */3781 PORTCR(292, 0xe6052124), /* PORT292CR */3782 PORTCR(293, 0xe6052125), /* PORT293CR */3783 PORTCR(294, 0xe6052126), /* PORT294CR */3784 PORTCR(295, 0xe6052127), /* PORT295CR */3785 PORTCR(296, 0xe6052128), /* PORT296CR */3786 PORTCR(297, 0xe6052129), /* PORT297CR */3787 PORTCR(298, 0xe605212a), /* PORT298CR */3788 PORTCR(299, 0xe605212b), /* PORT299CR */3789 3790 PORTCR(300, 0xe605212c), /* PORT300CR */3791 PORTCR(301, 0xe605212d), /* PORT301CR */3792 PORTCR(302, 0xe605212e), /* PORT302CR */3793 PORTCR(303, 0xe605212f), /* PORT303CR */3794 PORTCR(304, 0xe6052130), /* PORT304CR */3795 PORTCR(305, 0xe6052131), /* PORT305CR */3796 PORTCR(306, 0xe6052132), /* PORT306CR */3797 PORTCR(307, 0xe6052133), /* PORT307CR */3798 PORTCR(308, 0xe6052134), /* PORT308CR */3799 PORTCR(309, 0xe6052135), /* PORT309CR */3800 3801 { PINMUX_CFG_REG_VAR("MSEL2CR", 0xe605801c, 32,3802 GROUP(-12, 1, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1,3803 1, 1, 1, 1, 1, 1, 1, 1, 1),3804 GROUP(3805 /* RESERVED [12] */3806 MSEL2CR_MSEL19_0, MSEL2CR_MSEL19_1,3807 MSEL2CR_MSEL18_0, MSEL2CR_MSEL18_1,3808 MSEL2CR_MSEL17_0, MSEL2CR_MSEL17_1,3809 MSEL2CR_MSEL16_0, MSEL2CR_MSEL16_1,3810 /* RESERVED [1] */3811 MSEL2CR_MSEL14_0, MSEL2CR_MSEL14_1,3812 MSEL2CR_MSEL13_0, MSEL2CR_MSEL13_1,3813 MSEL2CR_MSEL12_0, MSEL2CR_MSEL12_1,3814 MSEL2CR_MSEL11_0, MSEL2CR_MSEL11_1,3815 MSEL2CR_MSEL10_0, MSEL2CR_MSEL10_1,3816 MSEL2CR_MSEL9_0, MSEL2CR_MSEL9_1,3817 MSEL2CR_MSEL8_0, MSEL2CR_MSEL8_1,3818 MSEL2CR_MSEL7_0, MSEL2CR_MSEL7_1,3819 MSEL2CR_MSEL6_0, MSEL2CR_MSEL6_1,3820 MSEL2CR_MSEL5_0, MSEL2CR_MSEL5_1,3821 MSEL2CR_MSEL4_0, MSEL2CR_MSEL4_1,3822 MSEL2CR_MSEL3_0, MSEL2CR_MSEL3_1,3823 MSEL2CR_MSEL2_0, MSEL2CR_MSEL2_1,3824 MSEL2CR_MSEL1_0, MSEL2CR_MSEL1_1,3825 MSEL2CR_MSEL0_0, MSEL2CR_MSEL0_1,3826 ))3827 },3828 { PINMUX_CFG_REG_VAR("MSEL3CR", 0xe6058020, 32,3829 GROUP(-3, 1, -12, 1, -3, 1, -1, 1, -2, 1, -3, 1,3830 -2),3831 GROUP(3832 /* RESERVED [3] */3833 MSEL3CR_MSEL28_0, MSEL3CR_MSEL28_1,3834 /* RESERVED [12] */3835 MSEL3CR_MSEL15_0, MSEL3CR_MSEL15_1,3836 /* RESERVED [3] */3837 MSEL3CR_MSEL11_0, MSEL3CR_MSEL11_1,3838 /* RESERVED [1] */3839 MSEL3CR_MSEL9_0, MSEL3CR_MSEL9_1,3840 /* RESERVED [2] */3841 MSEL3CR_MSEL6_0, MSEL3CR_MSEL6_1,3842 /* RESERVED [3] */3843 MSEL3CR_MSEL2_0, MSEL3CR_MSEL2_1,3844 /* RESERVED [2] */3845 ))3846 },3847 { PINMUX_CFG_REG_VAR("MSEL4CR", 0xe6058024, 32,3848 GROUP(-2, 1, -1, 1, 1, -3, 1, 1, 1, 1, -3, 1,3849 -1, 1, 1, 1, 1, 1, 1, 1, -2, 1, -2, 1,3850 -1),3851 GROUP(3852 /* RESERVED [2] */3853 MSEL4CR_MSEL29_0, MSEL4CR_MSEL29_1,3854 /* RESERVED [1] */3855 MSEL4CR_MSEL27_0, MSEL4CR_MSEL27_1,3856 MSEL4CR_MSEL26_0, MSEL4CR_MSEL26_1,3857 /* RESERVED [3] */3858 MSEL4CR_MSEL22_0, MSEL4CR_MSEL22_1,3859 MSEL4CR_MSEL21_0, MSEL4CR_MSEL21_1,3860 MSEL4CR_MSEL20_0, MSEL4CR_MSEL20_1,3861 MSEL4CR_MSEL19_0, MSEL4CR_MSEL19_1,3862 /* RESERVED [3] */3863 MSEL4CR_MSEL15_0, MSEL4CR_MSEL15_1,3864 /* RESERVED [1] */3865 MSEL4CR_MSEL13_0, MSEL4CR_MSEL13_1,3866 MSEL4CR_MSEL12_0, MSEL4CR_MSEL12_1,3867 MSEL4CR_MSEL11_0, MSEL4CR_MSEL11_1,3868 MSEL4CR_MSEL10_0, MSEL4CR_MSEL10_1,3869 MSEL4CR_MSEL9_0, MSEL4CR_MSEL9_1,3870 MSEL4CR_MSEL8_0, MSEL4CR_MSEL8_1,3871 MSEL4CR_MSEL7_0, MSEL4CR_MSEL7_1,3872 /* RESERVED [2] */3873 MSEL4CR_MSEL4_0, MSEL4CR_MSEL4_1,3874 /* RESERVED [2] */3875 MSEL4CR_MSEL1_0, MSEL4CR_MSEL1_1,3876 /* RESERVED [1] */3877 ))3878 },3879 { /* sentinel */ }3880};3881 3882static const struct pinmux_data_reg pinmux_data_regs[] = {3883 { PINMUX_DATA_REG("PORTL031_000DR", 0xe6054000, 32, GROUP(3884 PORT31_DATA, PORT30_DATA, PORT29_DATA, PORT28_DATA,3885 PORT27_DATA, PORT26_DATA, PORT25_DATA, PORT24_DATA,3886 PORT23_DATA, PORT22_DATA, PORT21_DATA, PORT20_DATA,3887 PORT19_DATA, PORT18_DATA, PORT17_DATA, PORT16_DATA,3888 PORT15_DATA, PORT14_DATA, PORT13_DATA, PORT12_DATA,3889 PORT11_DATA, PORT10_DATA, PORT9_DATA, PORT8_DATA,3890 PORT7_DATA, PORT6_DATA, PORT5_DATA, PORT4_DATA,3891 PORT3_DATA, PORT2_DATA, PORT1_DATA, PORT0_DATA ))3892 },3893 { PINMUX_DATA_REG("PORTD063_032DR", 0xe6055000, 32, GROUP(3894 PORT63_DATA, PORT62_DATA, PORT61_DATA, PORT60_DATA,3895 PORT59_DATA, PORT58_DATA, PORT57_DATA, PORT56_DATA,3896 PORT55_DATA, PORT54_DATA, PORT53_DATA, PORT52_DATA,3897 PORT51_DATA, PORT50_DATA, PORT49_DATA, PORT48_DATA,3898 PORT47_DATA, PORT46_DATA, PORT45_DATA, PORT44_DATA,3899 PORT43_DATA, PORT42_DATA, PORT41_DATA, PORT40_DATA,3900 PORT39_DATA, PORT38_DATA, PORT37_DATA, PORT36_DATA,3901 PORT35_DATA, PORT34_DATA, PORT33_DATA, PORT32_DATA ))3902 },3903 { PINMUX_DATA_REG("PORTD095_064DR", 0xe6055004, 32, GROUP(3904 PORT95_DATA, PORT94_DATA, PORT93_DATA, PORT92_DATA,3905 PORT91_DATA, PORT90_DATA, PORT89_DATA, PORT88_DATA,3906 PORT87_DATA, PORT86_DATA, PORT85_DATA, PORT84_DATA,3907 PORT83_DATA, PORT82_DATA, PORT81_DATA, PORT80_DATA,3908 PORT79_DATA, PORT78_DATA, PORT77_DATA, PORT76_DATA,3909 PORT75_DATA, PORT74_DATA, PORT73_DATA, PORT72_DATA,3910 PORT71_DATA, PORT70_DATA, PORT69_DATA, PORT68_DATA,3911 PORT67_DATA, PORT66_DATA, PORT65_DATA, PORT64_DATA ))3912 },3913 { PINMUX_DATA_REG("PORTR127_096DR", 0xe6056000, 32, GROUP(3914 0, 0, 0, 0,3915 0, 0, 0, 0,3916 0, PORT118_DATA, PORT117_DATA, PORT116_DATA,3917 PORT115_DATA, PORT114_DATA, PORT113_DATA, PORT112_DATA,3918 PORT111_DATA, PORT110_DATA, PORT109_DATA, PORT108_DATA,3919 PORT107_DATA, PORT106_DATA, PORT105_DATA, PORT104_DATA,3920 PORT103_DATA, PORT102_DATA, PORT101_DATA, PORT100_DATA,3921 PORT99_DATA, PORT98_DATA, PORT97_DATA, PORT96_DATA ))3922 },3923 { PINMUX_DATA_REG("PORTR159_128DR", 0xe6056004, 32, GROUP(3924 PORT159_DATA, PORT158_DATA, PORT157_DATA, PORT156_DATA,3925 PORT155_DATA, PORT154_DATA, PORT153_DATA, PORT152_DATA,3926 PORT151_DATA, PORT150_DATA, PORT149_DATA, PORT148_DATA,3927 PORT147_DATA, PORT146_DATA, PORT145_DATA, PORT144_DATA,3928 PORT143_DATA, PORT142_DATA, PORT141_DATA, PORT140_DATA,3929 PORT139_DATA, PORT138_DATA, PORT137_DATA, PORT136_DATA,3930 PORT135_DATA, PORT134_DATA, PORT133_DATA, PORT132_DATA,3931 PORT131_DATA, PORT130_DATA, PORT129_DATA, PORT128_DATA ))3932 },3933 { PINMUX_DATA_REG("PORTR191_160DR", 0xe6056008, 32, GROUP(3934 0, 0, 0, 0,3935 0, 0, 0, 0,3936 0, 0, 0, 0,3937 0, 0, 0, 0,3938 0, 0, 0, 0,3939 0, 0, 0, 0,3940 0, 0, 0, PORT164_DATA,3941 PORT163_DATA, PORT162_DATA, PORT161_DATA, PORT160_DATA ))3942 },3943 { PINMUX_DATA_REG("PORTR223_192DR", 0xe605600C, 32, GROUP(3944 PORT223_DATA, PORT222_DATA, PORT221_DATA, PORT220_DATA,3945 PORT219_DATA, PORT218_DATA, PORT217_DATA, PORT216_DATA,3946 PORT215_DATA, PORT214_DATA, PORT213_DATA, PORT212_DATA,3947 PORT211_DATA, PORT210_DATA, PORT209_DATA, PORT208_DATA,3948 PORT207_DATA, PORT206_DATA, PORT205_DATA, PORT204_DATA,3949 PORT203_DATA, PORT202_DATA, PORT201_DATA, PORT200_DATA,3950 PORT199_DATA, PORT198_DATA, PORT197_DATA, PORT196_DATA,3951 PORT195_DATA, PORT194_DATA, PORT193_DATA, PORT192_DATA ))3952 },3953 { PINMUX_DATA_REG("PORTU255_224DR", 0xe6057000, 32, GROUP(3954 PORT255_DATA, PORT254_DATA, PORT253_DATA, PORT252_DATA,3955 PORT251_DATA, PORT250_DATA, PORT249_DATA, PORT248_DATA,3956 PORT247_DATA, PORT246_DATA, PORT245_DATA, PORT244_DATA,3957 PORT243_DATA, PORT242_DATA, PORT241_DATA, PORT240_DATA,3958 PORT239_DATA, PORT238_DATA, PORT237_DATA, PORT236_DATA,3959 PORT235_DATA, PORT234_DATA, PORT233_DATA, PORT232_DATA,3960 PORT231_DATA, PORT230_DATA, PORT229_DATA, PORT228_DATA,3961 PORT227_DATA, PORT226_DATA, PORT225_DATA, PORT224_DATA ))3962 },3963 { PINMUX_DATA_REG("PORTU287_256DR", 0xe6057004, 32, GROUP(3964 0, 0, 0, 0,3965 0, PORT282_DATA, PORT281_DATA, PORT280_DATA,3966 PORT279_DATA, PORT278_DATA, PORT277_DATA, PORT276_DATA,3967 PORT275_DATA, PORT274_DATA, PORT273_DATA, PORT272_DATA,3968 PORT271_DATA, PORT270_DATA, PORT269_DATA, PORT268_DATA,3969 PORT267_DATA, PORT266_DATA, PORT265_DATA, PORT264_DATA,3970 PORT263_DATA, PORT262_DATA, PORT261_DATA, PORT260_DATA,3971 PORT259_DATA, PORT258_DATA, PORT257_DATA, PORT256_DATA ))3972 },3973 { PINMUX_DATA_REG("PORTR319_288DR", 0xe6056010, 32, GROUP(3974 0, 0, 0, 0,3975 0, 0, 0, 0,3976 0, 0, PORT309_DATA, PORT308_DATA,3977 PORT307_DATA, PORT306_DATA, PORT305_DATA, PORT304_DATA,3978 PORT303_DATA, PORT302_DATA, PORT301_DATA, PORT300_DATA,3979 PORT299_DATA, PORT298_DATA, PORT297_DATA, PORT296_DATA,3980 PORT295_DATA, PORT294_DATA, PORT293_DATA, PORT292_DATA,3981 PORT291_DATA, PORT290_DATA, PORT289_DATA, PORT288_DATA ))3982 },3983 { /* sentinel */ }3984};3985 3986static const struct pinmux_irq pinmux_irqs[] = {3987 PINMUX_IRQ(11), /* IRQ0 */3988 PINMUX_IRQ(10), /* IRQ1 */3989 PINMUX_IRQ(149), /* IRQ2 */3990 PINMUX_IRQ(224), /* IRQ3 */3991 PINMUX_IRQ(159), /* IRQ4 */3992 PINMUX_IRQ(227), /* IRQ5 */3993 PINMUX_IRQ(147), /* IRQ6 */3994 PINMUX_IRQ(150), /* IRQ7 */3995 PINMUX_IRQ(223), /* IRQ8 */3996 PINMUX_IRQ(56, 308), /* IRQ9 */3997 PINMUX_IRQ(54), /* IRQ10 */3998 PINMUX_IRQ(238), /* IRQ11 */3999 PINMUX_IRQ(156), /* IRQ12 */4000 PINMUX_IRQ(239), /* IRQ13 */4001 PINMUX_IRQ(251), /* IRQ14 */4002 PINMUX_IRQ(0), /* IRQ15 */4003 PINMUX_IRQ(249), /* IRQ16 */4004 PINMUX_IRQ(234), /* IRQ17 */4005 PINMUX_IRQ(13), /* IRQ18 */4006 PINMUX_IRQ(9), /* IRQ19 */4007 PINMUX_IRQ(14), /* IRQ20 */4008 PINMUX_IRQ(15), /* IRQ21 */4009 PINMUX_IRQ(40), /* IRQ22 */4010 PINMUX_IRQ(53), /* IRQ23 */4011 PINMUX_IRQ(118), /* IRQ24 */4012 PINMUX_IRQ(164), /* IRQ25 */4013 PINMUX_IRQ(115), /* IRQ26 */4014 PINMUX_IRQ(116), /* IRQ27 */4015 PINMUX_IRQ(117), /* IRQ28 */4016 PINMUX_IRQ(28), /* IRQ29 */4017 PINMUX_IRQ(27), /* IRQ30 */4018 PINMUX_IRQ(26), /* IRQ31 */4019};4020 4021/* -----------------------------------------------------------------------------4022 * VCCQ MC0 regulator4023 */4024 4025static void sh73a0_vccq_mc0_endisable(struct regulator_dev *reg, bool enable)4026{4027 struct sh_pfc *pfc = rdev_get_drvdata(reg);4028 void __iomem *addr = pfc->windows[1].virt + 4;4029 unsigned long flags;4030 u32 value;4031 4032 spin_lock_irqsave(&pfc->lock, flags);4033 4034 value = ioread32(addr);4035 4036 if (enable)4037 value |= BIT(28);4038 else4039 value &= ~BIT(28);4040 4041 iowrite32(value, addr);4042 4043 spin_unlock_irqrestore(&pfc->lock, flags);4044}4045 4046static int sh73a0_vccq_mc0_enable(struct regulator_dev *reg)4047{4048 sh73a0_vccq_mc0_endisable(reg, true);4049 return 0;4050}4051 4052static int sh73a0_vccq_mc0_disable(struct regulator_dev *reg)4053{4054 sh73a0_vccq_mc0_endisable(reg, false);4055 return 0;4056}4057 4058static int sh73a0_vccq_mc0_is_enabled(struct regulator_dev *reg)4059{4060 struct sh_pfc *pfc = rdev_get_drvdata(reg);4061 void __iomem *addr = pfc->windows[1].virt + 4;4062 unsigned long flags;4063 u32 value;4064 4065 spin_lock_irqsave(&pfc->lock, flags);4066 value = ioread32(addr);4067 spin_unlock_irqrestore(&pfc->lock, flags);4068 4069 return !!(value & BIT(28));4070}4071 4072static int sh73a0_vccq_mc0_get_voltage(struct regulator_dev *reg)4073{4074 return 3300000;4075}4076 4077static const struct regulator_ops sh73a0_vccq_mc0_ops = {4078 .enable = sh73a0_vccq_mc0_enable,4079 .disable = sh73a0_vccq_mc0_disable,4080 .is_enabled = sh73a0_vccq_mc0_is_enabled,4081 .get_voltage = sh73a0_vccq_mc0_get_voltage,4082};4083 4084static const struct regulator_desc sh73a0_vccq_mc0_desc = {4085 .owner = THIS_MODULE,4086 .name = "vccq_mc0",4087 .type = REGULATOR_VOLTAGE,4088 .ops = &sh73a0_vccq_mc0_ops,4089};4090 4091static struct regulator_consumer_supply sh73a0_vccq_mc0_consumers[] = {4092 REGULATOR_SUPPLY("vqmmc", "sh_mobile_sdhi.0"),4093 REGULATOR_SUPPLY("vqmmc", "ee100000.sdhi"),4094};4095 4096static const struct regulator_init_data sh73a0_vccq_mc0_init_data = {4097 .constraints = {4098 .valid_ops_mask = REGULATOR_CHANGE_STATUS,4099 },4100 .num_consumer_supplies = ARRAY_SIZE(sh73a0_vccq_mc0_consumers),4101 .consumer_supplies = sh73a0_vccq_mc0_consumers,4102};4103 4104/* -----------------------------------------------------------------------------4105 * Pin bias4106 */4107 4108static const unsigned int sh73a0_portcr_offsets[] = {4109 0x00000000, 0x00001000, 0x00001000, 0x00002000, 0x00002000,4110 0x00002000, 0x00002000, 0x00003000, 0x00003000, 0x00002000,4111};4112 4113static int sh73a0_pin_to_portcr(unsigned int pin)4114{4115 return sh73a0_portcr_offsets[pin >> 5] + pin;4116}4117 4118/* -----------------------------------------------------------------------------4119 * SoC information4120 */4121 4122static int sh73a0_pinmux_soc_init(struct sh_pfc *pfc)4123{4124 struct regulator_config cfg = { };4125 struct regulator_dev *vccq;4126 int ret;4127 4128 cfg.dev = pfc->dev;4129 cfg.init_data = &sh73a0_vccq_mc0_init_data;4130 cfg.driver_data = pfc;4131 4132 vccq = devm_regulator_register(pfc->dev, &sh73a0_vccq_mc0_desc, &cfg);4133 if (IS_ERR(vccq)) {4134 ret = PTR_ERR(vccq);4135 dev_err(pfc->dev, "Failed to register VCCQ MC0 regulator: %d\n",4136 ret);4137 return ret;4138 }4139 4140 return 0;4141}4142 4143static const struct sh_pfc_soc_operations sh73a0_pfc_ops = {4144 .init = sh73a0_pinmux_soc_init,4145 .get_bias = rmobile_pinmux_get_bias,4146 .set_bias = rmobile_pinmux_set_bias,4147 .pin_to_portcr = sh73a0_pin_to_portcr,4148};4149 4150const struct sh_pfc_soc_info sh73a0_pinmux_info = {4151 .name = "sh73a0_pfc",4152 .ops = &sh73a0_pfc_ops,4153 4154 .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },4155 .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },4156 .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },4157 4158 .pins = pinmux_pins,4159 .nr_pins = ARRAY_SIZE(pinmux_pins),4160 .groups = pinmux_groups,4161 .nr_groups = ARRAY_SIZE(pinmux_groups),4162 .functions = pinmux_functions,4163 .nr_functions = ARRAY_SIZE(pinmux_functions),4164 4165 .cfg_regs = pinmux_config_regs,4166 .data_regs = pinmux_data_regs,4167 4168 .pinmux_data = pinmux_data,4169 .pinmux_data_size = ARRAY_SIZE(pinmux_data),4170 4171 .gpio_irq = pinmux_irqs,4172 .gpio_irq_size = ARRAY_SIZE(pinmux_irqs),4173};4174