1 /*
2  * sh7367 processor support - PFC hardware block
3  *
4  * Copyright (C) 2010  Magnus Damm
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; version 2 of the License.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18  */
19 #include <linux/init.h>
20 #include <linux/kernel.h>
21 #include <linux/gpio.h>
22 #include <mach/sh7367.h>
23 
24 #define _1(fn, pfx, sfx) fn(pfx, sfx)
25 
26 #define _10(fn, pfx, sfx)				\
27 	_1(fn, pfx##0, sfx), _1(fn, pfx##1, sfx),	\
28 	_1(fn, pfx##2, sfx), _1(fn, pfx##3, sfx),	\
29 	_1(fn, pfx##4, sfx), _1(fn, pfx##5, sfx),	\
30 	_1(fn, pfx##6, sfx), _1(fn, pfx##7, sfx),	\
31 	_1(fn, pfx##8, sfx), _1(fn, pfx##9, sfx)
32 
33 #define _90(fn, pfx, sfx)				\
34 	_10(fn, pfx##1, sfx), _10(fn, pfx##2, sfx),	\
35 	_10(fn, pfx##3, sfx), _10(fn, pfx##4, sfx),	\
36 	_10(fn, pfx##5, sfx), _10(fn, pfx##6, sfx),	\
37 	_10(fn, pfx##7, sfx), _10(fn, pfx##8, sfx),	\
38 	_10(fn, pfx##9, sfx)
39 
40 #define _273(fn, pfx, sfx)		\
41 	_10(fn, pfx, sfx), _90(fn, pfx, sfx),		\
42 	_10(fn, pfx##10, sfx), _90(fn, pfx##1, sfx),	\
43 	_10(fn, pfx##20, sfx), _10(fn, pfx##21, sfx),	\
44 	_10(fn, pfx##22, sfx), _10(fn, pfx##23, sfx),	\
45 	_10(fn, pfx##24, sfx), _10(fn, pfx##25, sfx),	\
46 	_10(fn, pfx##26, sfx), _1(fn, pfx##270, sfx),	\
47 	_1(fn, pfx##271, sfx), _1(fn, pfx##272, sfx)
48 
49 #define _PORT(pfx, sfx) pfx##_##sfx
50 #define PORT_273(str) _273(_PORT, PORT, str)
51 
52 enum {
53 	PINMUX_RESERVED = 0,
54 
55 	PINMUX_DATA_BEGIN,
56 	PORT_273(DATA), /* PORT0_DATA -> PORT272_DATA */
57 	PINMUX_DATA_END,
58 
59 	PINMUX_INPUT_BEGIN,
60 	PORT_273(IN), /* PORT0_IN -> PORT272_IN */
61 	PINMUX_INPUT_END,
62 
63 	PINMUX_INPUT_PULLUP_BEGIN,
64 	PORT_273(IN_PU), /* PORT0_IN_PU -> PORT272_IN_PU */
65 	PINMUX_INPUT_PULLUP_END,
66 
67 	PINMUX_INPUT_PULLDOWN_BEGIN,
68 	PORT_273(IN_PD), /* PORT0_IN_PD -> PORT272_IN_PD */
69 	PINMUX_INPUT_PULLDOWN_END,
70 
71 	PINMUX_OUTPUT_BEGIN,
72 	PORT_273(OUT), /* PORT0_OUT -> PORT272_OUT */
73 	PINMUX_OUTPUT_END,
74 
75 	PINMUX_FUNCTION_BEGIN,
76 	PORT_273(FN_IN), /* PORT0_FN_IN -> PORT272_FN_IN */
77 	PORT_273(FN_OUT), /* PORT0_FN_OUT -> PORT272_FN_OUT */
78 	PORT_273(FN0), /* PORT0_FN0 -> PORT272_FN0 */
79 	PORT_273(FN1), /* PORT0_FN1 -> PORT272_FN1 */
80 	PORT_273(FN2), /* PORT0_FN2 -> PORT272_FN2 */
81 	PORT_273(FN3), /* PORT0_FN3 -> PORT272_FN3 */
82 	PORT_273(FN4), /* PORT0_FN4 -> PORT272_FN4 */
83 	PORT_273(FN5), /* PORT0_FN5 -> PORT272_FN5 */
84 	PORT_273(FN6), /* PORT0_FN6 -> PORT272_FN6 */
85 	PORT_273(FN7), /* PORT0_FN7 -> PORT272_FN7 */
86 
87 	MSELBCR_MSEL2_1, MSELBCR_MSEL2_0,
88 	PINMUX_FUNCTION_END,
89 
90 	PINMUX_MARK_BEGIN,
91 	/* Special Pull-up / Pull-down Functions */
92 	PORT48_KEYIN0_PU_MARK, PORT49_KEYIN1_PU_MARK,
93 	PORT50_KEYIN2_PU_MARK, PORT55_KEYIN3_PU_MARK,
94 	PORT56_KEYIN4_PU_MARK, PORT57_KEYIN5_PU_MARK,
95 	PORT58_KEYIN6_PU_MARK,
96 
97 	/* 49-1 */
98 	VBUS0_MARK, CPORT0_MARK, CPORT1_MARK, CPORT2_MARK,
99 	CPORT3_MARK, CPORT4_MARK, CPORT5_MARK, CPORT6_MARK,
100 	CPORT7_MARK, CPORT8_MARK, CPORT9_MARK, CPORT10_MARK,
101 	CPORT11_MARK, SIN2_MARK, CPORT12_MARK, XCTS2_MARK,
102 	CPORT13_MARK, RFSPO4_MARK, CPORT14_MARK, RFSPO5_MARK,
103 	CPORT15_MARK, CPORT16_MARK, CPORT17_MARK, SOUT2_MARK,
104 	CPORT18_MARK, XRTS2_MARK, CPORT19_MARK, CPORT20_MARK,
105 	RFSPO6_MARK, CPORT21_MARK, STATUS0_MARK, CPORT22_MARK,
106 	STATUS1_MARK, CPORT23_MARK, STATUS2_MARK, RFSPO7_MARK,
107 	MPORT0_MARK, MPORT1_MARK, B_SYNLD1_MARK, B_SYNLD2_MARK,
108 	XMAINPS_MARK, XDIVPS_MARK, XIDRST_MARK, IDCLK_MARK,
109 	IDIO_MARK, SOUT1_MARK, SCIFA4_TXD_MARK,
110 	M02_BERDAT_MARK, SIN1_MARK, SCIFA4_RXD_MARK, XWUP_MARK,
111 	XRTS1_MARK, SCIFA4_RTS_MARK, M03_BERCLK_MARK,
112 	XCTS1_MARK, SCIFA4_CTS_MARK,
113 
114 	/* 49-2 */
115 	HSU_IQ_AGC6_MARK, MFG2_IN2_MARK, MSIOF2_MCK0_MARK,
116 	HSU_IQ_AGC5_MARK, MFG2_IN1_MARK, MSIOF2_MCK1_MARK,
117 	HSU_IQ_AGC4_MARK, MSIOF2_RSYNC_MARK,
118 	HSU_IQ_AGC3_MARK, MFG2_OUT1_MARK, MSIOF2_RSCK_MARK,
119 	HSU_IQ_AGC2_MARK, PORT42_KEYOUT0_MARK,
120 	HSU_IQ_AGC1_MARK, PORT43_KEYOUT1_MARK,
121 	HSU_IQ_AGC0_MARK, PORT44_KEYOUT2_MARK,
122 	HSU_IQ_AGC_ST_MARK, PORT45_KEYOUT3_MARK,
123 	HSU_IQ_PDO_MARK, PORT46_KEYOUT4_MARK,
124 	HSU_IQ_PYO_MARK, PORT47_KEYOUT5_MARK,
125 	HSU_EN_TXMUX_G3MO_MARK, PORT48_KEYIN0_MARK,
126 	HSU_I_TXMUX_G3MO_MARK, PORT49_KEYIN1_MARK,
127 	HSU_Q_TXMUX_G3MO_MARK, PORT50_KEYIN2_MARK,
128 	HSU_SYO_MARK, PORT51_MSIOF2_TSYNC_MARK,
129 	HSU_SDO_MARK, PORT52_MSIOF2_TSCK_MARK,
130 	HSU_TGTTI_G3MO_MARK, PORT53_MSIOF2_TXD_MARK,
131 	B_TIME_STAMP_MARK, PORT54_MSIOF2_RXD_MARK,
132 	HSU_SDI_MARK, PORT55_KEYIN3_MARK,
133 	HSU_SCO_MARK, PORT56_KEYIN4_MARK,
134 	HSU_DREQ_MARK, PORT57_KEYIN5_MARK,
135 	HSU_DACK_MARK, PORT58_KEYIN6_MARK,
136 	HSU_CLK61M_MARK, PORT59_MSIOF2_SS1_MARK,
137 	HSU_XRST_MARK, PORT60_MSIOF2_SS2_MARK,
138 	PCMCLKO_MARK, SYNC8KO_MARK, DNPCM_A_MARK, UPPCM_A_MARK,
139 	XTALB1L_MARK,
140 	GPS_AGC1_MARK, SCIFA0_RTS_MARK,
141 	GPS_AGC2_MARK, SCIFA0_SCK_MARK,
142 	GPS_AGC3_MARK, SCIFA0_TXD_MARK,
143 	GPS_AGC4_MARK, SCIFA0_RXD_MARK,
144 	GPS_PWRD_MARK, SCIFA0_CTS_MARK,
145 	GPS_IM_MARK, GPS_IS_MARK, GPS_QM_MARK, GPS_QS_MARK,
146 	SIUBOMC_MARK, TPU2TO0_MARK,
147 	SIUCKB_MARK, TPU2TO1_MARK,
148 	SIUBOLR_MARK, BBIF2_TSYNC_MARK, TPU2TO2_MARK,
149 	SIUBOBT_MARK, BBIF2_TSCK_MARK, TPU2TO3_MARK,
150 	SIUBOSLD_MARK, BBIF2_TXD_MARK, TPU3TO0_MARK,
151 	SIUBILR_MARK, TPU3TO1_MARK,
152 	SIUBIBT_MARK, TPU3TO2_MARK,
153 	SIUBISLD_MARK, TPU3TO3_MARK,
154 	NMI_MARK, TPU4TO0_MARK,
155 	DNPCM_M_MARK, TPU4TO1_MARK, TPU4TO2_MARK, TPU4TO3_MARK,
156 	IRQ_TMPB_MARK,
157 	PWEN_MARK, MFG1_OUT1_MARK,
158 	OVCN_MARK, MFG1_IN1_MARK,
159 	OVCN2_MARK, MFG1_IN2_MARK,
160 
161 	/* 49-3 */
162 	RFSPO1_MARK, RFSPO2_MARK, RFSPO3_MARK, PORT93_VIO_CKO2_MARK,
163 	USBTERM_MARK, EXTLP_MARK, IDIN_MARK,
164 	SCIFA5_CTS_MARK, MFG0_IN1_MARK,
165 	SCIFA5_RTS_MARK, MFG0_IN2_MARK,
166 	SCIFA5_RXD_MARK,
167 	SCIFA5_TXD_MARK,
168 	SCIFA5_SCK_MARK, MFG0_OUT1_MARK,
169 	A0_EA0_MARK, BS_MARK,
170 	A14_EA14_MARK, PORT102_KEYOUT0_MARK,
171 	A15_EA15_MARK, PORT103_KEYOUT1_MARK, DV_CLKOL_MARK,
172 	A16_EA16_MARK, PORT104_KEYOUT2_MARK,
173 	DV_VSYNCL_MARK, MSIOF0_SS1_MARK,
174 	A17_EA17_MARK, PORT105_KEYOUT3_MARK,
175 	DV_HSYNCL_MARK, MSIOF0_TSYNC_MARK,
176 	A18_EA18_MARK, PORT106_KEYOUT4_MARK,
177 	DV_DL0_MARK, MSIOF0_TSCK_MARK,
178 	A19_EA19_MARK, PORT107_KEYOUT5_MARK,
179 	DV_DL1_MARK, MSIOF0_TXD_MARK,
180 	A20_EA20_MARK, PORT108_KEYIN0_MARK,
181 	DV_DL2_MARK, MSIOF0_RSCK_MARK,
182 	A21_EA21_MARK, PORT109_KEYIN1_MARK,
183 	DV_DL3_MARK, MSIOF0_RSYNC_MARK,
184 	A22_EA22_MARK, PORT110_KEYIN2_MARK,
185 	DV_DL4_MARK, MSIOF0_MCK0_MARK,
186 	A23_EA23_MARK, PORT111_KEYIN3_MARK,
187 	DV_DL5_MARK, MSIOF0_MCK1_MARK,
188 	A24_EA24_MARK, PORT112_KEYIN4_MARK,
189 	DV_DL6_MARK, MSIOF0_RXD_MARK,
190 	A25_EA25_MARK, PORT113_KEYIN5_MARK,
191 	DV_DL7_MARK, MSIOF0_SS2_MARK,
192 	A26_MARK, PORT113_KEYIN6_MARK, DV_CLKIL_MARK,
193 	D0_ED0_NAF0_MARK, D1_ED1_NAF1_MARK, D2_ED2_NAF2_MARK,
194 	D3_ED3_NAF3_MARK, D4_ED4_NAF4_MARK, D5_ED5_NAF5_MARK,
195 	D6_ED6_NAF6_MARK, D7_ED7_NAF7_MARK, D8_ED8_NAF8_MARK,
196 	D9_ED9_NAF9_MARK, D10_ED10_NAF10_MARK, D11_ED11_NAF11_MARK,
197 	D12_ED12_NAF12_MARK, D13_ED13_NAF13_MARK,
198 	D14_ED14_NAF14_MARK, D15_ED15_NAF15_MARK,
199 	CS4_MARK, CS5A_MARK, CS5B_MARK, FCE1_MARK,
200 	CS6B_MARK, XCS2_MARK, FCE0_MARK, CS6A_MARK,
201 	DACK0_MARK, WAIT_MARK, DREQ0_MARK, RD_XRD_MARK,
202 	A27_MARK, RDWR_XWE_MARK, WE0_XWR0_FWE_MARK,
203 	WE1_XWR1_MARK, FRB_MARK, CKO_MARK,
204 	NBRSTOUT_MARK, NBRST_MARK,
205 
206 	/* 49-4 */
207 	RFSPO0_MARK, PORT146_VIO_CKO2_MARK, TSTMD_MARK,
208 	VIO_VD_MARK, VIO_HD_MARK,
209 	VIO_D0_MARK, VIO_D1_MARK, VIO_D2_MARK,
210 	VIO_D3_MARK, VIO_D4_MARK, VIO_D5_MARK,
211 	VIO_D6_MARK, VIO_D7_MARK, VIO_D8_MARK,
212 	VIO_D9_MARK, VIO_D10_MARK, VIO_D11_MARK,
213 	VIO_D12_MARK, VIO_D13_MARK, VIO_D14_MARK,
214 	VIO_D15_MARK, VIO_CLK_MARK, VIO_FIELD_MARK,
215 	VIO_CKO_MARK,
216 	MFG3_IN1_MARK, MFG3_IN2_MARK,
217 	M9_SLCD_A01_MARK, MFG3_OUT1_MARK, TPU0TO0_MARK,
218 	M10_SLCD_CK1_MARK, MFG4_IN1_MARK, TPU0TO1_MARK,
219 	M11_SLCD_SO1_MARK, MFG4_IN2_MARK, TPU0TO2_MARK,
220 	M12_SLCD_CE1_MARK, MFG4_OUT1_MARK, TPU0TO3_MARK,
221 	LCDD0_MARK, PORT175_KEYOUT0_MARK, DV_D0_MARK,
222 	SIUCKA_MARK, MFG0_OUT2_MARK,
223 	LCDD1_MARK, PORT176_KEYOUT1_MARK, DV_D1_MARK,
224 	SIUAOLR_MARK, BBIF2_TSYNC1_MARK,
225 	LCDD2_MARK, PORT177_KEYOUT2_MARK, DV_D2_MARK,
226 	SIUAOBT_MARK, BBIF2_TSCK1_MARK,
227 	LCDD3_MARK, PORT178_KEYOUT3_MARK, DV_D3_MARK,
228 	SIUAOSLD_MARK, BBIF2_TXD1_MARK,
229 	LCDD4_MARK, PORT179_KEYOUT4_MARK, DV_D4_MARK,
230 	SIUAISPD_MARK, MFG1_OUT2_MARK,
231 	LCDD5_MARK, PORT180_KEYOUT5_MARK, DV_D5_MARK,
232 	SIUAILR_MARK, MFG2_OUT2_MARK,
233 	LCDD6_MARK, DV_D6_MARK,
234 	SIUAIBT_MARK, MFG3_OUT2_MARK, XWR2_MARK,
235 	LCDD7_MARK, DV_D7_MARK,
236 	SIUAISLD_MARK, MFG4_OUT2_MARK, XWR3_MARK,
237 	LCDD8_MARK, DV_D8_MARK, D16_MARK, ED16_MARK,
238 	LCDD9_MARK, DV_D9_MARK, D17_MARK, ED17_MARK,
239 	LCDD10_MARK, DV_D10_MARK, D18_MARK, ED18_MARK,
240 	LCDD11_MARK, DV_D11_MARK, D19_MARK, ED19_MARK,
241 	LCDD12_MARK, DV_D12_MARK, D20_MARK, ED20_MARK,
242 	LCDD13_MARK, DV_D13_MARK, D21_MARK, ED21_MARK,
243 	LCDD14_MARK, DV_D14_MARK, D22_MARK, ED22_MARK,
244 	LCDD15_MARK, DV_D15_MARK, D23_MARK, ED23_MARK,
245 	LCDD16_MARK, DV_HSYNC_MARK, D24_MARK, ED24_MARK,
246 	LCDD17_MARK, DV_VSYNC_MARK, D25_MARK, ED25_MARK,
247 	LCDD18_MARK, DREQ2_MARK, MSIOF0L_TSCK_MARK,
248 	D26_MARK, ED26_MARK,
249 	LCDD19_MARK, MSIOF0L_TSYNC_MARK,
250 	D27_MARK, ED27_MARK,
251 	LCDD20_MARK, TS_SPSYNC1_MARK, MSIOF0L_MCK0_MARK,
252 	D28_MARK, ED28_MARK,
253 	LCDD21_MARK, TS_SDAT1_MARK, MSIOF0L_MCK1_MARK,
254 	D29_MARK, ED29_MARK,
255 	LCDD22_MARK, TS_SDEN1_MARK, MSIOF0L_SS1_MARK,
256 	D30_MARK, ED30_MARK,
257 	LCDD23_MARK, TS_SCK1_MARK, MSIOF0L_SS2_MARK,
258 	D31_MARK, ED31_MARK,
259 	LCDDCK_MARK, LCDWR_MARK, DV_CKO_MARK, SIUAOSPD_MARK,
260 	LCDRD_MARK, DACK2_MARK, MSIOF0L_RSYNC_MARK,
261 
262 	/* 49-5 */
263 	LCDHSYN_MARK, LCDCS_MARK, LCDCS2_MARK, DACK3_MARK,
264 	LCDDISP_MARK, LCDRS_MARK, DREQ3_MARK, MSIOF0L_RSCK_MARK,
265 	LCDCSYN_MARK, LCDCSYN2_MARK, DV_CKI_MARK,
266 	LCDLCLK_MARK, DREQ1_MARK, MSIOF0L_RXD_MARK,
267 	LCDDON_MARK, LCDDON2_MARK, DACK1_MARK, MSIOF0L_TXD_MARK,
268 	VIO_DR0_MARK, VIO_DR1_MARK, VIO_DR2_MARK, VIO_DR3_MARK,
269 	VIO_DR4_MARK, VIO_DR5_MARK, VIO_DR6_MARK, VIO_DR7_MARK,
270 	VIO_VDR_MARK, VIO_HDR_MARK,
271 	VIO_CLKR_MARK, VIO_CKOR_MARK,
272 	SCIFA1_TXD_MARK, GPS_PGFA0_MARK,
273 	SCIFA1_SCK_MARK, GPS_PGFA1_MARK,
274 	SCIFA1_RTS_MARK, GPS_EPPSINMON_MARK,
275 	SCIFA1_RXD_MARK, SCIFA1_CTS_MARK,
276 	MSIOF1_TXD_MARK, SCIFA1_TXD2_MARK, GPS_TXD_MARK,
277 	MSIOF1_TSYNC_MARK, SCIFA1_CTS2_MARK, I2C_SDA2_MARK,
278 	MSIOF1_TSCK_MARK, SCIFA1_SCK2_MARK,
279 	MSIOF1_RXD_MARK, SCIFA1_RXD2_MARK, GPS_RXD_MARK,
280 	MSIOF1_RSCK_MARK, SCIFA1_RTS2_MARK,
281 	MSIOF1_RSYNC_MARK, I2C_SCL2_MARK,
282 	MSIOF1_MCK0_MARK, MSIOF1_MCK1_MARK,
283 	MSIOF1_SS1_MARK, EDBGREQ3_MARK,
284 	MSIOF1_SS2_MARK,
285 	PORT236_IROUT_MARK, IRDA_OUT_MARK,
286 	IRDA_IN_MARK, IRDA_FIRSEL_MARK,
287 	TPU1TO0_MARK, TS_SPSYNC3_MARK,
288 	TPU1TO1_MARK, TS_SDAT3_MARK,
289 	TPU1TO2_MARK, TS_SDEN3_MARK, PORT241_MSIOF2_SS1_MARK,
290 	TPU1TO3_MARK, PORT242_MSIOF2_TSCK_MARK,
291 	M13_BSW_MARK, PORT243_MSIOF2_TSYNC_MARK,
292 	M14_GSW_MARK, PORT244_MSIOF2_TXD_MARK,
293 	PORT245_IROUT_MARK, M15_RSW_MARK,
294 	SOUT3_MARK, SCIFA2_TXD1_MARK,
295 	SIN3_MARK, SCIFA2_RXD1_MARK,
296 	XRTS3_MARK, SCIFA2_RTS1_MARK, PORT248_MSIOF2_SS2_MARK,
297 	XCTS3_MARK, SCIFA2_CTS1_MARK, PORT249_MSIOF2_RXD_MARK,
298 	DINT_MARK, SCIFA2_SCK1_MARK, TS_SCK3_MARK,
299 	SDHICLK0_MARK, TCK2_MARK,
300 	SDHICD0_MARK,
301 	SDHID0_0_MARK, TMS2_MARK,
302 	SDHID0_1_MARK, TDO2_MARK,
303 	SDHID0_2_MARK, TDI2_MARK,
304 	SDHID0_3_MARK, RTCK2_MARK,
305 
306 	/* 49-6 */
307 	SDHICMD0_MARK, TRST2_MARK,
308 	SDHIWP0_MARK, EDBGREQ2_MARK,
309 	SDHICLK1_MARK, TCK3_MARK,
310 	SDHID1_0_MARK, M11_SLCD_SO2_MARK,
311 	TS_SPSYNC2_MARK, TMS3_MARK,
312 	SDHID1_1_MARK, M9_SLCD_AO2_MARK,
313 	TS_SDAT2_MARK, TDO3_MARK,
314 	SDHID1_2_MARK, M10_SLCD_CK2_MARK,
315 	TS_SDEN2_MARK, TDI3_MARK,
316 	SDHID1_3_MARK, M12_SLCD_CE2_MARK,
317 	TS_SCK2_MARK, RTCK3_MARK,
318 	SDHICMD1_MARK, TRST3_MARK,
319 	SDHICLK2_MARK, SCIFB_SCK_MARK,
320 	SDHID2_0_MARK, SCIFB_TXD_MARK,
321 	SDHID2_1_MARK, SCIFB_CTS_MARK,
322 	SDHID2_2_MARK, SCIFB_RXD_MARK,
323 	SDHID2_3_MARK, SCIFB_RTS_MARK,
324 	SDHICMD2_MARK,
325 	RESETOUTS_MARK,
326 	DIVLOCK_MARK,
327 	PINMUX_MARK_END,
328 };
329 
330 #define PORT_DATA_I(nr) \
331 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_IN)
332 
333 #define PORT_DATA_I_PD(nr) \
334 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \
335 		    PORT##nr##_IN, PORT##nr##_IN_PD)
336 
337 #define PORT_DATA_I_PU(nr) \
338 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \
339 		    PORT##nr##_IN, PORT##nr##_IN_PU)
340 
341 #define PORT_DATA_I_PU_PD(nr) \
342 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \
343 		    PORT##nr##_IN, PORT##nr##_IN_PD, PORT##nr##_IN_PU)
344 
345 #define PORT_DATA_O(nr) \
346 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT)
347 
348 #define PORT_DATA_IO(nr) \
349 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \
350 		    PORT##nr##_IN)
351 
352 #define PORT_DATA_IO_PD(nr) \
353 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \
354 		    PORT##nr##_IN, PORT##nr##_IN_PD)
355 
356 #define PORT_DATA_IO_PU(nr) \
357 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \
358 		    PORT##nr##_IN, PORT##nr##_IN_PU)
359 
360 #define PORT_DATA_IO_PU_PD(nr) \
361 	PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \
362 		    PORT##nr##_IN, PORT##nr##_IN_PD, PORT##nr##_IN_PU)
363 
364 
365 static pinmux_enum_t pinmux_data[] = {
366 
367 	/* specify valid pin states for each pin in GPIO mode */
368 
369 	/* 49-1 (GPIO) */
370 	PORT_DATA_I_PD(0),
371 	PORT_DATA_I_PU(1), PORT_DATA_I_PU(2), PORT_DATA_I_PU(3),
372 	PORT_DATA_I_PU(4), PORT_DATA_I_PU(5), PORT_DATA_I_PU(6),
373 	PORT_DATA_I_PU(7), PORT_DATA_I_PU(8), PORT_DATA_I_PU(9),
374 	PORT_DATA_I_PU(10), PORT_DATA_I_PU(11), PORT_DATA_I_PU(12),
375 	PORT_DATA_I_PU(13),
376 	PORT_DATA_IO_PU_PD(14), PORT_DATA_IO_PU_PD(15),
377 	PORT_DATA_O(16), PORT_DATA_O(17), PORT_DATA_O(18), PORT_DATA_O(19),
378 	PORT_DATA_O(20), PORT_DATA_O(21), PORT_DATA_O(22), PORT_DATA_O(23),
379 	PORT_DATA_O(24), PORT_DATA_O(25), PORT_DATA_O(26),
380 	PORT_DATA_I_PD(27), PORT_DATA_I_PD(28),
381 	PORT_DATA_O(29), PORT_DATA_O(30), PORT_DATA_O(31), PORT_DATA_O(32),
382 	PORT_DATA_IO_PU(33),
383 	PORT_DATA_O(34),
384 	PORT_DATA_I_PU(35),
385 	PORT_DATA_O(36),
386 	PORT_DATA_I_PU_PD(37),
387 
388 	/* 49-2 (GPIO) */
389 	PORT_DATA_IO_PU_PD(38),
390 	PORT_DATA_IO_PD(39), PORT_DATA_IO_PD(40), PORT_DATA_IO_PD(41),
391 	PORT_DATA_O(42), PORT_DATA_O(43), PORT_DATA_O(44), PORT_DATA_O(45),
392 	PORT_DATA_O(46), PORT_DATA_O(47),
393 	PORT_DATA_I_PU_PD(48), PORT_DATA_I_PU_PD(49), PORT_DATA_I_PU_PD(50),
394 	PORT_DATA_IO_PD(51), PORT_DATA_IO_PD(52),
395 	PORT_DATA_O(53),
396 	PORT_DATA_IO_PD(54),
397 	PORT_DATA_I_PU_PD(55),
398 	PORT_DATA_IO_PU_PD(56),
399 	PORT_DATA_I_PU_PD(57),
400 	PORT_DATA_IO_PU_PD(58),
401 	PORT_DATA_O(59), PORT_DATA_O(60), PORT_DATA_O(61), PORT_DATA_O(62),
402 	PORT_DATA_O(63),
403 	PORT_DATA_I_PU(64),
404 	PORT_DATA_O(65), PORT_DATA_O(66), PORT_DATA_O(67), PORT_DATA_O(68),
405 	PORT_DATA_IO_PD(69), PORT_DATA_IO_PD(70),
406 	PORT_DATA_I_PD(71), PORT_DATA_I_PD(72), PORT_DATA_I_PD(73),
407 	PORT_DATA_I_PD(74),
408 	PORT_DATA_IO_PU_PD(75), PORT_DATA_IO_PU_PD(76),
409 	PORT_DATA_IO_PD(77), PORT_DATA_IO_PD(78),
410 	PORT_DATA_O(79),
411 	PORT_DATA_IO_PD(80), PORT_DATA_IO_PD(81), PORT_DATA_IO_PD(82),
412 	PORT_DATA_IO_PU_PD(83), PORT_DATA_IO_PU_PD(84),
413 	PORT_DATA_IO_PU_PD(85), PORT_DATA_IO_PU_PD(86),
414 	PORT_DATA_I_PD(87),
415 	PORT_DATA_IO_PU_PD(88),
416 	PORT_DATA_I_PU_PD(89), PORT_DATA_I_PU_PD(90),
417 
418 	/* 49-3 (GPIO) */
419 	PORT_DATA_O(91), PORT_DATA_O(92), PORT_DATA_O(93), PORT_DATA_O(94),
420 	PORT_DATA_I_PU_PD(95),
421 	PORT_DATA_IO_PU_PD(96), PORT_DATA_IO_PU_PD(97), PORT_DATA_IO_PU_PD(98),
422 	PORT_DATA_IO_PU_PD(99),	PORT_DATA_IO_PU_PD(100),
423 	PORT_DATA_IO(101), PORT_DATA_IO(102), PORT_DATA_IO(103),
424 	PORT_DATA_IO_PD(104), PORT_DATA_IO_PD(105), PORT_DATA_IO_PD(106),
425 	PORT_DATA_IO_PD(107),
426 	PORT_DATA_IO_PU_PD(108), PORT_DATA_IO_PU_PD(109),
427 	PORT_DATA_IO_PU_PD(110), PORT_DATA_IO_PU_PD(111),
428 	PORT_DATA_IO_PU_PD(112), PORT_DATA_IO_PU_PD(113),
429 	PORT_DATA_IO_PU_PD(114),
430 	PORT_DATA_IO_PU(115), PORT_DATA_IO_PU(116), PORT_DATA_IO_PU(117),
431 	PORT_DATA_IO_PU(118), PORT_DATA_IO_PU(119), PORT_DATA_IO_PU(120),
432 	PORT_DATA_IO_PU(121), PORT_DATA_IO_PU(122), PORT_DATA_IO_PU(123),
433 	PORT_DATA_IO_PU(124), PORT_DATA_IO_PU(125), PORT_DATA_IO_PU(126),
434 	PORT_DATA_IO_PU(127), PORT_DATA_IO_PU(128), PORT_DATA_IO_PU(129),
435 	PORT_DATA_IO_PU(130),
436 	PORT_DATA_O(131), PORT_DATA_O(132), PORT_DATA_O(133),
437 	PORT_DATA_IO_PU(134),
438 	PORT_DATA_O(135), PORT_DATA_O(136),
439 	PORT_DATA_I_PU_PD(137),
440 	PORT_DATA_IO(138),
441 	PORT_DATA_IO_PU_PD(139),
442 	PORT_DATA_IO(140), PORT_DATA_IO(141),
443 	PORT_DATA_I_PU(142),
444 	PORT_DATA_O(143), PORT_DATA_O(144),
445 	PORT_DATA_I_PU(145),
446 
447 	/* 49-4 (GPIO) */
448 	PORT_DATA_O(146),
449 	PORT_DATA_I_PU_PD(147),
450 	PORT_DATA_I_PD(148), PORT_DATA_I_PD(149),
451 	PORT_DATA_IO_PD(150), PORT_DATA_IO_PD(151), PORT_DATA_IO_PD(152),
452 	PORT_DATA_IO_PD(153), PORT_DATA_IO_PD(154), PORT_DATA_IO_PD(155),
453 	PORT_DATA_IO_PD(156), PORT_DATA_IO_PD(157), PORT_DATA_IO_PD(158),
454 	PORT_DATA_IO_PD(159), PORT_DATA_IO_PD(160), PORT_DATA_IO_PD(161),
455 	PORT_DATA_IO_PD(162), PORT_DATA_IO_PD(163), PORT_DATA_IO_PD(164),
456 	PORT_DATA_IO_PD(165), PORT_DATA_IO_PD(166),
457 	PORT_DATA_IO_PU_PD(167),
458 	PORT_DATA_O(168),
459 	PORT_DATA_I_PD(169), PORT_DATA_I_PD(170),
460 	PORT_DATA_O(171),
461 	PORT_DATA_IO_PD(172), PORT_DATA_IO_PD(173),
462 	PORT_DATA_O(174),
463 	PORT_DATA_IO_PD(175), PORT_DATA_IO_PD(176), PORT_DATA_IO_PD(177),
464 	PORT_DATA_IO_PD(178), PORT_DATA_IO_PD(179), PORT_DATA_IO_PD(180),
465 	PORT_DATA_IO_PD(181), PORT_DATA_IO_PD(182), PORT_DATA_IO_PD(183),
466 	PORT_DATA_IO_PD(184), PORT_DATA_IO_PD(185), PORT_DATA_IO_PD(186),
467 	PORT_DATA_IO_PD(187), PORT_DATA_IO_PD(188), PORT_DATA_IO_PD(189),
468 	PORT_DATA_IO_PD(190), PORT_DATA_IO_PD(191), PORT_DATA_IO_PD(192),
469 	PORT_DATA_IO_PD(193), PORT_DATA_IO_PD(194), PORT_DATA_IO_PD(195),
470 	PORT_DATA_IO_PD(196), PORT_DATA_IO_PD(197), PORT_DATA_IO_PD(198),
471 	PORT_DATA_O(199),
472 	PORT_DATA_IO_PD(200),
473 
474 	/* 49-5 (GPIO) */
475 	PORT_DATA_O(201),
476 	PORT_DATA_IO_PD(202), PORT_DATA_IO_PD(203),
477 	PORT_DATA_I(204),
478 	PORT_DATA_O(205),
479 	PORT_DATA_IO_PD(206), PORT_DATA_IO_PD(207), PORT_DATA_IO_PD(208),
480 	PORT_DATA_IO_PD(209), PORT_DATA_IO_PD(210), PORT_DATA_IO_PD(211),
481 	PORT_DATA_IO_PD(212), PORT_DATA_IO_PD(213), PORT_DATA_IO_PD(214),
482 	PORT_DATA_IO_PD(215), PORT_DATA_IO_PD(216),
483 	PORT_DATA_O(217),
484 	PORT_DATA_I_PU_PD(218), PORT_DATA_I_PU_PD(219),
485 	PORT_DATA_O(220), PORT_DATA_O(221), PORT_DATA_O(222),
486 	PORT_DATA_I_PD(223),
487 	PORT_DATA_I_PU_PD(224),
488 	PORT_DATA_O(225),
489 	PORT_DATA_IO_PD(226),
490 	PORT_DATA_IO_PU_PD(227),
491 	PORT_DATA_I_PD(228),
492 	PORT_DATA_IO_PD(229), PORT_DATA_IO_PD(230),
493 	PORT_DATA_I_PU_PD(231), PORT_DATA_I_PU_PD(232),
494 	PORT_DATA_IO_PU_PD(233), PORT_DATA_IO_PU_PD(234),
495 	PORT_DATA_I_PU_PD(235),
496 	PORT_DATA_O(236),
497 	PORT_DATA_I_PD(237),
498 	PORT_DATA_IO_PU_PD(238), PORT_DATA_IO_PU_PD(239),
499 	PORT_DATA_IO_PD(240), PORT_DATA_IO_PD(241),
500 	PORT_DATA_IO_PD(242), PORT_DATA_IO_PD(243),
501 	PORT_DATA_O(244),
502 	PORT_DATA_IO_PU_PD(245),
503 	PORT_DATA_O(246),
504 	PORT_DATA_I_PD(247),
505 	PORT_DATA_IO_PU_PD(248),
506 	PORT_DATA_I_PU_PD(249),
507 	PORT_DATA_IO_PD(250), PORT_DATA_IO_PD(251),
508 	PORT_DATA_IO_PU_PD(252), PORT_DATA_IO_PU_PD(253),
509 	PORT_DATA_IO_PU_PD(254), PORT_DATA_IO_PU_PD(255),
510 	PORT_DATA_IO_PU_PD(256),
511 
512 	/* 49-6 (GPIO) */
513 	PORT_DATA_IO_PU_PD(257), PORT_DATA_IO_PU_PD(258),
514 	PORT_DATA_IO_PD(259),
515 	PORT_DATA_IO_PU(260), PORT_DATA_IO_PU(261), PORT_DATA_IO_PU(262),
516 	PORT_DATA_IO_PU(263), PORT_DATA_IO_PU(264),
517 	PORT_DATA_O(265),
518 	PORT_DATA_IO_PU(266), PORT_DATA_IO_PU(267), PORT_DATA_IO_PU(268),
519 	PORT_DATA_IO_PU(269), PORT_DATA_IO_PU(270),
520 	PORT_DATA_O(271),
521 	PORT_DATA_I_PD(272),
522 
523 	/* Special Pull-up / Pull-down Functions */
524 	PINMUX_DATA(PORT48_KEYIN0_PU_MARK, MSELBCR_MSEL2_1,
525 		    PORT48_FN2, PORT48_IN_PU),
526 	PINMUX_DATA(PORT49_KEYIN1_PU_MARK, MSELBCR_MSEL2_1,
527 		    PORT49_FN2, PORT49_IN_PU),
528 	PINMUX_DATA(PORT50_KEYIN2_PU_MARK, MSELBCR_MSEL2_1,
529 		    PORT50_FN2, PORT50_IN_PU),
530 	PINMUX_DATA(PORT55_KEYIN3_PU_MARK, MSELBCR_MSEL2_1,
531 		    PORT55_FN2, PORT55_IN_PU),
532 	PINMUX_DATA(PORT56_KEYIN4_PU_MARK, MSELBCR_MSEL2_1,
533 		    PORT56_FN2, PORT56_IN_PU),
534 	PINMUX_DATA(PORT57_KEYIN5_PU_MARK, MSELBCR_MSEL2_1,
535 		    PORT57_FN2, PORT57_IN_PU),
536 	PINMUX_DATA(PORT58_KEYIN6_PU_MARK, MSELBCR_MSEL2_1,
537 		    PORT58_FN2, PORT58_IN_PU),
538 
539 	/* 49-1 (FN) */
540 	PINMUX_DATA(VBUS0_MARK, PORT0_FN1),
541 	PINMUX_DATA(CPORT0_MARK, PORT1_FN1),
542 	PINMUX_DATA(CPORT1_MARK, PORT2_FN1),
543 	PINMUX_DATA(CPORT2_MARK, PORT3_FN1),
544 	PINMUX_DATA(CPORT3_MARK, PORT4_FN1),
545 	PINMUX_DATA(CPORT4_MARK, PORT5_FN1),
546 	PINMUX_DATA(CPORT5_MARK, PORT6_FN1),
547 	PINMUX_DATA(CPORT6_MARK, PORT7_FN1),
548 	PINMUX_DATA(CPORT7_MARK, PORT8_FN1),
549 	PINMUX_DATA(CPORT8_MARK, PORT9_FN1),
550 	PINMUX_DATA(CPORT9_MARK, PORT10_FN1),
551 	PINMUX_DATA(CPORT10_MARK, PORT11_FN1),
552 	PINMUX_DATA(CPORT11_MARK, PORT12_FN1),
553 	PINMUX_DATA(SIN2_MARK, PORT12_FN2),
554 	PINMUX_DATA(CPORT12_MARK, PORT13_FN1),
555 	PINMUX_DATA(XCTS2_MARK, PORT13_FN2),
556 	PINMUX_DATA(CPORT13_MARK, PORT14_FN1),
557 	PINMUX_DATA(RFSPO4_MARK, PORT14_FN2),
558 	PINMUX_DATA(CPORT14_MARK, PORT15_FN1),
559 	PINMUX_DATA(RFSPO5_MARK, PORT15_FN2),
560 	PINMUX_DATA(CPORT15_MARK, PORT16_FN1),
561 	PINMUX_DATA(CPORT16_MARK, PORT17_FN1),
562 	PINMUX_DATA(CPORT17_MARK, PORT18_FN1),
563 	PINMUX_DATA(SOUT2_MARK, PORT18_FN2),
564 	PINMUX_DATA(CPORT18_MARK, PORT19_FN1),
565 	PINMUX_DATA(XRTS2_MARK, PORT19_FN1),
566 	PINMUX_DATA(CPORT19_MARK, PORT20_FN1),
567 	PINMUX_DATA(CPORT20_MARK, PORT21_FN1),
568 	PINMUX_DATA(RFSPO6_MARK, PORT21_FN2),
569 	PINMUX_DATA(CPORT21_MARK, PORT22_FN1),
570 	PINMUX_DATA(STATUS0_MARK, PORT22_FN2),
571 	PINMUX_DATA(CPORT22_MARK, PORT23_FN1),
572 	PINMUX_DATA(STATUS1_MARK, PORT23_FN2),
573 	PINMUX_DATA(CPORT23_MARK, PORT24_FN1),
574 	PINMUX_DATA(STATUS2_MARK, PORT24_FN2),
575 	PINMUX_DATA(RFSPO7_MARK, PORT24_FN3),
576 	PINMUX_DATA(MPORT0_MARK, PORT25_FN1),
577 	PINMUX_DATA(MPORT1_MARK, PORT26_FN1),
578 	PINMUX_DATA(B_SYNLD1_MARK, PORT27_FN1),
579 	PINMUX_DATA(B_SYNLD2_MARK, PORT28_FN1),
580 	PINMUX_DATA(XMAINPS_MARK, PORT29_FN1),
581 	PINMUX_DATA(XDIVPS_MARK, PORT30_FN1),
582 	PINMUX_DATA(XIDRST_MARK, PORT31_FN1),
583 	PINMUX_DATA(IDCLK_MARK, PORT32_FN1),
584 	PINMUX_DATA(IDIO_MARK, PORT33_FN1),
585 	PINMUX_DATA(SOUT1_MARK, PORT34_FN1),
586 	PINMUX_DATA(SCIFA4_TXD_MARK, PORT34_FN2),
587 	PINMUX_DATA(M02_BERDAT_MARK, PORT34_FN3),
588 	PINMUX_DATA(SIN1_MARK, PORT35_FN1),
589 	PINMUX_DATA(SCIFA4_RXD_MARK, PORT35_FN2),
590 	PINMUX_DATA(XWUP_MARK, PORT35_FN3),
591 	PINMUX_DATA(XRTS1_MARK, PORT36_FN1),
592 	PINMUX_DATA(SCIFA4_RTS_MARK, PORT36_FN2),
593 	PINMUX_DATA(M03_BERCLK_MARK, PORT36_FN3),
594 	PINMUX_DATA(XCTS1_MARK, PORT37_FN1),
595 	PINMUX_DATA(SCIFA4_CTS_MARK, PORT37_FN2),
596 
597 	/* 49-2 (FN) */
598 	PINMUX_DATA(HSU_IQ_AGC6_MARK, PORT38_FN1),
599 	PINMUX_DATA(MFG2_IN2_MARK, PORT38_FN2),
600 	PINMUX_DATA(MSIOF2_MCK0_MARK, PORT38_FN3),
601 	PINMUX_DATA(HSU_IQ_AGC5_MARK, PORT39_FN1),
602 	PINMUX_DATA(MFG2_IN1_MARK, PORT39_FN2),
603 	PINMUX_DATA(MSIOF2_MCK1_MARK, PORT39_FN3),
604 	PINMUX_DATA(HSU_IQ_AGC4_MARK, PORT40_FN1),
605 	PINMUX_DATA(MSIOF2_RSYNC_MARK, PORT40_FN3),
606 	PINMUX_DATA(HSU_IQ_AGC3_MARK, PORT41_FN1),
607 	PINMUX_DATA(MFG2_OUT1_MARK, PORT41_FN2),
608 	PINMUX_DATA(MSIOF2_RSCK_MARK, PORT41_FN3),
609 	PINMUX_DATA(HSU_IQ_AGC2_MARK, PORT42_FN1),
610 	PINMUX_DATA(PORT42_KEYOUT0_MARK, MSELBCR_MSEL2_1, PORT42_FN2),
611 	PINMUX_DATA(HSU_IQ_AGC1_MARK, PORT43_FN1),
612 	PINMUX_DATA(PORT43_KEYOUT1_MARK, MSELBCR_MSEL2_1, PORT43_FN2),
613 	PINMUX_DATA(HSU_IQ_AGC0_MARK, PORT44_FN1),
614 	PINMUX_DATA(PORT44_KEYOUT2_MARK, MSELBCR_MSEL2_1, PORT44_FN2),
615 	PINMUX_DATA(HSU_IQ_AGC_ST_MARK, PORT45_FN1),
616 	PINMUX_DATA(PORT45_KEYOUT3_MARK, MSELBCR_MSEL2_1, PORT45_FN2),
617 	PINMUX_DATA(HSU_IQ_PDO_MARK, PORT46_FN1),
618 	PINMUX_DATA(PORT46_KEYOUT4_MARK, MSELBCR_MSEL2_1, PORT46_FN2),
619 	PINMUX_DATA(HSU_IQ_PYO_MARK, PORT47_FN1),
620 	PINMUX_DATA(PORT47_KEYOUT5_MARK, MSELBCR_MSEL2_1, PORT47_FN2),
621 	PINMUX_DATA(HSU_EN_TXMUX_G3MO_MARK, PORT48_FN1),
622 	PINMUX_DATA(PORT48_KEYIN0_MARK, MSELBCR_MSEL2_1, PORT48_FN2),
623 	PINMUX_DATA(HSU_I_TXMUX_G3MO_MARK, PORT49_FN1),
624 	PINMUX_DATA(PORT49_KEYIN1_MARK, MSELBCR_MSEL2_1, PORT49_FN2),
625 	PINMUX_DATA(HSU_Q_TXMUX_G3MO_MARK, PORT50_FN1),
626 	PINMUX_DATA(PORT50_KEYIN2_MARK, MSELBCR_MSEL2_1, PORT50_FN2),
627 	PINMUX_DATA(HSU_SYO_MARK, PORT51_FN1),
628 	PINMUX_DATA(PORT51_MSIOF2_TSYNC_MARK, PORT51_FN2),
629 	PINMUX_DATA(HSU_SDO_MARK, PORT52_FN1),
630 	PINMUX_DATA(PORT52_MSIOF2_TSCK_MARK, PORT52_FN2),
631 	PINMUX_DATA(HSU_TGTTI_G3MO_MARK, PORT53_FN1),
632 	PINMUX_DATA(PORT53_MSIOF2_TXD_MARK, PORT53_FN2),
633 	PINMUX_DATA(B_TIME_STAMP_MARK, PORT54_FN1),
634 	PINMUX_DATA(PORT54_MSIOF2_RXD_MARK, PORT54_FN2),
635 	PINMUX_DATA(HSU_SDI_MARK, PORT55_FN1),
636 	PINMUX_DATA(PORT55_KEYIN3_MARK, MSELBCR_MSEL2_1, PORT55_FN2),
637 	PINMUX_DATA(HSU_SCO_MARK, PORT56_FN1),
638 	PINMUX_DATA(PORT56_KEYIN4_MARK, MSELBCR_MSEL2_1, PORT56_FN2),
639 	PINMUX_DATA(HSU_DREQ_MARK, PORT57_FN1),
640 	PINMUX_DATA(PORT57_KEYIN5_MARK, MSELBCR_MSEL2_1, PORT57_FN2),
641 	PINMUX_DATA(HSU_DACK_MARK, PORT58_FN1),
642 	PINMUX_DATA(PORT58_KEYIN6_MARK, MSELBCR_MSEL2_1, PORT58_FN2),
643 	PINMUX_DATA(HSU_CLK61M_MARK, PORT59_FN1),
644 	PINMUX_DATA(PORT59_MSIOF2_SS1_MARK, PORT59_FN2),
645 	PINMUX_DATA(HSU_XRST_MARK, PORT60_FN1),
646 	PINMUX_DATA(PORT60_MSIOF2_SS2_MARK, PORT60_FN2),
647 	PINMUX_DATA(PCMCLKO_MARK, PORT61_FN1),
648 	PINMUX_DATA(SYNC8KO_MARK, PORT62_FN1),
649 	PINMUX_DATA(DNPCM_A_MARK, PORT63_FN1),
650 	PINMUX_DATA(UPPCM_A_MARK, PORT64_FN1),
651 	PINMUX_DATA(XTALB1L_MARK, PORT65_FN1),
652 	PINMUX_DATA(GPS_AGC1_MARK, PORT66_FN1),
653 	PINMUX_DATA(SCIFA0_RTS_MARK, PORT66_FN2),
654 	PINMUX_DATA(GPS_AGC2_MARK, PORT67_FN1),
655 	PINMUX_DATA(SCIFA0_SCK_MARK, PORT67_FN2),
656 	PINMUX_DATA(GPS_AGC3_MARK, PORT68_FN1),
657 	PINMUX_DATA(SCIFA0_TXD_MARK, PORT68_FN2),
658 	PINMUX_DATA(GPS_AGC4_MARK, PORT69_FN1),
659 	PINMUX_DATA(SCIFA0_RXD_MARK, PORT69_FN2),
660 	PINMUX_DATA(GPS_PWRD_MARK, PORT70_FN1),
661 	PINMUX_DATA(SCIFA0_CTS_MARK, PORT70_FN2),
662 	PINMUX_DATA(GPS_IM_MARK, PORT71_FN1),
663 	PINMUX_DATA(GPS_IS_MARK, PORT72_FN1),
664 	PINMUX_DATA(GPS_QM_MARK, PORT73_FN1),
665 	PINMUX_DATA(GPS_QS_MARK, PORT74_FN1),
666 	PINMUX_DATA(SIUBOMC_MARK, PORT75_FN1),
667 	PINMUX_DATA(TPU2TO0_MARK, PORT75_FN3),
668 	PINMUX_DATA(SIUCKB_MARK, PORT76_FN1),
669 	PINMUX_DATA(TPU2TO1_MARK, PORT76_FN3),
670 	PINMUX_DATA(SIUBOLR_MARK, PORT77_FN1),
671 	PINMUX_DATA(BBIF2_TSYNC_MARK, PORT77_FN2),
672 	PINMUX_DATA(TPU2TO2_MARK, PORT77_FN3),
673 	PINMUX_DATA(SIUBOBT_MARK, PORT78_FN1),
674 	PINMUX_DATA(BBIF2_TSCK_MARK, PORT78_FN2),
675 	PINMUX_DATA(TPU2TO3_MARK, PORT78_FN3),
676 	PINMUX_DATA(SIUBOSLD_MARK, PORT79_FN1),
677 	PINMUX_DATA(BBIF2_TXD_MARK, PORT79_FN2),
678 	PINMUX_DATA(TPU3TO0_MARK, PORT79_FN3),
679 	PINMUX_DATA(SIUBILR_MARK, PORT80_FN1),
680 	PINMUX_DATA(TPU3TO1_MARK, PORT80_FN3),
681 	PINMUX_DATA(SIUBIBT_MARK, PORT81_FN1),
682 	PINMUX_DATA(TPU3TO2_MARK, PORT81_FN3),
683 	PINMUX_DATA(SIUBISLD_MARK, PORT82_FN1),
684 	PINMUX_DATA(TPU3TO3_MARK, PORT82_FN3),
685 	PINMUX_DATA(NMI_MARK, PORT83_FN1),
686 	PINMUX_DATA(TPU4TO0_MARK, PORT83_FN3),
687 	PINMUX_DATA(DNPCM_M_MARK, PORT84_FN1),
688 	PINMUX_DATA(TPU4TO1_MARK, PORT84_FN3),
689 	PINMUX_DATA(TPU4TO2_MARK, PORT85_FN3),
690 	PINMUX_DATA(TPU4TO3_MARK, PORT86_FN3),
691 	PINMUX_DATA(IRQ_TMPB_MARK, PORT87_FN1),
692 	PINMUX_DATA(PWEN_MARK, PORT88_FN1),
693 	PINMUX_DATA(MFG1_OUT1_MARK, PORT88_FN2),
694 	PINMUX_DATA(OVCN_MARK, PORT89_FN1),
695 	PINMUX_DATA(MFG1_IN1_MARK, PORT89_FN2),
696 	PINMUX_DATA(OVCN2_MARK, PORT90_FN1),
697 	PINMUX_DATA(MFG1_IN2_MARK, PORT90_FN2),
698 
699 	/* 49-3 (FN) */
700 	PINMUX_DATA(RFSPO1_MARK, PORT91_FN1),
701 	PINMUX_DATA(RFSPO2_MARK, PORT92_FN1),
702 	PINMUX_DATA(RFSPO3_MARK, PORT93_FN1),
703 	PINMUX_DATA(PORT93_VIO_CKO2_MARK, PORT93_FN2),
704 	PINMUX_DATA(USBTERM_MARK, PORT94_FN1),
705 	PINMUX_DATA(EXTLP_MARK, PORT94_FN2),
706 	PINMUX_DATA(IDIN_MARK, PORT95_FN1),
707 	PINMUX_DATA(SCIFA5_CTS_MARK, PORT96_FN1),
708 	PINMUX_DATA(MFG0_IN1_MARK, PORT96_FN2),
709 	PINMUX_DATA(SCIFA5_RTS_MARK, PORT97_FN1),
710 	PINMUX_DATA(MFG0_IN2_MARK, PORT97_FN2),
711 	PINMUX_DATA(SCIFA5_RXD_MARK, PORT98_FN1),
712 	PINMUX_DATA(SCIFA5_TXD_MARK, PORT99_FN1),
713 	PINMUX_DATA(SCIFA5_SCK_MARK, PORT100_FN1),
714 	PINMUX_DATA(MFG0_OUT1_MARK, PORT100_FN2),
715 	PINMUX_DATA(A0_EA0_MARK, PORT101_FN1),
716 	PINMUX_DATA(BS_MARK, PORT101_FN2),
717 	PINMUX_DATA(A14_EA14_MARK, PORT102_FN1),
718 	PINMUX_DATA(PORT102_KEYOUT0_MARK, MSELBCR_MSEL2_0, PORT102_FN2),
719 	PINMUX_DATA(A15_EA15_MARK, PORT103_FN1),
720 	PINMUX_DATA(PORT103_KEYOUT1_MARK, MSELBCR_MSEL2_0, PORT103_FN2),
721 	PINMUX_DATA(DV_CLKOL_MARK, PORT103_FN3),
722 	PINMUX_DATA(A16_EA16_MARK, PORT104_FN1),
723 	PINMUX_DATA(PORT104_KEYOUT2_MARK, MSELBCR_MSEL2_0, PORT104_FN2),
724 	PINMUX_DATA(DV_VSYNCL_MARK, PORT104_FN3),
725 	PINMUX_DATA(MSIOF0_SS1_MARK, PORT104_FN4),
726 	PINMUX_DATA(A17_EA17_MARK, PORT105_FN1),
727 	PINMUX_DATA(PORT105_KEYOUT3_MARK, MSELBCR_MSEL2_0, PORT105_FN2),
728 	PINMUX_DATA(DV_HSYNCL_MARK, PORT105_FN3),
729 	PINMUX_DATA(MSIOF0_TSYNC_MARK, PORT105_FN4),
730 	PINMUX_DATA(A18_EA18_MARK, PORT106_FN1),
731 	PINMUX_DATA(PORT106_KEYOUT4_MARK, MSELBCR_MSEL2_0, PORT106_FN2),
732 	PINMUX_DATA(DV_DL0_MARK, PORT106_FN3),
733 	PINMUX_DATA(MSIOF0_TSCK_MARK, PORT106_FN4),
734 	PINMUX_DATA(A19_EA19_MARK, PORT107_FN1),
735 	PINMUX_DATA(PORT107_KEYOUT5_MARK, MSELBCR_MSEL2_0, PORT107_FN2),
736 	PINMUX_DATA(DV_DL1_MARK, PORT107_FN3),
737 	PINMUX_DATA(MSIOF0_TXD_MARK, PORT107_FN4),
738 	PINMUX_DATA(A20_EA20_MARK, PORT108_FN1),
739 	PINMUX_DATA(PORT108_KEYIN0_MARK, MSELBCR_MSEL2_0, PORT108_FN2),
740 	PINMUX_DATA(DV_DL2_MARK, PORT108_FN3),
741 	PINMUX_DATA(MSIOF0_RSCK_MARK, PORT108_FN4),
742 	PINMUX_DATA(A21_EA21_MARK, PORT109_FN1),
743 	PINMUX_DATA(PORT109_KEYIN1_MARK, MSELBCR_MSEL2_0, PORT109_FN2),
744 	PINMUX_DATA(DV_DL3_MARK, PORT109_FN3),
745 	PINMUX_DATA(MSIOF0_RSYNC_MARK, PORT109_FN4),
746 	PINMUX_DATA(A22_EA22_MARK, PORT110_FN1),
747 	PINMUX_DATA(PORT110_KEYIN2_MARK, MSELBCR_MSEL2_0, PORT110_FN2),
748 	PINMUX_DATA(DV_DL4_MARK, PORT110_FN3),
749 	PINMUX_DATA(MSIOF0_MCK0_MARK, PORT110_FN4),
750 	PINMUX_DATA(A23_EA23_MARK, PORT111_FN1),
751 	PINMUX_DATA(PORT111_KEYIN3_MARK, MSELBCR_MSEL2_0, PORT111_FN2),
752 	PINMUX_DATA(DV_DL5_MARK, PORT111_FN3),
753 	PINMUX_DATA(MSIOF0_MCK1_MARK, PORT111_FN4),
754 	PINMUX_DATA(A24_EA24_MARK, PORT112_FN1),
755 	PINMUX_DATA(PORT112_KEYIN4_MARK, MSELBCR_MSEL2_0, PORT112_FN2),
756 	PINMUX_DATA(DV_DL6_MARK, PORT112_FN3),
757 	PINMUX_DATA(MSIOF0_RXD_MARK, PORT112_FN4),
758 	PINMUX_DATA(A25_EA25_MARK, PORT113_FN1),
759 	PINMUX_DATA(PORT113_KEYIN5_MARK, MSELBCR_MSEL2_0, PORT113_FN2),
760 	PINMUX_DATA(DV_DL7_MARK, PORT113_FN3),
761 	PINMUX_DATA(MSIOF0_SS2_MARK, PORT113_FN4),
762 	PINMUX_DATA(A26_MARK, PORT114_FN1),
763 	PINMUX_DATA(PORT113_KEYIN6_MARK, MSELBCR_MSEL2_0, PORT114_FN2),
764 	PINMUX_DATA(DV_CLKIL_MARK, PORT114_FN3),
765 	PINMUX_DATA(D0_ED0_NAF0_MARK, PORT115_FN1),
766 	PINMUX_DATA(D1_ED1_NAF1_MARK, PORT116_FN1),
767 	PINMUX_DATA(D2_ED2_NAF2_MARK, PORT117_FN1),
768 	PINMUX_DATA(D3_ED3_NAF3_MARK, PORT118_FN1),
769 	PINMUX_DATA(D4_ED4_NAF4_MARK, PORT119_FN1),
770 	PINMUX_DATA(D5_ED5_NAF5_MARK, PORT120_FN1),
771 	PINMUX_DATA(D6_ED6_NAF6_MARK, PORT121_FN1),
772 	PINMUX_DATA(D7_ED7_NAF7_MARK, PORT122_FN1),
773 	PINMUX_DATA(D8_ED8_NAF8_MARK, PORT123_FN1),
774 	PINMUX_DATA(D9_ED9_NAF9_MARK, PORT124_FN1),
775 	PINMUX_DATA(D10_ED10_NAF10_MARK, PORT125_FN1),
776 	PINMUX_DATA(D11_ED11_NAF11_MARK, PORT126_FN1),
777 	PINMUX_DATA(D12_ED12_NAF12_MARK, PORT127_FN1),
778 	PINMUX_DATA(D13_ED13_NAF13_MARK, PORT128_FN1),
779 	PINMUX_DATA(D14_ED14_NAF14_MARK, PORT129_FN1),
780 	PINMUX_DATA(D15_ED15_NAF15_MARK, PORT130_FN1),
781 	PINMUX_DATA(CS4_MARK, PORT131_FN1),
782 	PINMUX_DATA(CS5A_MARK, PORT132_FN1),
783 	PINMUX_DATA(CS5B_MARK, PORT133_FN1),
784 	PINMUX_DATA(FCE1_MARK, PORT133_FN2),
785 	PINMUX_DATA(CS6B_MARK, PORT134_FN1),
786 	PINMUX_DATA(XCS2_MARK, PORT134_FN2),
787 	PINMUX_DATA(FCE0_MARK, PORT135_FN1),
788 	PINMUX_DATA(CS6A_MARK, PORT136_FN1),
789 	PINMUX_DATA(DACK0_MARK, PORT136_FN2),
790 	PINMUX_DATA(WAIT_MARK, PORT137_FN1),
791 	PINMUX_DATA(DREQ0_MARK, PORT137_FN2),
792 	PINMUX_DATA(RD_XRD_MARK, PORT138_FN1),
793 	PINMUX_DATA(A27_MARK, PORT139_FN1),
794 	PINMUX_DATA(RDWR_XWE_MARK, PORT139_FN2),
795 	PINMUX_DATA(WE0_XWR0_FWE_MARK, PORT140_FN1),
796 	PINMUX_DATA(WE1_XWR1_MARK, PORT141_FN1),
797 	PINMUX_DATA(FRB_MARK, PORT142_FN1),
798 	PINMUX_DATA(CKO_MARK, PORT143_FN1),
799 	PINMUX_DATA(NBRSTOUT_MARK, PORT144_FN1),
800 	PINMUX_DATA(NBRST_MARK, PORT145_FN1),
801 
802 	/* 49-4 (FN) */
803 	PINMUX_DATA(RFSPO0_MARK, PORT146_FN1),
804 	PINMUX_DATA(PORT146_VIO_CKO2_MARK, PORT146_FN2),
805 	PINMUX_DATA(TSTMD_MARK, PORT147_FN1),
806 	PINMUX_DATA(VIO_VD_MARK, PORT148_FN1),
807 	PINMUX_DATA(VIO_HD_MARK, PORT149_FN1),
808 	PINMUX_DATA(VIO_D0_MARK, PORT150_FN1),
809 	PINMUX_DATA(VIO_D1_MARK, PORT151_FN1),
810 	PINMUX_DATA(VIO_D2_MARK, PORT152_FN1),
811 	PINMUX_DATA(VIO_D3_MARK, PORT153_FN1),
812 	PINMUX_DATA(VIO_D4_MARK, PORT154_FN1),
813 	PINMUX_DATA(VIO_D5_MARK, PORT155_FN1),
814 	PINMUX_DATA(VIO_D6_MARK, PORT156_FN1),
815 	PINMUX_DATA(VIO_D7_MARK, PORT157_FN1),
816 	PINMUX_DATA(VIO_D8_MARK, PORT158_FN1),
817 	PINMUX_DATA(VIO_D9_MARK, PORT159_FN1),
818 	PINMUX_DATA(VIO_D10_MARK, PORT160_FN1),
819 	PINMUX_DATA(VIO_D11_MARK, PORT161_FN1),
820 	PINMUX_DATA(VIO_D12_MARK, PORT162_FN1),
821 	PINMUX_DATA(VIO_D13_MARK, PORT163_FN1),
822 	PINMUX_DATA(VIO_D14_MARK, PORT164_FN1),
823 	PINMUX_DATA(VIO_D15_MARK, PORT165_FN1),
824 	PINMUX_DATA(VIO_CLK_MARK, PORT166_FN1),
825 	PINMUX_DATA(VIO_FIELD_MARK, PORT167_FN1),
826 	PINMUX_DATA(VIO_CKO_MARK, PORT168_FN1),
827 	PINMUX_DATA(MFG3_IN1_MARK, PORT169_FN2),
828 	PINMUX_DATA(MFG3_IN2_MARK, PORT170_FN2),
829 	PINMUX_DATA(M9_SLCD_A01_MARK, PORT171_FN1),
830 	PINMUX_DATA(MFG3_OUT1_MARK, PORT171_FN2),
831 	PINMUX_DATA(TPU0TO0_MARK, PORT171_FN3),
832 	PINMUX_DATA(M10_SLCD_CK1_MARK, PORT172_FN1),
833 	PINMUX_DATA(MFG4_IN1_MARK, PORT172_FN2),
834 	PINMUX_DATA(TPU0TO1_MARK, PORT172_FN3),
835 	PINMUX_DATA(M11_SLCD_SO1_MARK, PORT173_FN1),
836 	PINMUX_DATA(MFG4_IN2_MARK, PORT173_FN2),
837 	PINMUX_DATA(TPU0TO2_MARK, PORT173_FN3),
838 	PINMUX_DATA(M12_SLCD_CE1_MARK, PORT174_FN1),
839 	PINMUX_DATA(MFG4_OUT1_MARK, PORT174_FN2),
840 	PINMUX_DATA(TPU0TO3_MARK, PORT174_FN3),
841 	PINMUX_DATA(LCDD0_MARK, PORT175_FN1),
842 	PINMUX_DATA(PORT175_KEYOUT0_MARK, PORT175_FN2),
843 	PINMUX_DATA(DV_D0_MARK, PORT175_FN3),
844 	PINMUX_DATA(SIUCKA_MARK, PORT175_FN4),
845 	PINMUX_DATA(MFG0_OUT2_MARK, PORT175_FN5),
846 	PINMUX_DATA(LCDD1_MARK, PORT176_FN1),
847 	PINMUX_DATA(PORT176_KEYOUT1_MARK, PORT176_FN2),
848 	PINMUX_DATA(DV_D1_MARK, PORT176_FN3),
849 	PINMUX_DATA(SIUAOLR_MARK, PORT176_FN4),
850 	PINMUX_DATA(BBIF2_TSYNC1_MARK, PORT176_FN5),
851 	PINMUX_DATA(LCDD2_MARK, PORT177_FN1),
852 	PINMUX_DATA(PORT177_KEYOUT2_MARK, PORT177_FN2),
853 	PINMUX_DATA(DV_D2_MARK, PORT177_FN3),
854 	PINMUX_DATA(SIUAOBT_MARK, PORT177_FN4),
855 	PINMUX_DATA(BBIF2_TSCK1_MARK, PORT177_FN5),
856 	PINMUX_DATA(LCDD3_MARK, PORT178_FN1),
857 	PINMUX_DATA(PORT178_KEYOUT3_MARK, PORT178_FN2),
858 	PINMUX_DATA(DV_D3_MARK, PORT178_FN3),
859 	PINMUX_DATA(SIUAOSLD_MARK, PORT178_FN4),
860 	PINMUX_DATA(BBIF2_TXD1_MARK, PORT178_FN5),
861 	PINMUX_DATA(LCDD4_MARK, PORT179_FN1),
862 	PINMUX_DATA(PORT179_KEYOUT4_MARK, PORT179_FN2),
863 	PINMUX_DATA(DV_D4_MARK, PORT179_FN3),
864 	PINMUX_DATA(SIUAISPD_MARK, PORT179_FN4),
865 	PINMUX_DATA(MFG1_OUT2_MARK, PORT179_FN5),
866 	PINMUX_DATA(LCDD5_MARK, PORT180_FN1),
867 	PINMUX_DATA(PORT180_KEYOUT5_MARK, PORT180_FN2),
868 	PINMUX_DATA(DV_D5_MARK, PORT180_FN3),
869 	PINMUX_DATA(SIUAILR_MARK, PORT180_FN4),
870 	PINMUX_DATA(MFG2_OUT2_MARK, PORT180_FN5),
871 	PINMUX_DATA(LCDD6_MARK, PORT181_FN1),
872 	PINMUX_DATA(DV_D6_MARK, PORT181_FN3),
873 	PINMUX_DATA(SIUAIBT_MARK, PORT181_FN4),
874 	PINMUX_DATA(MFG3_OUT2_MARK, PORT181_FN5),
875 	PINMUX_DATA(XWR2_MARK, PORT181_FN7),
876 	PINMUX_DATA(LCDD7_MARK, PORT182_FN1),
877 	PINMUX_DATA(DV_D7_MARK, PORT182_FN3),
878 	PINMUX_DATA(SIUAISLD_MARK, PORT182_FN4),
879 	PINMUX_DATA(MFG4_OUT2_MARK, PORT182_FN5),
880 	PINMUX_DATA(XWR3_MARK, PORT182_FN7),
881 	PINMUX_DATA(LCDD8_MARK, PORT183_FN1),
882 	PINMUX_DATA(DV_D8_MARK, PORT183_FN3),
883 	PINMUX_DATA(D16_MARK, PORT183_FN6),
884 	PINMUX_DATA(ED16_MARK, PORT183_FN7),
885 	PINMUX_DATA(LCDD9_MARK, PORT184_FN1),
886 	PINMUX_DATA(DV_D9_MARK, PORT184_FN3),
887 	PINMUX_DATA(D17_MARK, PORT184_FN6),
888 	PINMUX_DATA(ED17_MARK, PORT184_FN7),
889 	PINMUX_DATA(LCDD10_MARK, PORT185_FN1),
890 	PINMUX_DATA(DV_D10_MARK, PORT185_FN3),
891 	PINMUX_DATA(D18_MARK, PORT185_FN6),
892 	PINMUX_DATA(ED18_MARK, PORT185_FN7),
893 	PINMUX_DATA(LCDD11_MARK, PORT186_FN1),
894 	PINMUX_DATA(DV_D11_MARK, PORT186_FN3),
895 	PINMUX_DATA(D19_MARK, PORT186_FN6),
896 	PINMUX_DATA(ED19_MARK, PORT186_FN7),
897 	PINMUX_DATA(LCDD12_MARK, PORT187_FN1),
898 	PINMUX_DATA(DV_D12_MARK, PORT187_FN3),
899 	PINMUX_DATA(D20_MARK, PORT187_FN6),
900 	PINMUX_DATA(ED20_MARK, PORT187_FN7),
901 	PINMUX_DATA(LCDD13_MARK, PORT188_FN1),
902 	PINMUX_DATA(DV_D13_MARK, PORT188_FN3),
903 	PINMUX_DATA(D21_MARK, PORT188_FN6),
904 	PINMUX_DATA(ED21_MARK, PORT188_FN7),
905 	PINMUX_DATA(LCDD14_MARK, PORT189_FN1),
906 	PINMUX_DATA(DV_D14_MARK, PORT189_FN3),
907 	PINMUX_DATA(D22_MARK, PORT189_FN6),
908 	PINMUX_DATA(ED22_MARK, PORT189_FN7),
909 	PINMUX_DATA(LCDD15_MARK, PORT190_FN1),
910 	PINMUX_DATA(DV_D15_MARK, PORT190_FN3),
911 	PINMUX_DATA(D23_MARK, PORT190_FN6),
912 	PINMUX_DATA(ED23_MARK, PORT190_FN7),
913 	PINMUX_DATA(LCDD16_MARK, PORT191_FN1),
914 	PINMUX_DATA(DV_HSYNC_MARK, PORT191_FN3),
915 	PINMUX_DATA(D24_MARK, PORT191_FN6),
916 	PINMUX_DATA(ED24_MARK, PORT191_FN7),
917 	PINMUX_DATA(LCDD17_MARK, PORT192_FN1),
918 	PINMUX_DATA(DV_VSYNC_MARK, PORT192_FN3),
919 	PINMUX_DATA(D25_MARK, PORT192_FN6),
920 	PINMUX_DATA(ED25_MARK, PORT192_FN7),
921 	PINMUX_DATA(LCDD18_MARK, PORT193_FN1),
922 	PINMUX_DATA(DREQ2_MARK, PORT193_FN2),
923 	PINMUX_DATA(MSIOF0L_TSCK_MARK, PORT193_FN5),
924 	PINMUX_DATA(D26_MARK, PORT193_FN6),
925 	PINMUX_DATA(ED26_MARK, PORT193_FN7),
926 	PINMUX_DATA(LCDD19_MARK, PORT194_FN1),
927 	PINMUX_DATA(MSIOF0L_TSYNC_MARK, PORT194_FN5),
928 	PINMUX_DATA(D27_MARK, PORT194_FN6),
929 	PINMUX_DATA(ED27_MARK, PORT194_FN7),
930 	PINMUX_DATA(LCDD20_MARK, PORT195_FN1),
931 	PINMUX_DATA(TS_SPSYNC1_MARK, PORT195_FN2),
932 	PINMUX_DATA(MSIOF0L_MCK0_MARK, PORT195_FN5),
933 	PINMUX_DATA(D28_MARK, PORT195_FN6),
934 	PINMUX_DATA(ED28_MARK, PORT195_FN7),
935 	PINMUX_DATA(LCDD21_MARK, PORT196_FN1),
936 	PINMUX_DATA(TS_SDAT1_MARK, PORT196_FN2),
937 	PINMUX_DATA(MSIOF0L_MCK1_MARK, PORT196_FN5),
938 	PINMUX_DATA(D29_MARK, PORT196_FN6),
939 	PINMUX_DATA(ED29_MARK, PORT196_FN7),
940 	PINMUX_DATA(LCDD22_MARK, PORT197_FN1),
941 	PINMUX_DATA(TS_SDEN1_MARK, PORT197_FN2),
942 	PINMUX_DATA(MSIOF0L_SS1_MARK, PORT197_FN5),
943 	PINMUX_DATA(D30_MARK, PORT197_FN6),
944 	PINMUX_DATA(ED30_MARK, PORT197_FN7),
945 	PINMUX_DATA(LCDD23_MARK, PORT198_FN1),
946 	PINMUX_DATA(TS_SCK1_MARK, PORT198_FN2),
947 	PINMUX_DATA(MSIOF0L_SS2_MARK, PORT198_FN5),
948 	PINMUX_DATA(D31_MARK, PORT198_FN6),
949 	PINMUX_DATA(ED31_MARK, PORT198_FN7),
950 	PINMUX_DATA(LCDDCK_MARK, PORT199_FN1),
951 	PINMUX_DATA(LCDWR_MARK, PORT199_FN2),
952 	PINMUX_DATA(DV_CKO_MARK, PORT199_FN3),
953 	PINMUX_DATA(SIUAOSPD_MARK, PORT199_FN4),
954 	PINMUX_DATA(LCDRD_MARK, PORT200_FN1),
955 	PINMUX_DATA(DACK2_MARK, PORT200_FN2),
956 	PINMUX_DATA(MSIOF0L_RSYNC_MARK, PORT200_FN5),
957 
958 	/* 49-5 (FN) */
959 	PINMUX_DATA(LCDHSYN_MARK, PORT201_FN1),
960 	PINMUX_DATA(LCDCS_MARK, PORT201_FN2),
961 	PINMUX_DATA(LCDCS2_MARK, PORT201_FN3),
962 	PINMUX_DATA(DACK3_MARK, PORT201_FN4),
963 	PINMUX_DATA(LCDDISP_MARK, PORT202_FN1),
964 	PINMUX_DATA(LCDRS_MARK, PORT202_FN2),
965 	PINMUX_DATA(DREQ3_MARK, PORT202_FN4),
966 	PINMUX_DATA(MSIOF0L_RSCK_MARK, PORT202_FN5),
967 	PINMUX_DATA(LCDCSYN_MARK, PORT203_FN1),
968 	PINMUX_DATA(LCDCSYN2_MARK, PORT203_FN2),
969 	PINMUX_DATA(DV_CKI_MARK, PORT203_FN3),
970 	PINMUX_DATA(LCDLCLK_MARK, PORT204_FN1),
971 	PINMUX_DATA(DREQ1_MARK, PORT204_FN3),
972 	PINMUX_DATA(MSIOF0L_RXD_MARK, PORT204_FN5),
973 	PINMUX_DATA(LCDDON_MARK, PORT205_FN1),
974 	PINMUX_DATA(LCDDON2_MARK, PORT205_FN2),
975 	PINMUX_DATA(DACK1_MARK, PORT205_FN3),
976 	PINMUX_DATA(MSIOF0L_TXD_MARK, PORT205_FN5),
977 	PINMUX_DATA(VIO_DR0_MARK, PORT206_FN1),
978 	PINMUX_DATA(VIO_DR1_MARK, PORT207_FN1),
979 	PINMUX_DATA(VIO_DR2_MARK, PORT208_FN1),
980 	PINMUX_DATA(VIO_DR3_MARK, PORT209_FN1),
981 	PINMUX_DATA(VIO_DR4_MARK, PORT210_FN1),
982 	PINMUX_DATA(VIO_DR5_MARK, PORT211_FN1),
983 	PINMUX_DATA(VIO_DR6_MARK, PORT212_FN1),
984 	PINMUX_DATA(VIO_DR7_MARK, PORT213_FN1),
985 	PINMUX_DATA(VIO_VDR_MARK, PORT214_FN1),
986 	PINMUX_DATA(VIO_HDR_MARK, PORT215_FN1),
987 	PINMUX_DATA(VIO_CLKR_MARK, PORT216_FN1),
988 	PINMUX_DATA(VIO_CKOR_MARK, PORT217_FN1),
989 	PINMUX_DATA(SCIFA1_TXD_MARK, PORT220_FN2),
990 	PINMUX_DATA(GPS_PGFA0_MARK, PORT220_FN3),
991 	PINMUX_DATA(SCIFA1_SCK_MARK, PORT221_FN2),
992 	PINMUX_DATA(GPS_PGFA1_MARK, PORT221_FN3),
993 	PINMUX_DATA(SCIFA1_RTS_MARK, PORT222_FN2),
994 	PINMUX_DATA(GPS_EPPSINMON_MARK, PORT222_FN3),
995 	PINMUX_DATA(SCIFA1_RXD_MARK, PORT223_FN2),
996 	PINMUX_DATA(SCIFA1_CTS_MARK, PORT224_FN2),
997 	PINMUX_DATA(MSIOF1_TXD_MARK, PORT225_FN1),
998 	PINMUX_DATA(SCIFA1_TXD2_MARK, PORT225_FN2),
999 	PINMUX_DATA(GPS_TXD_MARK, PORT225_FN3),
1000 	PINMUX_DATA(MSIOF1_TSYNC_MARK, PORT226_FN1),
1001 	PINMUX_DATA(SCIFA1_CTS2_MARK, PORT226_FN2),
1002 	PINMUX_DATA(I2C_SDA2_MARK, PORT226_FN3),
1003 	PINMUX_DATA(MSIOF1_TSCK_MARK, PORT227_FN1),
1004 	PINMUX_DATA(SCIFA1_SCK2_MARK, PORT227_FN2),
1005 	PINMUX_DATA(MSIOF1_RXD_MARK, PORT228_FN1),
1006 	PINMUX_DATA(SCIFA1_RXD2_MARK, PORT228_FN2),
1007 	PINMUX_DATA(GPS_RXD_MARK, PORT228_FN3),
1008 	PINMUX_DATA(MSIOF1_RSCK_MARK, PORT229_FN1),
1009 	PINMUX_DATA(SCIFA1_RTS2_MARK, PORT229_FN2),
1010 	PINMUX_DATA(MSIOF1_RSYNC_MARK, PORT230_FN1),
1011 	PINMUX_DATA(I2C_SCL2_MARK, PORT230_FN3),
1012 	PINMUX_DATA(MSIOF1_MCK0_MARK, PORT231_FN1),
1013 	PINMUX_DATA(MSIOF1_MCK1_MARK, PORT232_FN1),
1014 	PINMUX_DATA(MSIOF1_SS1_MARK, PORT233_FN1),
1015 	PINMUX_DATA(EDBGREQ3_MARK, PORT233_FN2),
1016 	PINMUX_DATA(MSIOF1_SS2_MARK, PORT234_FN1),
1017 	PINMUX_DATA(PORT236_IROUT_MARK, PORT236_FN1),
1018 	PINMUX_DATA(IRDA_OUT_MARK, PORT236_FN2),
1019 	PINMUX_DATA(IRDA_IN_MARK, PORT237_FN2),
1020 	PINMUX_DATA(IRDA_FIRSEL_MARK, PORT238_FN1),
1021 	PINMUX_DATA(TPU1TO0_MARK, PORT239_FN3),
1022 	PINMUX_DATA(TS_SPSYNC3_MARK, PORT239_FN4),
1023 	PINMUX_DATA(TPU1TO1_MARK, PORT240_FN3),
1024 	PINMUX_DATA(TS_SDAT3_MARK, PORT240_FN4),
1025 	PINMUX_DATA(TPU1TO2_MARK, PORT241_FN3),
1026 	PINMUX_DATA(TS_SDEN3_MARK, PORT241_FN4),
1027 	PINMUX_DATA(PORT241_MSIOF2_SS1_MARK, PORT241_FN5),
1028 	PINMUX_DATA(TPU1TO3_MARK, PORT242_FN3),
1029 	PINMUX_DATA(PORT242_MSIOF2_TSCK_MARK, PORT242_FN5),
1030 	PINMUX_DATA(M13_BSW_MARK, PORT243_FN2),
1031 	PINMUX_DATA(PORT243_MSIOF2_TSYNC_MARK, PORT243_FN5),
1032 	PINMUX_DATA(M14_GSW_MARK, PORT244_FN2),
1033 	PINMUX_DATA(PORT244_MSIOF2_TXD_MARK, PORT244_FN5),
1034 	PINMUX_DATA(PORT245_IROUT_MARK, PORT245_FN1),
1035 	PINMUX_DATA(M15_RSW_MARK, PORT245_FN2),
1036 	PINMUX_DATA(SOUT3_MARK, PORT246_FN1),
1037 	PINMUX_DATA(SCIFA2_TXD1_MARK, PORT246_FN2),
1038 	PINMUX_DATA(SIN3_MARK, PORT247_FN1),
1039 	PINMUX_DATA(SCIFA2_RXD1_MARK, PORT247_FN2),
1040 	PINMUX_DATA(XRTS3_MARK, PORT248_FN1),
1041 	PINMUX_DATA(SCIFA2_RTS1_MARK, PORT248_FN2),
1042 	PINMUX_DATA(PORT248_MSIOF2_SS2_MARK, PORT248_FN5),
1043 	PINMUX_DATA(XCTS3_MARK, PORT249_FN1),
1044 	PINMUX_DATA(SCIFA2_CTS1_MARK, PORT249_FN2),
1045 	PINMUX_DATA(PORT249_MSIOF2_RXD_MARK, PORT249_FN5),
1046 	PINMUX_DATA(DINT_MARK, PORT250_FN1),
1047 	PINMUX_DATA(SCIFA2_SCK1_MARK, PORT250_FN2),
1048 	PINMUX_DATA(TS_SCK3_MARK, PORT250_FN4),
1049 	PINMUX_DATA(SDHICLK0_MARK, PORT251_FN1),
1050 	PINMUX_DATA(TCK2_MARK, PORT251_FN2),
1051 	PINMUX_DATA(SDHICD0_MARK, PORT252_FN1),
1052 	PINMUX_DATA(SDHID0_0_MARK, PORT253_FN1),
1053 	PINMUX_DATA(TMS2_MARK, PORT253_FN2),
1054 	PINMUX_DATA(SDHID0_1_MARK, PORT254_FN1),
1055 	PINMUX_DATA(TDO2_MARK, PORT254_FN2),
1056 	PINMUX_DATA(SDHID0_2_MARK, PORT255_FN1),
1057 	PINMUX_DATA(TDI2_MARK, PORT255_FN2),
1058 	PINMUX_DATA(SDHID0_3_MARK, PORT256_FN1),
1059 	PINMUX_DATA(RTCK2_MARK, PORT256_FN2),
1060 
1061 	/* 49-6 (FN) */
1062 	PINMUX_DATA(SDHICMD0_MARK, PORT257_FN1),
1063 	PINMUX_DATA(TRST2_MARK, PORT257_FN2),
1064 	PINMUX_DATA(SDHIWP0_MARK, PORT258_FN1),
1065 	PINMUX_DATA(EDBGREQ2_MARK, PORT258_FN2),
1066 	PINMUX_DATA(SDHICLK1_MARK, PORT259_FN1),
1067 	PINMUX_DATA(TCK3_MARK, PORT259_FN4),
1068 	PINMUX_DATA(SDHID1_0_MARK, PORT260_FN1),
1069 	PINMUX_DATA(M11_SLCD_SO2_MARK, PORT260_FN2),
1070 	PINMUX_DATA(TS_SPSYNC2_MARK, PORT260_FN3),
1071 	PINMUX_DATA(TMS3_MARK, PORT260_FN4),
1072 	PINMUX_DATA(SDHID1_1_MARK, PORT261_FN1),
1073 	PINMUX_DATA(M9_SLCD_AO2_MARK, PORT261_FN2),
1074 	PINMUX_DATA(TS_SDAT2_MARK, PORT261_FN3),
1075 	PINMUX_DATA(TDO3_MARK, PORT261_FN4),
1076 	PINMUX_DATA(SDHID1_2_MARK, PORT262_FN1),
1077 	PINMUX_DATA(M10_SLCD_CK2_MARK, PORT262_FN2),
1078 	PINMUX_DATA(TS_SDEN2_MARK, PORT262_FN3),
1079 	PINMUX_DATA(TDI3_MARK, PORT262_FN4),
1080 	PINMUX_DATA(SDHID1_3_MARK, PORT263_FN1),
1081 	PINMUX_DATA(M12_SLCD_CE2_MARK, PORT263_FN2),
1082 	PINMUX_DATA(TS_SCK2_MARK, PORT263_FN3),
1083 	PINMUX_DATA(RTCK3_MARK, PORT263_FN4),
1084 	PINMUX_DATA(SDHICMD1_MARK, PORT264_FN1),
1085 	PINMUX_DATA(TRST3_MARK, PORT264_FN4),
1086 	PINMUX_DATA(SDHICLK2_MARK, PORT265_FN1),
1087 	PINMUX_DATA(SCIFB_SCK_MARK, PORT265_FN2),
1088 	PINMUX_DATA(SDHID2_0_MARK, PORT266_FN1),
1089 	PINMUX_DATA(SCIFB_TXD_MARK, PORT266_FN2),
1090 	PINMUX_DATA(SDHID2_1_MARK, PORT267_FN1),
1091 	PINMUX_DATA(SCIFB_CTS_MARK, PORT267_FN2),
1092 	PINMUX_DATA(SDHID2_2_MARK, PORT268_FN1),
1093 	PINMUX_DATA(SCIFB_RXD_MARK, PORT268_FN2),
1094 	PINMUX_DATA(SDHID2_3_MARK, PORT269_FN1),
1095 	PINMUX_DATA(SCIFB_RTS_MARK, PORT269_FN2),
1096 	PINMUX_DATA(SDHICMD2_MARK, PORT270_FN1),
1097 	PINMUX_DATA(RESETOUTS_MARK, PORT271_FN1),
1098 	PINMUX_DATA(DIVLOCK_MARK, PORT272_FN1),
1099 };
1100 
1101 #define _GPIO_PORT(pfx, sfx) PINMUX_GPIO(GPIO_PORT##pfx, PORT##pfx##_DATA)
1102 #define GPIO_PORT_273() _273(_GPIO_PORT, , unused)
1103 #define GPIO_FN(str) PINMUX_GPIO(GPIO_FN_##str, str##_MARK)
1104 
1105 static struct pinmux_gpio pinmux_gpios[] = {
1106 	/* 49-1 -> 49-6 (GPIO) */
1107 	GPIO_PORT_273(),
1108 
1109 	/* Special Pull-up / Pull-down Functions */
1110 	GPIO_FN(PORT48_KEYIN0_PU), GPIO_FN(PORT49_KEYIN1_PU),
1111 	GPIO_FN(PORT50_KEYIN2_PU), GPIO_FN(PORT55_KEYIN3_PU),
1112 	GPIO_FN(PORT56_KEYIN4_PU), GPIO_FN(PORT57_KEYIN5_PU),
1113 	GPIO_FN(PORT58_KEYIN6_PU),
1114 
1115 	/* 49-1 (FN) */
1116 	GPIO_FN(VBUS0), GPIO_FN(CPORT0), GPIO_FN(CPORT1), GPIO_FN(CPORT2),
1117 	GPIO_FN(CPORT3), GPIO_FN(CPORT4), GPIO_FN(CPORT5), GPIO_FN(CPORT6),
1118 	GPIO_FN(CPORT7), GPIO_FN(CPORT8), GPIO_FN(CPORT9), GPIO_FN(CPORT10),
1119 	GPIO_FN(CPORT11), GPIO_FN(SIN2), GPIO_FN(CPORT12), GPIO_FN(XCTS2),
1120 	GPIO_FN(CPORT13), GPIO_FN(RFSPO4), GPIO_FN(CPORT14), GPIO_FN(RFSPO5),
1121 	GPIO_FN(CPORT15), GPIO_FN(CPORT16), GPIO_FN(CPORT17), GPIO_FN(SOUT2),
1122 	GPIO_FN(CPORT18), GPIO_FN(XRTS2), GPIO_FN(CPORT19), GPIO_FN(CPORT20),
1123 	GPIO_FN(RFSPO6), GPIO_FN(CPORT21), GPIO_FN(STATUS0), GPIO_FN(CPORT22),
1124 	GPIO_FN(STATUS1), GPIO_FN(CPORT23), GPIO_FN(STATUS2), GPIO_FN(RFSPO7),
1125 	GPIO_FN(MPORT0), GPIO_FN(MPORT1), GPIO_FN(B_SYNLD1), GPIO_FN(B_SYNLD2),
1126 	GPIO_FN(XMAINPS), GPIO_FN(XDIVPS), GPIO_FN(XIDRST), GPIO_FN(IDCLK),
1127 	GPIO_FN(IDIO), GPIO_FN(SOUT1), GPIO_FN(SCIFA4_TXD),
1128 	GPIO_FN(M02_BERDAT), GPIO_FN(SIN1), GPIO_FN(SCIFA4_RXD), GPIO_FN(XWUP),
1129 	GPIO_FN(XRTS1), GPIO_FN(SCIFA4_RTS), GPIO_FN(M03_BERCLK),
1130 	GPIO_FN(XCTS1), GPIO_FN(SCIFA4_CTS),
1131 
1132 	/* 49-2 (FN) */
1133 	GPIO_FN(HSU_IQ_AGC6), GPIO_FN(MFG2_IN2), GPIO_FN(MSIOF2_MCK0),
1134 	GPIO_FN(HSU_IQ_AGC5), GPIO_FN(MFG2_IN1), GPIO_FN(MSIOF2_MCK1),
1135 	GPIO_FN(HSU_IQ_AGC4), GPIO_FN(MSIOF2_RSYNC),
1136 	GPIO_FN(HSU_IQ_AGC3), GPIO_FN(MFG2_OUT1), GPIO_FN(MSIOF2_RSCK),
1137 	GPIO_FN(HSU_IQ_AGC2), GPIO_FN(PORT42_KEYOUT0),
1138 	GPIO_FN(HSU_IQ_AGC1), GPIO_FN(PORT43_KEYOUT1),
1139 	GPIO_FN(HSU_IQ_AGC0), GPIO_FN(PORT44_KEYOUT2),
1140 	GPIO_FN(HSU_IQ_AGC_ST), GPIO_FN(PORT45_KEYOUT3),
1141 	GPIO_FN(HSU_IQ_PDO), GPIO_FN(PORT46_KEYOUT4),
1142 	GPIO_FN(HSU_IQ_PYO), GPIO_FN(PORT47_KEYOUT5),
1143 	GPIO_FN(HSU_EN_TXMUX_G3MO), GPIO_FN(PORT48_KEYIN0),
1144 	GPIO_FN(HSU_I_TXMUX_G3MO), GPIO_FN(PORT49_KEYIN1),
1145 	GPIO_FN(HSU_Q_TXMUX_G3MO), GPIO_FN(PORT50_KEYIN2),
1146 	GPIO_FN(HSU_SYO), GPIO_FN(PORT51_MSIOF2_TSYNC),
1147 	GPIO_FN(HSU_SDO), GPIO_FN(PORT52_MSIOF2_TSCK),
1148 	GPIO_FN(HSU_TGTTI_G3MO), GPIO_FN(PORT53_MSIOF2_TXD),
1149 	GPIO_FN(B_TIME_STAMP), GPIO_FN(PORT54_MSIOF2_RXD),
1150 	GPIO_FN(HSU_SDI), GPIO_FN(PORT55_KEYIN3),
1151 	GPIO_FN(HSU_SCO), GPIO_FN(PORT56_KEYIN4),
1152 	GPIO_FN(HSU_DREQ), GPIO_FN(PORT57_KEYIN5),
1153 	GPIO_FN(HSU_DACK), GPIO_FN(PORT58_KEYIN6),
1154 	GPIO_FN(HSU_CLK61M), GPIO_FN(PORT59_MSIOF2_SS1),
1155 	GPIO_FN(HSU_XRST), GPIO_FN(PORT60_MSIOF2_SS2),
1156 	GPIO_FN(PCMCLKO), GPIO_FN(SYNC8KO), GPIO_FN(DNPCM_A), GPIO_FN(UPPCM_A),
1157 	GPIO_FN(XTALB1L),
1158 	GPIO_FN(GPS_AGC1), GPIO_FN(SCIFA0_RTS),
1159 	GPIO_FN(GPS_AGC2), GPIO_FN(SCIFA0_SCK),
1160 	GPIO_FN(GPS_AGC3), GPIO_FN(SCIFA0_TXD),
1161 	GPIO_FN(GPS_AGC4), GPIO_FN(SCIFA0_RXD),
1162 	GPIO_FN(GPS_PWRD), GPIO_FN(SCIFA0_CTS),
1163 	GPIO_FN(GPS_IM), GPIO_FN(GPS_IS), GPIO_FN(GPS_QM), GPIO_FN(GPS_QS),
1164 	GPIO_FN(SIUBOMC), GPIO_FN(TPU2TO0),
1165 	GPIO_FN(SIUCKB), GPIO_FN(TPU2TO1),
1166 	GPIO_FN(SIUBOLR), GPIO_FN(BBIF2_TSYNC), GPIO_FN(TPU2TO2),
1167 	GPIO_FN(SIUBOBT), GPIO_FN(BBIF2_TSCK), GPIO_FN(TPU2TO3),
1168 	GPIO_FN(SIUBOSLD), GPIO_FN(BBIF2_TXD), GPIO_FN(TPU3TO0),
1169 	GPIO_FN(SIUBILR), GPIO_FN(TPU3TO1),
1170 	GPIO_FN(SIUBIBT), GPIO_FN(TPU3TO2),
1171 	GPIO_FN(SIUBISLD), GPIO_FN(TPU3TO3),
1172 	GPIO_FN(NMI), GPIO_FN(TPU4TO0),
1173 	GPIO_FN(DNPCM_M), GPIO_FN(TPU4TO1), GPIO_FN(TPU4TO2), GPIO_FN(TPU4TO3),
1174 	GPIO_FN(IRQ_TMPB),
1175 	GPIO_FN(PWEN), GPIO_FN(MFG1_OUT1),
1176 	GPIO_FN(OVCN), GPIO_FN(MFG1_IN1),
1177 	GPIO_FN(OVCN2), GPIO_FN(MFG1_IN2),
1178 
1179 	/* 49-3 (FN) */
1180 	GPIO_FN(RFSPO1), GPIO_FN(RFSPO2), GPIO_FN(RFSPO3),
1181 	GPIO_FN(PORT93_VIO_CKO2),
1182 	GPIO_FN(USBTERM), GPIO_FN(EXTLP), GPIO_FN(IDIN),
1183 	GPIO_FN(SCIFA5_CTS), GPIO_FN(MFG0_IN1),
1184 	GPIO_FN(SCIFA5_RTS), GPIO_FN(MFG0_IN2),
1185 	GPIO_FN(SCIFA5_RXD),
1186 	GPIO_FN(SCIFA5_TXD),
1187 	GPIO_FN(SCIFA5_SCK), GPIO_FN(MFG0_OUT1),
1188 	GPIO_FN(A0_EA0), GPIO_FN(BS),
1189 	GPIO_FN(A14_EA14), GPIO_FN(PORT102_KEYOUT0),
1190 	GPIO_FN(A15_EA15), GPIO_FN(PORT103_KEYOUT1), GPIO_FN(DV_CLKOL),
1191 	GPIO_FN(A16_EA16), GPIO_FN(PORT104_KEYOUT2),
1192 	GPIO_FN(DV_VSYNCL), GPIO_FN(MSIOF0_SS1),
1193 	GPIO_FN(A17_EA17), GPIO_FN(PORT105_KEYOUT3),
1194 	GPIO_FN(DV_HSYNCL), GPIO_FN(MSIOF0_TSYNC),
1195 	GPIO_FN(A18_EA18), GPIO_FN(PORT106_KEYOUT4),
1196 	GPIO_FN(DV_DL0), GPIO_FN(MSIOF0_TSCK),
1197 	GPIO_FN(A19_EA19), GPIO_FN(PORT107_KEYOUT5),
1198 	GPIO_FN(DV_DL1), GPIO_FN(MSIOF0_TXD),
1199 	GPIO_FN(A20_EA20), GPIO_FN(PORT108_KEYIN0),
1200 	GPIO_FN(DV_DL2), GPIO_FN(MSIOF0_RSCK),
1201 	GPIO_FN(A21_EA21), GPIO_FN(PORT109_KEYIN1),
1202 	GPIO_FN(DV_DL3), GPIO_FN(MSIOF0_RSYNC),
1203 	GPIO_FN(A22_EA22), GPIO_FN(PORT110_KEYIN2),
1204 	GPIO_FN(DV_DL4), GPIO_FN(MSIOF0_MCK0),
1205 	GPIO_FN(A23_EA23), GPIO_FN(PORT111_KEYIN3),
1206 	GPIO_FN(DV_DL5), GPIO_FN(MSIOF0_MCK1),
1207 	GPIO_FN(A24_EA24), GPIO_FN(PORT112_KEYIN4),
1208 	GPIO_FN(DV_DL6), GPIO_FN(MSIOF0_RXD),
1209 	GPIO_FN(A25_EA25), GPIO_FN(PORT113_KEYIN5),
1210 	GPIO_FN(DV_DL7), GPIO_FN(MSIOF0_SS2),
1211 	GPIO_FN(A26), GPIO_FN(PORT113_KEYIN6), GPIO_FN(DV_CLKIL),
1212 	GPIO_FN(D0_ED0_NAF0), GPIO_FN(D1_ED1_NAF1), GPIO_FN(D2_ED2_NAF2),
1213 	GPIO_FN(D3_ED3_NAF3), GPIO_FN(D4_ED4_NAF4), GPIO_FN(D5_ED5_NAF5),
1214 	GPIO_FN(D6_ED6_NAF6), GPIO_FN(D7_ED7_NAF7), GPIO_FN(D8_ED8_NAF8),
1215 	GPIO_FN(D9_ED9_NAF9), GPIO_FN(D10_ED10_NAF10), GPIO_FN(D11_ED11_NAF11),
1216 	GPIO_FN(D12_ED12_NAF12), GPIO_FN(D13_ED13_NAF13),
1217 	GPIO_FN(D14_ED14_NAF14), GPIO_FN(D15_ED15_NAF15),
1218 	GPIO_FN(CS4), GPIO_FN(CS5A), GPIO_FN(CS5B), GPIO_FN(FCE1),
1219 	GPIO_FN(CS6B), GPIO_FN(XCS2), GPIO_FN(FCE0), GPIO_FN(CS6A),
1220 	GPIO_FN(DACK0), GPIO_FN(WAIT), GPIO_FN(DREQ0), GPIO_FN(RD_XRD),
1221 	GPIO_FN(A27), GPIO_FN(RDWR_XWE), GPIO_FN(WE0_XWR0_FWE),
1222 	GPIO_FN(WE1_XWR1), GPIO_FN(FRB), GPIO_FN(CKO),
1223 	GPIO_FN(NBRSTOUT), GPIO_FN(NBRST),
1224 
1225 	/* 49-4 (FN) */
1226 	GPIO_FN(RFSPO0), GPIO_FN(PORT146_VIO_CKO2), GPIO_FN(TSTMD),
1227 	GPIO_FN(VIO_VD), GPIO_FN(VIO_HD),
1228 	GPIO_FN(VIO_D0), GPIO_FN(VIO_D1), GPIO_FN(VIO_D2),
1229 	GPIO_FN(VIO_D3), GPIO_FN(VIO_D4), GPIO_FN(VIO_D5),
1230 	GPIO_FN(VIO_D6), GPIO_FN(VIO_D7), GPIO_FN(VIO_D8),
1231 	GPIO_FN(VIO_D9), GPIO_FN(VIO_D10), GPIO_FN(VIO_D11),
1232 	GPIO_FN(VIO_D12), GPIO_FN(VIO_D13), GPIO_FN(VIO_D14),
1233 	GPIO_FN(VIO_D15), GPIO_FN(VIO_CLK), GPIO_FN(VIO_FIELD),
1234 	GPIO_FN(VIO_CKO),
1235 	GPIO_FN(MFG3_IN1), GPIO_FN(MFG3_IN2),
1236 	GPIO_FN(M9_SLCD_A01), GPIO_FN(MFG3_OUT1), GPIO_FN(TPU0TO0),
1237 	GPIO_FN(M10_SLCD_CK1), GPIO_FN(MFG4_IN1), GPIO_FN(TPU0TO1),
1238 	GPIO_FN(M11_SLCD_SO1), GPIO_FN(MFG4_IN2), GPIO_FN(TPU0TO2),
1239 	GPIO_FN(M12_SLCD_CE1), GPIO_FN(MFG4_OUT1), GPIO_FN(TPU0TO3),
1240 	GPIO_FN(LCDD0), GPIO_FN(PORT175_KEYOUT0), GPIO_FN(DV_D0),
1241 	GPIO_FN(SIUCKA), GPIO_FN(MFG0_OUT2),
1242 	GPIO_FN(LCDD1), GPIO_FN(PORT176_KEYOUT1), GPIO_FN(DV_D1),
1243 	GPIO_FN(SIUAOLR), GPIO_FN(BBIF2_TSYNC1),
1244 	GPIO_FN(LCDD2), GPIO_FN(PORT177_KEYOUT2), GPIO_FN(DV_D2),
1245 	GPIO_FN(SIUAOBT), GPIO_FN(BBIF2_TSCK1),
1246 	GPIO_FN(LCDD3), GPIO_FN(PORT178_KEYOUT3), GPIO_FN(DV_D3),
1247 	GPIO_FN(SIUAOSLD), GPIO_FN(BBIF2_TXD1),
1248 	GPIO_FN(LCDD4), GPIO_FN(PORT179_KEYOUT4), GPIO_FN(DV_D4),
1249 	GPIO_FN(SIUAISPD), GPIO_FN(MFG1_OUT2),
1250 	GPIO_FN(LCDD5), GPIO_FN(PORT180_KEYOUT5), GPIO_FN(DV_D5),
1251 	GPIO_FN(SIUAILR), GPIO_FN(MFG2_OUT2),
1252 	GPIO_FN(LCDD6), GPIO_FN(DV_D6),
1253 	GPIO_FN(SIUAIBT), GPIO_FN(MFG3_OUT2), GPIO_FN(XWR2),
1254 	GPIO_FN(LCDD7), GPIO_FN(DV_D7),
1255 	GPIO_FN(SIUAISLD), GPIO_FN(MFG4_OUT2), GPIO_FN(XWR3),
1256 	GPIO_FN(LCDD8), GPIO_FN(DV_D8), GPIO_FN(D16), GPIO_FN(ED16),
1257 	GPIO_FN(LCDD9), GPIO_FN(DV_D9), GPIO_FN(D17), GPIO_FN(ED17),
1258 	GPIO_FN(LCDD10), GPIO_FN(DV_D10), GPIO_FN(D18), GPIO_FN(ED18),
1259 	GPIO_FN(LCDD11), GPIO_FN(DV_D11), GPIO_FN(D19), GPIO_FN(ED19),
1260 	GPIO_FN(LCDD12), GPIO_FN(DV_D12), GPIO_FN(D20), GPIO_FN(ED20),
1261 	GPIO_FN(LCDD13), GPIO_FN(DV_D13), GPIO_FN(D21), GPIO_FN(ED21),
1262 	GPIO_FN(LCDD14), GPIO_FN(DV_D14), GPIO_FN(D22), GPIO_FN(ED22),
1263 	GPIO_FN(LCDD15), GPIO_FN(DV_D15), GPIO_FN(D23), GPIO_FN(ED23),
1264 	GPIO_FN(LCDD16), GPIO_FN(DV_HSYNC), GPIO_FN(D24), GPIO_FN(ED24),
1265 	GPIO_FN(LCDD17), GPIO_FN(DV_VSYNC), GPIO_FN(D25), GPIO_FN(ED25),
1266 	GPIO_FN(LCDD18), GPIO_FN(DREQ2), GPIO_FN(MSIOF0L_TSCK),
1267 	GPIO_FN(D26), GPIO_FN(ED26),
1268 	GPIO_FN(LCDD19), GPIO_FN(MSIOF0L_TSYNC),
1269 	GPIO_FN(D27), GPIO_FN(ED27),
1270 	GPIO_FN(LCDD20), GPIO_FN(TS_SPSYNC1), GPIO_FN(MSIOF0L_MCK0),
1271 	GPIO_FN(D28), GPIO_FN(ED28),
1272 	GPIO_FN(LCDD21), GPIO_FN(TS_SDAT1), GPIO_FN(MSIOF0L_MCK1),
1273 	GPIO_FN(D29), GPIO_FN(ED29),
1274 	GPIO_FN(LCDD22), GPIO_FN(TS_SDEN1), GPIO_FN(MSIOF0L_SS1),
1275 	GPIO_FN(D30), GPIO_FN(ED30),
1276 	GPIO_FN(LCDD23), GPIO_FN(TS_SCK1), GPIO_FN(MSIOF0L_SS2),
1277 	GPIO_FN(D31), GPIO_FN(ED31),
1278 	GPIO_FN(LCDDCK), GPIO_FN(LCDWR), GPIO_FN(DV_CKO), GPIO_FN(SIUAOSPD),
1279 	GPIO_FN(LCDRD), GPIO_FN(DACK2), GPIO_FN(MSIOF0L_RSYNC),
1280 
1281 	/* 49-5 (FN) */
1282 	GPIO_FN(LCDHSYN), GPIO_FN(LCDCS), GPIO_FN(LCDCS2), GPIO_FN(DACK3),
1283 	GPIO_FN(LCDDISP), GPIO_FN(LCDRS), GPIO_FN(DREQ3), GPIO_FN(MSIOF0L_RSCK),
1284 	GPIO_FN(LCDCSYN), GPIO_FN(LCDCSYN2), GPIO_FN(DV_CKI),
1285 	GPIO_FN(LCDLCLK), GPIO_FN(DREQ1), GPIO_FN(MSIOF0L_RXD),
1286 	GPIO_FN(LCDDON), GPIO_FN(LCDDON2), GPIO_FN(DACK1), GPIO_FN(MSIOF0L_TXD),
1287 	GPIO_FN(VIO_DR0), GPIO_FN(VIO_DR1), GPIO_FN(VIO_DR2), GPIO_FN(VIO_DR3),
1288 	GPIO_FN(VIO_DR4), GPIO_FN(VIO_DR5), GPIO_FN(VIO_DR6), GPIO_FN(VIO_DR7),
1289 	GPIO_FN(VIO_VDR), GPIO_FN(VIO_HDR),
1290 	GPIO_FN(VIO_CLKR), GPIO_FN(VIO_CKOR),
1291 	GPIO_FN(SCIFA1_TXD), GPIO_FN(GPS_PGFA0),
1292 	GPIO_FN(SCIFA1_SCK), GPIO_FN(GPS_PGFA1),
1293 	GPIO_FN(SCIFA1_RTS), GPIO_FN(GPS_EPPSINMON),
1294 	GPIO_FN(SCIFA1_RXD), GPIO_FN(SCIFA1_CTS),
1295 	GPIO_FN(MSIOF1_TXD), GPIO_FN(SCIFA1_TXD2), GPIO_FN(GPS_TXD),
1296 	GPIO_FN(MSIOF1_TSYNC), GPIO_FN(SCIFA1_CTS2), GPIO_FN(I2C_SDA2),
1297 	GPIO_FN(MSIOF1_TSCK), GPIO_FN(SCIFA1_SCK2),
1298 	GPIO_FN(MSIOF1_RXD), GPIO_FN(SCIFA1_RXD2), GPIO_FN(GPS_RXD),
1299 	GPIO_FN(MSIOF1_RSCK), GPIO_FN(SCIFA1_RTS2),
1300 	GPIO_FN(MSIOF1_RSYNC), GPIO_FN(I2C_SCL2),
1301 	GPIO_FN(MSIOF1_MCK0), GPIO_FN(MSIOF1_MCK1),
1302 	GPIO_FN(MSIOF1_SS1), GPIO_FN(EDBGREQ3),
1303 	GPIO_FN(MSIOF1_SS2),
1304 	GPIO_FN(PORT236_IROUT), GPIO_FN(IRDA_OUT),
1305 	GPIO_FN(IRDA_IN), GPIO_FN(IRDA_FIRSEL),
1306 	GPIO_FN(TPU1TO0), GPIO_FN(TS_SPSYNC3),
1307 	GPIO_FN(TPU1TO1), GPIO_FN(TS_SDAT3),
1308 	GPIO_FN(TPU1TO2), GPIO_FN(TS_SDEN3), GPIO_FN(PORT241_MSIOF2_SS1),
1309 	GPIO_FN(TPU1TO3), GPIO_FN(PORT242_MSIOF2_TSCK),
1310 	GPIO_FN(M13_BSW), GPIO_FN(PORT243_MSIOF2_TSYNC),
1311 	GPIO_FN(M14_GSW), GPIO_FN(PORT244_MSIOF2_TXD),
1312 	GPIO_FN(PORT245_IROUT), GPIO_FN(M15_RSW),
1313 	GPIO_FN(SOUT3), GPIO_FN(SCIFA2_TXD1),
1314 	GPIO_FN(SIN3), GPIO_FN(SCIFA2_RXD1),
1315 	GPIO_FN(XRTS3), GPIO_FN(SCIFA2_RTS1), GPIO_FN(PORT248_MSIOF2_SS2),
1316 	GPIO_FN(XCTS3), GPIO_FN(SCIFA2_CTS1), GPIO_FN(PORT249_MSIOF2_RXD),
1317 	GPIO_FN(DINT), GPIO_FN(SCIFA2_SCK1), GPIO_FN(TS_SCK3),
1318 	GPIO_FN(SDHICLK0), GPIO_FN(TCK2),
1319 	GPIO_FN(SDHICD0),
1320 	GPIO_FN(SDHID0_0), GPIO_FN(TMS2),
1321 	GPIO_FN(SDHID0_1), GPIO_FN(TDO2),
1322 	GPIO_FN(SDHID0_2), GPIO_FN(TDI2),
1323 	GPIO_FN(SDHID0_3), GPIO_FN(RTCK2),
1324 
1325 	/* 49-6 (FN) */
1326 	GPIO_FN(SDHICMD0), GPIO_FN(TRST2),
1327 	GPIO_FN(SDHIWP0), GPIO_FN(EDBGREQ2),
1328 	GPIO_FN(SDHICLK1), GPIO_FN(TCK3),
1329 	GPIO_FN(SDHID1_0), GPIO_FN(M11_SLCD_SO2),
1330 	GPIO_FN(TS_SPSYNC2), GPIO_FN(TMS3),
1331 	GPIO_FN(SDHID1_1), GPIO_FN(M9_SLCD_AO2),
1332 	GPIO_FN(TS_SDAT2), GPIO_FN(TDO3),
1333 	GPIO_FN(SDHID1_2), GPIO_FN(M10_SLCD_CK2),
1334 	GPIO_FN(TS_SDEN2), GPIO_FN(TDI3),
1335 	GPIO_FN(SDHID1_3), GPIO_FN(M12_SLCD_CE2),
1336 	GPIO_FN(TS_SCK2), GPIO_FN(RTCK3),
1337 	GPIO_FN(SDHICMD1), GPIO_FN(TRST3),
1338 	GPIO_FN(SDHICLK2), GPIO_FN(SCIFB_SCK),
1339 	GPIO_FN(SDHID2_0), GPIO_FN(SCIFB_TXD),
1340 	GPIO_FN(SDHID2_1), GPIO_FN(SCIFB_CTS),
1341 	GPIO_FN(SDHID2_2), GPIO_FN(SCIFB_RXD),
1342 	GPIO_FN(SDHID2_3), GPIO_FN(SCIFB_RTS),
1343 	GPIO_FN(SDHICMD2),
1344 	GPIO_FN(RESETOUTS),
1345 	GPIO_FN(DIVLOCK),
1346 };
1347 
1348 /* helper for top 4 bits in PORTnCR */
1349 #define PCRH(in, in_pd, in_pu, out)		\
1350 	0, (out), (in), 0,			\
1351 	0, 0, 0, 0,				\
1352 	0, 0, (in_pd), 0,			\
1353 	0, 0, (in_pu), 0
1354 
1355 #define PORTCR(nr, reg)						\
1356 	{ PINMUX_CFG_REG("PORT" nr "CR", reg, 8, 4) {		\
1357 		PCRH(PORT##nr##_IN, PORT##nr##_IN_PD,		\
1358 		     PORT##nr##_IN_PU, PORT##nr##_OUT),		\
1359 		PORT##nr##_FN0, PORT##nr##_FN1, PORT##nr##_FN2,	\
1360 		PORT##nr##_FN3,	PORT##nr##_FN4, PORT##nr##_FN5,	\
1361 		PORT##nr##_FN6, PORT##nr##_FN7 }		\
1362 	}
1363 
1364 static struct pinmux_cfg_reg pinmux_config_regs[] = {
1365 	PORTCR(0, 0xe6050000), /* PORT0CR */
1366 	PORTCR(1, 0xe6050001), /* PORT1CR */
1367 	PORTCR(2, 0xe6050002), /* PORT2CR */
1368 	PORTCR(3, 0xe6050003), /* PORT3CR */
1369 	PORTCR(4, 0xe6050004), /* PORT4CR */
1370 	PORTCR(5, 0xe6050005), /* PORT5CR */
1371 	PORTCR(6, 0xe6050006), /* PORT6CR */
1372 	PORTCR(7, 0xe6050007), /* PORT7CR */
1373 	PORTCR(8, 0xe6050008), /* PORT8CR */
1374 	PORTCR(9, 0xe6050009), /* PORT9CR */
1375 
1376 	PORTCR(10, 0xe605000a), /* PORT10CR */
1377 	PORTCR(11, 0xe605000b), /* PORT11CR */
1378 	PORTCR(12, 0xe605000c), /* PORT12CR */
1379 	PORTCR(13, 0xe605000d), /* PORT13CR */
1380 	PORTCR(14, 0xe605000e), /* PORT14CR */
1381 	PORTCR(15, 0xe605000f), /* PORT15CR */
1382 	PORTCR(16, 0xe6050010), /* PORT16CR */
1383 	PORTCR(17, 0xe6050011), /* PORT17CR */
1384 	PORTCR(18, 0xe6050012), /* PORT18CR */
1385 	PORTCR(19, 0xe6050013), /* PORT19CR */
1386 
1387 	PORTCR(20, 0xe6050014), /* PORT20CR */
1388 	PORTCR(21, 0xe6050015), /* PORT21CR */
1389 	PORTCR(22, 0xe6050016), /* PORT22CR */
1390 	PORTCR(23, 0xe6050017), /* PORT23CR */
1391 	PORTCR(24, 0xe6050018), /* PORT24CR */
1392 	PORTCR(25, 0xe6050019), /* PORT25CR */
1393 	PORTCR(26, 0xe605001a), /* PORT26CR */
1394 	PORTCR(27, 0xe605001b), /* PORT27CR */
1395 	PORTCR(28, 0xe605001c), /* PORT28CR */
1396 	PORTCR(29, 0xe605001d), /* PORT29CR */
1397 
1398 	PORTCR(30, 0xe605001e), /* PORT30CR */
1399 	PORTCR(31, 0xe605001f), /* PORT31CR */
1400 	PORTCR(32, 0xe6050020), /* PORT32CR */
1401 	PORTCR(33, 0xe6050021), /* PORT33CR */
1402 	PORTCR(34, 0xe6050022), /* PORT34CR */
1403 	PORTCR(35, 0xe6050023), /* PORT35CR */
1404 	PORTCR(36, 0xe6050024), /* PORT36CR */
1405 	PORTCR(37, 0xe6050025), /* PORT37CR */
1406 	PORTCR(38, 0xe6050026), /* PORT38CR */
1407 	PORTCR(39, 0xe6050027), /* PORT39CR */
1408 
1409 	PORTCR(40, 0xe6050028), /* PORT40CR */
1410 	PORTCR(41, 0xe6050029), /* PORT41CR */
1411 	PORTCR(42, 0xe605002a), /* PORT42CR */
1412 	PORTCR(43, 0xe605002b), /* PORT43CR */
1413 	PORTCR(44, 0xe605002c), /* PORT44CR */
1414 	PORTCR(45, 0xe605002d), /* PORT45CR */
1415 	PORTCR(46, 0xe605002e), /* PORT46CR */
1416 	PORTCR(47, 0xe605002f), /* PORT47CR */
1417 	PORTCR(48, 0xe6050030), /* PORT48CR */
1418 	PORTCR(49, 0xe6050031), /* PORT49CR */
1419 
1420 	PORTCR(50, 0xe6050032), /* PORT50CR */
1421 	PORTCR(51, 0xe6050033), /* PORT51CR */
1422 	PORTCR(52, 0xe6050034), /* PORT52CR */
1423 	PORTCR(53, 0xe6050035), /* PORT53CR */
1424 	PORTCR(54, 0xe6050036), /* PORT54CR */
1425 	PORTCR(55, 0xe6050037), /* PORT55CR */
1426 	PORTCR(56, 0xe6050038), /* PORT56CR */
1427 	PORTCR(57, 0xe6050039), /* PORT57CR */
1428 	PORTCR(58, 0xe605003a), /* PORT58CR */
1429 	PORTCR(59, 0xe605003b), /* PORT59CR */
1430 
1431 	PORTCR(60, 0xe605003c), /* PORT60CR */
1432 	PORTCR(61, 0xe605003d), /* PORT61CR */
1433 	PORTCR(62, 0xe605003e), /* PORT62CR */
1434 	PORTCR(63, 0xe605003f), /* PORT63CR */
1435 	PORTCR(64, 0xe6050040), /* PORT64CR */
1436 	PORTCR(65, 0xe6050041), /* PORT65CR */
1437 	PORTCR(66, 0xe6050042), /* PORT66CR */
1438 	PORTCR(67, 0xe6050043), /* PORT67CR */
1439 	PORTCR(68, 0xe6050044), /* PORT68CR */
1440 	PORTCR(69, 0xe6050045), /* PORT69CR */
1441 
1442 	PORTCR(70, 0xe6050046), /* PORT70CR */
1443 	PORTCR(71, 0xe6050047), /* PORT71CR */
1444 	PORTCR(72, 0xe6050048), /* PORT72CR */
1445 	PORTCR(73, 0xe6050049), /* PORT73CR */
1446 	PORTCR(74, 0xe605004a), /* PORT74CR */
1447 	PORTCR(75, 0xe605004b), /* PORT75CR */
1448 	PORTCR(76, 0xe605004c), /* PORT76CR */
1449 	PORTCR(77, 0xe605004d), /* PORT77CR */
1450 	PORTCR(78, 0xe605004e), /* PORT78CR */
1451 	PORTCR(79, 0xe605004f), /* PORT79CR */
1452 
1453 	PORTCR(80, 0xe6050050), /* PORT80CR */
1454 	PORTCR(81, 0xe6050051), /* PORT81CR */
1455 	PORTCR(82, 0xe6050052), /* PORT82CR */
1456 	PORTCR(83, 0xe6050053), /* PORT83CR */
1457 	PORTCR(84, 0xe6050054), /* PORT84CR */
1458 	PORTCR(85, 0xe6050055), /* PORT85CR */
1459 	PORTCR(86, 0xe6050056), /* PORT86CR */
1460 	PORTCR(87, 0xe6050057), /* PORT87CR */
1461 	PORTCR(88, 0xe6051058), /* PORT88CR */
1462 	PORTCR(89, 0xe6051059), /* PORT89CR */
1463 
1464 	PORTCR(90, 0xe605105a), /* PORT90CR */
1465 	PORTCR(91, 0xe605105b), /* PORT91CR */
1466 	PORTCR(92, 0xe605105c), /* PORT92CR */
1467 	PORTCR(93, 0xe605105d), /* PORT93CR */
1468 	PORTCR(94, 0xe605105e), /* PORT94CR */
1469 	PORTCR(95, 0xe605105f), /* PORT95CR */
1470 	PORTCR(96, 0xe6051060), /* PORT96CR */
1471 	PORTCR(97, 0xe6051061), /* PORT97CR */
1472 	PORTCR(98, 0xe6051062), /* PORT98CR */
1473 	PORTCR(99, 0xe6051063), /* PORT99CR */
1474 
1475 	PORTCR(100, 0xe6051064), /* PORT100CR */
1476 	PORTCR(101, 0xe6051065), /* PORT101CR */
1477 	PORTCR(102, 0xe6051066), /* PORT102CR */
1478 	PORTCR(103, 0xe6051067), /* PORT103CR */
1479 	PORTCR(104, 0xe6051068), /* PORT104CR */
1480 	PORTCR(105, 0xe6051069), /* PORT105CR */
1481 	PORTCR(106, 0xe605106a), /* PORT106CR */
1482 	PORTCR(107, 0xe605106b), /* PORT107CR */
1483 	PORTCR(108, 0xe605106c), /* PORT108CR */
1484 	PORTCR(109, 0xe605106d), /* PORT109CR */
1485 
1486 	PORTCR(110, 0xe605106e), /* PORT110CR */
1487 	PORTCR(111, 0xe605106f), /* PORT111CR */
1488 	PORTCR(112, 0xe6051070), /* PORT112CR */
1489 	PORTCR(113, 0xe6051071), /* PORT113CR */
1490 	PORTCR(114, 0xe6051072), /* PORT114CR */
1491 	PORTCR(115, 0xe6051073), /* PORT115CR */
1492 	PORTCR(116, 0xe6051074), /* PORT116CR */
1493 	PORTCR(117, 0xe6051075), /* PORT117CR */
1494 	PORTCR(118, 0xe6051076), /* PORT118CR */
1495 	PORTCR(119, 0xe6051077), /* PORT119CR */
1496 
1497 	PORTCR(120, 0xe6051078), /* PORT120CR */
1498 	PORTCR(121, 0xe6051079), /* PORT121CR */
1499 	PORTCR(122, 0xe605107a), /* PORT122CR */
1500 	PORTCR(123, 0xe605107b), /* PORT123CR */
1501 	PORTCR(124, 0xe605107c), /* PORT124CR */
1502 	PORTCR(125, 0xe605107d), /* PORT125CR */
1503 	PORTCR(126, 0xe605107e), /* PORT126CR */
1504 	PORTCR(127, 0xe605107f), /* PORT127CR */
1505 	PORTCR(128, 0xe6051080), /* PORT128CR */
1506 	PORTCR(129, 0xe6051081), /* PORT129CR */
1507 
1508 	PORTCR(130, 0xe6051082), /* PORT130CR */
1509 	PORTCR(131, 0xe6051083), /* PORT131CR */
1510 	PORTCR(132, 0xe6051084), /* PORT132CR */
1511 	PORTCR(133, 0xe6051085), /* PORT133CR */
1512 	PORTCR(134, 0xe6051086), /* PORT134CR */
1513 	PORTCR(135, 0xe6051087), /* PORT135CR */
1514 	PORTCR(136, 0xe6051088), /* PORT136CR */
1515 	PORTCR(137, 0xe6051089), /* PORT137CR */
1516 	PORTCR(138, 0xe605108a), /* PORT138CR */
1517 	PORTCR(139, 0xe605108b), /* PORT139CR */
1518 
1519 	PORTCR(140, 0xe605108c), /* PORT140CR */
1520 	PORTCR(141, 0xe605108d), /* PORT141CR */
1521 	PORTCR(142, 0xe605108e), /* PORT142CR */
1522 	PORTCR(143, 0xe605108f), /* PORT143CR */
1523 	PORTCR(144, 0xe6051090), /* PORT144CR */
1524 	PORTCR(145, 0xe6051091), /* PORT145CR */
1525 	PORTCR(146, 0xe6051092), /* PORT146CR */
1526 	PORTCR(147, 0xe6051093), /* PORT147CR */
1527 	PORTCR(148, 0xe6051094), /* PORT148CR */
1528 	PORTCR(149, 0xe6051095), /* PORT149CR */
1529 
1530 	PORTCR(150, 0xe6051096), /* PORT150CR */
1531 	PORTCR(151, 0xe6051097), /* PORT151CR */
1532 	PORTCR(152, 0xe6051098), /* PORT152CR */
1533 	PORTCR(153, 0xe6051099), /* PORT153CR */
1534 	PORTCR(154, 0xe605109a), /* PORT154CR */
1535 	PORTCR(155, 0xe605109b), /* PORT155CR */
1536 	PORTCR(156, 0xe605109c), /* PORT156CR */
1537 	PORTCR(157, 0xe605109d), /* PORT157CR */
1538 	PORTCR(158, 0xe605109e), /* PORT158CR */
1539 	PORTCR(159, 0xe605109f), /* PORT159CR */
1540 
1541 	PORTCR(160, 0xe60510a0), /* PORT160CR */
1542 	PORTCR(161, 0xe60510a1), /* PORT161CR */
1543 	PORTCR(162, 0xe60510a2), /* PORT162CR */
1544 	PORTCR(163, 0xe60510a3), /* PORT163CR */
1545 	PORTCR(164, 0xe60510a4), /* PORT164CR */
1546 	PORTCR(165, 0xe60510a5), /* PORT165CR */
1547 	PORTCR(166, 0xe60510a6), /* PORT166CR */
1548 	PORTCR(167, 0xe60510a7), /* PORT167CR */
1549 	PORTCR(168, 0xe60510a8), /* PORT168CR */
1550 	PORTCR(169, 0xe60510a9), /* PORT169CR */
1551 
1552 	PORTCR(170, 0xe60510aa), /* PORT170CR */
1553 	PORTCR(171, 0xe60510ab), /* PORT171CR */
1554 	PORTCR(172, 0xe60510ac), /* PORT172CR */
1555 	PORTCR(173, 0xe60510ad), /* PORT173CR */
1556 	PORTCR(174, 0xe60510ae), /* PORT174CR */
1557 	PORTCR(175, 0xe60520af), /* PORT175CR */
1558 	PORTCR(176, 0xe60520b0), /* PORT176CR */
1559 	PORTCR(177, 0xe60520b1), /* PORT177CR */
1560 	PORTCR(178, 0xe60520b2), /* PORT178CR */
1561 	PORTCR(179, 0xe60520b3), /* PORT179CR */
1562 
1563 	PORTCR(180, 0xe60520b4), /* PORT180CR */
1564 	PORTCR(181, 0xe60520b5), /* PORT181CR */
1565 	PORTCR(182, 0xe60520b6), /* PORT182CR */
1566 	PORTCR(183, 0xe60520b7), /* PORT183CR */
1567 	PORTCR(184, 0xe60520b8), /* PORT184CR */
1568 	PORTCR(185, 0xe60520b9), /* PORT185CR */
1569 	PORTCR(186, 0xe60520ba), /* PORT186CR */
1570 	PORTCR(187, 0xe60520bb), /* PORT187CR */
1571 	PORTCR(188, 0xe60520bc), /* PORT188CR */
1572 	PORTCR(189, 0xe60520bd), /* PORT189CR */
1573 
1574 	PORTCR(190, 0xe60520be), /* PORT190CR */
1575 	PORTCR(191, 0xe60520bf), /* PORT191CR */
1576 	PORTCR(192, 0xe60520c0), /* PORT192CR */
1577 	PORTCR(193, 0xe60520c1), /* PORT193CR */
1578 	PORTCR(194, 0xe60520c2), /* PORT194CR */
1579 	PORTCR(195, 0xe60520c3), /* PORT195CR */
1580 	PORTCR(196, 0xe60520c4), /* PORT196CR */
1581 	PORTCR(197, 0xe60520c5), /* PORT197CR */
1582 	PORTCR(198, 0xe60520c6), /* PORT198CR */
1583 	PORTCR(199, 0xe60520c7), /* PORT199CR */
1584 
1585 	PORTCR(200, 0xe60520c8), /* PORT200CR */
1586 	PORTCR(201, 0xe60520c9), /* PORT201CR */
1587 	PORTCR(202, 0xe60520ca), /* PORT202CR */
1588 	PORTCR(203, 0xe60520cb), /* PORT203CR */
1589 	PORTCR(204, 0xe60520cc), /* PORT204CR */
1590 	PORTCR(205, 0xe60520cd), /* PORT205CR */
1591 	PORTCR(206, 0xe60520ce), /* PORT206CR */
1592 	PORTCR(207, 0xe60520cf), /* PORT207CR */
1593 	PORTCR(208, 0xe60520d0), /* PORT208CR */
1594 	PORTCR(209, 0xe60520d1), /* PORT209CR */
1595 
1596 	PORTCR(210, 0xe60520d2), /* PORT210CR */
1597 	PORTCR(211, 0xe60520d3), /* PORT211CR */
1598 	PORTCR(212, 0xe60520d4), /* PORT212CR */
1599 	PORTCR(213, 0xe60520d5), /* PORT213CR */
1600 	PORTCR(214, 0xe60520d6), /* PORT214CR */
1601 	PORTCR(215, 0xe60520d7), /* PORT215CR */
1602 	PORTCR(216, 0xe60520d8), /* PORT216CR */
1603 	PORTCR(217, 0xe60520d9), /* PORT217CR */
1604 	PORTCR(218, 0xe60520da), /* PORT218CR */
1605 	PORTCR(219, 0xe60520db), /* PORT219CR */
1606 
1607 	PORTCR(220, 0xe60520dc), /* PORT220CR */
1608 	PORTCR(221, 0xe60520dd), /* PORT221CR */
1609 	PORTCR(222, 0xe60520de), /* PORT222CR */
1610 	PORTCR(223, 0xe60520df), /* PORT223CR */
1611 	PORTCR(224, 0xe60520e0), /* PORT224CR */
1612 	PORTCR(225, 0xe60520e1), /* PORT225CR */
1613 	PORTCR(226, 0xe60520e2), /* PORT226CR */
1614 	PORTCR(227, 0xe60520e3), /* PORT227CR */
1615 	PORTCR(228, 0xe60520e4), /* PORT228CR */
1616 	PORTCR(229, 0xe60520e5), /* PORT229CR */
1617 
1618 	PORTCR(230, 0xe60520e6), /* PORT230CR */
1619 	PORTCR(231, 0xe60520e7), /* PORT231CR */
1620 	PORTCR(232, 0xe60520e8), /* PORT232CR */
1621 	PORTCR(233, 0xe60520e9), /* PORT233CR */
1622 	PORTCR(234, 0xe60520ea), /* PORT234CR */
1623 	PORTCR(235, 0xe60520eb), /* PORT235CR */
1624 	PORTCR(236, 0xe60530ec), /* PORT236CR */
1625 	PORTCR(237, 0xe60530ed), /* PORT237CR */
1626 	PORTCR(238, 0xe60530ee), /* PORT238CR */
1627 	PORTCR(239, 0xe60530ef), /* PORT239CR */
1628 
1629 	PORTCR(240, 0xe60530f0), /* PORT240CR */
1630 	PORTCR(241, 0xe60530f1), /* PORT241CR */
1631 	PORTCR(242, 0xe60530f2), /* PORT242CR */
1632 	PORTCR(243, 0xe60530f3), /* PORT243CR */
1633 	PORTCR(244, 0xe60530f4), /* PORT244CR */
1634 	PORTCR(245, 0xe60530f5), /* PORT245CR */
1635 	PORTCR(246, 0xe60530f6), /* PORT246CR */
1636 	PORTCR(247, 0xe60530f7), /* PORT247CR */
1637 	PORTCR(248, 0xe60530f8), /* PORT248CR */
1638 	PORTCR(249, 0xe60530f9), /* PORT249CR */
1639 
1640 	PORTCR(250, 0xe60530fa), /* PORT250CR */
1641 	PORTCR(251, 0xe60530fb), /* PORT251CR */
1642 	PORTCR(252, 0xe60530fc), /* PORT252CR */
1643 	PORTCR(253, 0xe60530fd), /* PORT253CR */
1644 	PORTCR(254, 0xe60530fe), /* PORT254CR */
1645 	PORTCR(255, 0xe60530ff), /* PORT255CR */
1646 	PORTCR(256, 0xe6053100), /* PORT256CR */
1647 	PORTCR(257, 0xe6053101), /* PORT257CR */
1648 	PORTCR(258, 0xe6053102), /* PORT258CR */
1649 	PORTCR(259, 0xe6053103), /* PORT259CR */
1650 
1651 	PORTCR(260, 0xe6053104), /* PORT260CR */
1652 	PORTCR(261, 0xe6053105), /* PORT261CR */
1653 	PORTCR(262, 0xe6053106), /* PORT262CR */
1654 	PORTCR(263, 0xe6053107), /* PORT263CR */
1655 	PORTCR(264, 0xe6053108), /* PORT264CR */
1656 	PORTCR(265, 0xe6053109), /* PORT265CR */
1657 	PORTCR(266, 0xe605310a), /* PORT266CR */
1658 	PORTCR(267, 0xe605310b), /* PORT267CR */
1659 	PORTCR(268, 0xe605310c), /* PORT268CR */
1660 	PORTCR(269, 0xe605310d), /* PORT269CR */
1661 
1662 	PORTCR(270, 0xe605310e), /* PORT270CR */
1663 	PORTCR(271, 0xe605310f), /* PORT271CR */
1664 	PORTCR(272, 0xe6053110), /* PORT272CR */
1665 
1666 	{ PINMUX_CFG_REG("MSELBCR", 0xe6058024, 32, 1) {
1667 		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1668 		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1669 		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1670 		0, 0,
1671 		0, 0,
1672 		0, 0,
1673 		0, 0,
1674 		0, 0,
1675 		MSELBCR_MSEL2_0, MSELBCR_MSEL2_1,
1676 		0, 0,
1677 		0, 0 }
1678 	},
1679 	{ },
1680 };
1681 
1682 static struct pinmux_data_reg pinmux_data_regs[] = {
1683 	{ PINMUX_DATA_REG("PORTL031_000DR", 0xe6054000, 32) {
1684 		PORT31_DATA, PORT30_DATA, PORT29_DATA, PORT28_DATA,
1685 		PORT27_DATA, PORT26_DATA, PORT25_DATA, PORT24_DATA,
1686 		PORT23_DATA, PORT22_DATA, PORT21_DATA, PORT20_DATA,
1687 		PORT19_DATA, PORT18_DATA, PORT17_DATA, PORT16_DATA,
1688 		PORT15_DATA, PORT14_DATA, PORT13_DATA, PORT12_DATA,
1689 		PORT11_DATA, PORT10_DATA, PORT9_DATA, PORT8_DATA,
1690 		PORT7_DATA, PORT6_DATA, PORT5_DATA, PORT4_DATA,
1691 		PORT3_DATA, PORT2_DATA, PORT1_DATA, PORT0_DATA }
1692 	},
1693 	{ PINMUX_DATA_REG("PORTL063_032DR", 0xe6054004, 32) {
1694 		PORT63_DATA, PORT62_DATA, PORT61_DATA, PORT60_DATA,
1695 		PORT59_DATA, PORT58_DATA, PORT57_DATA, PORT56_DATA,
1696 		PORT55_DATA, PORT54_DATA, PORT53_DATA, PORT52_DATA,
1697 		PORT51_DATA, PORT50_DATA, PORT49_DATA, PORT48_DATA,
1698 		PORT47_DATA, PORT46_DATA, PORT45_DATA, PORT44_DATA,
1699 		PORT43_DATA, PORT42_DATA, PORT41_DATA, PORT40_DATA,
1700 		PORT39_DATA, PORT38_DATA, PORT37_DATA, PORT36_DATA,
1701 		PORT35_DATA, PORT34_DATA, PORT33_DATA, PORT32_DATA }
1702 	},
1703 	{ PINMUX_DATA_REG("PORTL095_064DR", 0xe6054008, 32) {
1704 		PORT95_DATA, PORT94_DATA, PORT93_DATA, PORT92_DATA,
1705 		PORT91_DATA, PORT90_DATA, PORT89_DATA, PORT88_DATA,
1706 		PORT87_DATA, PORT86_DATA, PORT85_DATA, PORT84_DATA,
1707 		PORT83_DATA, PORT82_DATA, PORT81_DATA, PORT80_DATA,
1708 		PORT79_DATA, PORT78_DATA, PORT77_DATA, PORT76_DATA,
1709 		PORT75_DATA, PORT74_DATA, PORT73_DATA, PORT72_DATA,
1710 		PORT71_DATA, PORT70_DATA, PORT69_DATA, PORT68_DATA,
1711 		PORT67_DATA, PORT66_DATA, PORT65_DATA, PORT64_DATA }
1712 	},
1713 	{ PINMUX_DATA_REG("PORTD127_096DR", 0xe6055004, 32) {
1714 		PORT127_DATA, PORT126_DATA, PORT125_DATA, PORT124_DATA,
1715 		PORT123_DATA, PORT122_DATA, PORT121_DATA, PORT120_DATA,
1716 		PORT119_DATA, PORT118_DATA, PORT117_DATA, PORT116_DATA,
1717 		PORT115_DATA, PORT114_DATA, PORT113_DATA, PORT112_DATA,
1718 		PORT111_DATA, PORT110_DATA, PORT109_DATA, PORT108_DATA,
1719 		PORT107_DATA, PORT106_DATA, PORT105_DATA, PORT104_DATA,
1720 		PORT103_DATA, PORT102_DATA, PORT101_DATA, PORT100_DATA,
1721 		PORT99_DATA, PORT98_DATA, PORT97_DATA, PORT96_DATA }
1722 	},
1723 	{ PINMUX_DATA_REG("PORTD159_128DR", 0xe6055008, 32) {
1724 		PORT159_DATA, PORT158_DATA, PORT157_DATA, PORT156_DATA,
1725 		PORT155_DATA, PORT154_DATA, PORT153_DATA, PORT152_DATA,
1726 		PORT151_DATA, PORT150_DATA, PORT149_DATA, PORT148_DATA,
1727 		PORT147_DATA, PORT146_DATA, PORT145_DATA, PORT144_DATA,
1728 		PORT143_DATA, PORT142_DATA, PORT141_DATA, PORT140_DATA,
1729 		PORT139_DATA, PORT138_DATA, PORT137_DATA, PORT136_DATA,
1730 		PORT135_DATA, PORT134_DATA, PORT133_DATA, PORT132_DATA,
1731 		PORT131_DATA, PORT130_DATA, PORT129_DATA, PORT128_DATA }
1732 	},
1733 	{ PINMUX_DATA_REG("PORTR191_160DR", 0xe6056000, 32) {
1734 		PORT191_DATA, PORT190_DATA, PORT189_DATA, PORT188_DATA,
1735 		PORT187_DATA, PORT186_DATA, PORT185_DATA, PORT184_DATA,
1736 		PORT183_DATA, PORT182_DATA, PORT181_DATA, PORT180_DATA,
1737 		PORT179_DATA, PORT178_DATA, PORT177_DATA, PORT176_DATA,
1738 		PORT175_DATA, PORT174_DATA, PORT173_DATA, PORT172_DATA,
1739 		PORT171_DATA, PORT170_DATA, PORT169_DATA, PORT168_DATA,
1740 		PORT167_DATA, PORT166_DATA, PORT165_DATA, PORT164_DATA,
1741 		PORT163_DATA, PORT162_DATA, PORT161_DATA, PORT160_DATA }
1742 	},
1743 	{ PINMUX_DATA_REG("PORTR223_192DR", 0xe6056004, 32) {
1744 		PORT223_DATA, PORT222_DATA, PORT221_DATA, PORT220_DATA,
1745 		PORT219_DATA, PORT218_DATA, PORT217_DATA, PORT216_DATA,
1746 		PORT215_DATA, PORT214_DATA, PORT213_DATA, PORT212_DATA,
1747 		PORT211_DATA, PORT210_DATA, PORT209_DATA, PORT208_DATA,
1748 		PORT207_DATA, PORT206_DATA, PORT205_DATA, PORT204_DATA,
1749 		PORT203_DATA, PORT202_DATA, PORT201_DATA, PORT200_DATA,
1750 		PORT199_DATA, PORT198_DATA, PORT197_DATA, PORT196_DATA,
1751 		PORT195_DATA, PORT194_DATA, PORT193_DATA, PORT192_DATA }
1752 	},
1753 	{ PINMUX_DATA_REG("PORTU255_224DR", 0xe6057000, 32) {
1754 		PORT255_DATA, PORT254_DATA, PORT253_DATA, PORT252_DATA,
1755 		PORT251_DATA, PORT250_DATA, PORT249_DATA, PORT248_DATA,
1756 		PORT247_DATA, PORT246_DATA, PORT245_DATA, PORT244_DATA,
1757 		PORT243_DATA, PORT242_DATA, PORT241_DATA, PORT240_DATA,
1758 		PORT239_DATA, PORT238_DATA, PORT237_DATA, PORT236_DATA,
1759 		PORT235_DATA, PORT234_DATA, PORT233_DATA, PORT232_DATA,
1760 		PORT231_DATA, PORT230_DATA, PORT229_DATA, PORT228_DATA,
1761 		PORT227_DATA, PORT226_DATA, PORT225_DATA, PORT224_DATA }
1762 	},
1763 	{ PINMUX_DATA_REG("PORTU287_256DR", 0xe6057004, 32) {
1764 		0, 0, 0, 0,
1765 		0, 0, 0, 0,
1766 		0, 0, 0, 0,
1767 		0, 0, 0, PORT272_DATA,
1768 		PORT271_DATA, PORT270_DATA, PORT269_DATA, PORT268_DATA,
1769 		PORT267_DATA, PORT266_DATA, PORT265_DATA, PORT264_DATA,
1770 		PORT263_DATA, PORT262_DATA, PORT261_DATA, PORT260_DATA,
1771 		PORT259_DATA, PORT258_DATA, PORT257_DATA, PORT256_DATA }
1772 	},
1773 	{ },
1774 };
1775 
1776 static struct pinmux_info sh7367_pinmux_info = {
1777 	.name = "sh7367_pfc",
1778 	.reserved_id = PINMUX_RESERVED,
1779 	.data = { PINMUX_DATA_BEGIN, PINMUX_DATA_END },
1780 	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
1781 	.input_pu = { PINMUX_INPUT_PULLUP_BEGIN, PINMUX_INPUT_PULLUP_END },
1782 	.input_pd = { PINMUX_INPUT_PULLDOWN_BEGIN, PINMUX_INPUT_PULLDOWN_END },
1783 	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
1784 	.mark = { PINMUX_MARK_BEGIN, PINMUX_MARK_END },
1785 	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
1786 
1787 	.first_gpio = GPIO_PORT0,
1788 	.last_gpio = GPIO_FN_DIVLOCK,
1789 
1790 	.gpios = pinmux_gpios,
1791 	.cfg_regs = pinmux_config_regs,
1792 	.data_regs = pinmux_data_regs,
1793 
1794 	.gpio_data = pinmux_data,
1795 	.gpio_data_size = ARRAY_SIZE(pinmux_data),
1796 };
1797 
sh7367_pinmux_init(void)1798 void sh7367_pinmux_init(void)
1799 {
1800 	register_pinmux(&sh7367_pinmux_info);
1801 }
1802