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