e4c70183e54ee67aa606853191cc18f6ca7d181d
[linux-2.6.git] / arch / arm / mach-shmobile / pfc-sh7377.c
1 /*
2  * sh7377 processor support - PFC hardware block
3  *
4  * Copyright (C) 2010  NISHIMOTO Hiroki
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License as
8  * published by the Free Software Foundation; version 2 of the
9  * License.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19  */
20 #include <linux/init.h>
21 #include <linux/kernel.h>
22 #include <linux/gpio.h>
23 #include <mach/sh7377.h>
24
25 #define _1(fn, pfx, sfx) fn(pfx, sfx)
26
27 #define _10(fn, pfx, sfx)                               \
28         _1(fn, pfx##0, sfx), _1(fn, pfx##1, sfx),       \
29         _1(fn, pfx##2, sfx), _1(fn, pfx##3, sfx),       \
30         _1(fn, pfx##4, sfx), _1(fn, pfx##5, sfx),       \
31         _1(fn, pfx##6, sfx), _1(fn, pfx##7, sfx),       \
32         _1(fn, pfx##8, sfx), _1(fn, pfx##9, sfx)
33
34 #define _90(fn, pfx, sfx)                               \
35         _10(fn, pfx##1, sfx), _10(fn, pfx##2, sfx),     \
36         _10(fn, pfx##3, sfx), _10(fn, pfx##4, sfx),     \
37         _10(fn, pfx##5, sfx), _10(fn, pfx##6, sfx),     \
38         _10(fn, pfx##7, sfx), _10(fn, pfx##8, sfx),     \
39         _10(fn, pfx##9, sfx)
40
41 #define _265(fn, pfx, sfx)                              \
42         _10(fn, pfx, sfx), _90(fn, pfx, sfx),           \
43         _10(fn, pfx##10, sfx),                          \
44         _1(fn, pfx##110, sfx), _1(fn, pfx##111, sfx),   \
45         _1(fn, pfx##112, sfx), _1(fn, pfx##113, sfx),   \
46         _1(fn, pfx##114, sfx), _1(fn, pfx##115, sfx),   \
47         _1(fn, pfx##116, sfx), _1(fn, pfx##117, sfx),   \
48         _1(fn, pfx##118, sfx),                          \
49         _1(fn, pfx##128, sfx), _1(fn, pfx##129, sfx),   \
50         _10(fn, pfx##13, sfx), _10(fn, pfx##14, sfx),   \
51         _10(fn, pfx##15, sfx),                          \
52         _1(fn, pfx##160, sfx), _1(fn, pfx##161, sfx),   \
53         _1(fn, pfx##162, sfx), _1(fn, pfx##163, sfx),   \
54         _1(fn, pfx##164, sfx),                          \
55         _1(fn, pfx##192, sfx), _1(fn, pfx##193, sfx),   \
56         _1(fn, pfx##194, sfx), _1(fn, pfx##195, sfx),   \
57         _1(fn, pfx##196, sfx), _1(fn, pfx##197, sfx),   \
58         _1(fn, pfx##198, sfx), _1(fn, pfx##199, sfx),   \
59         _10(fn, pfx##20, sfx), _10(fn, pfx##21, sfx),   \
60         _10(fn, pfx##22, sfx), _10(fn, pfx##23, sfx),   \
61         _10(fn, pfx##24, sfx), _10(fn, pfx##25, sfx),   \
62         _1(fn, pfx##260, sfx), _1(fn, pfx##261, sfx),   \
63         _1(fn, pfx##262, sfx), _1(fn, pfx##263, sfx),   \
64         _1(fn, pfx##264, sfx)
65
66 #define _PORT(pfx, sfx) pfx##_##sfx
67 #define PORT_265(str) _265(_PORT, PORT, str)
68
69 enum {
70         PINMUX_RESERVED = 0,
71
72         PINMUX_DATA_BEGIN,
73         PORT_265(DATA), /* PORT0_DATA -> PORT264_DATA */
74         PINMUX_DATA_END,
75
76         PINMUX_INPUT_BEGIN,
77         PORT_265(IN), /* PORT0_IN -> PORT264_IN */
78         PINMUX_INPUT_END,
79
80         PINMUX_INPUT_PULLUP_BEGIN,
81         PORT_265(IN_PU), /* PORT0_IN_PU -> PORT264_IN_PU */
82         PINMUX_INPUT_PULLUP_END,
83
84         PINMUX_INPUT_PULLDOWN_BEGIN,
85         PORT_265(IN_PD), /* PORT0_IN_PD -> PORT264_IN_PD */
86         PINMUX_INPUT_PULLDOWN_END,
87
88         PINMUX_OUTPUT_BEGIN,
89         PORT_265(OUT), /* PORT0_OUT -> PORT264_OUT */
90         PINMUX_OUTPUT_END,
91
92         PINMUX_FUNCTION_BEGIN,
93         PORT_265(FN_IN), /* PORT0_FN_IN -> PORT264_FN_IN */
94         PORT_265(FN_OUT), /* PORT0_FN_OUT -> PORT264_FN_OUT */
95         PORT_265(FN0), /* PORT0_FN0 -> PORT264_FN0 */
96         PORT_265(FN1), /* PORT0_FN1 -> PORT264_FN1 */
97         PORT_265(FN2), /* PORT0_FN2 -> PORT264_FN2 */
98         PORT_265(FN3), /* PORT0_FN3 -> PORT264_FN3 */
99         PORT_265(FN4), /* PORT0_FN4 -> PORT264_FN4 */
100         PORT_265(FN5), /* PORT0_FN5 -> PORT264_FN5 */
101         PORT_265(FN6), /* PORT0_FN6 -> PORT264_FN6 */
102         PORT_265(FN7), /* PORT0_FN7 -> PORT264_FN7 */
103
104         MSELBCR_MSEL17_1, MSELBCR_MSEL17_0,
105         MSELBCR_MSEL16_1, MSELBCR_MSEL16_0,
106         PINMUX_FUNCTION_END,
107
108         PINMUX_MARK_BEGIN,
109         /* Special Pull-up / Pull-down Functions */
110         PORT66_KEYIN0_PU_MARK, PORT67_KEYIN1_PU_MARK,
111         PORT68_KEYIN2_PU_MARK, PORT69_KEYIN3_PU_MARK,
112         PORT70_KEYIN4_PU_MARK, PORT71_KEYIN5_PU_MARK,
113         PORT72_KEYIN6_PU_MARK,
114
115         /* 55-1 */
116         VBUS_0_MARK,
117         CPORT0_MARK,
118         CPORT1_MARK,
119         CPORT2_MARK,
120         CPORT3_MARK,
121         CPORT4_MARK,
122         CPORT5_MARK,
123         CPORT6_MARK,
124         CPORT7_MARK,
125         CPORT8_MARK,
126         CPORT9_MARK,
127         CPORT10_MARK,
128         CPORT11_MARK, SIN2_MARK,
129         CPORT12_MARK, XCTS2_MARK,
130         CPORT13_MARK, RFSPO4_MARK,
131         CPORT14_MARK, RFSPO5_MARK,
132         CPORT15_MARK, SCIFA0_SCK_MARK, GPS_AGC2_MARK,
133         CPORT16_MARK, SCIFA0_TXD_MARK, GPS_AGC3_MARK,
134         CPORT17_IC_OE_MARK, SOUT2_MARK,
135         CPORT18_MARK, XRTS2_MARK, PORT19_VIO_CKO2_MARK,
136         CPORT19_MPORT1_MARK,
137         CPORT20_MARK, RFSPO6_MARK,
138         CPORT21_MARK, STATUS0_MARK,
139         CPORT22_MARK, STATUS1_MARK,
140         CPORT23_MARK, STATUS2_MARK, RFSPO7_MARK,
141         B_SYNLD1_MARK,
142         B_SYNLD2_MARK, SYSENMSK_MARK,
143         XMAINPS_MARK,
144         XDIVPS_MARK,
145         XIDRST_MARK,
146         IDCLK_MARK, IC_DP_MARK,
147         IDIO_MARK, IC_DM_MARK,
148         SOUT1_MARK, SCIFA4_TXD_MARK, M02_BERDAT_MARK,
149         SIN1_MARK, SCIFA4_RXD_MARK, XWUP_MARK,
150         XRTS1_MARK, SCIFA4_RTS_MARK, M03_BERCLK_MARK,
151         XCTS1_MARK, SCIFA4_CTS_MARK,
152         PCMCLKO_MARK,
153         SYNC8KO_MARK,
154
155         /* 55-2 */
156         DNPCM_A_MARK,
157         UPPCM_A_MARK,
158         VACK_MARK,
159         XTALB1L_MARK,
160         GPS_AGC1_MARK, SCIFA0_RTS_MARK,
161         GPS_AGC4_MARK, SCIFA0_RXD_MARK,
162         GPS_PWRDOWN_MARK, SCIFA0_CTS_MARK,
163         GPS_IM_MARK,
164         GPS_IS_MARK,
165         GPS_QM_MARK,
166         GPS_QS_MARK,
167         FMSOCK_MARK, PORT49_IRDA_OUT_MARK, PORT49_IROUT_MARK,
168         FMSOOLR_MARK, BBIF2_TSYNC2_MARK, TPU2TO2_MARK, IPORT3_MARK,
169         FMSIOLR_MARK,
170         FMSOOBT_MARK, BBIF2_TSCK2_MARK, TPU2TO3_MARK, OPORT1_MARK,
171         FMSIOBT_MARK,
172         FMSOSLD_MARK, BBIF2_TXD2_MARK, OPORT2_MARK,
173         FMSOILR_MARK, PORT53_IRDA_IN_MARK, TPU3TO3_MARK, OPORT3_MARK,
174         FMSIILR_MARK,
175         FMSOIBT_MARK, PORT54_IRDA_FIRSEL_MARK, TPU3TO2_MARK, FMSIIBT_MARK,
176         FMSISLD_MARK, MFG0_OUT1_MARK, TPU0TO0_MARK,
177         A0_EA0_MARK, BS_MARK,
178         A12_EA12_MARK, PORT58_VIO_CKOR_MARK, TPU4TO2_MARK,
179         A13_EA13_MARK, PORT59_IROUT_MARK, MFG0_OUT2_MARK, TPU0TO1_MARK,
180         A14_EA14_MARK, PORT60_KEYOUT5_MARK,
181         A15_EA15_MARK, PORT61_KEYOUT4_MARK,
182         A16_EA16_MARK, PORT62_KEYOUT3_MARK, MSIOF0_SS1_MARK,
183         A17_EA17_MARK, PORT63_KEYOUT2_MARK, MSIOF0_TSYNC_MARK,
184         A18_EA18_MARK, PORT64_KEYOUT1_MARK, MSIOF0_TSCK_MARK,
185         A19_EA19_MARK, PORT65_KEYOUT0_MARK, MSIOF0_TXD_MARK,
186         A20_EA20_MARK, PORT66_KEYIN0_MARK, MSIOF0_RSCK_MARK,
187         A21_EA21_MARK, PORT67_KEYIN1_MARK, MSIOF0_RSYNC_MARK,
188         A22_EA22_MARK, PORT68_KEYIN2_MARK, MSIOF0_MCK0_MARK,
189         A23_EA23_MARK, PORT69_KEYIN3_MARK, MSIOF0_MCK1_MARK,
190         A24_EA24_MARK, PORT70_KEYIN4_MARK, MSIOF0_RXD_MARK,
191         A25_EA25_MARK, PORT71_KEYIN5_MARK, MSIOF0_SS2_MARK,
192         A26_MARK, PORT72_KEYIN6_MARK,
193         D0_ED0_NAF0_MARK,
194         D1_ED1_NAF1_MARK,
195         D2_ED2_NAF2_MARK,
196         D3_ED3_NAF3_MARK,
197         D4_ED4_NAF4_MARK,
198         D5_ED5_NAF5_MARK,
199         D6_ED6_NAF6_MARK,
200         D7_ED7_NAF7_MARK,
201         D8_ED8_NAF8_MARK,
202         D9_ED9_NAF9_MARK,
203         D10_ED10_NAF10_MARK,
204         D11_ED11_NAF11_MARK,
205         D12_ED12_NAF12_MARK,
206         D13_ED13_NAF13_MARK,
207         D14_ED14_NAF14_MARK,
208         D15_ED15_NAF15_MARK,
209         CS4_MARK,
210         CS5A_MARK, FMSICK_MARK,
211         CS5B_MARK, FCE1_MARK,
212
213         /* 55-3 */
214         CS6B_MARK, XCS2_MARK, CS6A_MARK, DACK0_MARK,
215         FCE0_MARK,
216         WAIT_MARK, DREQ0_MARK,
217         RD_XRD_MARK,
218         WE0_XWR0_FWE_MARK,
219         WE1_XWR1_MARK,
220         FRB_MARK,
221         CKO_MARK,
222         NBRSTOUT_MARK,
223         NBRST_MARK,
224         GPS_EPPSIN_MARK,
225         LATCHPULSE_MARK,
226         LTESIGNAL_MARK,
227         LEGACYSTATE_MARK,
228         TCKON_MARK,
229         VIO_VD_MARK, PORT128_KEYOUT0_MARK, IPORT0_MARK,
230         VIO_HD_MARK, PORT129_KEYOUT1_MARK, IPORT1_MARK,
231         VIO_D0_MARK, PORT130_KEYOUT2_MARK, PORT130_MSIOF2_RXD_MARK,
232         VIO_D1_MARK, PORT131_KEYOUT3_MARK, PORT131_MSIOF2_SS1_MARK,
233         VIO_D2_MARK, PORT132_KEYOUT4_MARK, PORT132_MSIOF2_SS2_MARK,
234         VIO_D3_MARK, PORT133_KEYOUT5_MARK, PORT133_MSIOF2_TSYNC_MARK,
235         VIO_D4_MARK, PORT134_KEYIN0_MARK, PORT134_MSIOF2_TXD_MARK,
236         VIO_D5_MARK, PORT135_KEYIN1_MARK, PORT135_MSIOF2_TSCK_MARK,
237         VIO_D6_MARK, PORT136_KEYIN2_MARK,
238         VIO_D7_MARK, PORT137_KEYIN3_MARK,
239         VIO_D8_MARK, M9_SLCD_A01_MARK, PORT138_FSIAOMC_MARK,
240         VIO_D9_MARK, M10_SLCD_CK1_MARK, PORT139_FSIAOLR_MARK,
241         VIO_D10_MARK, M11_SLCD_SO1_MARK, TPU0TO2_MARK, PORT140_FSIAOBT_MARK,
242         VIO_D11_MARK, M12_SLCD_CE1_MARK, TPU0TO3_MARK, PORT141_FSIAOSLD_MARK,
243         VIO_D12_MARK, M13_BSW_MARK, PORT142_FSIACK_MARK,
244         VIO_D13_MARK, M14_GSW_MARK, PORT143_FSIAILR_MARK,
245         VIO_D14_MARK, M15_RSW_MARK, PORT144_FSIAIBT_MARK,
246         VIO_D15_MARK, TPU1TO3_MARK, PORT145_FSIAISLD_MARK,
247         VIO_CLK_MARK, PORT146_KEYIN4_MARK, IPORT2_MARK,
248         VIO_FIELD_MARK, PORT147_KEYIN5_MARK,
249         VIO_CKO_MARK, PORT148_KEYIN6_MARK,
250         A27_MARK, RDWR_XWE_MARK, MFG0_IN1_MARK,
251         MFG0_IN2_MARK,
252         TS_SPSYNC3_MARK, MSIOF2_RSCK_MARK,
253         TS_SDAT3_MARK, MSIOF2_RSYNC_MARK,
254         TPU1TO2_MARK, TS_SDEN3_MARK, PORT153_MSIOF2_SS1_MARK,
255         SOUT3_MARK, SCIFA2_TXD1_MARK, MSIOF2_MCK0_MARK,
256         SIN3_MARK, SCIFA2_RXD1_MARK, MSIOF2_MCK1_MARK,
257         XRTS3_MARK, SCIFA2_RTS1_MARK, PORT156_MSIOF2_SS2_MARK,
258         XCTS3_MARK, SCIFA2_CTS1_MARK, PORT157_MSIOF2_RXD_MARK,
259
260         /* 55-4 */
261         DINT_MARK, SCIFA2_SCK1_MARK, TS_SCK3_MARK,
262         PORT159_SCIFB_SCK_MARK, PORT159_SCIFA5_SCK_MARK, NMI_MARK,
263         PORT160_SCIFB_TXD_MARK, PORT160_SCIFA5_TXD_MARK, SOUT0_MARK,
264         PORT161_SCIFB_CTS_MARK, PORT161_SCIFA5_CTS_MARK, XCTS0_MARK,
265         MFG3_IN2_MARK,
266         PORT162_SCIFB_RXD_MARK, PORT162_SCIFA5_RXD_MARK, SIN0_MARK,
267         MFG3_IN1_MARK,
268         PORT163_SCIFB_RTS_MARK, PORT163_SCIFA5_RTS_MARK, XRTS0_MARK,
269         MFG3_OUT1_MARK, TPU3TO0_MARK,
270         LCDD0_MARK, PORT192_KEYOUT0_MARK, EXT_CKI_MARK,
271         LCDD1_MARK, PORT193_KEYOUT1_MARK, PORT193_SCIFA5_CTS_MARK,
272         BBIF2_TSYNC1_MARK,
273         LCDD2_MARK, PORT194_KEYOUT2_MARK, PORT194_SCIFA5_RTS_MARK,
274         BBIF2_TSCK1_MARK,
275         LCDD3_MARK, PORT195_KEYOUT3_MARK, PORT195_SCIFA5_RXD_MARK,
276         BBIF2_TXD1_MARK,
277         LCDD4_MARK, PORT196_KEYOUT4_MARK, PORT196_SCIFA5_TXD_MARK,
278         LCDD5_MARK, PORT197_KEYOUT5_MARK, PORT197_SCIFA5_SCK_MARK,
279         MFG2_OUT2_MARK,
280         TPU2TO1_MARK,
281         LCDD6_MARK, XWR2_MARK,
282         LCDD7_MARK, TPU4TO1_MARK, MFG4_OUT2_MARK, XWR3_MARK,
283         LCDD8_MARK, PORT200_KEYIN0_MARK, VIO_DR0_MARK, D16_MARK, ED16_MARK,
284         LCDD9_MARK, PORT201_KEYIN1_MARK, VIO_DR1_MARK, D17_MARK, ED17_MARK,
285         LCDD10_MARK, PORT202_KEYIN2_MARK, VIO_DR2_MARK, D18_MARK, ED18_MARK,
286         LCDD11_MARK, PORT203_KEYIN3_MARK, VIO_DR3_MARK, D19_MARK, ED19_MARK,
287         LCDD12_MARK, PORT204_KEYIN4_MARK, VIO_DR4_MARK, D20_MARK, ED20_MARK,
288         LCDD13_MARK, PORT205_KEYIN5_MARK, VIO_DR5_MARK, D21_MARK, ED21_MARK,
289         LCDD14_MARK, PORT206_KEYIN6_MARK, VIO_DR6_MARK, D22_MARK, ED22_MARK,
290         LCDD15_MARK, PORT207_MSIOF0L_SS1_MARK, PORT207_KEYOUT0_MARK,
291         VIO_DR7_MARK, D23_MARK, ED23_MARK,
292         LCDD16_MARK, PORT208_MSIOF0L_SS2_MARK, PORT208_KEYOUT1_MARK,
293         VIO_VDR_MARK, D24_MARK, ED24_MARK,
294         LCDD17_MARK, PORT209_KEYOUT2_MARK, VIO_HDR_MARK, D25_MARK, ED25_MARK,
295         LCDD18_MARK, DREQ2_MARK, PORT210_MSIOF0L_SS1_MARK, D26_MARK, ED26_MARK,
296         LCDD19_MARK, PORT211_MSIOF0L_SS2_MARK, D27_MARK, ED27_MARK,
297         LCDD20_MARK, TS_SPSYNC1_MARK, MSIOF0L_MCK0_MARK, D28_MARK, ED28_MARK,
298         LCDD21_MARK, TS_SDAT1_MARK, MSIOF0L_MCK1_MARK, D29_MARK, ED29_MARK,
299         LCDD22_MARK, TS_SDEN1_MARK, MSIOF0L_RSCK_MARK, D30_MARK, ED30_MARK,
300         LCDD23_MARK, TS_SCK1_MARK, MSIOF0L_RSYNC_MARK, D31_MARK, ED31_MARK,
301         LCDDCK_MARK, LCDWR_MARK, PORT216_KEYOUT3_MARK, VIO_CLKR_MARK,
302         LCDRD_MARK, DACK2_MARK, MSIOF0L_TSYNC_MARK,
303         LCDHSYN_MARK, LCDCS_MARK, LCDCS2_MARK, DACK3_MARK,
304         PORT218_VIO_CKOR_MARK, PORT218_KEYOUT4_MARK,
305         LCDDISP_MARK, LCDRS_MARK, DREQ3_MARK, MSIOF0L_TSCK_MARK,
306         LCDVSYN_MARK, LCDVSYN2_MARK, PORT220_KEYOUT5_MARK,
307         LCDLCLK_MARK, DREQ1_MARK, PWEN_MARK, MSIOF0L_RXD_MARK,
308         LCDDON_MARK, LCDDON2_MARK, DACK1_MARK, OVCN_MARK, MSIOF0L_TXD_MARK,
309         SCIFA1_TXD_MARK, OVCN2_MARK,
310         EXTLP_MARK, SCIFA1_SCK_MARK, USBTERM_MARK, PORT226_VIO_CKO2_MARK,
311         SCIFA1_RTS_MARK, IDIN_MARK,
312         SCIFA1_RXD_MARK,
313         SCIFA1_CTS_MARK, MFG1_IN1_MARK,
314         MSIOF1_TXD_MARK, SCIFA2_TXD2_MARK, PORT230_FSIAOMC_MARK,
315         MSIOF1_TSYNC_MARK, SCIFA2_CTS2_MARK, PORT231_FSIAOLR_MARK,
316         MSIOF1_TSCK_MARK, SCIFA2_SCK2_MARK, PORT232_FSIAOBT_MARK,
317         MSIOF1_RXD_MARK, SCIFA2_RXD2_MARK, GPS_VCOTRIG_MARK,
318         PORT233_FSIACK_MARK,
319         MSIOF1_RSCK_MARK, SCIFA2_RTS2_MARK, PORT234_FSIAOSLD_MARK,
320         MSIOF1_RSYNC_MARK, OPORT0_MARK, MFG1_IN2_MARK, PORT235_FSIAILR_MARK,
321         MSIOF1_MCK0_MARK, I2C_SDA2_MARK, PORT236_FSIAIBT_MARK,
322         MSIOF1_MCK1_MARK, I2C_SCL2_MARK, PORT237_FSIAISLD_MARK,
323         MSIOF1_SS1_MARK, EDBGREQ3_MARK,
324
325         /* 55-5 */
326         MSIOF1_SS2_MARK,
327         SCIFA6_TXD_MARK,
328         PORT241_IRDA_OUT_MARK, PORT241_IROUT_MARK, MFG4_OUT1_MARK,
329         TPU4TO0_MARK,
330         PORT242_IRDA_IN_MARK, MFG4_IN2_MARK,
331         PORT243_IRDA_FIRSEL_MARK, PORT243_VIO_CKO2_MARK,
332         PORT244_SCIFA5_CTS_MARK, MFG2_IN1_MARK, PORT244_SCIFB_CTS_MARK,
333         PORT244_MSIOF2_RXD_MARK,
334         PORT245_SCIFA5_RTS_MARK, MFG2_IN2_MARK, PORT245_SCIFB_RTS_MARK,
335         PORT245_MSIOF2_TXD_MARK,
336         PORT246_SCIFA5_RXD_MARK, MFG1_OUT1_MARK, PORT246_SCIFB_RXD_MARK,
337         TPU1TO0_MARK,
338         PORT247_SCIFA5_TXD_MARK, MFG3_OUT2_MARK, PORT247_SCIFB_TXD_MARK,
339         TPU3TO1_MARK,
340         PORT248_SCIFA5_SCK_MARK, MFG2_OUT1_MARK, PORT248_SCIFB_SCK_MARK,
341         TPU2TO0_MARK,
342         PORT248_MSIOF2_TSCK_MARK,
343         PORT249_IROUT_MARK, MFG4_IN1_MARK, PORT249_MSIOF2_TSYNC_MARK,
344         SDHICLK0_MARK, TCK2_SWCLK_MC0_MARK,
345         SDHICD0_MARK,
346         SDHID0_0_MARK, TMS2_SWDIO_MC0_MARK,
347         SDHID0_1_MARK, TDO2_SWO0_MC0_MARK,
348         SDHID0_2_MARK, TDI2_MARK,
349         SDHID0_3_MARK, RTCK2_SWO1_MC0_MARK,
350         SDHICMD0_MARK, TRST2_MARK,
351         SDHIWP0_MARK, EDBGREQ2_MARK,
352         SDHICLK1_MARK, TCK3_SWCLK_MC1_MARK,
353         SDHID1_0_MARK, M11_SLCD_SO2_MARK, TS_SPSYNC2_MARK,
354         TMS3_SWDIO_MC1_MARK,
355         SDHID1_1_MARK, M9_SLCD_A02_MARK, TS_SDAT2_MARK, TDO3_SWO0_MC1_MARK,
356         SDHID1_2_MARK, M10_SLCD_CK2_MARK, TS_SDEN2_MARK, TDI3_MARK,
357         SDHID1_3_MARK, M12_SLCD_CE2_MARK, TS_SCK2_MARK, RTCK3_SWO1_MC1_MARK,
358         SDHICMD1_MARK, TRST3_MARK,
359         RESETOUTS_MARK,
360         PINMUX_MARK_END,
361 };
362
363 static pinmux_enum_t pinmux_data[] = {
364         /* specify valid pin states for each pin in GPIO mode */
365         /* 55-1 (GPIO) */
366         PORT_DATA_I_PD(0), PORT_DATA_I_PU(1),
367         PORT_DATA_I_PU(2), PORT_DATA_I_PU(3),
368         PORT_DATA_I_PU(4), PORT_DATA_I_PU(5),
369         PORT_DATA_I_PU(6), PORT_DATA_I_PU(7),
370         PORT_DATA_I_PU(8), PORT_DATA_I_PU(9),
371         PORT_DATA_I_PU(10), PORT_DATA_I_PU(11),
372         PORT_DATA_IO_PU(12), PORT_DATA_IO_PU(13),
373         PORT_DATA_IO_PU_PD(14), PORT_DATA_IO_PU_PD(15),
374         PORT_DATA_O(16), PORT_DATA_IO(17),
375         PORT_DATA_O(18), PORT_DATA_O(19),
376         PORT_DATA_O(20), PORT_DATA_O(21),
377         PORT_DATA_O(22), PORT_DATA_O(23),
378         PORT_DATA_O(24), PORT_DATA_I_PD(25),
379         PORT_DATA_I_PD(26), PORT_DATA_O(27),
380         PORT_DATA_O(28), PORT_DATA_O(29),
381         PORT_DATA_IO(30), PORT_DATA_IO_PU(31),
382         PORT_DATA_IO_PD(32), PORT_DATA_I_PU(33),
383         PORT_DATA_IO_PD(34), PORT_DATA_I_PU_PD(35),
384         PORT_DATA_O(36), PORT_DATA_IO(37),
385
386         /* 55-2 (GPIO) */
387         PORT_DATA_O(38), PORT_DATA_I_PU(39),
388         PORT_DATA_I_PU_PD(40), PORT_DATA_O(41),
389         PORT_DATA_IO_PD(42), PORT_DATA_IO_PD(43),
390         PORT_DATA_IO_PD(44), PORT_DATA_I_PD(45),
391         PORT_DATA_I_PD(46), PORT_DATA_I_PD(47),
392         PORT_DATA_I_PD(48), PORT_DATA_IO_PU_PD(49),
393         PORT_DATA_IO_PD(50), PORT_DATA_IO_PD(51),
394         PORT_DATA_O(52), PORT_DATA_IO_PU_PD(53),
395         PORT_DATA_IO_PU_PD(54), PORT_DATA_IO_PD(55),
396         PORT_DATA_I_PU_PD(56), PORT_DATA_IO(57),
397         PORT_DATA_IO(58), PORT_DATA_IO(59),
398         PORT_DATA_IO(60), PORT_DATA_IO(61),
399         PORT_DATA_IO_PD(62), PORT_DATA_IO_PD(63),
400         PORT_DATA_IO_PD(64), PORT_DATA_IO_PD(65),
401         PORT_DATA_IO_PU_PD(66), PORT_DATA_IO_PU_PD(67),
402         PORT_DATA_IO_PU_PD(68), PORT_DATA_IO_PU_PD(69),
403         PORT_DATA_IO_PU_PD(70), PORT_DATA_IO_PU_PD(71),
404         PORT_DATA_IO_PU_PD(72), PORT_DATA_I_PU_PD(73),
405         PORT_DATA_IO_PU(74), PORT_DATA_IO_PU(75),
406         PORT_DATA_IO_PU(76), PORT_DATA_IO_PU(77),
407         PORT_DATA_IO_PU(78), PORT_DATA_IO_PU(79),
408         PORT_DATA_IO_PU(80), PORT_DATA_IO_PU(81),
409         PORT_DATA_IO_PU(82), PORT_DATA_IO_PU(83),
410         PORT_DATA_IO_PU(84), PORT_DATA_IO_PU(85),
411         PORT_DATA_IO_PU(86), PORT_DATA_IO_PU(87),
412         PORT_DATA_IO_PU(88), PORT_DATA_IO_PU(89),
413         PORT_DATA_O(90), PORT_DATA_IO_PU(91),
414         PORT_DATA_O(92),
415
416         /* 55-3 (GPIO) */
417         PORT_DATA_IO_PU(93),
418         PORT_DATA_O(94),
419         PORT_DATA_I_PU_PD(95),
420         PORT_DATA_IO(96), PORT_DATA_IO(97),
421         PORT_DATA_IO(98), PORT_DATA_I_PU(99),
422         PORT_DATA_O(100), PORT_DATA_O(101),
423         PORT_DATA_I_PU(102), PORT_DATA_IO_PD(103),
424         PORT_DATA_I_PD(104), PORT_DATA_I_PD(105),
425         PORT_DATA_I_PD(106), PORT_DATA_I_PD(107),
426         PORT_DATA_I_PD(108), PORT_DATA_IO_PD(109),
427         PORT_DATA_IO_PD(110), PORT_DATA_I_PD(111),
428         PORT_DATA_IO_PD(112), PORT_DATA_IO_PD(113),
429         PORT_DATA_IO_PD(114), PORT_DATA_I_PD(115),
430         PORT_DATA_I_PD(116), PORT_DATA_IO_PD(117),
431         PORT_DATA_I_PD(118), PORT_DATA_IO_PD(128),
432         PORT_DATA_IO_PD(129), PORT_DATA_IO_PD(130),
433         PORT_DATA_IO_PD(131), PORT_DATA_IO_PD(132),
434         PORT_DATA_IO_PD(133), PORT_DATA_IO_PU_PD(134),
435         PORT_DATA_IO_PU_PD(135), PORT_DATA_IO_PU_PD(136),
436         PORT_DATA_IO_PU_PD(137), PORT_DATA_IO_PD(138),
437         PORT_DATA_IO_PD(139), PORT_DATA_IO_PD(140),
438         PORT_DATA_IO_PD(141), PORT_DATA_IO_PD(142),
439         PORT_DATA_IO_PD(143), PORT_DATA_IO_PU_PD(144),
440         PORT_DATA_IO_PD(145), PORT_DATA_IO_PU_PD(146),
441         PORT_DATA_IO_PU_PD(147), PORT_DATA_IO_PU_PD(148),
442         PORT_DATA_IO_PU_PD(149), PORT_DATA_I_PD(150),
443         PORT_DATA_IO_PU_PD(151), PORT_DATA_IO_PD(152),
444         PORT_DATA_IO_PD(153), PORT_DATA_IO_PD(154),
445         PORT_DATA_I_PD(155), PORT_DATA_IO_PU_PD(156),
446         PORT_DATA_I_PD(157), PORT_DATA_IO_PD(158),
447
448         /* 55-4 (GPIO) */
449         PORT_DATA_IO_PU_PD(159), PORT_DATA_IO_PU_PD(160),
450         PORT_DATA_I_PU_PD(161), PORT_DATA_I_PU_PD(162),
451         PORT_DATA_IO_PU_PD(163), PORT_DATA_I_PU_PD(164),
452         PORT_DATA_IO_PD(192), PORT_DATA_IO_PD(193),
453         PORT_DATA_IO_PD(194), PORT_DATA_IO_PD(195),
454         PORT_DATA_IO_PD(196), PORT_DATA_IO_PD(197),
455         PORT_DATA_IO_PD(198), PORT_DATA_IO_PD(199),
456         PORT_DATA_IO_PU_PD(200), PORT_DATA_IO_PU_PD(201),
457         PORT_DATA_IO_PU_PD(202), PORT_DATA_IO_PU_PD(203),
458         PORT_DATA_IO_PU_PD(204), PORT_DATA_IO_PU_PD(205),
459         PORT_DATA_IO_PU_PD(206), PORT_DATA_IO_PD(207),
460         PORT_DATA_IO_PD(208), PORT_DATA_IO_PD(209),
461         PORT_DATA_IO_PD(210), PORT_DATA_IO_PD(211),
462         PORT_DATA_IO_PD(212), PORT_DATA_IO_PD(213),
463         PORT_DATA_IO_PD(214), PORT_DATA_IO_PD(215),
464         PORT_DATA_IO_PD(216), PORT_DATA_IO_PD(217),
465         PORT_DATA_O(218), PORT_DATA_IO_PD(219),
466         PORT_DATA_IO_PD(220), PORT_DATA_IO_PD(221),
467         PORT_DATA_IO_PU_PD(222),
468         PORT_DATA_I_PU_PD(223), PORT_DATA_I_PU_PD(224),
469         PORT_DATA_IO_PU_PD(225), PORT_DATA_O(226),
470         PORT_DATA_IO_PU_PD(227), PORT_DATA_I_PD(228),
471         PORT_DATA_I_PD(229), PORT_DATA_IO(230),
472         PORT_DATA_IO_PD(231), PORT_DATA_IO_PU_PD(232),
473         PORT_DATA_I_PD(233), PORT_DATA_IO_PU_PD(234),
474         PORT_DATA_IO_PU_PD(235), PORT_DATA_IO_PU_PD(236),
475         PORT_DATA_IO_PD(237), PORT_DATA_IO_PU_PD(238),
476
477         /* 55-5 (GPIO) */
478         PORT_DATA_IO_PU_PD(239), PORT_DATA_IO_PU_PD(240),
479         PORT_DATA_O(241), PORT_DATA_I_PD(242),
480         PORT_DATA_IO_PU_PD(243), PORT_DATA_IO_PU_PD(244),
481         PORT_DATA_IO_PU_PD(245), PORT_DATA_IO_PU_PD(246),
482         PORT_DATA_IO_PU_PD(247), PORT_DATA_IO_PU_PD(248),
483         PORT_DATA_IO_PU_PD(249), PORT_DATA_IO_PD(250),
484         PORT_DATA_IO_PU_PD(251), PORT_DATA_IO_PU_PD(252),
485         PORT_DATA_IO_PU_PD(253), PORT_DATA_IO_PU_PD(254),
486         PORT_DATA_IO_PU_PD(255), PORT_DATA_IO_PU_PD(256),
487         PORT_DATA_IO_PU_PD(257), PORT_DATA_IO_PD(258),
488         PORT_DATA_IO_PU_PD(259), PORT_DATA_IO_PU_PD(260),
489         PORT_DATA_IO_PU_PD(261), PORT_DATA_IO_PU_PD(262),
490         PORT_DATA_IO_PU_PD(263),
491
492         /* Special Pull-up / Pull-down Functions */
493         PINMUX_DATA(PORT66_KEYIN0_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
494                                 PORT66_FN2, PORT66_IN_PU),
495         PINMUX_DATA(PORT67_KEYIN1_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
496                                 PORT67_FN2, PORT67_IN_PU),
497         PINMUX_DATA(PORT68_KEYIN2_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
498                                 PORT68_FN2, PORT68_IN_PU),
499         PINMUX_DATA(PORT69_KEYIN3_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
500                                 PORT69_FN2, PORT69_IN_PU),
501         PINMUX_DATA(PORT70_KEYIN4_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
502                                 PORT70_FN2, PORT70_IN_PU),
503         PINMUX_DATA(PORT71_KEYIN5_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
504                                 PORT71_FN2, PORT71_IN_PU),
505         PINMUX_DATA(PORT72_KEYIN6_PU_MARK, MSELBCR_MSEL17_0, MSELBCR_MSEL16_0,
506                                 PORT72_FN2, PORT72_IN_PU),
507
508
509         /* 55-1 (FN) */
510         PINMUX_DATA(VBUS_0_MARK, PORT0_FN1),
511         PINMUX_DATA(CPORT0_MARK, PORT1_FN1),
512         PINMUX_DATA(CPORT1_MARK, PORT2_FN1),
513         PINMUX_DATA(CPORT2_MARK, PORT3_FN1),
514         PINMUX_DATA(CPORT3_MARK, PORT4_FN1),
515         PINMUX_DATA(CPORT4_MARK, PORT5_FN1),
516         PINMUX_DATA(CPORT5_MARK, PORT6_FN1),
517         PINMUX_DATA(CPORT6_MARK, PORT7_FN1),
518         PINMUX_DATA(CPORT7_MARK, PORT8_FN1),
519         PINMUX_DATA(CPORT8_MARK, PORT9_FN1),
520         PINMUX_DATA(CPORT9_MARK, PORT10_FN1),
521         PINMUX_DATA(CPORT10_MARK, PORT11_FN1),
522         PINMUX_DATA(CPORT11_MARK, PORT12_FN1),
523         PINMUX_DATA(SIN2_MARK, PORT12_FN2),
524         PINMUX_DATA(CPORT12_MARK, PORT13_FN1),
525         PINMUX_DATA(XCTS2_MARK, PORT13_FN2),
526         PINMUX_DATA(CPORT13_MARK, PORT14_FN1),
527         PINMUX_DATA(RFSPO4_MARK, PORT14_FN2),
528         PINMUX_DATA(CPORT14_MARK, PORT15_FN1),
529         PINMUX_DATA(RFSPO5_MARK, PORT15_FN2),
530         PINMUX_DATA(CPORT15_MARK, PORT16_FN1),
531         PINMUX_DATA(SCIFA0_SCK_MARK, PORT16_FN2),
532         PINMUX_DATA(GPS_AGC2_MARK, PORT16_FN3),
533         PINMUX_DATA(CPORT16_MARK, PORT17_FN1),
534         PINMUX_DATA(SCIFA0_TXD_MARK, PORT17_FN2),
535         PINMUX_DATA(GPS_AGC3_MARK, PORT17_FN3),
536         PINMUX_DATA(CPORT17_IC_OE_MARK, PORT18_FN1),
537         PINMUX_DATA(SOUT2_MARK, PORT18_FN2),
538         PINMUX_DATA(CPORT18_MARK, PORT19_FN1),
539         PINMUX_DATA(XRTS2_MARK, PORT19_FN2),
540         PINMUX_DATA(PORT19_VIO_CKO2_MARK, PORT19_FN3),
541         PINMUX_DATA(CPORT19_MPORT1_MARK, PORT20_FN1),
542         PINMUX_DATA(CPORT20_MARK, PORT21_FN1),
543         PINMUX_DATA(RFSPO6_MARK, PORT21_FN2),
544         PINMUX_DATA(CPORT21_MARK, PORT22_FN1),
545         PINMUX_DATA(STATUS0_MARK, PORT22_FN2),
546         PINMUX_DATA(CPORT22_MARK, PORT23_FN1),
547         PINMUX_DATA(STATUS1_MARK, PORT23_FN2),
548         PINMUX_DATA(CPORT23_MARK, PORT24_FN1),
549         PINMUX_DATA(STATUS2_MARK, PORT24_FN2),
550         PINMUX_DATA(RFSPO7_MARK, PORT24_FN3),
551         PINMUX_DATA(B_SYNLD1_MARK, PORT25_FN1),
552         PINMUX_DATA(B_SYNLD2_MARK, PORT26_FN1),
553         PINMUX_DATA(SYSENMSK_MARK, PORT26_FN2),
554         PINMUX_DATA(XMAINPS_MARK, PORT27_FN1),
555         PINMUX_DATA(XDIVPS_MARK, PORT28_FN1),
556         PINMUX_DATA(XIDRST_MARK, PORT29_FN1),
557         PINMUX_DATA(IDCLK_MARK, PORT30_FN1),
558         PINMUX_DATA(IC_DP_MARK, PORT30_FN2),
559         PINMUX_DATA(IDIO_MARK, PORT31_FN1),
560         PINMUX_DATA(IC_DM_MARK, PORT31_FN2),
561         PINMUX_DATA(SOUT1_MARK, PORT32_FN1),
562         PINMUX_DATA(SCIFA4_TXD_MARK, PORT32_FN2),
563         PINMUX_DATA(M02_BERDAT_MARK, PORT32_FN3),
564         PINMUX_DATA(SIN1_MARK, PORT33_FN1),
565         PINMUX_DATA(SCIFA4_RXD_MARK, PORT33_FN2),
566         PINMUX_DATA(XWUP_MARK, PORT33_FN3),
567         PINMUX_DATA(XRTS1_MARK, PORT34_FN1),
568         PINMUX_DATA(SCIFA4_RTS_MARK, PORT34_FN2),
569         PINMUX_DATA(M03_BERCLK_MARK, PORT34_FN3),
570         PINMUX_DATA(XCTS1_MARK, PORT35_FN1),
571         PINMUX_DATA(SCIFA4_CTS_MARK, PORT35_FN2),
572         PINMUX_DATA(PCMCLKO_MARK, PORT36_FN1),
573         PINMUX_DATA(SYNC8KO_MARK, PORT37_FN1),
574
575         /* 55-2 (FN) */
576         PINMUX_DATA(DNPCM_A_MARK, PORT38_FN1),
577         PINMUX_DATA(UPPCM_A_MARK, PORT39_FN1),
578         PINMUX_DATA(VACK_MARK, PORT40_FN1),
579         PINMUX_DATA(XTALB1L_MARK, PORT41_FN1),
580         PINMUX_DATA(GPS_AGC1_MARK, PORT42_FN1),
581         PINMUX_DATA(SCIFA0_RTS_MARK, PORT42_FN2),
582         PINMUX_DATA(GPS_AGC4_MARK, PORT43_FN1),
583         PINMUX_DATA(SCIFA0_RXD_MARK, PORT43_FN2),
584         PINMUX_DATA(GPS_PWRDOWN_MARK, PORT44_FN1),
585         PINMUX_DATA(SCIFA0_CTS_MARK, PORT44_FN2),
586         PINMUX_DATA(GPS_IM_MARK, PORT45_FN1),
587         PINMUX_DATA(GPS_IS_MARK, PORT46_FN1),
588         PINMUX_DATA(GPS_QM_MARK, PORT47_FN1),
589         PINMUX_DATA(GPS_QS_MARK, PORT48_FN1),
590         PINMUX_DATA(FMSOCK_MARK, PORT49_FN1),
591         PINMUX_DATA(PORT49_IRDA_OUT_MARK, PORT49_FN2),
592         PINMUX_DATA(PORT49_IROUT_MARK, PORT49_FN3),
593         PINMUX_DATA(FMSOOLR_MARK, PORT50_FN1),
594         PINMUX_DATA(BBIF2_TSYNC2_MARK, PORT50_FN2),
595         PINMUX_DATA(TPU2TO2_MARK, PORT50_FN3),
596         PINMUX_DATA(IPORT3_MARK, PORT50_FN4),
597         PINMUX_DATA(FMSIOLR_MARK, PORT50_FN5),
598         PINMUX_DATA(FMSOOBT_MARK, PORT51_FN1),
599         PINMUX_DATA(BBIF2_TSCK2_MARK, PORT51_FN2),
600         PINMUX_DATA(TPU2TO3_MARK, PORT51_FN3),
601         PINMUX_DATA(OPORT1_MARK, PORT51_FN4),
602         PINMUX_DATA(FMSIOBT_MARK, PORT51_FN5),
603         PINMUX_DATA(FMSOSLD_MARK, PORT52_FN1),
604         PINMUX_DATA(BBIF2_TXD2_MARK, PORT52_FN2),
605         PINMUX_DATA(OPORT2_MARK, PORT52_FN3),
606         PINMUX_DATA(FMSOILR_MARK, PORT53_FN1),
607         PINMUX_DATA(PORT53_IRDA_IN_MARK, PORT53_FN2),
608         PINMUX_DATA(TPU3TO3_MARK, PORT53_FN3),
609         PINMUX_DATA(OPORT3_MARK, PORT53_FN4),
610         PINMUX_DATA(FMSIILR_MARK, PORT53_FN5),
611         PINMUX_DATA(FMSOIBT_MARK, PORT54_FN1),
612         PINMUX_DATA(PORT54_IRDA_FIRSEL_MARK, PORT54_FN2),
613         PINMUX_DATA(TPU3TO2_MARK, PORT54_FN3),
614         PINMUX_DATA(FMSIIBT_MARK, PORT54_FN4),
615         PINMUX_DATA(FMSISLD_MARK, PORT55_FN1),
616         PINMUX_DATA(MFG0_OUT1_MARK, PORT55_FN2),
617         PINMUX_DATA(TPU0TO0_MARK, PORT55_FN3),
618         PINMUX_DATA(A0_EA0_MARK, PORT57_FN1),
619         PINMUX_DATA(BS_MARK, PORT57_FN2),
620         PINMUX_DATA(A12_EA12_MARK, PORT58_FN1),
621         PINMUX_DATA(PORT58_VIO_CKOR_MARK, PORT58_FN2),
622         PINMUX_DATA(TPU4TO2_MARK, PORT58_FN3),
623         PINMUX_DATA(A13_EA13_MARK, PORT59_FN1),
624         PINMUX_DATA(PORT59_IROUT_MARK, PORT59_FN2),
625         PINMUX_DATA(MFG0_OUT2_MARK, PORT59_FN3),
626         PINMUX_DATA(TPU0TO1_MARK, PORT59_FN4),
627         PINMUX_DATA(A14_EA14_MARK, PORT60_FN1),
628         PINMUX_DATA(PORT60_KEYOUT5_MARK, PORT60_FN2),
629         PINMUX_DATA(A15_EA15_MARK, PORT61_FN1),
630         PINMUX_DATA(PORT61_KEYOUT4_MARK, PORT61_FN2),
631         PINMUX_DATA(A16_EA16_MARK, PORT62_FN1),
632         PINMUX_DATA(PORT62_KEYOUT3_MARK, PORT62_FN2),
633         PINMUX_DATA(MSIOF0_SS1_MARK, PORT62_FN3),
634         PINMUX_DATA(A17_EA17_MARK, PORT63_FN1),
635         PINMUX_DATA(PORT63_KEYOUT2_MARK, PORT63_FN2),
636         PINMUX_DATA(MSIOF0_TSYNC_MARK, PORT63_FN3),
637         PINMUX_DATA(A18_EA18_MARK, PORT64_FN1),
638         PINMUX_DATA(PORT64_KEYOUT1_MARK, PORT64_FN2),
639         PINMUX_DATA(MSIOF0_TSCK_MARK, PORT64_FN3),
640         PINMUX_DATA(A19_EA19_MARK, PORT65_FN1),
641         PINMUX_DATA(PORT65_KEYOUT0_MARK, PORT65_FN2),
642         PINMUX_DATA(MSIOF0_TXD_MARK, PORT65_FN3),
643         PINMUX_DATA(A20_EA20_MARK, PORT66_FN1),
644         PINMUX_DATA(PORT66_KEYIN0_MARK, PORT66_FN2),
645         PINMUX_DATA(MSIOF0_RSCK_MARK, PORT66_FN3),
646         PINMUX_DATA(A21_EA21_MARK, PORT67_FN1),
647         PINMUX_DATA(PORT67_KEYIN1_MARK, PORT67_FN2),
648         PINMUX_DATA(MSIOF0_RSYNC_MARK, PORT67_FN3),
649         PINMUX_DATA(A22_EA22_MARK, PORT68_FN1),
650         PINMUX_DATA(PORT68_KEYIN2_MARK, PORT68_FN2),
651         PINMUX_DATA(MSIOF0_MCK0_MARK, PORT68_FN3),
652         PINMUX_DATA(A23_EA23_MARK, PORT69_FN1),
653         PINMUX_DATA(PORT69_KEYIN3_MARK, PORT69_FN2),
654         PINMUX_DATA(MSIOF0_MCK1_MARK, PORT69_FN3),
655         PINMUX_DATA(A24_EA24_MARK, PORT70_FN1),
656         PINMUX_DATA(PORT70_KEYIN4_MARK, PORT70_FN2),
657         PINMUX_DATA(MSIOF0_RXD_MARK, PORT70_FN3),
658         PINMUX_DATA(A25_EA25_MARK, PORT71_FN1),
659         PINMUX_DATA(PORT71_KEYIN5_MARK, PORT71_FN2),
660         PINMUX_DATA(MSIOF0_SS2_MARK, PORT71_FN3),
661         PINMUX_DATA(A26_MARK, PORT72_FN1),
662         PINMUX_DATA(PORT72_KEYIN6_MARK, PORT72_FN2),
663         PINMUX_DATA(D0_ED0_NAF0_MARK, PORT74_FN1),
664         PINMUX_DATA(D1_ED1_NAF1_MARK, PORT75_FN1),
665         PINMUX_DATA(D2_ED2_NAF2_MARK, PORT76_FN1),
666         PINMUX_DATA(D3_ED3_NAF3_MARK, PORT77_FN1),
667         PINMUX_DATA(D4_ED4_NAF4_MARK, PORT78_FN1),
668         PINMUX_DATA(D5_ED5_NAF5_MARK, PORT79_FN1),
669         PINMUX_DATA(D6_ED6_NAF6_MARK, PORT80_FN1),
670         PINMUX_DATA(D7_ED7_NAF7_MARK, PORT81_FN1),
671         PINMUX_DATA(D8_ED8_NAF8_MARK, PORT82_FN1),
672         PINMUX_DATA(D9_ED9_NAF9_MARK, PORT83_FN1),
673         PINMUX_DATA(D10_ED10_NAF10_MARK, PORT84_FN1),
674         PINMUX_DATA(D11_ED11_NAF11_MARK, PORT85_FN1),
675         PINMUX_DATA(D12_ED12_NAF12_MARK, PORT86_FN1),
676         PINMUX_DATA(D13_ED13_NAF13_MARK, PORT87_FN1),
677         PINMUX_DATA(D14_ED14_NAF14_MARK, PORT88_FN1),
678         PINMUX_DATA(D15_ED15_NAF15_MARK, PORT89_FN1),
679         PINMUX_DATA(CS4_MARK, PORT90_FN1),
680         PINMUX_DATA(CS5A_MARK, PORT91_FN1),
681         PINMUX_DATA(FMSICK_MARK, PORT91_FN2),
682         PINMUX_DATA(CS5B_MARK, PORT92_FN1),
683         PINMUX_DATA(FCE1_MARK, PORT92_FN2),
684
685         /* 55-3 (FN) */
686         PINMUX_DATA(CS6B_MARK, PORT93_FN1),
687         PINMUX_DATA(XCS2_MARK, PORT93_FN2),
688         PINMUX_DATA(CS6A_MARK, PORT93_FN3),
689         PINMUX_DATA(DACK0_MARK, PORT93_FN4),
690         PINMUX_DATA(FCE0_MARK, PORT94_FN1),
691         PINMUX_DATA(WAIT_MARK, PORT95_FN1),
692         PINMUX_DATA(DREQ0_MARK, PORT95_FN2),
693         PINMUX_DATA(RD_XRD_MARK, PORT96_FN1),
694         PINMUX_DATA(WE0_XWR0_FWE_MARK, PORT97_FN1),
695         PINMUX_DATA(WE1_XWR1_MARK, PORT98_FN1),
696         PINMUX_DATA(FRB_MARK, PORT99_FN1),
697         PINMUX_DATA(CKO_MARK, PORT100_FN1),
698         PINMUX_DATA(NBRSTOUT_MARK, PORT101_FN1),
699         PINMUX_DATA(NBRST_MARK, PORT102_FN1),
700         PINMUX_DATA(GPS_EPPSIN_MARK, PORT106_FN1),
701         PINMUX_DATA(LATCHPULSE_MARK, PORT110_FN1),
702         PINMUX_DATA(LTESIGNAL_MARK, PORT111_FN1),
703         PINMUX_DATA(LEGACYSTATE_MARK, PORT112_FN1),
704         PINMUX_DATA(TCKON_MARK, PORT118_FN1),
705         PINMUX_DATA(VIO_VD_MARK, PORT128_FN1),
706         PINMUX_DATA(PORT128_KEYOUT0_MARK, PORT128_FN2),
707         PINMUX_DATA(IPORT0_MARK, PORT128_FN3),
708         PINMUX_DATA(VIO_HD_MARK, PORT129_FN1),
709         PINMUX_DATA(PORT129_KEYOUT1_MARK, PORT129_FN2),
710         PINMUX_DATA(IPORT1_MARK, PORT129_FN3),
711         PINMUX_DATA(VIO_D0_MARK, PORT130_FN1),
712         PINMUX_DATA(PORT130_KEYOUT2_MARK, PORT130_FN2),
713         PINMUX_DATA(PORT130_MSIOF2_RXD_MARK, PORT130_FN3),
714         PINMUX_DATA(VIO_D1_MARK, PORT131_FN1),
715         PINMUX_DATA(PORT131_KEYOUT3_MARK, PORT131_FN2),
716         PINMUX_DATA(PORT131_MSIOF2_SS1_MARK, PORT131_FN3),
717         PINMUX_DATA(VIO_D2_MARK, PORT132_FN1),
718         PINMUX_DATA(PORT132_KEYOUT4_MARK, PORT132_FN2),
719         PINMUX_DATA(PORT132_MSIOF2_SS2_MARK, PORT132_FN3),
720         PINMUX_DATA(VIO_D3_MARK, PORT133_FN1),
721         PINMUX_DATA(PORT133_KEYOUT5_MARK, PORT133_FN2),
722         PINMUX_DATA(PORT133_MSIOF2_TSYNC_MARK, PORT133_FN3),
723         PINMUX_DATA(VIO_D4_MARK, PORT134_FN1),
724         PINMUX_DATA(PORT134_KEYIN0_MARK, PORT134_FN2),
725         PINMUX_DATA(PORT134_MSIOF2_TXD_MARK, PORT134_FN3),
726         PINMUX_DATA(VIO_D5_MARK, PORT135_FN1),
727         PINMUX_DATA(PORT135_KEYIN1_MARK, PORT135_FN2),
728         PINMUX_DATA(PORT135_MSIOF2_TSCK_MARK, PORT135_FN3),
729         PINMUX_DATA(VIO_D6_MARK, PORT136_FN1),
730         PINMUX_DATA(PORT136_KEYIN2_MARK, PORT136_FN2),
731         PINMUX_DATA(VIO_D7_MARK, PORT137_FN1),
732         PINMUX_DATA(PORT137_KEYIN3_MARK, PORT137_FN2),
733         PINMUX_DATA(VIO_D8_MARK, PORT138_FN1),
734         PINMUX_DATA(M9_SLCD_A01_MARK, PORT138_FN2),
735         PINMUX_DATA(PORT138_FSIAOMC_MARK, PORT138_FN3),
736         PINMUX_DATA(VIO_D9_MARK, PORT139_FN1),
737         PINMUX_DATA(M10_SLCD_CK1_MARK, PORT139_FN2),
738         PINMUX_DATA(PORT139_FSIAOLR_MARK, PORT139_FN3),
739         PINMUX_DATA(VIO_D10_MARK, PORT140_FN1),
740         PINMUX_DATA(M11_SLCD_SO1_MARK, PORT140_FN2),
741         PINMUX_DATA(TPU0TO2_MARK, PORT140_FN3),
742         PINMUX_DATA(PORT140_FSIAOBT_MARK, PORT140_FN4),
743         PINMUX_DATA(VIO_D11_MARK, PORT141_FN1),
744         PINMUX_DATA(M12_SLCD_CE1_MARK, PORT141_FN2),
745         PINMUX_DATA(TPU0TO3_MARK, PORT141_FN3),
746         PINMUX_DATA(PORT141_FSIAOSLD_MARK, PORT141_FN4),
747         PINMUX_DATA(VIO_D12_MARK, PORT142_FN1),
748         PINMUX_DATA(M13_BSW_MARK, PORT142_FN2),
749         PINMUX_DATA(PORT142_FSIACK_MARK, PORT142_FN3),
750         PINMUX_DATA(VIO_D13_MARK, PORT143_FN1),
751         PINMUX_DATA(M14_GSW_MARK, PORT143_FN2),
752         PINMUX_DATA(PORT143_FSIAILR_MARK, PORT143_FN3),
753         PINMUX_DATA(VIO_D14_MARK, PORT144_FN1),
754         PINMUX_DATA(M15_RSW_MARK, PORT144_FN2),
755         PINMUX_DATA(PORT144_FSIAIBT_MARK, PORT144_FN3),
756         PINMUX_DATA(VIO_D15_MARK, PORT145_FN1),
757         PINMUX_DATA(TPU1TO3_MARK, PORT145_FN2),
758         PINMUX_DATA(PORT145_FSIAISLD_MARK, PORT145_FN3),
759         PINMUX_DATA(VIO_CLK_MARK, PORT146_FN1),
760         PINMUX_DATA(PORT146_KEYIN4_MARK, PORT146_FN2),
761         PINMUX_DATA(IPORT2_MARK, PORT146_FN3),
762         PINMUX_DATA(VIO_FIELD_MARK, PORT147_FN1),
763         PINMUX_DATA(PORT147_KEYIN5_MARK, PORT147_FN2),
764         PINMUX_DATA(VIO_CKO_MARK, PORT148_FN1),
765         PINMUX_DATA(PORT148_KEYIN6_MARK, PORT148_FN2),
766         PINMUX_DATA(A27_MARK, PORT149_FN1),
767         PINMUX_DATA(RDWR_XWE_MARK, PORT149_FN2),
768         PINMUX_DATA(MFG0_IN1_MARK, PORT149_FN3),
769         PINMUX_DATA(MFG0_IN2_MARK, PORT150_FN1),
770         PINMUX_DATA(TS_SPSYNC3_MARK, PORT151_FN1),
771         PINMUX_DATA(MSIOF2_RSCK_MARK, PORT151_FN2),
772         PINMUX_DATA(TS_SDAT3_MARK, PORT152_FN1),
773         PINMUX_DATA(MSIOF2_RSYNC_MARK, PORT152_FN2),
774         PINMUX_DATA(TPU1TO2_MARK, PORT153_FN1),
775         PINMUX_DATA(TS_SDEN3_MARK, PORT153_FN2),
776         PINMUX_DATA(PORT153_MSIOF2_SS1_MARK, PORT153_FN3),
777         PINMUX_DATA(SOUT3_MARK, PORT154_FN1),
778         PINMUX_DATA(SCIFA2_TXD1_MARK, PORT154_FN2),
779         PINMUX_DATA(MSIOF2_MCK0_MARK, PORT154_FN3),
780         PINMUX_DATA(SIN3_MARK, PORT155_FN1),
781         PINMUX_DATA(SCIFA2_RXD1_MARK, PORT155_FN2),
782         PINMUX_DATA(MSIOF2_MCK1_MARK, PORT155_FN3),
783         PINMUX_DATA(XRTS3_MARK, PORT156_FN1),
784         PINMUX_DATA(SCIFA2_RTS1_MARK, PORT156_FN2),
785         PINMUX_DATA(PORT156_MSIOF2_SS2_MARK, PORT156_FN3),
786         PINMUX_DATA(XCTS3_MARK, PORT157_FN1),
787         PINMUX_DATA(SCIFA2_CTS1_MARK, PORT157_FN2),
788         PINMUX_DATA(PORT157_MSIOF2_RXD_MARK, PORT157_FN3),
789
790         /* 55-4 (FN) */
791         PINMUX_DATA(DINT_MARK, PORT158_FN1),
792         PINMUX_DATA(SCIFA2_SCK1_MARK, PORT158_FN2),
793         PINMUX_DATA(TS_SCK3_MARK, PORT158_FN3),
794         PINMUX_DATA(PORT159_SCIFB_SCK_MARK, PORT159_FN1),
795         PINMUX_DATA(PORT159_SCIFA5_SCK_MARK, PORT159_FN2),
796         PINMUX_DATA(NMI_MARK, PORT159_FN3),
797         PINMUX_DATA(PORT160_SCIFB_TXD_MARK, PORT160_FN1),
798         PINMUX_DATA(PORT160_SCIFA5_TXD_MARK, PORT160_FN2),
799         PINMUX_DATA(SOUT0_MARK, PORT160_FN3),
800         PINMUX_DATA(PORT161_SCIFB_CTS_MARK, PORT161_FN1),
801         PINMUX_DATA(PORT161_SCIFA5_CTS_MARK, PORT161_FN2),
802         PINMUX_DATA(XCTS0_MARK, PORT161_FN3),
803         PINMUX_DATA(MFG3_IN2_MARK, PORT161_FN4),
804         PINMUX_DATA(PORT162_SCIFB_RXD_MARK, PORT162_FN1),
805         PINMUX_DATA(PORT162_SCIFA5_RXD_MARK, PORT162_FN2),
806         PINMUX_DATA(SIN0_MARK, PORT162_FN3),
807         PINMUX_DATA(MFG3_IN1_MARK, PORT162_FN4),
808         PINMUX_DATA(PORT163_SCIFB_RTS_MARK, PORT163_FN1),
809         PINMUX_DATA(PORT163_SCIFA5_RTS_MARK, PORT163_FN2),
810         PINMUX_DATA(XRTS0_MARK, PORT163_FN3),
811         PINMUX_DATA(MFG3_OUT1_MARK, PORT163_FN4),
812         PINMUX_DATA(TPU3TO0_MARK, PORT163_FN5),
813         PINMUX_DATA(LCDD0_MARK, PORT192_FN1),
814         PINMUX_DATA(PORT192_KEYOUT0_MARK, PORT192_FN2),
815         PINMUX_DATA(EXT_CKI_MARK, PORT192_FN3),
816         PINMUX_DATA(LCDD1_MARK, PORT193_FN1),
817         PINMUX_DATA(PORT193_KEYOUT1_MARK, PORT193_FN2),
818         PINMUX_DATA(PORT193_SCIFA5_CTS_MARK, PORT193_FN3),
819         PINMUX_DATA(BBIF2_TSYNC1_MARK, PORT193_FN4),
820         PINMUX_DATA(LCDD2_MARK, PORT194_FN1),
821         PINMUX_DATA(PORT194_KEYOUT2_MARK, PORT194_FN2),
822         PINMUX_DATA(PORT194_SCIFA5_RTS_MARK, PORT194_FN3),
823         PINMUX_DATA(BBIF2_TSCK1_MARK, PORT194_FN4),
824         PINMUX_DATA(LCDD3_MARK, PORT195_FN1),
825         PINMUX_DATA(PORT195_KEYOUT3_MARK, PORT195_FN2),
826         PINMUX_DATA(PORT195_SCIFA5_RXD_MARK, PORT195_FN3),
827         PINMUX_DATA(BBIF2_TXD1_MARK, PORT195_FN4),
828         PINMUX_DATA(LCDD4_MARK, PORT196_FN1),
829         PINMUX_DATA(PORT196_KEYOUT4_MARK, PORT196_FN2),
830         PINMUX_DATA(PORT196_SCIFA5_TXD_MARK, PORT196_FN3),
831         PINMUX_DATA(LCDD5_MARK, PORT197_FN1),
832         PINMUX_DATA(PORT197_KEYOUT5_MARK, PORT197_FN2),
833         PINMUX_DATA(PORT197_SCIFA5_SCK_MARK, PORT197_FN3),
834         PINMUX_DATA(MFG2_OUT2_MARK, PORT197_FN4),
835         PINMUX_DATA(LCDD6_MARK, PORT198_FN1),
836         PINMUX_DATA(LCDD7_MARK, PORT199_FN1),
837         PINMUX_DATA(TPU4TO1_MARK, PORT199_FN2),
838         PINMUX_DATA(MFG4_OUT2_MARK, PORT199_FN3),
839         PINMUX_DATA(LCDD8_MARK, PORT200_FN1),
840         PINMUX_DATA(PORT200_KEYIN0_MARK, PORT200_FN2),
841         PINMUX_DATA(VIO_DR0_MARK, PORT200_FN3),
842         PINMUX_DATA(D16_MARK, PORT200_FN4),
843         PINMUX_DATA(LCDD9_MARK, PORT201_FN1),
844         PINMUX_DATA(PORT201_KEYIN1_MARK, PORT201_FN2),
845         PINMUX_DATA(VIO_DR1_MARK, PORT201_FN3),
846         PINMUX_DATA(D17_MARK, PORT201_FN4),
847         PINMUX_DATA(LCDD10_MARK, PORT202_FN1),
848         PINMUX_DATA(PORT202_KEYIN2_MARK, PORT202_FN2),
849         PINMUX_DATA(VIO_DR2_MARK, PORT202_FN3),
850         PINMUX_DATA(D18_MARK, PORT202_FN4),
851         PINMUX_DATA(LCDD11_MARK, PORT203_FN1),
852         PINMUX_DATA(PORT203_KEYIN3_MARK, PORT203_FN2),
853         PINMUX_DATA(VIO_DR3_MARK, PORT203_FN3),
854         PINMUX_DATA(D19_MARK, PORT203_FN4),
855         PINMUX_DATA(LCDD12_MARK, PORT204_FN1),
856         PINMUX_DATA(PORT204_KEYIN4_MARK, PORT204_FN2),
857         PINMUX_DATA(VIO_DR4_MARK, PORT204_FN3),
858         PINMUX_DATA(D20_MARK, PORT204_FN4),
859         PINMUX_DATA(LCDD13_MARK, PORT205_FN1),
860         PINMUX_DATA(PORT205_KEYIN5_MARK, PORT205_FN2),
861         PINMUX_DATA(VIO_DR5_MARK, PORT205_FN3),
862         PINMUX_DATA(D21_MARK, PORT205_FN4),
863         PINMUX_DATA(LCDD14_MARK, PORT206_FN1),
864         PINMUX_DATA(PORT206_KEYIN6_MARK, PORT206_FN2),
865         PINMUX_DATA(VIO_DR6_MARK, PORT206_FN3),
866         PINMUX_DATA(D22_MARK, PORT206_FN4),
867         PINMUX_DATA(LCDD15_MARK, PORT207_FN1),
868         PINMUX_DATA(PORT207_MSIOF0L_SS1_MARK, PORT207_FN2),
869         PINMUX_DATA(PORT207_KEYOUT0_MARK, PORT207_FN3),
870         PINMUX_DATA(VIO_DR7_MARK, PORT207_FN4),
871         PINMUX_DATA(D23_MARK, PORT207_FN5),
872         PINMUX_DATA(LCDD16_MARK, PORT208_FN1),
873         PINMUX_DATA(PORT208_MSIOF0L_SS2_MARK, PORT208_FN2),
874         PINMUX_DATA(PORT208_KEYOUT1_MARK, PORT208_FN3),
875         PINMUX_DATA(VIO_VDR_MARK, PORT208_FN4),
876         PINMUX_DATA(D24_MARK, PORT208_FN5),
877         PINMUX_DATA(LCDD17_MARK, PORT209_FN1),
878         PINMUX_DATA(PORT209_KEYOUT2_MARK, PORT209_FN2),
879         PINMUX_DATA(VIO_HDR_MARK, PORT209_FN3),
880         PINMUX_DATA(D25_MARK, PORT209_FN4),
881         PINMUX_DATA(LCDD18_MARK, PORT210_FN1),
882         PINMUX_DATA(DREQ2_MARK, PORT210_FN2),
883         PINMUX_DATA(PORT210_MSIOF0L_SS1_MARK, PORT210_FN3),
884         PINMUX_DATA(D26_MARK, PORT210_FN4),
885         PINMUX_DATA(LCDD19_MARK, PORT211_FN1),
886         PINMUX_DATA(PORT211_MSIOF0L_SS2_MARK, PORT211_FN2),
887         PINMUX_DATA(D27_MARK, PORT211_FN3),
888         PINMUX_DATA(LCDD20_MARK, PORT212_FN1),
889         PINMUX_DATA(TS_SPSYNC1_MARK, PORT212_FN2),
890         PINMUX_DATA(MSIOF0L_MCK0_MARK, PORT212_FN3),
891         PINMUX_DATA(D28_MARK, PORT212_FN4),
892         PINMUX_DATA(LCDD21_MARK, PORT213_FN1),
893         PINMUX_DATA(TS_SDAT1_MARK, PORT213_FN2),
894         PINMUX_DATA(MSIOF0L_MCK1_MARK, PORT213_FN3),
895         PINMUX_DATA(D29_MARK, PORT213_FN4),
896         PINMUX_DATA(LCDD22_MARK, PORT214_FN1),
897         PINMUX_DATA(TS_SDEN1_MARK, PORT214_FN2),
898         PINMUX_DATA(MSIOF0L_RSCK_MARK, PORT214_FN3),
899         PINMUX_DATA(D30_MARK, PORT214_FN4),
900         PINMUX_DATA(LCDD23_MARK, PORT215_FN1),
901         PINMUX_DATA(TS_SCK1_MARK, PORT215_FN2),
902         PINMUX_DATA(MSIOF0L_RSYNC_MARK, PORT215_FN3),
903         PINMUX_DATA(D31_MARK, PORT215_FN4),
904         PINMUX_DATA(LCDDCK_MARK, PORT216_FN1),
905         PINMUX_DATA(LCDWR_MARK, PORT216_FN2),
906         PINMUX_DATA(PORT216_KEYOUT3_MARK, PORT216_FN3),
907         PINMUX_DATA(VIO_CLKR_MARK, PORT216_FN4),
908         PINMUX_DATA(LCDRD_MARK, PORT217_FN1),
909         PINMUX_DATA(DACK2_MARK, PORT217_FN2),
910         PINMUX_DATA(MSIOF0L_TSYNC_MARK, PORT217_FN3),
911         PINMUX_DATA(LCDHSYN_MARK, PORT218_FN1),
912         PINMUX_DATA(LCDCS_MARK, PORT218_FN2),
913         PINMUX_DATA(LCDCS2_MARK, PORT218_FN3),
914         PINMUX_DATA(DACK3_MARK, PORT218_FN4),
915         PINMUX_DATA(PORT218_VIO_CKOR_MARK, PORT218_FN5),
916         PINMUX_DATA(PORT218_KEYOUT4_MARK, PORT218_FN6),
917         PINMUX_DATA(LCDDISP_MARK, PORT219_FN1),
918         PINMUX_DATA(LCDRS_MARK, PORT219_FN2),
919         PINMUX_DATA(DREQ3_MARK, PORT219_FN3),
920         PINMUX_DATA(MSIOF0L_TSCK_MARK, PORT219_FN4),
921         PINMUX_DATA(LCDVSYN_MARK, PORT220_FN1),
922         PINMUX_DATA(LCDVSYN2_MARK, PORT220_FN2),
923         PINMUX_DATA(PORT220_KEYOUT5_MARK, PORT220_FN3),
924         PINMUX_DATA(LCDLCLK_MARK, PORT221_FN1),
925         PINMUX_DATA(DREQ1_MARK, PORT221_FN2),
926         PINMUX_DATA(PWEN_MARK, PORT221_FN3),
927         PINMUX_DATA(MSIOF0L_RXD_MARK, PORT221_FN4),
928         PINMUX_DATA(LCDDON_MARK, PORT222_FN1),
929         PINMUX_DATA(LCDDON2_MARK, PORT222_FN2),
930         PINMUX_DATA(DACK1_MARK, PORT222_FN3),
931         PINMUX_DATA(OVCN_MARK, PORT222_FN4),
932         PINMUX_DATA(MSIOF0L_TXD_MARK, PORT222_FN5),
933         PINMUX_DATA(SCIFA1_TXD_MARK, PORT225_FN1),
934         PINMUX_DATA(OVCN2_MARK, PORT225_FN2),
935         PINMUX_DATA(EXTLP_MARK, PORT226_FN1),
936         PINMUX_DATA(SCIFA1_SCK_MARK, PORT226_FN2),
937         PINMUX_DATA(USBTERM_MARK, PORT226_FN3),
938         PINMUX_DATA(PORT226_VIO_CKO2_MARK, PORT226_FN4),
939         PINMUX_DATA(SCIFA1_RTS_MARK, PORT227_FN1),
940         PINMUX_DATA(IDIN_MARK, PORT227_FN2),
941         PINMUX_DATA(SCIFA1_RXD_MARK, PORT228_FN1),
942         PINMUX_DATA(SCIFA1_CTS_MARK, PORT229_FN1),
943         PINMUX_DATA(MFG1_IN1_MARK, PORT229_FN2),
944         PINMUX_DATA(MSIOF1_TXD_MARK, PORT230_FN1),
945         PINMUX_DATA(SCIFA2_TXD2_MARK, PORT230_FN2),
946         PINMUX_DATA(PORT230_FSIAOMC_MARK, PORT230_FN3),
947         PINMUX_DATA(MSIOF1_TSYNC_MARK, PORT231_FN1),
948         PINMUX_DATA(SCIFA2_CTS2_MARK, PORT231_FN2),
949         PINMUX_DATA(PORT231_FSIAOLR_MARK, PORT231_FN3),
950         PINMUX_DATA(MSIOF1_TSCK_MARK, PORT232_FN1),
951         PINMUX_DATA(SCIFA2_SCK2_MARK, PORT232_FN2),
952         PINMUX_DATA(PORT232_FSIAOBT_MARK, PORT232_FN3),
953         PINMUX_DATA(MSIOF1_RXD_MARK, PORT233_FN1),
954         PINMUX_DATA(SCIFA2_RXD2_MARK, PORT233_FN2),
955         PINMUX_DATA(GPS_VCOTRIG_MARK, PORT233_FN3),
956         PINMUX_DATA(PORT233_FSIACK_MARK, PORT233_FN4),
957         PINMUX_DATA(MSIOF1_RSCK_MARK, PORT234_FN1),
958         PINMUX_DATA(SCIFA2_RTS2_MARK, PORT234_FN2),
959         PINMUX_DATA(PORT234_FSIAOSLD_MARK, PORT234_FN3),
960         PINMUX_DATA(MSIOF1_RSYNC_MARK, PORT235_FN1),
961         PINMUX_DATA(OPORT0_MARK, PORT235_FN2),
962         PINMUX_DATA(MFG1_IN2_MARK, PORT235_FN3),
963         PINMUX_DATA(PORT235_FSIAILR_MARK, PORT235_FN4),
964         PINMUX_DATA(MSIOF1_MCK0_MARK, PORT236_FN1),
965         PINMUX_DATA(I2C_SDA2_MARK, PORT236_FN2),
966         PINMUX_DATA(PORT236_FSIAIBT_MARK, PORT236_FN3),
967         PINMUX_DATA(MSIOF1_MCK1_MARK, PORT237_FN1),
968         PINMUX_DATA(I2C_SCL2_MARK, PORT237_FN2),
969         PINMUX_DATA(PORT237_FSIAISLD_MARK, PORT237_FN3),
970         PINMUX_DATA(MSIOF1_SS1_MARK, PORT238_FN1),
971         PINMUX_DATA(EDBGREQ3_MARK, PORT238_FN2),
972
973         /* 55-5 (FN) */
974         PINMUX_DATA(MSIOF1_SS2_MARK, PORT239_FN1),
975         PINMUX_DATA(SCIFA6_TXD_MARK, PORT240_FN1),
976         PINMUX_DATA(PORT241_IRDA_OUT_MARK, PORT241_FN1),
977         PINMUX_DATA(PORT241_IROUT_MARK, PORT241_FN2),
978         PINMUX_DATA(MFG4_OUT1_MARK, PORT241_FN3),
979         PINMUX_DATA(TPU4TO0_MARK, PORT241_FN4),
980         PINMUX_DATA(PORT242_IRDA_IN_MARK, PORT242_FN1),
981         PINMUX_DATA(MFG4_IN2_MARK, PORT242_FN2),
982         PINMUX_DATA(PORT243_IRDA_FIRSEL_MARK, PORT243_FN1),
983         PINMUX_DATA(PORT243_VIO_CKO2_MARK, PORT243_FN2),
984         PINMUX_DATA(PORT244_SCIFA5_CTS_MARK, PORT244_FN1),
985         PINMUX_DATA(MFG2_IN1_MARK, PORT244_FN2),
986         PINMUX_DATA(PORT244_SCIFB_CTS_MARK, PORT244_FN3),
987         PINMUX_DATA(PORT245_SCIFA5_RTS_MARK, PORT245_FN1),
988         PINMUX_DATA(MFG2_IN2_MARK, PORT245_FN2),
989         PINMUX_DATA(PORT245_SCIFB_RTS_MARK, PORT245_FN3),
990         PINMUX_DATA(PORT246_SCIFA5_RXD_MARK, PORT246_FN1),
991         PINMUX_DATA(MFG1_OUT1_MARK, PORT246_FN2),
992         PINMUX_DATA(PORT246_SCIFB_RXD_MARK, PORT246_FN3),
993         PINMUX_DATA(TPU1TO0_MARK, PORT246_FN4),
994         PINMUX_DATA(PORT247_SCIFA5_TXD_MARK, PORT247_FN1),
995         PINMUX_DATA(MFG3_OUT2_MARK, PORT247_FN2),
996         PINMUX_DATA(PORT247_SCIFB_TXD_MARK, PORT247_FN3),
997         PINMUX_DATA(TPU3TO1_MARK, PORT247_FN4),
998         PINMUX_DATA(PORT248_SCIFA5_SCK_MARK, PORT248_FN1),
999         PINMUX_DATA(MFG2_OUT1_MARK, PORT248_FN2),
1000         PINMUX_DATA(PORT248_SCIFB_SCK_MARK, PORT248_FN3),
1001         PINMUX_DATA(TPU2TO0_MARK, PORT248_FN4),
1002         PINMUX_DATA(PORT249_IROUT_MARK, PORT249_FN1),
1003         PINMUX_DATA(MFG4_IN1_MARK, PORT249_FN2),
1004         PINMUX_DATA(SDHICLK0_MARK, PORT250_FN1),
1005         PINMUX_DATA(TCK2_SWCLK_MC0_MARK, PORT250_FN2),
1006         PINMUX_DATA(SDHICD0_MARK, PORT251_FN1),
1007         PINMUX_DATA(SDHID0_0_MARK, PORT252_FN1),
1008         PINMUX_DATA(TMS2_SWDIO_MC0_MARK, PORT252_FN2),
1009         PINMUX_DATA(SDHID0_1_MARK, PORT253_FN1),
1010         PINMUX_DATA(TDO2_SWO0_MC0_MARK, PORT253_FN2),
1011         PINMUX_DATA(SDHID0_2_MARK, PORT254_FN1),
1012         PINMUX_DATA(TDI2_MARK, PORT254_FN2),
1013         PINMUX_DATA(SDHID0_3_MARK, PORT255_FN1),
1014         PINMUX_DATA(RTCK2_SWO1_MC0_MARK, PORT255_FN2),
1015         PINMUX_DATA(SDHICMD0_MARK, PORT256_FN1),
1016         PINMUX_DATA(TRST2_MARK, PORT256_FN2),
1017         PINMUX_DATA(SDHIWP0_MARK, PORT257_FN1),
1018         PINMUX_DATA(EDBGREQ2_MARK, PORT257_FN2),
1019         PINMUX_DATA(SDHICLK1_MARK, PORT258_FN1),
1020         PINMUX_DATA(TCK3_SWCLK_MC1_MARK, PORT258_FN2),
1021         PINMUX_DATA(SDHID1_0_MARK, PORT259_FN1),
1022         PINMUX_DATA(M11_SLCD_SO2_MARK, PORT259_FN2),
1023         PINMUX_DATA(TS_SPSYNC2_MARK, PORT259_FN3),
1024         PINMUX_DATA(TMS3_SWDIO_MC1_MARK, PORT259_FN4),
1025         PINMUX_DATA(SDHID1_1_MARK, PORT260_FN1),
1026         PINMUX_DATA(M9_SLCD_A02_MARK, PORT260_FN2),
1027         PINMUX_DATA(TS_SDAT2_MARK, PORT260_FN3),
1028         PINMUX_DATA(TDO3_SWO0_MC1_MARK, PORT260_FN4),
1029         PINMUX_DATA(SDHID1_2_MARK, PORT261_FN1),
1030         PINMUX_DATA(M10_SLCD_CK2_MARK, PORT261_FN2),
1031         PINMUX_DATA(TS_SDEN2_MARK, PORT261_FN3),
1032         PINMUX_DATA(TDI3_MARK, PORT261_FN4),
1033         PINMUX_DATA(SDHID1_3_MARK, PORT262_FN1),
1034         PINMUX_DATA(M12_SLCD_CE2_MARK, PORT262_FN2),
1035         PINMUX_DATA(TS_SCK2_MARK, PORT262_FN3),
1036         PINMUX_DATA(RTCK3_SWO1_MC1_MARK, PORT262_FN4),
1037         PINMUX_DATA(SDHICMD1_MARK, PORT263_FN1),
1038         PINMUX_DATA(TRST3_MARK, PORT263_FN2),
1039         PINMUX_DATA(RESETOUTS_MARK, PORT264_FN1),
1040 };
1041
1042 #define _GPIO_PORT(pfx, sfx) PINMUX_GPIO(GPIO_PORT##pfx, PORT##pfx##_DATA)
1043 #define GPIO_PORT_265() _265(_GPIO_PORT, , unused)
1044 #define GPIO_FN(str) PINMUX_GPIO(GPIO_FN_##str, str##_MARK)
1045
1046 static struct pinmux_gpio pinmux_gpios[] = {
1047         /* 55-1 -> 55-5 (GPIO) */
1048         GPIO_PORT_265(),
1049
1050         /* Special Pull-up / Pull-down Functions */
1051         GPIO_FN(PORT66_KEYIN0_PU), GPIO_FN(PORT67_KEYIN1_PU),
1052         GPIO_FN(PORT68_KEYIN2_PU), GPIO_FN(PORT69_KEYIN3_PU),
1053         GPIO_FN(PORT70_KEYIN4_PU), GPIO_FN(PORT71_KEYIN5_PU),
1054         GPIO_FN(PORT72_KEYIN6_PU),
1055
1056         /* 55-1 (FN) */
1057         GPIO_FN(VBUS_0),
1058         GPIO_FN(CPORT0),
1059         GPIO_FN(CPORT1),
1060         GPIO_FN(CPORT2),
1061         GPIO_FN(CPORT3),
1062         GPIO_FN(CPORT4),
1063         GPIO_FN(CPORT5),
1064         GPIO_FN(CPORT6),
1065         GPIO_FN(CPORT7),
1066         GPIO_FN(CPORT8),
1067         GPIO_FN(CPORT9),
1068         GPIO_FN(CPORT10),
1069         GPIO_FN(CPORT11), GPIO_FN(SIN2),
1070         GPIO_FN(CPORT12), GPIO_FN(XCTS2),
1071         GPIO_FN(CPORT13), GPIO_FN(RFSPO4),
1072         GPIO_FN(CPORT14), GPIO_FN(RFSPO5),
1073         GPIO_FN(CPORT15), GPIO_FN(SCIFA0_SCK), GPIO_FN(GPS_AGC2),
1074         GPIO_FN(CPORT16), GPIO_FN(SCIFA0_TXD), GPIO_FN(GPS_AGC3),
1075         GPIO_FN(CPORT17_IC_OE), GPIO_FN(SOUT2),
1076         GPIO_FN(CPORT18), GPIO_FN(XRTS2), GPIO_FN(PORT19_VIO_CKO2),
1077         GPIO_FN(CPORT19_MPORT1),
1078         GPIO_FN(CPORT20), GPIO_FN(RFSPO6),
1079         GPIO_FN(CPORT21), GPIO_FN(STATUS0),
1080         GPIO_FN(CPORT22), GPIO_FN(STATUS1),
1081         GPIO_FN(CPORT23), GPIO_FN(STATUS2), GPIO_FN(RFSPO7),
1082         GPIO_FN(B_SYNLD1),
1083         GPIO_FN(B_SYNLD2), GPIO_FN(SYSENMSK),
1084         GPIO_FN(XMAINPS),
1085         GPIO_FN(XDIVPS),
1086         GPIO_FN(XIDRST),
1087         GPIO_FN(IDCLK), GPIO_FN(IC_DP),
1088         GPIO_FN(IDIO), GPIO_FN(IC_DM),
1089         GPIO_FN(SOUT1), GPIO_FN(SCIFA4_TXD), GPIO_FN(M02_BERDAT),
1090         GPIO_FN(SIN1), GPIO_FN(SCIFA4_RXD), GPIO_FN(XWUP),
1091         GPIO_FN(XRTS1), GPIO_FN(SCIFA4_RTS), GPIO_FN(M03_BERCLK),
1092         GPIO_FN(XCTS1), GPIO_FN(SCIFA4_CTS),
1093         GPIO_FN(PCMCLKO),
1094         GPIO_FN(SYNC8KO),
1095
1096         /* 55-2 (FN) */
1097         GPIO_FN(DNPCM_A),
1098         GPIO_FN(UPPCM_A),
1099         GPIO_FN(VACK),
1100         GPIO_FN(XTALB1L),
1101         GPIO_FN(GPS_AGC1), GPIO_FN(SCIFA0_RTS),
1102         GPIO_FN(GPS_AGC4), GPIO_FN(SCIFA0_RXD),
1103         GPIO_FN(GPS_PWRDOWN), GPIO_FN(SCIFA0_CTS),
1104         GPIO_FN(GPS_IM),
1105         GPIO_FN(GPS_IS),
1106         GPIO_FN(GPS_QM),
1107         GPIO_FN(GPS_QS),
1108         GPIO_FN(FMSOCK), GPIO_FN(PORT49_IRDA_OUT), GPIO_FN(PORT49_IROUT),
1109         GPIO_FN(FMSOOLR), GPIO_FN(BBIF2_TSYNC2), GPIO_FN(TPU2TO2),
1110         GPIO_FN(IPORT3), GPIO_FN(FMSIOLR),
1111         GPIO_FN(FMSOOBT), GPIO_FN(BBIF2_TSCK2), GPIO_FN(TPU2TO3),
1112         GPIO_FN(OPORT1), GPIO_FN(FMSIOBT),
1113         GPIO_FN(FMSOSLD), GPIO_FN(BBIF2_TXD2), GPIO_FN(OPORT2),
1114         GPIO_FN(FMSOILR), GPIO_FN(PORT53_IRDA_IN), GPIO_FN(TPU3TO3),
1115         GPIO_FN(OPORT3), GPIO_FN(FMSIILR),
1116         GPIO_FN(FMSOIBT), GPIO_FN(PORT54_IRDA_FIRSEL), GPIO_FN(TPU3TO2),
1117         GPIO_FN(FMSIIBT),
1118         GPIO_FN(FMSISLD), GPIO_FN(MFG0_OUT1), GPIO_FN(TPU0TO0),
1119         GPIO_FN(A0_EA0), GPIO_FN(BS),
1120         GPIO_FN(A12_EA12), GPIO_FN(PORT58_VIO_CKOR), GPIO_FN(TPU4TO2),
1121         GPIO_FN(A13_EA13), GPIO_FN(PORT59_IROUT), GPIO_FN(MFG0_OUT2),
1122         GPIO_FN(TPU0TO1),
1123         GPIO_FN(A14_EA14), GPIO_FN(PORT60_KEYOUT5),
1124         GPIO_FN(A15_EA15), GPIO_FN(PORT61_KEYOUT4),
1125         GPIO_FN(A16_EA16), GPIO_FN(PORT62_KEYOUT3), GPIO_FN(MSIOF0_SS1),
1126         GPIO_FN(A17_EA17), GPIO_FN(PORT63_KEYOUT2), GPIO_FN(MSIOF0_TSYNC),
1127         GPIO_FN(A18_EA18), GPIO_FN(PORT64_KEYOUT1), GPIO_FN(MSIOF0_TSCK),
1128         GPIO_FN(A19_EA19), GPIO_FN(PORT65_KEYOUT0), GPIO_FN(MSIOF0_TXD),
1129         GPIO_FN(A20_EA20), GPIO_FN(PORT66_KEYIN0), GPIO_FN(MSIOF0_RSCK),
1130         GPIO_FN(A21_EA21), GPIO_FN(PORT67_KEYIN1), GPIO_FN(MSIOF0_RSYNC),
1131         GPIO_FN(A22_EA22), GPIO_FN(PORT68_KEYIN2), GPIO_FN(MSIOF0_MCK0),
1132         GPIO_FN(A23_EA23), GPIO_FN(PORT69_KEYIN3), GPIO_FN(MSIOF0_MCK1),
1133         GPIO_FN(A24_EA24), GPIO_FN(PORT70_KEYIN4), GPIO_FN(MSIOF0_RXD),
1134         GPIO_FN(A25_EA25), GPIO_FN(PORT71_KEYIN5), GPIO_FN(MSIOF0_SS2),
1135         GPIO_FN(A26), GPIO_FN(PORT72_KEYIN6),
1136         GPIO_FN(D0_ED0_NAF0),
1137         GPIO_FN(D1_ED1_NAF1),
1138         GPIO_FN(D2_ED2_NAF2),
1139         GPIO_FN(D3_ED3_NAF3),
1140         GPIO_FN(D4_ED4_NAF4),
1141         GPIO_FN(D5_ED5_NAF5),
1142         GPIO_FN(D6_ED6_NAF6),
1143         GPIO_FN(D7_ED7_NAF7),
1144         GPIO_FN(D8_ED8_NAF8),
1145         GPIO_FN(D9_ED9_NAF9),
1146         GPIO_FN(D10_ED10_NAF10),
1147         GPIO_FN(D11_ED11_NAF11),
1148         GPIO_FN(D12_ED12_NAF12),
1149         GPIO_FN(D13_ED13_NAF13),
1150         GPIO_FN(D14_ED14_NAF14),
1151         GPIO_FN(D15_ED15_NAF15),
1152         GPIO_FN(CS4),
1153         GPIO_FN(CS5A), GPIO_FN(FMSICK),
1154
1155         /* 55-3 (FN) */
1156         GPIO_FN(CS5B), GPIO_FN(FCE1),
1157         GPIO_FN(CS6B), GPIO_FN(XCS2), GPIO_FN(CS6A), GPIO_FN(DACK0),
1158         GPIO_FN(FCE0),
1159         GPIO_FN(WAIT), GPIO_FN(DREQ0),
1160         GPIO_FN(RD_XRD),
1161         GPIO_FN(WE0_XWR0_FWE),
1162         GPIO_FN(WE1_XWR1),
1163         GPIO_FN(FRB),
1164         GPIO_FN(CKO),
1165         GPIO_FN(NBRSTOUT),
1166         GPIO_FN(NBRST),
1167         GPIO_FN(GPS_EPPSIN),
1168         GPIO_FN(LATCHPULSE),
1169         GPIO_FN(LTESIGNAL),
1170         GPIO_FN(LEGACYSTATE),
1171         GPIO_FN(TCKON),
1172         GPIO_FN(VIO_VD), GPIO_FN(PORT128_KEYOUT0), GPIO_FN(IPORT0),
1173         GPIO_FN(VIO_HD), GPIO_FN(PORT129_KEYOUT1), GPIO_FN(IPORT1),
1174         GPIO_FN(VIO_D0), GPIO_FN(PORT130_KEYOUT2), GPIO_FN(PORT130_MSIOF2_RXD),
1175         GPIO_FN(VIO_D1), GPIO_FN(PORT131_KEYOUT3), GPIO_FN(PORT131_MSIOF2_SS1),
1176         GPIO_FN(VIO_D2), GPIO_FN(PORT132_KEYOUT4), GPIO_FN(PORT132_MSIOF2_SS2),
1177         GPIO_FN(VIO_D3), GPIO_FN(PORT133_KEYOUT5),
1178         GPIO_FN(PORT133_MSIOF2_TSYNC),
1179         GPIO_FN(VIO_D4), GPIO_FN(PORT134_KEYIN0), GPIO_FN(PORT134_MSIOF2_TXD),
1180         GPIO_FN(VIO_D5), GPIO_FN(PORT135_KEYIN1), GPIO_FN(PORT135_MSIOF2_TSCK),
1181         GPIO_FN(VIO_D6), GPIO_FN(PORT136_KEYIN2),
1182         GPIO_FN(VIO_D7), GPIO_FN(PORT137_KEYIN3),
1183         GPIO_FN(VIO_D8), GPIO_FN(M9_SLCD_A01), GPIO_FN(PORT138_FSIAOMC),
1184         GPIO_FN(VIO_D9), GPIO_FN(M10_SLCD_CK1), GPIO_FN(PORT139_FSIAOLR),
1185         GPIO_FN(VIO_D10), GPIO_FN(M11_SLCD_SO1), GPIO_FN(TPU0TO2),
1186         GPIO_FN(PORT140_FSIAOBT),
1187         GPIO_FN(VIO_D11), GPIO_FN(M12_SLCD_CE1), GPIO_FN(TPU0TO3),
1188         GPIO_FN(PORT141_FSIAOSLD),
1189         GPIO_FN(VIO_D12), GPIO_FN(M13_BSW), GPIO_FN(PORT142_FSIACK),
1190         GPIO_FN(VIO_D13), GPIO_FN(M14_GSW), GPIO_FN(PORT143_FSIAILR),
1191         GPIO_FN(VIO_D14), GPIO_FN(M15_RSW), GPIO_FN(PORT144_FSIAIBT),
1192         GPIO_FN(VIO_D15), GPIO_FN(TPU1TO3), GPIO_FN(PORT145_FSIAISLD),
1193         GPIO_FN(VIO_CLK), GPIO_FN(PORT146_KEYIN4), GPIO_FN(IPORT2),
1194         GPIO_FN(VIO_FIELD), GPIO_FN(PORT147_KEYIN5),
1195         GPIO_FN(VIO_CKO), GPIO_FN(PORT148_KEYIN6),
1196         GPIO_FN(A27), GPIO_FN(RDWR_XWE), GPIO_FN(MFG0_IN1),
1197         GPIO_FN(MFG0_IN2),
1198         GPIO_FN(TS_SPSYNC3), GPIO_FN(MSIOF2_RSCK),
1199         GPIO_FN(TS_SDAT3), GPIO_FN(MSIOF2_RSYNC),
1200         GPIO_FN(TPU1TO2), GPIO_FN(TS_SDEN3), GPIO_FN(PORT153_MSIOF2_SS1),
1201         GPIO_FN(SOUT3), GPIO_FN(SCIFA2_TXD1), GPIO_FN(MSIOF2_MCK0),
1202         GPIO_FN(SIN3), GPIO_FN(SCIFA2_RXD1), GPIO_FN(MSIOF2_MCK1),
1203         GPIO_FN(XRTS3), GPIO_FN(SCIFA2_RTS1), GPIO_FN(PORT156_MSIOF2_SS2),
1204         GPIO_FN(XCTS3), GPIO_FN(SCIFA2_CTS1), GPIO_FN(PORT157_MSIOF2_RXD),
1205
1206         /* 55-4 (FN) */
1207         GPIO_FN(DINT), GPIO_FN(SCIFA2_SCK1), GPIO_FN(TS_SCK3),
1208         GPIO_FN(PORT159_SCIFB_SCK), GPIO_FN(PORT159_SCIFA5_SCK), GPIO_FN(NMI),
1209         GPIO_FN(PORT160_SCIFB_TXD), GPIO_FN(PORT160_SCIFA5_TXD), GPIO_FN(SOUT0),
1210         GPIO_FN(PORT161_SCIFB_CTS), GPIO_FN(PORT161_SCIFA5_CTS), GPIO_FN(XCTS0),
1211         GPIO_FN(MFG3_IN2),
1212         GPIO_FN(PORT162_SCIFB_RXD), GPIO_FN(PORT162_SCIFA5_RXD), GPIO_FN(SIN0),
1213         GPIO_FN(MFG3_IN1),
1214         GPIO_FN(PORT163_SCIFB_RTS), GPIO_FN(PORT163_SCIFA5_RTS), GPIO_FN(XRTS0),
1215         GPIO_FN(MFG3_OUT1), GPIO_FN(TPU3TO0),
1216         GPIO_FN(LCDD0), GPIO_FN(PORT192_KEYOUT0), GPIO_FN(EXT_CKI),
1217         GPIO_FN(LCDD1), GPIO_FN(PORT193_KEYOUT1), GPIO_FN(PORT193_SCIFA5_CTS),
1218         GPIO_FN(BBIF2_TSYNC1),
1219         GPIO_FN(LCDD2), GPIO_FN(PORT194_KEYOUT2), GPIO_FN(PORT194_SCIFA5_RTS),
1220         GPIO_FN(BBIF2_TSCK1),
1221         GPIO_FN(LCDD3), GPIO_FN(PORT195_KEYOUT3), GPIO_FN(PORT195_SCIFA5_RXD),
1222         GPIO_FN(BBIF2_TXD1),
1223         GPIO_FN(LCDD4), GPIO_FN(PORT196_KEYOUT4), GPIO_FN(PORT196_SCIFA5_TXD),
1224         GPIO_FN(LCDD5), GPIO_FN(PORT197_KEYOUT5), GPIO_FN(PORT197_SCIFA5_SCK),
1225         GPIO_FN(MFG2_OUT2),
1226         GPIO_FN(LCDD6),
1227         GPIO_FN(LCDD7), GPIO_FN(TPU4TO1), GPIO_FN(MFG4_OUT2),
1228         GPIO_FN(LCDD8), GPIO_FN(PORT200_KEYIN0), GPIO_FN(VIO_DR0),
1229         GPIO_FN(D16),
1230         GPIO_FN(LCDD9), GPIO_FN(PORT201_KEYIN1), GPIO_FN(VIO_DR1),
1231         GPIO_FN(D17),
1232         GPIO_FN(LCDD10), GPIO_FN(PORT202_KEYIN2), GPIO_FN(VIO_DR2),
1233         GPIO_FN(D18),
1234         GPIO_FN(LCDD11), GPIO_FN(PORT203_KEYIN3), GPIO_FN(VIO_DR3),
1235         GPIO_FN(D19),
1236         GPIO_FN(LCDD12), GPIO_FN(PORT204_KEYIN4), GPIO_FN(VIO_DR4),
1237         GPIO_FN(D20),
1238         GPIO_FN(LCDD13), GPIO_FN(PORT205_KEYIN5), GPIO_FN(VIO_DR5),
1239         GPIO_FN(D21),
1240         GPIO_FN(LCDD14), GPIO_FN(PORT206_KEYIN6), GPIO_FN(VIO_DR6),
1241         GPIO_FN(D22),
1242         GPIO_FN(LCDD15), GPIO_FN(PORT207_MSIOF0L_SS1), GPIO_FN(PORT207_KEYOUT0),
1243         GPIO_FN(VIO_DR7), GPIO_FN(D23),
1244         GPIO_FN(LCDD16), GPIO_FN(PORT208_MSIOF0L_SS2), GPIO_FN(PORT208_KEYOUT1),
1245         GPIO_FN(VIO_VDR), GPIO_FN(D24),
1246         GPIO_FN(LCDD17), GPIO_FN(PORT209_KEYOUT2), GPIO_FN(VIO_HDR),
1247         GPIO_FN(D25),
1248         GPIO_FN(LCDD18), GPIO_FN(DREQ2), GPIO_FN(PORT210_MSIOF0L_SS1),
1249         GPIO_FN(D26),
1250         GPIO_FN(LCDD19), GPIO_FN(PORT211_MSIOF0L_SS2), GPIO_FN(D27),
1251         GPIO_FN(LCDD20), GPIO_FN(TS_SPSYNC1), GPIO_FN(MSIOF0L_MCK0),
1252         GPIO_FN(D28),
1253         GPIO_FN(LCDD21), GPIO_FN(TS_SDAT1), GPIO_FN(MSIOF0L_MCK1),
1254         GPIO_FN(D29),
1255         GPIO_FN(LCDD22), GPIO_FN(TS_SDEN1), GPIO_FN(MSIOF0L_RSCK),
1256         GPIO_FN(D30),
1257         GPIO_FN(LCDD23), GPIO_FN(TS_SCK1), GPIO_FN(MSIOF0L_RSYNC),
1258         GPIO_FN(D31),
1259         GPIO_FN(LCDDCK), GPIO_FN(LCDWR), GPIO_FN(PORT216_KEYOUT3),
1260         GPIO_FN(VIO_CLKR),
1261         GPIO_FN(LCDRD), GPIO_FN(DACK2), GPIO_FN(MSIOF0L_TSYNC),
1262         GPIO_FN(LCDHSYN), GPIO_FN(LCDCS), GPIO_FN(LCDCS2), GPIO_FN(DACK3),
1263         GPIO_FN(PORT218_VIO_CKOR), GPIO_FN(PORT218_KEYOUT4),
1264         GPIO_FN(LCDDISP), GPIO_FN(LCDRS), GPIO_FN(DREQ3), GPIO_FN(MSIOF0L_TSCK),
1265         GPIO_FN(LCDVSYN), GPIO_FN(LCDVSYN2), GPIO_FN(PORT220_KEYOUT5),
1266         GPIO_FN(LCDLCLK), GPIO_FN(DREQ1), GPIO_FN(PWEN), GPIO_FN(MSIOF0L_RXD),
1267         GPIO_FN(LCDDON), GPIO_FN(LCDDON2), GPIO_FN(DACK1), GPIO_FN(OVCN),
1268         GPIO_FN(MSIOF0L_TXD),
1269         GPIO_FN(SCIFA1_TXD), GPIO_FN(OVCN2),
1270         GPIO_FN(EXTLP), GPIO_FN(SCIFA1_SCK), GPIO_FN(USBTERM),
1271         GPIO_FN(PORT226_VIO_CKO2),
1272         GPIO_FN(SCIFA1_RTS), GPIO_FN(IDIN),
1273         GPIO_FN(SCIFA1_RXD),
1274         GPIO_FN(SCIFA1_CTS), GPIO_FN(MFG1_IN1),
1275         GPIO_FN(MSIOF1_TXD), GPIO_FN(SCIFA2_TXD2), GPIO_FN(PORT230_FSIAOMC),
1276         GPIO_FN(MSIOF1_TSYNC), GPIO_FN(SCIFA2_CTS2), GPIO_FN(PORT231_FSIAOLR),
1277         GPIO_FN(MSIOF1_TSCK), GPIO_FN(SCIFA2_SCK2), GPIO_FN(PORT232_FSIAOBT),
1278         GPIO_FN(MSIOF1_RXD), GPIO_FN(SCIFA2_RXD2), GPIO_FN(GPS_VCOTRIG),
1279         GPIO_FN(PORT233_FSIACK),
1280         GPIO_FN(MSIOF1_RSCK), GPIO_FN(SCIFA2_RTS2), GPIO_FN(PORT234_FSIAOSLD),
1281         GPIO_FN(MSIOF1_RSYNC), GPIO_FN(OPORT0), GPIO_FN(MFG1_IN2),
1282         GPIO_FN(PORT235_FSIAILR),
1283         GPIO_FN(MSIOF1_MCK0), GPIO_FN(I2C_SDA2), GPIO_FN(PORT236_FSIAIBT),
1284         GPIO_FN(MSIOF1_MCK1), GPIO_FN(I2C_SCL2), GPIO_FN(PORT237_FSIAISLD),
1285         GPIO_FN(MSIOF1_SS1), GPIO_FN(EDBGREQ3),
1286
1287         /* 55-5 (FN) */
1288         GPIO_FN(MSIOF1_SS2),
1289         GPIO_FN(SCIFA6_TXD),
1290         GPIO_FN(PORT241_IRDA_OUT), GPIO_FN(PORT241_IROUT), GPIO_FN(MFG4_OUT1),
1291         GPIO_FN(TPU4TO0),
1292         GPIO_FN(PORT242_IRDA_IN), GPIO_FN(MFG4_IN2),
1293         GPIO_FN(PORT243_IRDA_FIRSEL), GPIO_FN(PORT243_VIO_CKO2),
1294         GPIO_FN(PORT244_SCIFA5_CTS), GPIO_FN(MFG2_IN1),
1295         GPIO_FN(PORT244_SCIFB_CTS),
1296         GPIO_FN(PORT245_SCIFA5_RTS), GPIO_FN(MFG2_IN2),
1297         GPIO_FN(PORT245_SCIFB_RTS),
1298         GPIO_FN(PORT246_SCIFA5_RXD), GPIO_FN(MFG1_OUT1),
1299         GPIO_FN(PORT246_SCIFB_RXD), GPIO_FN(TPU1TO0),
1300         GPIO_FN(PORT247_SCIFA5_TXD), GPIO_FN(MFG3_OUT2),
1301         GPIO_FN(PORT247_SCIFB_TXD), GPIO_FN(TPU3TO1),
1302         GPIO_FN(PORT248_SCIFA5_SCK), GPIO_FN(MFG2_OUT1),
1303         GPIO_FN(PORT248_SCIFB_SCK), GPIO_FN(TPU2TO0),
1304         GPIO_FN(PORT249_IROUT), GPIO_FN(MFG4_IN1),
1305         GPIO_FN(SDHICLK0), GPIO_FN(TCK2_SWCLK_MC0),
1306         GPIO_FN(SDHICD0),
1307         GPIO_FN(SDHID0_0), GPIO_FN(TMS2_SWDIO_MC0),
1308         GPIO_FN(SDHID0_1), GPIO_FN(TDO2_SWO0_MC0),
1309         GPIO_FN(SDHID0_2), GPIO_FN(TDI2),
1310         GPIO_FN(SDHID0_3), GPIO_FN(RTCK2_SWO1_MC0),
1311         GPIO_FN(SDHICMD0), GPIO_FN(TRST2),
1312         GPIO_FN(SDHIWP0), GPIO_FN(EDBGREQ2),
1313         GPIO_FN(SDHICLK1), GPIO_FN(TCK3_SWCLK_MC1),
1314         GPIO_FN(SDHID1_0), GPIO_FN(M11_SLCD_SO2), GPIO_FN(TS_SPSYNC2),
1315         GPIO_FN(TMS3_SWDIO_MC1),
1316         GPIO_FN(SDHID1_1), GPIO_FN(M9_SLCD_A02), GPIO_FN(TS_SDAT2),
1317         GPIO_FN(TDO3_SWO0_MC1),
1318         GPIO_FN(SDHID1_2), GPIO_FN(M10_SLCD_CK2), GPIO_FN(TS_SDEN2),
1319         GPIO_FN(TDI3),
1320         GPIO_FN(SDHID1_3), GPIO_FN(M12_SLCD_CE2), GPIO_FN(TS_SCK2),
1321         GPIO_FN(RTCK3_SWO1_MC1),
1322         GPIO_FN(SDHICMD1), GPIO_FN(TRST3),
1323         GPIO_FN(RESETOUTS),
1324 };
1325
1326 /* helper for top 4 bits in PORTnCR */
1327 #define PCRH(in, in_pd, in_pu, out)     \
1328         0, (out), (in), 0,      \
1329                 0, 0, 0, 0,     \
1330                 0, 0, (in_pd), 0,       \
1331                 0, 0, (in_pu), 0
1332
1333 #define PORTCR(nr, reg) \
1334         { PINMUX_CFG_REG("PORT" nr "CR", reg, 8, 4) {   \
1335                         PCRH(PORT##nr##_IN, PORT##nr##_IN_PD,   \
1336                                  PORT##nr##_IN_PU, PORT##nr##_OUT),     \
1337                                 PORT##nr##_FN0, PORT##nr##_FN1, \
1338                                 PORT##nr##_FN2, PORT##nr##_FN3, \
1339                                 PORT##nr##_FN4, PORT##nr##_FN5, \
1340                                 PORT##nr##_FN6, PORT##nr##_FN7 }        \
1341         }
1342
1343 static struct pinmux_cfg_reg pinmux_config_regs[] = {
1344         PORTCR(0, 0xe6050000), /* PORT0CR */
1345         PORTCR(1, 0xe6050001), /* PORT1CR */
1346         PORTCR(2, 0xe6050002), /* PORT2CR */
1347         PORTCR(3, 0xe6050003), /* PORT3CR */
1348         PORTCR(4, 0xe6050004), /* PORT4CR */
1349         PORTCR(5, 0xe6050005), /* PORT5CR */
1350         PORTCR(6, 0xe6050006), /* PORT6CR */
1351         PORTCR(7, 0xe6050007), /* PORT7CR */
1352         PORTCR(8, 0xe6050008), /* PORT8CR */
1353         PORTCR(9, 0xe6050009), /* PORT9CR */
1354
1355         PORTCR(10, 0xe605000a), /* PORT10CR */
1356         PORTCR(11, 0xe605000b), /* PORT11CR */
1357         PORTCR(12, 0xe605000c), /* PORT12CR */
1358         PORTCR(13, 0xe605000d), /* PORT13CR */
1359         PORTCR(14, 0xe605000e), /* PORT14CR */
1360         PORTCR(15, 0xe605000f), /* PORT15CR */
1361         PORTCR(16, 0xe6050010), /* PORT16CR */
1362         PORTCR(17, 0xe6050011), /* PORT17CR */
1363         PORTCR(18, 0xe6050012), /* PORT18CR */
1364         PORTCR(19, 0xe6050013), /* PORT19CR */
1365
1366         PORTCR(20, 0xe6050014), /* PORT20CR */
1367         PORTCR(21, 0xe6050015), /* PORT21CR */
1368         PORTCR(22, 0xe6050016), /* PORT22CR */
1369         PORTCR(23, 0xe6050017), /* PORT23CR */
1370         PORTCR(24, 0xe6050018), /* PORT24CR */
1371         PORTCR(25, 0xe6050019), /* PORT25CR */
1372         PORTCR(26, 0xe605001a), /* PORT26CR */
1373         PORTCR(27, 0xe605001b), /* PORT27CR */
1374         PORTCR(28, 0xe605001c), /* PORT28CR */
1375         PORTCR(29, 0xe605001d), /* PORT29CR */
1376
1377         PORTCR(30, 0xe605001e), /* PORT30CR */
1378         PORTCR(31, 0xe605001f), /* PORT31CR */
1379         PORTCR(32, 0xe6050020), /* PORT32CR */
1380         PORTCR(33, 0xe6050021), /* PORT33CR */
1381         PORTCR(34, 0xe6050022), /* PORT34CR */
1382         PORTCR(35, 0xe6050023), /* PORT35CR */
1383         PORTCR(36, 0xe6050024), /* PORT36CR */
1384         PORTCR(37, 0xe6050025), /* PORT37CR */
1385         PORTCR(38, 0xe6050026), /* PORT38CR */
1386         PORTCR(39, 0xe6050027), /* PORT39CR */
1387
1388         PORTCR(40, 0xe6050028), /* PORT40CR */
1389         PORTCR(41, 0xe6050029), /* PORT41CR */
1390         PORTCR(42, 0xe605002a), /* PORT42CR */
1391         PORTCR(43, 0xe605002b), /* PORT43CR */
1392         PORTCR(44, 0xe605002c), /* PORT44CR */
1393         PORTCR(45, 0xe605002d), /* PORT45CR */
1394         PORTCR(46, 0xe605002e), /* PORT46CR */
1395         PORTCR(47, 0xe605002f), /* PORT47CR */
1396         PORTCR(48, 0xe6050030), /* PORT48CR */
1397         PORTCR(49, 0xe6050031), /* PORT49CR */
1398
1399         PORTCR(50, 0xe6050032), /* PORT50CR */
1400         PORTCR(51, 0xe6050033), /* PORT51CR */
1401         PORTCR(52, 0xe6050034), /* PORT52CR */
1402         PORTCR(53, 0xe6050035), /* PORT53CR */
1403         PORTCR(54, 0xe6050036), /* PORT54CR */
1404         PORTCR(55, 0xe6050037), /* PORT55CR */
1405         PORTCR(56, 0xe6050038), /* PORT56CR */
1406         PORTCR(57, 0xe6050039), /* PORT57CR */
1407         PORTCR(58, 0xe605003a), /* PORT58CR */
1408         PORTCR(59, 0xe605003b), /* PORT59CR */
1409
1410         PORTCR(60, 0xe605003c), /* PORT60CR */
1411         PORTCR(61, 0xe605003d), /* PORT61CR */
1412         PORTCR(62, 0xe605003e), /* PORT62CR */
1413         PORTCR(63, 0xe605003f), /* PORT63CR */
1414         PORTCR(64, 0xe6050040), /* PORT64CR */
1415         PORTCR(65, 0xe6050041), /* PORT65CR */
1416         PORTCR(66, 0xe6050042), /* PORT66CR */
1417         PORTCR(67, 0xe6050043), /* PORT67CR */
1418         PORTCR(68, 0xe6050044), /* PORT68CR */
1419         PORTCR(69, 0xe6050045), /* PORT69CR */
1420
1421         PORTCR(70, 0xe6050046), /* PORT70CR */
1422         PORTCR(71, 0xe6050047), /* PORT71CR */
1423         PORTCR(72, 0xe6050048), /* PORT72CR */
1424         PORTCR(73, 0xe6050049), /* PORT73CR */
1425         PORTCR(74, 0xe605004a), /* PORT74CR */
1426         PORTCR(75, 0xe605004b), /* PORT75CR */
1427         PORTCR(76, 0xe605004c), /* PORT76CR */
1428         PORTCR(77, 0xe605004d), /* PORT77CR */
1429         PORTCR(78, 0xe605004e), /* PORT78CR */
1430         PORTCR(79, 0xe605004f), /* PORT79CR */
1431
1432         PORTCR(80, 0xe6050050), /* PORT80CR */
1433         PORTCR(81, 0xe6050051), /* PORT81CR */
1434         PORTCR(82, 0xe6050052), /* PORT82CR */
1435         PORTCR(83, 0xe6050053), /* PORT83CR */
1436         PORTCR(84, 0xe6050054), /* PORT84CR */
1437         PORTCR(85, 0xe6050055), /* PORT85CR */
1438         PORTCR(86, 0xe6050056), /* PORT86CR */
1439         PORTCR(87, 0xe6050057), /* PORT87CR */
1440         PORTCR(88, 0xe6050058), /* PORT88CR */
1441         PORTCR(89, 0xe6050059), /* PORT89CR */
1442
1443         PORTCR(90, 0xe605005a), /* PORT90CR */
1444         PORTCR(91, 0xe605005b), /* PORT91CR */
1445         PORTCR(92, 0xe605005c), /* PORT92CR */
1446         PORTCR(93, 0xe605005d), /* PORT93CR */
1447         PORTCR(94, 0xe605005e), /* PORT94CR */
1448         PORTCR(95, 0xe605005f), /* PORT95CR */
1449         PORTCR(96, 0xe6050060), /* PORT96CR */
1450         PORTCR(97, 0xe6050061), /* PORT97CR */
1451         PORTCR(98, 0xe6050062), /* PORT98CR */
1452         PORTCR(99, 0xe6050063), /* PORT99CR */
1453
1454         PORTCR(100, 0xe6050064), /* PORT100CR */
1455         PORTCR(101, 0xe6050065), /* PORT101CR */
1456         PORTCR(102, 0xe6050066), /* PORT102CR */
1457         PORTCR(103, 0xe6050067), /* PORT103CR */
1458         PORTCR(104, 0xe6050068), /* PORT104CR */
1459         PORTCR(105, 0xe6050069), /* PORT105CR */
1460         PORTCR(106, 0xe605006a), /* PORT106CR */
1461         PORTCR(107, 0xe605006b), /* PORT107CR */
1462         PORTCR(108, 0xe605006c), /* PORT108CR */
1463         PORTCR(109, 0xe605006d), /* PORT109CR */
1464
1465         PORTCR(110, 0xe605006e), /* PORT110CR */
1466         PORTCR(111, 0xe605006f), /* PORT111CR */
1467         PORTCR(112, 0xe6050070), /* PORT112CR */
1468         PORTCR(113, 0xe6050071), /* PORT113CR */
1469         PORTCR(114, 0xe6050072), /* PORT114CR */
1470         PORTCR(115, 0xe6050073), /* PORT115CR */
1471         PORTCR(116, 0xe6050074), /* PORT116CR */
1472         PORTCR(117, 0xe6050075), /* PORT117CR */
1473         PORTCR(118, 0xe6050076), /* PORT118CR */
1474
1475         PORTCR(128, 0xe6051080), /* PORT128CR */
1476         PORTCR(129, 0xe6051081), /* PORT129CR */
1477
1478         PORTCR(130, 0xe6051082), /* PORT130CR */
1479         PORTCR(131, 0xe6051083), /* PORT131CR */
1480         PORTCR(132, 0xe6051084), /* PORT132CR */
1481         PORTCR(133, 0xe6051085), /* PORT133CR */
1482         PORTCR(134, 0xe6051086), /* PORT134CR */
1483         PORTCR(135, 0xe6051087), /* PORT135CR */
1484         PORTCR(136, 0xe6051088), /* PORT136CR */
1485         PORTCR(137, 0xe6051089), /* PORT137CR */
1486         PORTCR(138, 0xe605108a), /* PORT138CR */
1487         PORTCR(139, 0xe605108b), /* PORT139CR */
1488
1489         PORTCR(140, 0xe605108c), /* PORT140CR */
1490         PORTCR(141, 0xe605108d), /* PORT141CR */
1491         PORTCR(142, 0xe605108e), /* PORT142CR */
1492         PORTCR(143, 0xe605108f), /* PORT143CR */
1493         PORTCR(144, 0xe6051090), /* PORT144CR */
1494         PORTCR(145, 0xe6051091), /* PORT145CR */
1495         PORTCR(146, 0xe6051092), /* PORT146CR */
1496         PORTCR(147, 0xe6051093), /* PORT147CR */
1497         PORTCR(148, 0xe6051094), /* PORT148CR */
1498         PORTCR(149, 0xe6051095), /* PORT149CR */
1499
1500         PORTCR(150, 0xe6051096), /* PORT150CR */
1501         PORTCR(151, 0xe6051097), /* PORT151CR */
1502         PORTCR(152, 0xe6051098), /* PORT152CR */
1503         PORTCR(153, 0xe6051099), /* PORT153CR */
1504         PORTCR(154, 0xe605109a), /* PORT154CR */
1505         PORTCR(155, 0xe605109b), /* PORT155CR */
1506         PORTCR(156, 0xe605109c), /* PORT156CR */
1507         PORTCR(157, 0xe605109d), /* PORT157CR */
1508         PORTCR(158, 0xe605109e), /* PORT158CR */
1509         PORTCR(159, 0xe605109f), /* PORT159CR */
1510
1511         PORTCR(160, 0xe60510a0), /* PORT160CR */
1512         PORTCR(161, 0xe60510a1), /* PORT161CR */
1513         PORTCR(162, 0xe60510a2), /* PORT162CR */
1514         PORTCR(163, 0xe60510a3), /* PORT163CR */
1515         PORTCR(164, 0xe60510a4), /* PORT164CR */
1516
1517         PORTCR(192, 0xe60520c0), /* PORT192CR */
1518         PORTCR(193, 0xe60520c1), /* PORT193CR */
1519         PORTCR(194, 0xe60520c2), /* PORT194CR */
1520         PORTCR(195, 0xe60520c3), /* PORT195CR */
1521         PORTCR(196, 0xe60520c4), /* PORT196CR */
1522         PORTCR(197, 0xe60520c5), /* PORT197CR */
1523         PORTCR(198, 0xe60520c6), /* PORT198CR */
1524         PORTCR(199, 0xe60520c7), /* PORT199CR */
1525
1526         PORTCR(200, 0xe60520c8), /* PORT200CR */
1527         PORTCR(201, 0xe60520c9), /* PORT201CR */
1528         PORTCR(202, 0xe60520ca), /* PORT202CR */
1529         PORTCR(203, 0xe60520cb), /* PORT203CR */
1530         PORTCR(204, 0xe60520cc), /* PORT204CR */
1531         PORTCR(205, 0xe60520cd), /* PORT205CR */
1532         PORTCR(206, 0xe60520ce), /* PORT206CR */
1533         PORTCR(207, 0xe60520cf), /* PORT207CR */
1534         PORTCR(208, 0xe60520d0), /* PORT208CR */
1535         PORTCR(209, 0xe60520d1), /* PORT209CR */
1536
1537         PORTCR(210, 0xe60520d2), /* PORT210CR */
1538         PORTCR(211, 0xe60520d3), /* PORT211CR */
1539         PORTCR(212, 0xe60520d4), /* PORT212CR */
1540         PORTCR(213, 0xe60520d5), /* PORT213CR */
1541         PORTCR(214, 0xe60520d6), /* PORT214CR */
1542         PORTCR(215, 0xe60520d7), /* PORT215CR */
1543         PORTCR(216, 0xe60520d8), /* PORT216CR */
1544         PORTCR(217, 0xe60520d9), /* PORT217CR */
1545         PORTCR(218, 0xe60520da), /* PORT218CR */
1546         PORTCR(219, 0xe60520db), /* PORT219CR */
1547
1548         PORTCR(220, 0xe60520dc), /* PORT220CR */
1549         PORTCR(221, 0xe60520dd), /* PORT221CR */
1550         PORTCR(222, 0xe60520de), /* PORT222CR */
1551         PORTCR(223, 0xe60520df), /* PORT223CR */
1552         PORTCR(224, 0xe60520e0), /* PORT224CR */
1553         PORTCR(225, 0xe60520e1), /* PORT225CR */
1554         PORTCR(226, 0xe60520e2), /* PORT226CR */
1555         PORTCR(227, 0xe60520e3), /* PORT227CR */
1556         PORTCR(228, 0xe60520e4), /* PORT228CR */
1557         PORTCR(229, 0xe60520e5), /* PORT229CR */
1558
1559         PORTCR(230, 0xe60520e6), /* PORT230CR */
1560         PORTCR(231, 0xe60520e7), /* PORT231CR */
1561         PORTCR(232, 0xe60520e8), /* PORT232CR */
1562         PORTCR(233, 0xe60520e9), /* PORT233CR */
1563         PORTCR(234, 0xe60520ea), /* PORT234CR */
1564         PORTCR(235, 0xe60520eb), /* PORT235CR */
1565         PORTCR(236, 0xe60520ec), /* PORT236CR */
1566         PORTCR(237, 0xe60520ed), /* PORT237CR */
1567         PORTCR(238, 0xe60520ee), /* PORT238CR */
1568         PORTCR(239, 0xe60520ef), /* PORT239CR */
1569
1570         PORTCR(240, 0xe60520f0), /* PORT240CR */
1571         PORTCR(241, 0xe60520f1), /* PORT241CR */
1572         PORTCR(242, 0xe60520f2), /* PORT242CR */
1573         PORTCR(243, 0xe60520f3), /* PORT243CR */
1574         PORTCR(244, 0xe60520f4), /* PORT244CR */
1575         PORTCR(245, 0xe60520f5), /* PORT245CR */
1576         PORTCR(246, 0xe60520f6), /* PORT246CR */
1577         PORTCR(247, 0xe60520f7), /* PORT247CR */
1578         PORTCR(248, 0xe60520f8), /* PORT248CR */
1579         PORTCR(249, 0xe60520f9), /* PORT249CR */
1580
1581         PORTCR(250, 0xe60520fa), /* PORT250CR */
1582         PORTCR(251, 0xe60520fb), /* PORT251CR */
1583         PORTCR(252, 0xe60520fc), /* PORT252CR */
1584         PORTCR(253, 0xe60520fd), /* PORT253CR */
1585         PORTCR(254, 0xe60520fe), /* PORT254CR */
1586         PORTCR(255, 0xe60520ff), /* PORT255CR */
1587         PORTCR(256, 0xe6052100), /* PORT256CR */
1588         PORTCR(257, 0xe6052101), /* PORT257CR */
1589         PORTCR(258, 0xe6052102), /* PORT258CR */
1590         PORTCR(259, 0xe6052103), /* PORT259CR */
1591
1592         PORTCR(260, 0xe6052104), /* PORT260CR */
1593         PORTCR(261, 0xe6052105), /* PORT261CR */
1594         PORTCR(262, 0xe6052106), /* PORT262CR */
1595         PORTCR(263, 0xe6052107), /* PORT263CR */
1596         PORTCR(264, 0xe6052108), /* PORT264CR */
1597
1598         { PINMUX_CFG_REG("MSELBCR", 0xe6058024, 32, 1) {
1599                         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1600                         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1601                         MSELBCR_MSEL17_0, MSELBCR_MSEL17_1,
1602                         MSELBCR_MSEL16_0, MSELBCR_MSEL16_1,
1603                         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1604                         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
1605         },
1606         { },
1607 };
1608
1609 static struct pinmux_data_reg pinmux_data_regs[] = {
1610         { PINMUX_DATA_REG("PORTL031_000DR", 0xe6054000, 32) {
1611                         PORT31_DATA, PORT30_DATA, PORT29_DATA, PORT28_DATA,
1612                         PORT27_DATA, PORT26_DATA, PORT25_DATA, PORT24_DATA,
1613                         PORT23_DATA, PORT22_DATA, PORT21_DATA, PORT20_DATA,
1614                         PORT19_DATA, PORT18_DATA, PORT17_DATA, PORT16_DATA,
1615                         PORT15_DATA, PORT14_DATA, PORT13_DATA, PORT12_DATA,
1616                         PORT11_DATA, PORT10_DATA, PORT9_DATA, PORT8_DATA,
1617                         PORT7_DATA, PORT6_DATA, PORT5_DATA, PORT4_DATA,
1618                         PORT3_DATA, PORT2_DATA, PORT1_DATA, PORT0_DATA }
1619         },
1620         { PINMUX_DATA_REG("PORTL063_032DR", 0xe6054004, 32) {
1621                         PORT63_DATA, PORT62_DATA, PORT61_DATA, PORT60_DATA,
1622                         PORT59_DATA, PORT58_DATA, PORT57_DATA, PORT56_DATA,
1623                         PORT55_DATA, PORT54_DATA, PORT53_DATA, PORT52_DATA,
1624                         PORT51_DATA, PORT50_DATA, PORT49_DATA, PORT48_DATA,
1625                         PORT47_DATA, PORT46_DATA, PORT45_DATA, PORT44_DATA,
1626                         PORT43_DATA, PORT42_DATA, PORT41_DATA, PORT40_DATA,
1627                         PORT39_DATA, PORT38_DATA, PORT37_DATA, PORT36_DATA,
1628                         PORT35_DATA, PORT34_DATA, PORT33_DATA, PORT32_DATA }
1629         },
1630         { PINMUX_DATA_REG("PORTL095_064DR", 0xe6054008, 32) {
1631                         PORT95_DATA, PORT94_DATA, PORT93_DATA, PORT92_DATA,
1632                         PORT91_DATA, PORT90_DATA, PORT89_DATA, PORT88_DATA,
1633                         PORT87_DATA, PORT86_DATA, PORT85_DATA, PORT84_DATA,
1634                         PORT83_DATA, PORT82_DATA, PORT81_DATA, PORT80_DATA,
1635                         PORT79_DATA, PORT78_DATA, PORT77_DATA, PORT76_DATA,
1636                         PORT75_DATA, PORT74_DATA, PORT73_DATA, PORT72_DATA,
1637                         PORT71_DATA, PORT70_DATA, PORT69_DATA, PORT68_DATA,
1638                         PORT67_DATA, PORT66_DATA, PORT65_DATA, PORT64_DATA }
1639         },
1640         { PINMUX_DATA_REG("PORTD127_096DR", 0xe605400C, 32) {
1641                         0, 0, 0, 0,
1642                         0, 0, 0, 0,
1643                         0, PORT118_DATA, PORT117_DATA, PORT116_DATA,
1644                         PORT115_DATA, PORT114_DATA, PORT113_DATA, PORT112_DATA,
1645                         PORT111_DATA, PORT110_DATA, PORT109_DATA, PORT108_DATA,
1646                         PORT107_DATA, PORT106_DATA, PORT105_DATA, PORT104_DATA,
1647                         PORT103_DATA, PORT102_DATA, PORT101_DATA, PORT100_DATA,
1648                         PORT99_DATA, PORT98_DATA, PORT97_DATA, PORT96_DATA }
1649         },
1650         { PINMUX_DATA_REG("PORTD159_128DR", 0xe6055000, 32) {
1651                         PORT159_DATA, PORT158_DATA, PORT157_DATA, PORT156_DATA,
1652                         PORT155_DATA, PORT154_DATA, PORT153_DATA, PORT152_DATA,
1653                         PORT151_DATA, PORT150_DATA, PORT149_DATA, PORT148_DATA,
1654                         PORT147_DATA, PORT146_DATA, PORT145_DATA, PORT144_DATA,
1655                         PORT143_DATA, PORT142_DATA, PORT141_DATA, PORT140_DATA,
1656                         PORT139_DATA, PORT138_DATA, PORT137_DATA, PORT136_DATA,
1657                         PORT135_DATA, PORT134_DATA, PORT133_DATA, PORT132_DATA,
1658                         PORT131_DATA, PORT130_DATA, PORT129_DATA, PORT128_DATA }
1659         },
1660         { PINMUX_DATA_REG("PORTR191_160DR", 0xe6055004, 32) {
1661                         0, 0, 0, 0,
1662                         0, 0, 0, 0,
1663                         0, 0, 0, 0,
1664                         0, 0, 0, 0,
1665                         0, 0, 0, 0,
1666                         0, 0, 0, 0,
1667                         0, 0, 0, PORT164_DATA,
1668                         PORT163_DATA, PORT162_DATA, PORT161_DATA, PORT160_DATA }
1669         },
1670         { PINMUX_DATA_REG("PORTR223_192DR", 0xe6056000, 32) {
1671                         PORT223_DATA, PORT222_DATA, PORT221_DATA, PORT220_DATA,
1672                         PORT219_DATA, PORT218_DATA, PORT217_DATA, PORT216_DATA,
1673                         PORT215_DATA, PORT214_DATA, PORT213_DATA, PORT212_DATA,
1674                         PORT211_DATA, PORT210_DATA, PORT209_DATA, PORT208_DATA,
1675                         PORT207_DATA, PORT206_DATA, PORT205_DATA, PORT204_DATA,
1676                         PORT203_DATA, PORT202_DATA, PORT201_DATA, PORT200_DATA,
1677                         PORT199_DATA, PORT198_DATA, PORT197_DATA, PORT196_DATA,
1678                         PORT195_DATA, PORT194_DATA, PORT193_DATA, PORT192_DATA }
1679         },
1680         { PINMUX_DATA_REG("PORTU255_224DR", 0xe6056004, 32) {
1681                         PORT255_DATA, PORT254_DATA, PORT253_DATA, PORT252_DATA,
1682                         PORT251_DATA, PORT250_DATA, PORT249_DATA, PORT248_DATA,
1683                         PORT247_DATA, PORT246_DATA, PORT245_DATA, PORT244_DATA,
1684                         PORT243_DATA, PORT242_DATA, PORT241_DATA, PORT240_DATA,
1685                         PORT239_DATA, PORT238_DATA, PORT237_DATA, PORT236_DATA,
1686                         PORT235_DATA, PORT234_DATA, PORT233_DATA, PORT232_DATA,
1687                         PORT231_DATA, PORT230_DATA, PORT229_DATA, PORT228_DATA,
1688                         PORT227_DATA, PORT226_DATA, PORT225_DATA, PORT224_DATA }
1689         },
1690         { PINMUX_DATA_REG("PORTU287_256DR", 0xe6056008, 32) {
1691                         0, 0, 0, 0,
1692                         0, 0, 0, 0,
1693                         0, 0, 0, 0,
1694                         0, 0, 0, 0,
1695                         0, 0, 0, 0,
1696                         0, 0, 0, PORT264_DATA,
1697                         PORT263_DATA, PORT262_DATA, PORT261_DATA, PORT260_DATA,
1698                         PORT259_DATA, PORT258_DATA, PORT257_DATA, PORT256_DATA }
1699         },
1700         { },
1701 };
1702
1703 static struct pinmux_info sh7377_pinmux_info = {
1704         .name = "sh7377_pfc",
1705         .reserved_id = PINMUX_RESERVED,
1706         .data = { PINMUX_DATA_BEGIN, PINMUX_DATA_END },
1707         .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
1708         .input_pu = { PINMUX_INPUT_PULLUP_BEGIN, PINMUX_INPUT_PULLUP_END },
1709         .input_pd = { PINMUX_INPUT_PULLDOWN_BEGIN, PINMUX_INPUT_PULLDOWN_END },
1710         .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
1711         .mark = { PINMUX_MARK_BEGIN, PINMUX_MARK_END },
1712         .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
1713
1714         .first_gpio = GPIO_PORT0,
1715         .last_gpio = GPIO_FN_RESETOUTS,
1716
1717         .gpios = pinmux_gpios,
1718         .cfg_regs = pinmux_config_regs,
1719         .data_regs = pinmux_data_regs,
1720
1721         .gpio_data = pinmux_data,
1722         .gpio_data_size = ARRAY_SIZE(pinmux_data),
1723 };
1724
1725 void sh7377_pinmux_init(void)
1726 {
1727         register_pinmux(&sh7377_pinmux_info);
1728 }