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