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