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