1/*
2 * SH7269 Pinmux
3 *
4 * Copyright (C) 2012  Renesas Electronics Europe Ltd
5 * Copyright (C) 2012  Phil Edworthy
6 *
7 * This file is subject to the terms and conditions of the GNU General Public
8 * License.  See the file "COPYING" in the main directory of this archive
9 * for more details.
10 */
11
12#include <linux/kernel.h>
13#include <linux/gpio.h>
14#include <cpu/sh7269.h>
15
16#include "sh_pfc.h"
17
18enum {
19	PINMUX_RESERVED = 0,
20
21	PINMUX_DATA_BEGIN,
22	/* Port A */
23	PA1_DATA, PA0_DATA,
24	/* Port B */
25	PB22_DATA, PB21_DATA, PB20_DATA,
26	PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA,
27	PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
28	PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
29	PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
30	PB3_DATA, PB2_DATA, PB1_DATA,
31	/* Port C */
32	PC8_DATA,
33	PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
34	PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA,
35	/* Port D */
36	PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
37	PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
38	PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
39	PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA,
40	/* Port E */
41	PE7_DATA, PE6_DATA, PE5_DATA, PE4_DATA,
42	PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA,
43	/* Port F */
44	PF23_DATA, PF22_DATA, PF21_DATA, PF20_DATA,
45	PF19_DATA, PF18_DATA, PF17_DATA, PF16_DATA,
46	PF15_DATA, PF14_DATA, PF13_DATA, PF12_DATA,
47	PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
48	PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
49	PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA,
50	/* Port G */
51	PG27_DATA, PG26_DATA, PG25_DATA, PG24_DATA,
52	PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
53	PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA,
54	PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
55	PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
56	PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
57	PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA,
58	/* Port H */
59	/* NOTE - Port H does not have a Data Register, but PH Data is
60	   connected to PH Port Register */
61	PH7_DATA, PH6_DATA, PH5_DATA, PH4_DATA,
62	PH3_DATA, PH2_DATA, PH1_DATA, PH0_DATA,
63	/* Port I - not on device */
64	/* Port J */
65	PJ31_DATA, PJ30_DATA, PJ29_DATA, PJ28_DATA,
66	PJ27_DATA, PJ26_DATA, PJ25_DATA, PJ24_DATA,
67	PJ23_DATA, PJ22_DATA, PJ21_DATA, PJ20_DATA,
68	PJ19_DATA, PJ18_DATA, PJ17_DATA, PJ16_DATA,
69	PJ15_DATA, PJ14_DATA, PJ13_DATA, PJ12_DATA,
70	PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
71	PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
72	PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA,
73	PINMUX_DATA_END,
74
75	PINMUX_INPUT_BEGIN,
76	FORCE_IN,
77	/* Port A */
78	PA1_IN, PA0_IN,
79	/* Port B */
80	PB22_IN, PB21_IN, PB20_IN,
81	PB19_IN, PB18_IN, PB17_IN, PB16_IN,
82	PB15_IN, PB14_IN, PB13_IN, PB12_IN,
83	PB11_IN, PB10_IN, PB9_IN, PB8_IN,
84	PB7_IN, PB6_IN, PB5_IN, PB4_IN,
85	PB3_IN, PB2_IN, PB1_IN,
86	/* Port C */
87	PC8_IN,
88	PC7_IN, PC6_IN, PC5_IN, PC4_IN,
89	PC3_IN, PC2_IN, PC1_IN, PC0_IN,
90	/* Port D */
91	PD15_IN, PD14_IN, PD13_IN, PD12_IN,
92	PD11_IN, PD10_IN, PD9_IN, PD8_IN,
93	PD7_IN, PD6_IN, PD5_IN, PD4_IN,
94	PD3_IN, PD2_IN, PD1_IN, PD0_IN,
95	/* Port E */
96	PE7_IN, PE6_IN, PE5_IN, PE4_IN,
97	PE3_IN, PE2_IN, PE1_IN, PE0_IN,
98	/* Port F */
99	PF23_IN, PF22_IN, PF21_IN, PF20_IN,
100	PF19_IN, PF18_IN, PF17_IN, PF16_IN,
101	PF15_IN, PF14_IN, PF13_IN, PF12_IN,
102	PF11_IN, PF10_IN, PF9_IN, PF8_IN,
103	PF7_IN, PF6_IN, PF5_IN, PF4_IN,
104	PF3_IN, PF2_IN, PF1_IN, PF0_IN,
105	/* Port G */
106	PG27_IN, PG26_IN, PG25_IN, PG24_IN,
107	PG23_IN, PG22_IN, PG21_IN, PG20_IN,
108	PG19_IN, PG18_IN, PG17_IN, PG16_IN,
109	PG15_IN, PG14_IN, PG13_IN, PG12_IN,
110	PG11_IN, PG10_IN, PG9_IN, PG8_IN,
111	PG7_IN, PG6_IN, PG5_IN, PG4_IN,
112	PG3_IN, PG2_IN, PG1_IN, PG0_IN,
113	/* Port H - Port H does not have a Data Register */
114	/* Port I - not on device */
115	/* Port J */
116	PJ31_IN, PJ30_IN, PJ29_IN, PJ28_IN,
117	PJ27_IN, PJ26_IN, PJ25_IN, PJ24_IN,
118	PJ23_IN, PJ22_IN, PJ21_IN, PJ20_IN,
119	PJ19_IN, PJ18_IN, PJ17_IN, PJ16_IN,
120	PJ15_IN, PJ14_IN, PJ13_IN, PJ12_IN,
121	PJ11_IN, PJ10_IN, PJ9_IN, PJ8_IN,
122	PJ7_IN, PJ6_IN, PJ5_IN, PJ4_IN,
123	PJ3_IN, PJ2_IN, PJ1_IN, PJ0_IN,
124	PINMUX_INPUT_END,
125
126	PINMUX_OUTPUT_BEGIN,
127	FORCE_OUT,
128	/* Port A */
129	PA1_OUT, PA0_OUT,
130	/* Port B */
131	PB22_OUT, PB21_OUT, PB20_OUT,
132	PB19_OUT, PB18_OUT, PB17_OUT, PB16_OUT,
133	PB15_OUT, PB14_OUT, PB13_OUT, PB12_OUT,
134	PB11_OUT, PB10_OUT, PB9_OUT, PB8_OUT,
135	PB7_OUT, PB6_OUT, PB5_OUT, PB4_OUT,
136	PB3_OUT, PB2_OUT, PB1_OUT,
137	/* Port C */
138	PC8_OUT,
139	PC7_OUT, PC6_OUT, PC5_OUT, PC4_OUT,
140	PC3_OUT, PC2_OUT, PC1_OUT, PC0_OUT,
141	/* Port D */
142	PD15_OUT, PD14_OUT, PD13_OUT, PD12_OUT,
143	PD11_OUT, PD10_OUT, PD9_OUT, PD8_OUT,
144	PD7_OUT, PD6_OUT, PD5_OUT, PD4_OUT,
145	PD3_OUT, PD2_OUT, PD1_OUT, PD0_OUT,
146	/* Port E */
147	PE7_OUT, PE6_OUT, PE5_OUT, PE4_OUT,
148	PE3_OUT, PE2_OUT, PE1_OUT, PE0_OUT,
149	/* Port F */
150	PF23_OUT, PF22_OUT, PF21_OUT, PF20_OUT,
151	PF19_OUT, PF18_OUT, PF17_OUT, PF16_OUT,
152	PF15_OUT, PF14_OUT, PF13_OUT, PF12_OUT,
153	PF11_OUT, PF10_OUT, PF9_OUT, PF8_OUT,
154	PF7_OUT, PF6_OUT, PF5_OUT, PF4_OUT,
155	PF3_OUT, PF2_OUT, PF1_OUT, PF0_OUT,
156	/* Port G */
157	PG27_OUT, PG26_OUT, PG25_OUT, PG24_OUT,
158	PG23_OUT, PG22_OUT, PG21_OUT, PG20_OUT,
159	PG19_OUT, PG18_OUT, PG17_OUT, PG16_OUT,
160	PG15_OUT, PG14_OUT, PG13_OUT, PG12_OUT,
161	PG11_OUT, PG10_OUT, PG9_OUT, PG8_OUT,
162	PG7_OUT, PG6_OUT, PG5_OUT, PG4_OUT,
163	PG3_OUT, PG2_OUT, PG1_OUT, PG0_OUT,
164	/* Port H - Port H does not have a Data Register */
165	/* Port I - not on device */
166	/* Port J */
167	PJ31_OUT, PJ30_OUT, PJ29_OUT, PJ28_OUT,
168	PJ27_OUT, PJ26_OUT, PJ25_OUT, PJ24_OUT,
169	PJ23_OUT, PJ22_OUT, PJ21_OUT, PJ20_OUT,
170	PJ19_OUT, PJ18_OUT, PJ17_OUT, PJ16_OUT,
171	PJ15_OUT, PJ14_OUT, PJ13_OUT, PJ12_OUT,
172	PJ11_OUT, PJ10_OUT, PJ9_OUT, PJ8_OUT,
173	PJ7_OUT, PJ6_OUT, PJ5_OUT, PJ4_OUT,
174	PJ3_OUT, PJ2_OUT, PJ1_OUT, PJ0_OUT,
175	PINMUX_OUTPUT_END,
176
177	PINMUX_FUNCTION_BEGIN,
178	/* Port A */
179	PA1_IOR_IN, PA1_IOR_OUT,
180	PA0_IOR_IN, PA0_IOR_OUT,
181
182	/* Port B */
183	PB22_IOR_IN, PB22_IOR_OUT,
184	PB21_IOR_IN, PB21_IOR_OUT,
185	PB20_IOR_IN, PB20_IOR_OUT,
186	PB19_IOR_IN, PB19_IOR_OUT,
187	PB18_IOR_IN, PB18_IOR_OUT,
188	PB17_IOR_IN, PB17_IOR_OUT,
189	PB16_IOR_IN, PB16_IOR_OUT,
190
191	PB15_IOR_IN, PB15_IOR_OUT,
192	PB14_IOR_IN, PB14_IOR_OUT,
193	PB13_IOR_IN, PB13_IOR_OUT,
194	PB12_IOR_IN, PB12_IOR_OUT,
195	PB11_IOR_IN, PB11_IOR_OUT,
196	PB10_IOR_IN, PB10_IOR_OUT,
197	PB9_IOR_IN, PB9_IOR_OUT,
198	PB8_IOR_IN, PB8_IOR_OUT,
199
200	PB7_IOR_IN, PB7_IOR_OUT,
201	PB6_IOR_IN, PB6_IOR_OUT,
202	PB5_IOR_IN, PB5_IOR_OUT,
203	PB4_IOR_IN, PB4_IOR_OUT,
204	PB3_IOR_IN, PB3_IOR_OUT,
205	PB2_IOR_IN, PB2_IOR_OUT,
206	PB1_IOR_IN, PB1_IOR_OUT,
207	PB0_IOR_IN, PB0_IOR_OUT,
208
209	PB22MD_000, PB22MD_001, PB22MD_010, PB22MD_011,
210	PB22MD_100, PB22MD_101, PB22MD_110, PB22MD_111,
211	PB21MD_00, PB21MD_01, PB21MD_10, PB21MD_11,
212	PB20MD_000, PB20MD_001, PB20MD_010, PB20MD_011,
213	PB20MD_100, PB20MD_101, PB20MD_110, PB20MD_111,
214	PB19MD_000, PB19MD_001, PB19MD_010, PB19MD_011,
215	PB19MD_100, PB19MD_101, PB19MD_110, PB19MD_111,
216	PB18MD_000, PB18MD_001, PB18MD_010, PB18MD_011,
217	PB18MD_100, PB18MD_101, PB18MD_110, PB18MD_111,
218	PB17MD_000, PB17MD_001, PB17MD_010, PB17MD_011,
219	PB17MD_100, PB17MD_101, PB17MD_110, PB17MD_111,
220	PB16MD_000, PB16MD_001, PB16MD_010, PB16MD_011,
221	PB16MD_100, PB16MD_101, PB16MD_110, PB16MD_111,
222	PB15MD_000, PB15MD_001, PB15MD_010, PB15MD_011,
223	PB15MD_100, PB15MD_101, PB15MD_110, PB15MD_111,
224	PB14MD_000, PB14MD_001, PB14MD_010, PB14MD_011,
225	PB14MD_100, PB14MD_101, PB14MD_110, PB14MD_111,
226	PB13MD_000, PB13MD_001, PB13MD_010, PB13MD_011,
227	PB13MD_100, PB13MD_101, PB13MD_110, PB13MD_111,
228	PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,
229
230	PB11MD_00, PB11MD_01, PB11MD_10, PB11MD_11,
231	PB10MD_00, PB10MD_01, PB10MD_10, PB10MD_11,
232	PB9MD_00, PB9MD_01, PB9MD_10, PB9MD_11,
233	PB8MD_00, PB8MD_01, PB8MD_10, PB8MD_11,
234
235	PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,
236	PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,
237	PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,
238	PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,
239
240	PB3MD_00, PB3MD_01, PB3MD_10, PB3MD_11,
241	PB2MD_00, PB2MD_01, PB2MD_10, PB2MD_11,
242	PB1MD_00, PB1MD_01, PB1MD_10, PB1MD_11,
243
244	/* Port C */
245	PC8_IOR_IN, PC8_IOR_OUT,
246	PC7_IOR_IN, PC7_IOR_OUT,
247	PC6_IOR_IN, PC6_IOR_OUT,
248	PC5_IOR_IN, PC5_IOR_OUT,
249	PC4_IOR_IN, PC4_IOR_OUT,
250	PC3_IOR_IN, PC3_IOR_OUT,
251	PC2_IOR_IN, PC2_IOR_OUT,
252	PC1_IOR_IN, PC1_IOR_OUT,
253	PC0_IOR_IN, PC0_IOR_OUT,
254
255	PC8MD_000, PC8MD_001, PC8MD_010, PC8MD_011,
256	PC8MD_100, PC8MD_101, PC8MD_110, PC8MD_111,
257	PC7MD_000, PC7MD_001, PC7MD_010, PC7MD_011,
258	PC7MD_100, PC7MD_101, PC7MD_110, PC7MD_111,
259	PC6MD_000, PC6MD_001, PC6MD_010, PC6MD_011,
260	PC6MD_100, PC6MD_101, PC6MD_110, PC6MD_111,
261	PC5MD_000, PC5MD_001, PC5MD_010, PC5MD_011,
262	PC5MD_100, PC5MD_101, PC5MD_110, PC5MD_111,
263	PC4MD_00, PC4MD_01, PC4MD_10, PC4MD_11,
264
265	PC3MD_00, PC3MD_01, PC3MD_10, PC3MD_11,
266	PC2MD_00, PC2MD_01, PC2MD_10, PC2MD_11,
267	PC1MD_0, PC1MD_1,
268	PC0MD_0, PC0MD_1,
269
270	/* Port D */
271	PD15_IOR_IN, PD15_IOR_OUT,
272	PD14_IOR_IN, PD14_IOR_OUT,
273	PD13_IOR_IN, PD13_IOR_OUT,
274	PD12_IOR_IN, PD12_IOR_OUT,
275	PD11_IOR_IN, PD11_IOR_OUT,
276	PD10_IOR_IN, PD10_IOR_OUT,
277	PD9_IOR_IN, PD9_IOR_OUT,
278	PD8_IOR_IN, PD8_IOR_OUT,
279	PD7_IOR_IN, PD7_IOR_OUT,
280	PD6_IOR_IN, PD6_IOR_OUT,
281	PD5_IOR_IN, PD5_IOR_OUT,
282	PD4_IOR_IN, PD4_IOR_OUT,
283	PD3_IOR_IN, PD3_IOR_OUT,
284	PD2_IOR_IN, PD2_IOR_OUT,
285	PD1_IOR_IN, PD1_IOR_OUT,
286	PD0_IOR_IN, PD0_IOR_OUT,
287
288	PD15MD_00, PD15MD_01, PD15MD_10, PD15MD_11,
289	PD14MD_00, PD14MD_01, PD14MD_10, PD14MD_11,
290	PD13MD_00, PD13MD_01, PD13MD_10, PD13MD_11,
291	PD12MD_00, PD12MD_01, PD12MD_10, PD12MD_11,
292
293	PD11MD_00, PD11MD_01, PD11MD_10, PD11MD_11,
294	PD10MD_00, PD10MD_01, PD10MD_10, PD10MD_11,
295	PD9MD_00, PD9MD_01, PD9MD_10, PD9MD_11,
296	PD8MD_00, PD8MD_01, PD8MD_10, PD8MD_11,
297
298	PD7MD_00, PD7MD_01, PD7MD_10, PD7MD_11,
299	PD6MD_00, PD6MD_01, PD6MD_10, PD6MD_11,
300	PD5MD_00, PD5MD_01, PD5MD_10, PD5MD_11,
301	PD4MD_00, PD4MD_01, PD4MD_10, PD4MD_11,
302
303	PD3MD_00, PD3MD_01, PD3MD_10, PD3MD_11,
304	PD2MD_00, PD2MD_01, PD2MD_10, PD2MD_11,
305	PD1MD_00, PD1MD_01, PD1MD_10, PD1MD_11,
306	PD0MD_00, PD0MD_01, PD0MD_10, PD0MD_11,
307
308	/* Port E */
309	PE7_IOR_IN, PE7_IOR_OUT,
310	PE6_IOR_IN, PE6_IOR_OUT,
311	PE5_IOR_IN, PE5_IOR_OUT,
312	PE4_IOR_IN, PE4_IOR_OUT,
313	PE3_IOR_IN, PE3_IOR_OUT,
314	PE2_IOR_IN, PE2_IOR_OUT,
315	PE1_IOR_IN, PE1_IOR_OUT,
316	PE0_IOR_IN, PE0_IOR_OUT,
317
318	PE7MD_00, PE7MD_01, PE7MD_10, PE7MD_11,
319	PE6MD_00, PE6MD_01, PE6MD_10, PE6MD_11,
320	PE5MD_00, PE5MD_01, PE5MD_10, PE5MD_11,
321	PE4MD_00, PE4MD_01, PE4MD_10, PE4MD_11,
322
323	PE3MD_000, PE3MD_001, PE3MD_010, PE3MD_011,
324	PE3MD_100, PE3MD_101, PE3MD_110, PE3MD_111,
325	PE2MD_000, PE2MD_001, PE2MD_010, PE2MD_011,
326	PE2MD_100, PE2MD_101, PE2MD_110, PE2MD_111,
327	PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
328	PE1MD_100, PE1MD_101, PE1MD_110, PE1MD_111,
329	PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11,
330
331	/* Port F */
332	PF23_IOR_IN, PF23_IOR_OUT,
333	PF22_IOR_IN, PF22_IOR_OUT,
334	PF21_IOR_IN, PF21_IOR_OUT,
335	PF20_IOR_IN, PF20_IOR_OUT,
336	PF19_IOR_IN, PF19_IOR_OUT,
337	PF18_IOR_IN, PF18_IOR_OUT,
338	PF17_IOR_IN, PF17_IOR_OUT,
339	PF16_IOR_IN, PF16_IOR_OUT,
340	PF15_IOR_IN, PF15_IOR_OUT,
341	PF14_IOR_IN, PF14_IOR_OUT,
342	PF13_IOR_IN, PF13_IOR_OUT,
343	PF12_IOR_IN, PF12_IOR_OUT,
344	PF11_IOR_IN, PF11_IOR_OUT,
345	PF10_IOR_IN, PF10_IOR_OUT,
346	PF9_IOR_IN, PF9_IOR_OUT,
347	PF8_IOR_IN, PF8_IOR_OUT,
348	PF7_IOR_IN, PF7_IOR_OUT,
349	PF6_IOR_IN, PF6_IOR_OUT,
350	PF5_IOR_IN, PF5_IOR_OUT,
351	PF4_IOR_IN, PF4_IOR_OUT,
352	PF3_IOR_IN, PF3_IOR_OUT,
353	PF2_IOR_IN, PF2_IOR_OUT,
354	PF1_IOR_IN, PF1_IOR_OUT,
355	PF0_IOR_IN, PF0_IOR_OUT,
356
357	PF23MD_000, PF23MD_001, PF23MD_010, PF23MD_011,
358	PF23MD_100, PF23MD_101, PF23MD_110, PF23MD_111,
359	PF22MD_000, PF22MD_001, PF22MD_010, PF22MD_011,
360	PF22MD_100, PF22MD_101, PF22MD_110, PF22MD_111,
361	PF21MD_000, PF21MD_001, PF21MD_010, PF21MD_011,
362	PF21MD_100, PF21MD_101, PF21MD_110, PF21MD_111,
363	PF20MD_000, PF20MD_001, PF20MD_010, PF20MD_011,
364	PF20MD_100, PF20MD_101, PF20MD_110, PF20MD_111,
365
366	PF19MD_000, PF19MD_001, PF19MD_010, PF19MD_011,
367	PF19MD_100, PF19MD_101, PF19MD_110, PF19MD_111,
368	PF18MD_000, PF18MD_001, PF18MD_010, PF18MD_011,
369	PF18MD_100, PF18MD_101, PF18MD_110, PF18MD_111,
370	PF17MD_000, PF17MD_001, PF17MD_010, PF17MD_011,
371	PF17MD_100, PF17MD_101, PF17MD_110, PF17MD_111,
372	PF16MD_000, PF16MD_001, PF16MD_010, PF16MD_011,
373	PF16MD_100, PF16MD_101, PF16MD_110, PF16MD_111,
374
375	PF15MD_000, PF15MD_001, PF15MD_010, PF15MD_011,
376	PF15MD_100, PF15MD_101, PF15MD_110, PF15MD_111,
377	PF14MD_000, PF14MD_001, PF14MD_010, PF14MD_011,
378	PF14MD_100, PF14MD_101, PF14MD_110, PF14MD_111,
379	PF13MD_000, PF13MD_001, PF13MD_010, PF13MD_011,
380	PF13MD_100, PF13MD_101, PF13MD_110, PF13MD_111,
381	PF12MD_000, PF12MD_001, PF12MD_010, PF12MD_011,
382	PF12MD_100, PF12MD_101, PF12MD_110, PF12MD_111,
383
384	PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
385	PF11MD_100, PF11MD_101, PF11MD_110, PF11MD_111,
386	PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
387	PF10MD_100, PF10MD_101, PF10MD_110, PF10MD_111,
388	PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
389	PF9MD_100, PF9MD_101, PF9MD_110, PF9MD_111,
390	PF8MD_000, PF8MD_001, PF8MD_010, PF8MD_011,
391	PF8MD_100, PF8MD_101, PF8MD_110, PF8MD_111,
392
393	PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
394	PF7MD_100, PF7MD_101, PF7MD_110, PF7MD_111,
395	PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
396	PF6MD_100, PF6MD_101, PF6MD_110, PF6MD_111,
397	PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
398	PF5MD_100, PF5MD_101, PF5MD_110, PF5MD_111,
399	PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
400	PF4MD_100, PF4MD_101, PF4MD_110, PF4MD_111,
401
402	PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
403	PF3MD_100, PF3MD_101, PF3MD_110, PF3MD_111,
404	PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
405	PF2MD_100, PF2MD_101, PF2MD_110, PF2MD_111,
406	PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
407	PF1MD_100, PF1MD_101, PF1MD_110, PF1MD_111,
408	PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
409	PF0MD_100, PF0MD_101, PF0MD_110, PF0MD_111,
410
411	/* Port G */
412	PG27_IOR_IN, PG27_IOR_OUT,
413	PG26_IOR_IN, PG26_IOR_OUT,
414	PG25_IOR_IN, PG25_IOR_OUT,
415	PG24_IOR_IN, PG24_IOR_OUT,
416	PG23_IOR_IN, PG23_IOR_OUT,
417	PG22_IOR_IN, PG22_IOR_OUT,
418	PG21_IOR_IN, PG21_IOR_OUT,
419	PG20_IOR_IN, PG20_IOR_OUT,
420	PG19_IOR_IN, PG19_IOR_OUT,
421	PG18_IOR_IN, PG18_IOR_OUT,
422	PG17_IOR_IN, PG17_IOR_OUT,
423	PG16_IOR_IN, PG16_IOR_OUT,
424	PG15_IOR_IN, PG15_IOR_OUT,
425	PG14_IOR_IN, PG14_IOR_OUT,
426	PG13_IOR_IN, PG13_IOR_OUT,
427	PG12_IOR_IN, PG12_IOR_OUT,
428	PG11_IOR_IN, PG11_IOR_OUT,
429	PG10_IOR_IN, PG10_IOR_OUT,
430	PG9_IOR_IN, PG9_IOR_OUT,
431	PG8_IOR_IN, PG8_IOR_OUT,
432	PG7_IOR_IN, PG7_IOR_OUT,
433	PG6_IOR_IN, PG6_IOR_OUT,
434	PG5_IOR_IN, PG5_IOR_OUT,
435	PG4_IOR_IN, PG4_IOR_OUT,
436	PG3_IOR_IN, PG3_IOR_OUT,
437	PG2_IOR_IN, PG2_IOR_OUT,
438	PG1_IOR_IN, PG1_IOR_OUT,
439	PG0_IOR_IN, PG0_IOR_OUT,
440
441	PG27MD_00, PG27MD_01, PG27MD_10, PG27MD_11,
442	PG26MD_00, PG26MD_01, PG26MD_10, PG26MD_11,
443	PG25MD_00, PG25MD_01, PG25MD_10, PG25MD_11,
444	PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11,
445
446	PG23MD_000, PG23MD_001, PG23MD_010, PG23MD_011,
447	PG23MD_100, PG23MD_101, PG23MD_110, PG23MD_111,
448	PG22MD_000, PG22MD_001, PG22MD_010, PG22MD_011,
449	PG22MD_100, PG22MD_101, PG22MD_110, PG22MD_111,
450	PG21MD_000, PG21MD_001, PG21MD_010, PG21MD_011,
451	PG21MD_100, PG21MD_101, PG21MD_110, PG21MD_111,
452	PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
453	PG20MD_100, PG20MD_101, PG20MD_110, PG20MD_111,
454
455	PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
456	PG19MD_100, PG19MD_101, PG19MD_110, PG19MD_111,
457	PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
458	PG18MD_100, PG18MD_101, PG18MD_110, PG18MD_111,
459	PG17MD_00, PG17MD_01, PG17MD_10, PG17MD_11,
460	PG16MD_00, PG16MD_01, PG16MD_10, PG16MD_11,
461
462	PG15MD_00, PG15MD_01, PG15MD_10, PG15MD_11,
463	PG14MD_00, PG14MD_01, PG14MD_10, PG14MD_11,
464	PG13MD_00, PG13MD_01, PG13MD_10, PG13MD_11,
465	PG12MD_00, PG12MD_01, PG12MD_10, PG12MD_11,
466
467	PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
468	PG11MD_100, PG11MD_101, PG11MD_110, PG11MD_111,
469	PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
470	PG10MD_100, PG10MD_101, PG10MD_110, PG10MD_111,
471	PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
472	PG9MD_100, PG9MD_101, PG9MD_110, PG9MD_111,
473	PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
474	PG8MD_100, PG8MD_101, PG8MD_110, PG8MD_111,
475
476	PG7MD_000, PG7MD_001, PG7MD_010, PG7MD_011,
477	PG7MD_100, PG7MD_101, PG7MD_110, PG7MD_111,
478	PG6MD_000, PG6MD_001, PG6MD_010, PG6MD_011,
479	PG6MD_100, PG6MD_101, PG6MD_110, PG6MD_111,
480	PG5MD_000, PG5MD_001, PG5MD_010, PG5MD_011,
481	PG5MD_100, PG5MD_101, PG5MD_110, PG5MD_111,
482	PG4MD_000, PG4MD_001, PG4MD_010, PG4MD_011,
483	PG4MD_100, PG4MD_101, PG4MD_110, PG4MD_111,
484
485	PG3MD_000, PG3MD_001, PG3MD_010, PG3MD_011,
486	PG3MD_100, PG3MD_101, PG3MD_110, PG3MD_111,
487	PG2MD_000, PG2MD_001, PG2MD_010, PG2MD_011,
488	PG2MD_100, PG2MD_101, PG2MD_110, PG2MD_111,
489	PG1MD_000, PG1MD_001, PG1MD_010, PG1MD_011,
490	PG1MD_100, PG1MD_101, PG1MD_110, PG1MD_111,
491	PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
492	PG0MD_100, PG0MD_101, PG0MD_110, PG0MD_111,
493
494	/* Port H */
495	PH7MD_00, PH7MD_01, PH7MD_10, PH7MD_11,
496	PH6MD_00, PH6MD_01, PH6MD_10, PH6MD_11,
497	PH5MD_00, PH5MD_01, PH5MD_10, PH5MD_11,
498	PH4MD_00, PH4MD_01, PH4MD_10, PH4MD_11,
499
500	PH3MD_00, PH3MD_01, PH3MD_10, PH3MD_11,
501	PH2MD_00, PH2MD_01, PH2MD_10, PH2MD_11,
502	PH1MD_00, PH1MD_01, PH1MD_10, PH1MD_11,
503	PH0MD_00, PH0MD_01, PH0MD_10, PH0MD_11,
504
505	/* Port I - not on device */
506
507	/* Port J */
508	PJ31_IOR_IN, PJ31_IOR_OUT,
509	PJ30_IOR_IN, PJ30_IOR_OUT,
510	PJ29_IOR_IN, PJ29_IOR_OUT,
511	PJ28_IOR_IN, PJ28_IOR_OUT,
512	PJ27_IOR_IN, PJ27_IOR_OUT,
513	PJ26_IOR_IN, PJ26_IOR_OUT,
514	PJ25_IOR_IN, PJ25_IOR_OUT,
515	PJ24_IOR_IN, PJ24_IOR_OUT,
516	PJ23_IOR_IN, PJ23_IOR_OUT,
517	PJ22_IOR_IN, PJ22_IOR_OUT,
518	PJ21_IOR_IN, PJ21_IOR_OUT,
519	PJ20_IOR_IN, PJ20_IOR_OUT,
520	PJ19_IOR_IN, PJ19_IOR_OUT,
521	PJ18_IOR_IN, PJ18_IOR_OUT,
522	PJ17_IOR_IN, PJ17_IOR_OUT,
523	PJ16_IOR_IN, PJ16_IOR_OUT,
524	PJ15_IOR_IN, PJ15_IOR_OUT,
525	PJ14_IOR_IN, PJ14_IOR_OUT,
526	PJ13_IOR_IN, PJ13_IOR_OUT,
527	PJ12_IOR_IN, PJ12_IOR_OUT,
528	PJ11_IOR_IN, PJ11_IOR_OUT,
529	PJ10_IOR_IN, PJ10_IOR_OUT,
530	PJ9_IOR_IN, PJ9_IOR_OUT,
531	PJ8_IOR_IN, PJ8_IOR_OUT,
532	PJ7_IOR_IN, PJ7_IOR_OUT,
533	PJ6_IOR_IN, PJ6_IOR_OUT,
534	PJ5_IOR_IN, PJ5_IOR_OUT,
535	PJ4_IOR_IN, PJ4_IOR_OUT,
536	PJ3_IOR_IN, PJ3_IOR_OUT,
537	PJ2_IOR_IN, PJ2_IOR_OUT,
538	PJ1_IOR_IN, PJ1_IOR_OUT,
539	PJ0_IOR_IN, PJ0_IOR_OUT,
540
541	PJ31MD_0, PJ31MD_1,
542	PJ30MD_000, PJ30MD_001, PJ30MD_010, PJ30MD_011,
543	PJ30MD_100, PJ30MD_101, PJ30MD_110, PJ30MD_111,
544	PJ29MD_000, PJ29MD_001, PJ29MD_010, PJ29MD_011,
545	PJ29MD_100, PJ29MD_101, PJ29MD_110, PJ29MD_111,
546	PJ28MD_000, PJ28MD_001, PJ28MD_010, PJ28MD_011,
547	PJ28MD_100, PJ28MD_101, PJ28MD_110, PJ28MD_111,
548
549	PJ27MD_000, PJ27MD_001, PJ27MD_010, PJ27MD_011,
550	PJ27MD_100, PJ27MD_101, PJ27MD_110, PJ27MD_111,
551	PJ26MD_000, PJ26MD_001, PJ26MD_010, PJ26MD_011,
552	PJ26MD_100, PJ26MD_101, PJ26MD_110, PJ26MD_111,
553	PJ25MD_000, PJ25MD_001, PJ25MD_010, PJ25MD_011,
554	PJ25MD_100, PJ25MD_101, PJ25MD_110, PJ25MD_111,
555	PJ24MD_000, PJ24MD_001, PJ24MD_010, PJ24MD_011,
556	PJ24MD_100, PJ24MD_101, PJ24MD_110, PJ24MD_111,
557
558	PJ23MD_000, PJ23MD_001, PJ23MD_010, PJ23MD_011,
559	PJ23MD_100, PJ23MD_101, PJ23MD_110, PJ23MD_111,
560	PJ22MD_000, PJ22MD_001, PJ22MD_010, PJ22MD_011,
561	PJ22MD_100, PJ22MD_101, PJ22MD_110, PJ22MD_111,
562	PJ21MD_000, PJ21MD_001, PJ21MD_010, PJ21MD_011,
563	PJ21MD_100, PJ21MD_101, PJ21MD_110, PJ21MD_111,
564	PJ20MD_000, PJ20MD_001, PJ20MD_010, PJ20MD_011,
565	PJ20MD_100, PJ20MD_101, PJ20MD_110, PJ20MD_111,
566
567	PJ19MD_000, PJ19MD_001, PJ19MD_010, PJ19MD_011,
568	PJ19MD_100, PJ19MD_101, PJ19MD_110, PJ19MD_111,
569	PJ18MD_000, PJ18MD_001, PJ18MD_010, PJ18MD_011,
570	PJ18MD_100, PJ18MD_101, PJ18MD_110, PJ18MD_111,
571	PJ17MD_000, PJ17MD_001, PJ17MD_010, PJ17MD_011,
572	PJ17MD_100, PJ17MD_101, PJ17MD_110, PJ17MD_111,
573	PJ16MD_000, PJ16MD_001, PJ16MD_010, PJ16MD_011,
574	PJ16MD_100, PJ16MD_101, PJ16MD_110, PJ16MD_111,
575
576	PJ15MD_000, PJ15MD_001, PJ15MD_010, PJ15MD_011,
577	PJ15MD_100, PJ15MD_101, PJ15MD_110, PJ15MD_111,
578	PJ14MD_000, PJ14MD_001, PJ14MD_010, PJ14MD_011,
579	PJ14MD_100, PJ14MD_101, PJ14MD_110, PJ14MD_111,
580	PJ13MD_000, PJ13MD_001, PJ13MD_010, PJ13MD_011,
581	PJ13MD_100, PJ13MD_101, PJ13MD_110, PJ13MD_111,
582	PJ12MD_000, PJ12MD_001, PJ12MD_010, PJ12MD_011,
583	PJ12MD_100, PJ12MD_101, PJ12MD_110, PJ12MD_111,
584
585	PJ11MD_000, PJ11MD_001, PJ11MD_010, PJ11MD_011,
586	PJ11MD_100, PJ11MD_101, PJ11MD_110, PJ11MD_111,
587	PJ10MD_000, PJ10MD_001, PJ10MD_010, PJ10MD_011,
588	PJ10MD_100, PJ10MD_101, PJ10MD_110, PJ10MD_111,
589	PJ9MD_000, PJ9MD_001, PJ9MD_010, PJ9MD_011,
590	PJ9MD_100, PJ9MD_101, PJ9MD_110, PJ9MD_111,
591	PJ8MD_000, PJ8MD_001, PJ8MD_010, PJ8MD_011,
592	PJ8MD_100, PJ8MD_101, PJ8MD_110, PJ8MD_111,
593
594	PJ7MD_000, PJ7MD_001, PJ7MD_010, PJ7MD_011,
595	PJ7MD_100, PJ7MD_101, PJ7MD_110, PJ7MD_111,
596	PJ6MD_000, PJ6MD_001, PJ6MD_010, PJ6MD_011,
597	PJ6MD_100, PJ6MD_101, PJ6MD_110, PJ6MD_111,
598	PJ5MD_000, PJ5MD_001, PJ5MD_010, PJ5MD_011,
599	PJ5MD_100, PJ5MD_101, PJ5MD_110, PJ5MD_111,
600	PJ4MD_000, PJ4MD_001, PJ4MD_010, PJ4MD_011,
601	PJ4MD_100, PJ4MD_101, PJ4MD_110, PJ4MD_111,
602
603	PJ3MD_000, PJ3MD_001, PJ3MD_010, PJ3MD_011,
604	PJ3MD_100, PJ3MD_101, PJ3MD_110, PJ3MD_111,
605	PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
606	PJ2MD_100, PJ2MD_101, PJ2MD_110, PJ2MD_111,
607	PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
608	PJ1MD_100, PJ1MD_101, PJ1MD_110, PJ1MD_111,
609	PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
610	PJ0MD_100, PJ0MD_101, PJ0MD_110, PJ0MD_111,
611
612	PINMUX_FUNCTION_END,
613
614	PINMUX_MARK_BEGIN,
615	/* Port H */
616	PHAN7_MARK, PHAN6_MARK, PHAN5_MARK, PHAN4_MARK,
617	PHAN3_MARK, PHAN2_MARK, PHAN1_MARK, PHAN0_MARK,
618
619	/* IRQs */
620	IRQ7_PG_MARK, IRQ6_PG_MARK, IRQ5_PG_MARK, IRQ4_PG_MARK,
621	IRQ3_PG_MARK, IRQ2_PG_MARK, IRQ1_PG_MARK, IRQ0_PG_MARK,
622	IRQ7_PF_MARK, IRQ6_PF_MARK, IRQ5_PF_MARK, IRQ4_PF_MARK,
623	IRQ3_PJ_MARK, IRQ2_PJ_MARK, IRQ1_PJ_MARK, IRQ0_PJ_MARK,
624	IRQ1_PC_MARK, IRQ0_PC_MARK,
625
626	PINT7_PG_MARK, PINT6_PG_MARK, PINT5_PG_MARK, PINT4_PG_MARK,
627	PINT3_PG_MARK, PINT2_PG_MARK, PINT1_PG_MARK, PINT0_PG_MARK,
628	PINT7_PH_MARK, PINT6_PH_MARK, PINT5_PH_MARK, PINT4_PH_MARK,
629	PINT3_PH_MARK, PINT2_PH_MARK, PINT1_PH_MARK, PINT0_PH_MARK,
630	PINT7_PJ_MARK, PINT6_PJ_MARK, PINT5_PJ_MARK, PINT4_PJ_MARK,
631	PINT3_PJ_MARK, PINT2_PJ_MARK, PINT1_PJ_MARK, PINT0_PJ_MARK,
632
633	/* SD */
634	SD_D0_MARK, SD_D1_MARK, SD_D2_MARK, SD_D3_MARK,
635	SD_WP_MARK, SD_CLK_MARK, SD_CMD_MARK, SD_CD_MARK,
636
637	/* MMC */
638	MMC_D0_MARK, MMC_D1_MARK, MMC_D2_MARK, MMC_D3_MARK,
639	MMC_D4_MARK, MMC_D5_MARK, MMC_D6_MARK, MMC_D7_MARK,
640	MMC_CLK_MARK, MMC_CMD_MARK, MMC_CD_MARK,
641
642	/* PWM */
643	PWM1A_MARK, PWM1B_MARK, PWM1C_MARK, PWM1D_MARK,
644	PWM1E_MARK, PWM1F_MARK, PWM1G_MARK, PWM1H_MARK,
645	PWM2A_MARK, PWM2B_MARK, PWM2C_MARK, PWM2D_MARK,
646	PWM2E_MARK, PWM2F_MARK, PWM2G_MARK, PWM2H_MARK,
647
648	/* IEBus */
649	IERXD_MARK, IETXD_MARK,
650
651	/* WDT */
652	WDTOVF_MARK,
653
654	/* DMAC */
655	TEND0_MARK, DACK0_MARK, DREQ0_MARK,
656	TEND1_MARK, DACK1_MARK, DREQ1_MARK,
657
658	/* ADC */
659	ADTRG_MARK,
660
661	/* BSC */
662	A25_MARK, A24_MARK,
663	A23_MARK, A22_MARK, A21_MARK, A20_MARK,
664	A19_MARK, A18_MARK, A17_MARK, A16_MARK,
665	A15_MARK, A14_MARK, A13_MARK, A12_MARK,
666	A11_MARK, A10_MARK, A9_MARK, A8_MARK,
667	A7_MARK, A6_MARK, A5_MARK, A4_MARK,
668	A3_MARK, A2_MARK, A1_MARK, A0_MARK,
669	D31_MARK, D30_MARK, D29_MARK, D28_MARK,
670	D27_MARK, D26_MARK, D25_MARK, D24_MARK,
671	D23_MARK, D22_MARK, D21_MARK, D20_MARK,
672	D19_MARK, D18_MARK, D17_MARK, D16_MARK,
673	D15_MARK, D14_MARK, D13_MARK, D12_MARK,
674	D11_MARK, D10_MARK, D9_MARK, D8_MARK,
675	D7_MARK, D6_MARK, D5_MARK, D4_MARK,
676	D3_MARK, D2_MARK, D1_MARK, D0_MARK,
677	BS_MARK,
678	CS4_MARK, CS3_MARK, CS2_MARK, CS1_MARK, CS0_MARK,
679	CS5CE1A_MARK,
680	CE2A_MARK, CE2B_MARK,
681	RD_MARK, RDWR_MARK,
682	WE3ICIOWRAHDQMUU_MARK,
683	WE2ICIORDDQMUL_MARK,
684	WE1DQMUWE_MARK,
685	WE0DQML_MARK,
686	RAS_MARK, CAS_MARK, CKE_MARK,
687	WAIT_MARK, BREQ_MARK, BACK_MARK, IOIS16_MARK,
688
689	/* TMU */
690	TIOC0A_MARK, TIOC0B_MARK, TIOC0C_MARK, TIOC0D_MARK,
691	TIOC1A_MARK, TIOC1B_MARK,
692	TIOC2A_MARK, TIOC2B_MARK,
693	TIOC3A_MARK, TIOC3B_MARK, TIOC3C_MARK, TIOC3D_MARK,
694	TIOC4A_MARK, TIOC4B_MARK, TIOC4C_MARK, TIOC4D_MARK,
695	TCLKA_MARK, TCLKB_MARK, TCLKC_MARK, TCLKD_MARK,
696
697	/* SCIF */
698	SCK0_MARK, RXD0_MARK, TXD0_MARK,
699	SCK1_MARK, RXD1_MARK, TXD1_MARK, RTS1_MARK, CTS1_MARK,
700	SCK2_MARK, RXD2_MARK, TXD2_MARK,
701	SCK3_MARK, RXD3_MARK, TXD3_MARK,
702	SCK4_MARK, RXD4_MARK, TXD4_MARK,
703	SCK5_MARK, RXD5_MARK, TXD5_MARK, RTS5_MARK, CTS5_MARK,
704	SCK6_MARK, RXD6_MARK, TXD6_MARK,
705	SCK7_MARK, RXD7_MARK, TXD7_MARK, RTS7_MARK, CTS7_MARK,
706
707	/* RSPI */
708	MISO0_PB20_MARK, MOSI0_PB19_MARK, SSL00_PB18_MARK, RSPCK0_PB17_MARK,
709	MISO0_PJ19_MARK, MOSI0_PJ18_MARK, SSL00_PJ17_MARK, RSPCK0_PJ16_MARK,
710	MISO1_MARK, MOSI1_MARK, SSL10_MARK, RSPCK1_MARK,
711
712	/* IIC3 */
713	SCL0_MARK, SDA0_MARK,
714	SCL1_MARK, SDA1_MARK,
715	SCL2_MARK, SDA2_MARK,
716	SCL3_MARK, SDA3_MARK,
717
718	/* SSI */
719	SSISCK0_MARK, SSIWS0_MARK, SSITXD0_MARK, SSIRXD0_MARK,
720	SSISCK1_MARK, SSIWS1_MARK, SSIDATA1_MARK,
721	SSISCK2_MARK, SSIWS2_MARK, SSIDATA2_MARK,
722	SSISCK3_MARK, SSIWS3_MARK, SSIDATA3_MARK,
723	SSISCK4_MARK, SSIWS4_MARK, SSIDATA4_MARK,
724	SSISCK5_MARK, SSIWS5_MARK, SSIDATA5_MARK,
725	AUDIO_CLK_MARK,
726	AUDIO_XOUT_MARK,
727
728	/* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
729	SIOFTXD_MARK, SIOFRXD_MARK, SIOFSYNC_MARK, SIOFSCK_MARK,
730
731	/* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
732	SPDIF_IN_MARK, SPDIF_OUT_MARK,
733	SPDIF_IN_PJ24_MARK, SPDIF_OUT_PJ25_MARK,
734
735	/* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
736	FCE_MARK,
737	FRB_MARK,
738
739	/* CAN */
740	CRX0_MARK, CTX0_MARK,
741	CRX1_MARK, CTX1_MARK,
742	CRX2_MARK, CTX2_MARK,
743	CRX0_CRX1_MARK,
744	CRX0_CRX1_CRX2_MARK,
745	CTX0CTX1CTX2_MARK,
746	CRX1_PJ22_MARK, CTX1_PJ23_MARK,
747	CRX2_PJ20_MARK, CTX2_PJ21_MARK,
748	CRX0CRX1_PJ22_MARK,
749	CRX0CRX1CRX2_PJ20_MARK,
750
751	/* VDC */
752	DV_CLK_MARK,
753	DV_VSYNC_MARK, DV_HSYNC_MARK,
754	DV_DATA23_MARK, DV_DATA22_MARK, DV_DATA21_MARK, DV_DATA20_MARK,
755	DV_DATA19_MARK, DV_DATA18_MARK, DV_DATA17_MARK, DV_DATA16_MARK,
756	DV_DATA15_MARK, DV_DATA14_MARK, DV_DATA13_MARK, DV_DATA12_MARK,
757	DV_DATA11_MARK, DV_DATA10_MARK, DV_DATA9_MARK, DV_DATA8_MARK,
758	DV_DATA7_MARK, DV_DATA6_MARK, DV_DATA5_MARK, DV_DATA4_MARK,
759	DV_DATA3_MARK, DV_DATA2_MARK, DV_DATA1_MARK, DV_DATA0_MARK,
760	LCD_CLK_MARK, LCD_EXTCLK_MARK,
761	LCD_VSYNC_MARK, LCD_HSYNC_MARK, LCD_DE_MARK,
762	LCD_DATA23_PG23_MARK, LCD_DATA22_PG22_MARK, LCD_DATA21_PG21_MARK,
763	LCD_DATA20_PG20_MARK, LCD_DATA19_PG19_MARK, LCD_DATA18_PG18_MARK,
764	LCD_DATA17_PG17_MARK, LCD_DATA16_PG16_MARK, LCD_DATA15_PG15_MARK,
765	LCD_DATA14_PG14_MARK, LCD_DATA13_PG13_MARK, LCD_DATA12_PG12_MARK,
766	LCD_DATA11_PG11_MARK, LCD_DATA10_PG10_MARK, LCD_DATA9_PG9_MARK,
767	LCD_DATA8_PG8_MARK, LCD_DATA7_PG7_MARK, LCD_DATA6_PG6_MARK,
768	LCD_DATA5_PG5_MARK, LCD_DATA4_PG4_MARK, LCD_DATA3_PG3_MARK,
769	LCD_DATA2_PG2_MARK, LCD_DATA1_PG1_MARK, LCD_DATA0_PG0_MARK,
770	LCD_DATA23_PJ23_MARK, LCD_DATA22_PJ22_MARK, LCD_DATA21_PJ21_MARK,
771	LCD_DATA20_PJ20_MARK, LCD_DATA19_PJ19_MARK, LCD_DATA18_PJ18_MARK,
772	LCD_DATA17_PJ17_MARK, LCD_DATA16_PJ16_MARK, LCD_DATA15_PJ15_MARK,
773	LCD_DATA14_PJ14_MARK, LCD_DATA13_PJ13_MARK, LCD_DATA12_PJ12_MARK,
774	LCD_DATA11_PJ11_MARK, LCD_DATA10_PJ10_MARK, LCD_DATA9_PJ9_MARK,
775	LCD_DATA8_PJ8_MARK, LCD_DATA7_PJ7_MARK, LCD_DATA6_PJ6_MARK,
776	LCD_DATA5_PJ5_MARK, LCD_DATA4_PJ4_MARK, LCD_DATA3_PJ3_MARK,
777	LCD_DATA2_PJ2_MARK, LCD_DATA1_PJ1_MARK, LCD_DATA0_PJ0_MARK,
778	LCD_TCON6_MARK, LCD_TCON5_MARK, LCD_TCON4_MARK,
779	LCD_TCON3_MARK, LCD_TCON2_MARK, LCD_TCON1_MARK, LCD_TCON0_MARK,
780	LCD_M_DISP_MARK,
781	PINMUX_MARK_END,
782};
783
784static const u16 pinmux_data[] = {
785	/* Port A */
786	PINMUX_DATA(PA1_DATA, PA1_IN),
787	PINMUX_DATA(PA0_DATA, PA0_IN),
788
789	/* Port B */
790	PINMUX_DATA(PB22_DATA, PB22MD_000, PB22_IN, PB22_OUT),
791	PINMUX_DATA(A22_MARK, PB22MD_001),
792	PINMUX_DATA(CTX2_MARK, PB22MD_010),
793	PINMUX_DATA(IETXD_MARK, PB22MD_011),
794	PINMUX_DATA(CS4_MARK, PB22MD_100),
795
796	PINMUX_DATA(PB21_DATA, PB21MD_00, PB21_IN, PB21_OUT),
797	PINMUX_DATA(A21_MARK, PB21MD_01),
798	PINMUX_DATA(CRX2_MARK, PB21MD_10),
799	PINMUX_DATA(IERXD_MARK, PB21MD_11),
800
801	PINMUX_DATA(A20_MARK, PB20MD_001),
802	PINMUX_DATA(A19_MARK, PB19MD_001),
803	PINMUX_DATA(A18_MARK, PB18MD_001),
804	PINMUX_DATA(A17_MARK, PB17MD_001),
805	PINMUX_DATA(A16_MARK, PB16MD_001),
806	PINMUX_DATA(A15_MARK, PB15MD_001),
807	PINMUX_DATA(A14_MARK, PB14MD_001),
808	PINMUX_DATA(A13_MARK, PB13MD_001),
809	PINMUX_DATA(A12_MARK, PB12MD_01),
810	PINMUX_DATA(A11_MARK, PB11MD_01),
811	PINMUX_DATA(A10_MARK, PB10MD_01),
812	PINMUX_DATA(A9_MARK, PB9MD_01),
813	PINMUX_DATA(A8_MARK, PB8MD_01),
814	PINMUX_DATA(A7_MARK, PB7MD_01),
815	PINMUX_DATA(A6_MARK, PB6MD_01),
816	PINMUX_DATA(A5_MARK, PB5MD_01),
817	PINMUX_DATA(A4_MARK, PB4MD_01),
818	PINMUX_DATA(A3_MARK, PB3MD_01),
819	PINMUX_DATA(A2_MARK, PB2MD_01),
820	PINMUX_DATA(A1_MARK, PB1MD_01),
821
822	/* Port C */
823	PINMUX_DATA(PC8_DATA, PC8MD_000),
824	PINMUX_DATA(CS3_MARK, PC8MD_001),
825	PINMUX_DATA(TXD7_MARK, PC8MD_010),
826	PINMUX_DATA(CTX1_MARK, PC8MD_011),
827
828	PINMUX_DATA(PC7_DATA, PC7MD_000),
829	PINMUX_DATA(CKE_MARK, PC7MD_001),
830	PINMUX_DATA(RXD7_MARK, PC7MD_010),
831	PINMUX_DATA(CRX1_MARK, PC7MD_011),
832	PINMUX_DATA(CRX0_CRX1_MARK, PC7MD_100),
833	PINMUX_DATA(IRQ1_PC_MARK, PC7MD_101),
834
835	PINMUX_DATA(PC6_DATA, PC6MD_000),
836	PINMUX_DATA(CAS_MARK, PC6MD_001),
837	PINMUX_DATA(SCK7_MARK, PC6MD_010),
838	PINMUX_DATA(CTX0_MARK, PC6MD_011),
839
840	PINMUX_DATA(PC5_DATA, PC5MD_000),
841	PINMUX_DATA(RAS_MARK, PC5MD_001),
842	PINMUX_DATA(CRX0_MARK, PC5MD_011),
843	PINMUX_DATA(CTX0CTX1CTX2_MARK, PC5MD_100),
844	PINMUX_DATA(IRQ0_PC_MARK, PC5MD_101),
845
846	PINMUX_DATA(PC4_DATA, PC4MD_00),
847	PINMUX_DATA(WE1DQMUWE_MARK, PC4MD_01),
848	PINMUX_DATA(TXD6_MARK, PC4MD_10),
849
850	PINMUX_DATA(PC3_DATA, PC3MD_00),
851	PINMUX_DATA(WE0DQML_MARK, PC3MD_01),
852	PINMUX_DATA(RXD6_MARK, PC3MD_10),
853
854	PINMUX_DATA(PC2_DATA, PC2MD_00),
855	PINMUX_DATA(RDWR_MARK, PC2MD_01),
856	PINMUX_DATA(SCK5_MARK, PC2MD_10),
857
858	PINMUX_DATA(PC1_DATA, PC1MD_0),
859	PINMUX_DATA(RD_MARK, PC1MD_1),
860
861	PINMUX_DATA(PC0_DATA, PC0MD_0),
862	PINMUX_DATA(CS0_MARK, PC0MD_1),
863
864	/* Port D */
865	PINMUX_DATA(D15_MARK, PD15MD_01),
866	PINMUX_DATA(D14_MARK, PD14MD_01),
867
868	PINMUX_DATA(PD13_DATA, PD13MD_00),
869	PINMUX_DATA(D13_MARK, PD13MD_01),
870	PINMUX_DATA(PWM2F_MARK, PD13MD_10),
871
872	PINMUX_DATA(PD12_DATA, PD12MD_00),
873	PINMUX_DATA(D12_MARK, PD12MD_01),
874	PINMUX_DATA(PWM2E_MARK, PD12MD_10),
875
876	PINMUX_DATA(D11_MARK, PD11MD_01),
877	PINMUX_DATA(D10_MARK, PD10MD_01),
878	PINMUX_DATA(D9_MARK, PD9MD_01),
879	PINMUX_DATA(D8_MARK, PD8MD_01),
880	PINMUX_DATA(D7_MARK, PD7MD_01),
881	PINMUX_DATA(D6_MARK, PD6MD_01),
882	PINMUX_DATA(D5_MARK, PD5MD_01),
883	PINMUX_DATA(D4_MARK, PD4MD_01),
884	PINMUX_DATA(D3_MARK, PD3MD_01),
885	PINMUX_DATA(D2_MARK, PD2MD_01),
886	PINMUX_DATA(D1_MARK, PD1MD_01),
887	PINMUX_DATA(D0_MARK, PD0MD_01),
888
889	/* Port E */
890	PINMUX_DATA(PE7_DATA, PE7MD_00),
891	PINMUX_DATA(SDA3_MARK, PE7MD_01),
892	PINMUX_DATA(RXD7_MARK, PE7MD_10),
893
894	PINMUX_DATA(PE6_DATA, PE6MD_00),
895	PINMUX_DATA(SCL3_MARK, PE6MD_01),
896	PINMUX_DATA(RXD6_MARK, PE6MD_10),
897
898	PINMUX_DATA(PE5_DATA, PE5MD_00),
899	PINMUX_DATA(SDA2_MARK, PE5MD_01),
900	PINMUX_DATA(RXD5_MARK, PE5MD_10),
901	PINMUX_DATA(DV_HSYNC_MARK, PE5MD_11),
902
903	PINMUX_DATA(PE4_DATA, PE4MD_00),
904	PINMUX_DATA(SCL2_MARK, PE4MD_01),
905	PINMUX_DATA(DV_VSYNC_MARK, PE4MD_11),
906
907	PINMUX_DATA(PE3_DATA, PE3MD_000),
908	PINMUX_DATA(SDA1_MARK, PE3MD_001),
909	PINMUX_DATA(TCLKD_MARK, PE3MD_010),
910	PINMUX_DATA(ADTRG_MARK, PE3MD_011),
911	PINMUX_DATA(DV_HSYNC_MARK, PE3MD_100),
912
913	PINMUX_DATA(PE2_DATA, PE2MD_000),
914	PINMUX_DATA(SCL1_MARK, PE2MD_001),
915	PINMUX_DATA(TCLKD_MARK, PE2MD_010),
916	PINMUX_DATA(IOIS16_MARK, PE2MD_011),
917	PINMUX_DATA(DV_VSYNC_MARK, PE2MD_100),
918
919	PINMUX_DATA(PE1_DATA, PE1MD_000),
920	PINMUX_DATA(SDA0_MARK, PE1MD_001),
921	PINMUX_DATA(TCLKB_MARK, PE1MD_010),
922	PINMUX_DATA(AUDIO_CLK_MARK, PE1MD_010),
923	PINMUX_DATA(DV_CLK_MARK, PE1MD_100),
924
925	PINMUX_DATA(PE0_DATA, PE0MD_00),
926	PINMUX_DATA(SCL0_MARK, PE0MD_01),
927	PINMUX_DATA(TCLKA_MARK, PE0MD_10),
928	PINMUX_DATA(LCD_EXTCLK_MARK, PE0MD_11),
929
930	/* Port F */
931	PINMUX_DATA(PF23_DATA, PF23MD_000),
932	PINMUX_DATA(SD_D2_MARK, PF23MD_001),
933	PINMUX_DATA(TXD3_MARK, PF23MD_100),
934	PINMUX_DATA(MMC_D2_MARK, PF23MD_101),
935
936	PINMUX_DATA(PF22_DATA, PF22MD_000),
937	PINMUX_DATA(SD_D3_MARK, PF22MD_001),
938	PINMUX_DATA(RXD3_MARK, PF22MD_100),
939	PINMUX_DATA(MMC_D3_MARK, PF22MD_101),
940
941	PINMUX_DATA(PF21_DATA, PF21MD_000),
942	PINMUX_DATA(SD_CMD_MARK, PF21MD_001),
943	PINMUX_DATA(SCK3_MARK, PF21MD_100),
944	PINMUX_DATA(MMC_CMD_MARK, PF21MD_101),
945
946	PINMUX_DATA(PF20_DATA, PF20MD_000),
947	PINMUX_DATA(SD_CLK_MARK, PF20MD_001),
948	PINMUX_DATA(SSIDATA3_MARK, PF20MD_010),
949	PINMUX_DATA(MMC_CLK_MARK, PF20MD_101),
950
951	PINMUX_DATA(PF19_DATA, PF19MD_000),
952	PINMUX_DATA(SD_D0_MARK, PF19MD_001),
953	PINMUX_DATA(SSIWS3_MARK, PF19MD_010),
954	PINMUX_DATA(IRQ7_PF_MARK, PF19MD_100),
955	PINMUX_DATA(MMC_D0_MARK, PF19MD_101),
956
957	PINMUX_DATA(PF18_DATA, PF18MD_000),
958	PINMUX_DATA(SD_D1_MARK, PF18MD_001),
959	PINMUX_DATA(SSISCK3_MARK, PF18MD_010),
960	PINMUX_DATA(IRQ6_PF_MARK, PF18MD_100),
961	PINMUX_DATA(MMC_D1_MARK, PF18MD_101),
962
963	PINMUX_DATA(PF17_DATA, PF17MD_000),
964	PINMUX_DATA(SD_WP_MARK, PF17MD_001),
965	PINMUX_DATA(FRB_MARK, PF17MD_011),
966	PINMUX_DATA(IRQ5_PF_MARK, PF17MD_100),
967
968	PINMUX_DATA(PF16_DATA, PF16MD_000),
969	PINMUX_DATA(SD_CD_MARK, PF16MD_001),
970	PINMUX_DATA(FCE_MARK, PF16MD_011),
971	PINMUX_DATA(IRQ4_PF_MARK, PF16MD_100),
972	PINMUX_DATA(MMC_CD_MARK, PF16MD_101),
973
974	PINMUX_DATA(PF15_DATA, PF15MD_000),
975	PINMUX_DATA(A0_MARK, PF15MD_001),
976	PINMUX_DATA(SSIDATA2_MARK, PF15MD_010),
977	PINMUX_DATA(WDTOVF_MARK, PF15MD_011),
978	PINMUX_DATA(TXD2_MARK, PF15MD_100),
979
980	PINMUX_DATA(PF14_DATA, PF14MD_000),
981	PINMUX_DATA(A25_MARK, PF14MD_001),
982	PINMUX_DATA(SSIWS2_MARK, PF14MD_010),
983	PINMUX_DATA(RXD2_MARK, PF14MD_100),
984
985	PINMUX_DATA(PF13_DATA, PF13MD_000),
986	PINMUX_DATA(A24_MARK, PF13MD_001),
987	PINMUX_DATA(SSISCK2_MARK, PF13MD_010),
988	PINMUX_DATA(SCK2_MARK, PF13MD_100),
989
990	PINMUX_DATA(PF12_DATA, PF12MD_000),
991	PINMUX_DATA(SSIDATA1_MARK, PF12MD_010),
992	PINMUX_DATA(DV_DATA12_MARK, PF12MD_011),
993	PINMUX_DATA(TXD1_MARK, PF12MD_100),
994	PINMUX_DATA(MMC_D7_MARK, PF12MD_101),
995
996	PINMUX_DATA(PF11_DATA, PF11MD_000),
997	PINMUX_DATA(SSIWS1_MARK, PF11MD_010),
998	PINMUX_DATA(DV_DATA2_MARK, PF11MD_011),
999	PINMUX_DATA(RXD1_MARK, PF11MD_100),
1000	PINMUX_DATA(MMC_D6_MARK, PF11MD_101),
1001
1002	PINMUX_DATA(PF10_DATA, PF10MD_000),
1003	PINMUX_DATA(CS1_MARK, PF10MD_001),
1004	PINMUX_DATA(SSISCK1_MARK, PF10MD_010),
1005	PINMUX_DATA(DV_DATA1_MARK, PF10MD_011),
1006	PINMUX_DATA(SCK1_MARK, PF10MD_100),
1007	PINMUX_DATA(MMC_D5_MARK, PF10MD_101),
1008
1009	PINMUX_DATA(PF9_DATA, PF9MD_000),
1010	PINMUX_DATA(BS_MARK, PF9MD_001),
1011	PINMUX_DATA(DV_DATA0_MARK, PF9MD_011),
1012	PINMUX_DATA(SCK0_MARK, PF9MD_100),
1013	PINMUX_DATA(MMC_D4_MARK, PF9MD_101),
1014	PINMUX_DATA(RTS1_MARK, PF9MD_110),
1015
1016	PINMUX_DATA(PF8_DATA, PF8MD_000),
1017	PINMUX_DATA(A23_MARK, PF8MD_001),
1018	PINMUX_DATA(TXD0_MARK, PF8MD_100),
1019
1020	PINMUX_DATA(PF7_DATA, PF7MD_000),
1021	PINMUX_DATA(SSIRXD0_MARK, PF7MD_010),
1022	PINMUX_DATA(RXD0_MARK, PF7MD_100),
1023	PINMUX_DATA(CTS1_MARK, PF7MD_110),
1024
1025	PINMUX_DATA(PF6_DATA, PF6MD_000),
1026	PINMUX_DATA(CE2A_MARK, PF6MD_001),
1027	PINMUX_DATA(SSITXD0_MARK, PF6MD_010),
1028
1029	PINMUX_DATA(PF5_DATA, PF5MD_000),
1030	PINMUX_DATA(SSIWS0_MARK, PF5MD_010),
1031
1032	PINMUX_DATA(PF4_DATA, PF4MD_000),
1033	PINMUX_DATA(CS5CE1A_MARK, PF4MD_001),
1034	PINMUX_DATA(SSISCK0_MARK, PF4MD_010),
1035
1036	PINMUX_DATA(PF3_DATA, PF3MD_000),
1037	PINMUX_DATA(CS2_MARK, PF3MD_001),
1038	PINMUX_DATA(MISO1_MARK, PF3MD_011),
1039	PINMUX_DATA(TIOC4D_MARK, PF3MD_100),
1040
1041	PINMUX_DATA(PF2_DATA, PF2MD_000),
1042	PINMUX_DATA(WAIT_MARK, PF2MD_001),
1043	PINMUX_DATA(MOSI1_MARK, PF2MD_011),
1044	PINMUX_DATA(TIOC4C_MARK, PF2MD_100),
1045	PINMUX_DATA(TEND0_MARK, PF2MD_101),
1046
1047	PINMUX_DATA(PF1_DATA, PF1MD_000),
1048	PINMUX_DATA(BACK_MARK, PF1MD_001),
1049	PINMUX_DATA(SSL10_MARK, PF1MD_011),
1050	PINMUX_DATA(TIOC4B_MARK, PF1MD_100),
1051	PINMUX_DATA(DACK0_MARK, PF1MD_101),
1052
1053	PINMUX_DATA(PF0_DATA, PF0MD_000),
1054	PINMUX_DATA(BREQ_MARK, PF0MD_001),
1055	PINMUX_DATA(RSPCK1_MARK, PF0MD_011),
1056	PINMUX_DATA(TIOC4A_MARK, PF0MD_100),
1057	PINMUX_DATA(DREQ0_MARK, PF0MD_101),
1058
1059	/* Port G */
1060	PINMUX_DATA(PG27_DATA, PG27MD_00),
1061	PINMUX_DATA(LCD_TCON2_MARK, PG27MD_10),
1062	PINMUX_DATA(LCD_EXTCLK_MARK, PG27MD_11),
1063	PINMUX_DATA(LCD_DE_MARK, PG27MD_11),
1064
1065	PINMUX_DATA(PG26_DATA, PG26MD_00),
1066	PINMUX_DATA(LCD_TCON1_MARK, PG26MD_10),
1067	PINMUX_DATA(LCD_HSYNC_MARK, PG26MD_10),
1068
1069	PINMUX_DATA(PG25_DATA, PG25MD_00),
1070	PINMUX_DATA(LCD_TCON0_MARK, PG25MD_10),
1071	PINMUX_DATA(LCD_VSYNC_MARK, PG25MD_10),
1072
1073	PINMUX_DATA(PG24_DATA, PG24MD_00),
1074	PINMUX_DATA(LCD_CLK_MARK, PG24MD_10),
1075
1076	PINMUX_DATA(PG23_DATA, PG23MD_000),
1077	PINMUX_DATA(LCD_DATA23_PG23_MARK, PG23MD_010),
1078	PINMUX_DATA(LCD_TCON6_MARK, PG23MD_011),
1079	PINMUX_DATA(TXD5_MARK, PG23MD_100),
1080
1081	PINMUX_DATA(PG22_DATA, PG22MD_000),
1082	PINMUX_DATA(LCD_DATA22_PG22_MARK, PG22MD_010),
1083	PINMUX_DATA(LCD_TCON5_MARK, PG22MD_011),
1084	PINMUX_DATA(RXD5_MARK, PG22MD_100),
1085
1086	PINMUX_DATA(PG21_DATA, PG21MD_000),
1087	PINMUX_DATA(DV_DATA7_MARK, PG21MD_001),
1088	PINMUX_DATA(LCD_DATA21_PG21_MARK, PG21MD_010),
1089	PINMUX_DATA(LCD_TCON4_MARK, PG21MD_011),
1090	PINMUX_DATA(TXD4_MARK, PG21MD_100),
1091
1092	PINMUX_DATA(PG20_DATA, PG20MD_000),
1093	PINMUX_DATA(DV_DATA6_MARK, PG20MD_001),
1094	PINMUX_DATA(LCD_DATA20_PG20_MARK, PG21MD_010),
1095	PINMUX_DATA(LCD_TCON3_MARK, PG20MD_011),
1096	PINMUX_DATA(RXD4_MARK, PG20MD_100),
1097
1098	PINMUX_DATA(PG19_DATA, PG19MD_000),
1099	PINMUX_DATA(DV_DATA5_MARK, PG19MD_001),
1100	PINMUX_DATA(LCD_DATA19_PG19_MARK, PG19MD_010),
1101	PINMUX_DATA(SPDIF_OUT_MARK, PG19MD_011),
1102	PINMUX_DATA(SCK5_MARK, PG19MD_100),
1103
1104	PINMUX_DATA(PG18_DATA, PG18MD_000),
1105	PINMUX_DATA(DV_DATA4_MARK, PG18MD_001),
1106	PINMUX_DATA(LCD_DATA18_PG18_MARK, PG18MD_010),
1107	PINMUX_DATA(SPDIF_IN_MARK, PG18MD_011),
1108	PINMUX_DATA(SCK4_MARK, PG18MD_100),
1109
1110// TODO hardware manual has PG17 3 bits wide in reg picture and 2 bits in description
1111// we're going with 2 bits
1112	PINMUX_DATA(PG17_DATA, PG17MD_00),
1113	PINMUX_DATA(WE3ICIOWRAHDQMUU_MARK, PG17MD_01),
1114	PINMUX_DATA(LCD_DATA17_PG17_MARK, PG17MD_10),
1115
1116// TODO hardware manual has PG16 3 bits wide in reg picture and 2 bits in description
1117// we're going with 2 bits
1118	PINMUX_DATA(PG16_DATA, PG16MD_00),
1119	PINMUX_DATA(WE2ICIORDDQMUL_MARK, PG16MD_01),
1120	PINMUX_DATA(LCD_DATA16_PG16_MARK, PG16MD_10),
1121
1122	PINMUX_DATA(PG15_DATA, PG15MD_00),
1123	PINMUX_DATA(D31_MARK, PG15MD_01),
1124	PINMUX_DATA(LCD_DATA15_PG15_MARK, PG15MD_10),
1125	PINMUX_DATA(PINT7_PG_MARK, PG15MD_11),
1126
1127	PINMUX_DATA(PG14_DATA, PG14MD_00),
1128	PINMUX_DATA(D30_MARK, PG14MD_01),
1129	PINMUX_DATA(LCD_DATA14_PG14_MARK, PG14MD_10),
1130	PINMUX_DATA(PINT6_PG_MARK, PG14MD_11),
1131
1132	PINMUX_DATA(PG13_DATA, PG13MD_00),
1133	PINMUX_DATA(D29_MARK, PG13MD_01),
1134	PINMUX_DATA(LCD_DATA13_PG13_MARK, PG13MD_10),
1135	PINMUX_DATA(PINT5_PG_MARK, PG13MD_11),
1136
1137	PINMUX_DATA(PG12_DATA, PG12MD_00),
1138	PINMUX_DATA(D28_MARK, PG12MD_01),
1139	PINMUX_DATA(LCD_DATA12_PG12_MARK, PG12MD_10),
1140	PINMUX_DATA(PINT4_PG_MARK, PG12MD_11),
1141
1142	PINMUX_DATA(PG11_DATA, PG11MD_000),
1143	PINMUX_DATA(D27_MARK, PG11MD_001),
1144	PINMUX_DATA(LCD_DATA11_PG11_MARK, PG11MD_010),
1145	PINMUX_DATA(PINT3_PG_MARK, PG11MD_011),
1146	PINMUX_DATA(TIOC3D_MARK, PG11MD_100),
1147
1148	PINMUX_DATA(PG10_DATA, PG10MD_000),
1149	PINMUX_DATA(D26_MARK, PG10MD_001),
1150	PINMUX_DATA(LCD_DATA10_PG10_MARK, PG10MD_010),
1151	PINMUX_DATA(PINT2_PG_MARK, PG10MD_011),
1152	PINMUX_DATA(TIOC3C_MARK, PG10MD_100),
1153
1154	PINMUX_DATA(PG9_DATA, PG9MD_000),
1155	PINMUX_DATA(D25_MARK, PG9MD_001),
1156	PINMUX_DATA(LCD_DATA9_PG9_MARK, PG9MD_010),
1157	PINMUX_DATA(PINT1_PG_MARK, PG9MD_011),
1158	PINMUX_DATA(TIOC3B_MARK, PG9MD_100),
1159
1160	PINMUX_DATA(PG8_DATA, PG8MD_000),
1161	PINMUX_DATA(D24_MARK, PG8MD_001),
1162	PINMUX_DATA(LCD_DATA8_PG8_MARK, PG8MD_010),
1163	PINMUX_DATA(PINT0_PG_MARK, PG8MD_011),
1164	PINMUX_DATA(TIOC3A_MARK, PG8MD_100),
1165
1166	PINMUX_DATA(PG7_DATA, PG7MD_000),
1167	PINMUX_DATA(D23_MARK, PG7MD_001),
1168	PINMUX_DATA(LCD_DATA7_PG7_MARK, PG7MD_010),
1169	PINMUX_DATA(IRQ7_PG_MARK, PG7MD_011),
1170	PINMUX_DATA(TIOC2B_MARK, PG7MD_100),
1171
1172	PINMUX_DATA(PG6_DATA, PG6MD_000),
1173	PINMUX_DATA(D22_MARK, PG6MD_001),
1174	PINMUX_DATA(LCD_DATA6_PG6_MARK, PG6MD_010),
1175	PINMUX_DATA(IRQ6_PG_MARK, PG6MD_011),
1176	PINMUX_DATA(TIOC2A_MARK, PG6MD_100),
1177
1178	PINMUX_DATA(PG5_DATA, PG5MD_000),
1179	PINMUX_DATA(D21_MARK, PG5MD_001),
1180	PINMUX_DATA(LCD_DATA5_PG5_MARK, PG5MD_010),
1181	PINMUX_DATA(IRQ5_PG_MARK, PG5MD_011),
1182	PINMUX_DATA(TIOC1B_MARK, PG5MD_100),
1183
1184	PINMUX_DATA(PG4_DATA, PG4MD_000),
1185	PINMUX_DATA(D20_MARK, PG4MD_001),
1186	PINMUX_DATA(LCD_DATA4_PG4_MARK, PG4MD_010),
1187	PINMUX_DATA(IRQ4_PG_MARK, PG4MD_011),
1188	PINMUX_DATA(TIOC1A_MARK, PG4MD_100),
1189
1190	PINMUX_DATA(PG3_DATA, PG3MD_000),
1191	PINMUX_DATA(D19_MARK, PG3MD_001),
1192	PINMUX_DATA(LCD_DATA3_PG3_MARK, PG3MD_010),
1193	PINMUX_DATA(IRQ3_PG_MARK, PG3MD_011),
1194	PINMUX_DATA(TIOC0D_MARK, PG3MD_100),
1195
1196	PINMUX_DATA(PG2_DATA, PG2MD_000),
1197	PINMUX_DATA(D18_MARK, PG2MD_001),
1198	PINMUX_DATA(LCD_DATA2_PG2_MARK, PG2MD_010),
1199	PINMUX_DATA(IRQ2_PG_MARK, PG2MD_011),
1200	PINMUX_DATA(TIOC0C_MARK, PG2MD_100),
1201
1202	PINMUX_DATA(PG1_DATA, PG1MD_000),
1203	PINMUX_DATA(D17_MARK, PG1MD_001),
1204	PINMUX_DATA(LCD_DATA1_PG1_MARK, PG1MD_010),
1205	PINMUX_DATA(IRQ1_PG_MARK, PG1MD_011),
1206	PINMUX_DATA(TIOC0B_MARK, PG1MD_100),
1207
1208	PINMUX_DATA(PG0_DATA, PG0MD_000),
1209	PINMUX_DATA(D16_MARK, PG0MD_001),
1210	PINMUX_DATA(LCD_DATA0_PG0_MARK, PG0MD_010),
1211	PINMUX_DATA(IRQ0_PG_MARK, PG0MD_011),
1212	PINMUX_DATA(TIOC0A_MARK, PG0MD_100),
1213
1214	/* Port H */
1215	PINMUX_DATA(PH7_DATA, PH7MD_00),
1216	PINMUX_DATA(PHAN7_MARK, PH7MD_01),
1217	PINMUX_DATA(PINT7_PH_MARK, PH7MD_10),
1218
1219	PINMUX_DATA(PH6_DATA, PH6MD_00),
1220	PINMUX_DATA(PHAN6_MARK, PH6MD_01),
1221	PINMUX_DATA(PINT6_PH_MARK, PH6MD_10),
1222
1223	PINMUX_DATA(PH5_DATA, PH5MD_00),
1224	PINMUX_DATA(PHAN5_MARK, PH5MD_01),
1225	PINMUX_DATA(PINT5_PH_MARK, PH5MD_10),
1226	PINMUX_DATA(LCD_EXTCLK_MARK, PH5MD_11),
1227
1228	PINMUX_DATA(PH4_DATA, PH4MD_00),
1229	PINMUX_DATA(PHAN4_MARK, PH4MD_01),
1230	PINMUX_DATA(PINT4_PH_MARK, PH4MD_10),
1231
1232	PINMUX_DATA(PH3_DATA, PH3MD_00),
1233	PINMUX_DATA(PHAN3_MARK, PH3MD_01),
1234	PINMUX_DATA(PINT3_PH_MARK, PH3MD_10),
1235
1236	PINMUX_DATA(PH2_DATA, PH2MD_00),
1237	PINMUX_DATA(PHAN2_MARK, PH2MD_01),
1238	PINMUX_DATA(PINT2_PH_MARK, PH2MD_10),
1239
1240	PINMUX_DATA(PH1_DATA, PH1MD_00),
1241	PINMUX_DATA(PHAN1_MARK, PH1MD_01),
1242	PINMUX_DATA(PINT1_PH_MARK, PH1MD_10),
1243
1244	PINMUX_DATA(PH0_DATA, PH0MD_00),
1245	PINMUX_DATA(PHAN0_MARK, PH0MD_01),
1246	PINMUX_DATA(PINT0_PH_MARK, PH0MD_10),
1247
1248	/* Port I - not on device */
1249
1250	/* Port J */
1251	PINMUX_DATA(PJ31_DATA, PJ31MD_0),
1252	PINMUX_DATA(DV_CLK_MARK, PJ31MD_1),
1253
1254	PINMUX_DATA(PJ30_DATA, PJ30MD_000),
1255	PINMUX_DATA(SSIDATA5_MARK, PJ30MD_010),
1256	PINMUX_DATA(TIOC2B_MARK, PJ30MD_100),
1257	PINMUX_DATA(IETXD_MARK, PJ30MD_101),
1258
1259	PINMUX_DATA(PJ29_DATA, PJ29MD_000),
1260	PINMUX_DATA(SSIWS5_MARK, PJ29MD_010),
1261	PINMUX_DATA(TIOC2A_MARK, PJ29MD_100),
1262	PINMUX_DATA(IERXD_MARK, PJ29MD_101),
1263
1264	PINMUX_DATA(PJ28_DATA, PJ28MD_000),
1265	PINMUX_DATA(SSISCK5_MARK, PJ28MD_010),
1266	PINMUX_DATA(TIOC1B_MARK, PJ28MD_100),
1267	PINMUX_DATA(RTS7_MARK, PJ28MD_101),
1268
1269	PINMUX_DATA(PJ27_DATA, PJ27MD_000),
1270	PINMUX_DATA(TIOC1A_MARK, PJ27MD_100),
1271	PINMUX_DATA(CTS7_MARK, PJ27MD_101),
1272
1273	PINMUX_DATA(PJ26_DATA, PJ26MD_000),
1274	PINMUX_DATA(SSIDATA4_MARK, PJ26MD_010),
1275	PINMUX_DATA(LCD_TCON5_MARK, PJ26MD_011),
1276	PINMUX_DATA(TXD7_MARK, PJ26MD_101),
1277
1278	PINMUX_DATA(PJ25_DATA, PJ25MD_000),
1279	PINMUX_DATA(SSIWS4_MARK, PJ25MD_010),
1280	PINMUX_DATA(LCD_TCON4_MARK, PJ25MD_011),
1281	PINMUX_DATA(SPDIF_OUT_MARK, PJ25MD_100),
1282	PINMUX_DATA(RXD7_MARK, PJ25MD_101),
1283
1284	PINMUX_DATA(PJ24_DATA, PJ24MD_000),
1285	PINMUX_DATA(SSISCK4_MARK, PJ24MD_010),
1286	PINMUX_DATA(LCD_TCON3_MARK, PJ24MD_011),
1287	PINMUX_DATA(SPDIF_IN_MARK, PJ24MD_100),
1288	PINMUX_DATA(SCK7_MARK, PJ24MD_101),
1289
1290	PINMUX_DATA(PJ23_DATA, PJ23MD_000),
1291	PINMUX_DATA(DV_DATA23_MARK, PJ23MD_001),
1292	PINMUX_DATA(LCD_DATA23_PJ23_MARK, PJ23MD_010),
1293	PINMUX_DATA(LCD_TCON6_MARK, PJ23MD_011),
1294	PINMUX_DATA(IRQ3_PJ_MARK, PJ23MD_100),
1295	PINMUX_DATA(CTX1_MARK, PJ23MD_101),
1296
1297	PINMUX_DATA(PJ22_DATA, PJ22MD_000),
1298	PINMUX_DATA(DV_DATA22_MARK, PJ22MD_001),
1299	PINMUX_DATA(LCD_DATA22_PJ22_MARK, PJ22MD_010),
1300	PINMUX_DATA(LCD_TCON5_MARK, PJ22MD_011),
1301	PINMUX_DATA(IRQ2_PJ_MARK, PJ22MD_100),
1302	PINMUX_DATA(CRX1_MARK, PJ22MD_101),
1303	PINMUX_DATA(CRX0_CRX1_MARK, PJ22MD_110),
1304
1305	PINMUX_DATA(PJ21_DATA, PJ21MD_000),
1306	PINMUX_DATA(DV_DATA21_MARK, PJ21MD_001),
1307	PINMUX_DATA(LCD_DATA21_PJ21_MARK, PJ21MD_010),
1308	PINMUX_DATA(LCD_TCON4_MARK, PJ21MD_011),
1309	PINMUX_DATA(IRQ1_PJ_MARK, PJ21MD_100),
1310	PINMUX_DATA(CTX2_MARK, PJ21MD_101),
1311
1312	PINMUX_DATA(PJ20_DATA, PJ20MD_000),
1313	PINMUX_DATA(DV_DATA20_MARK, PJ20MD_001),
1314	PINMUX_DATA(LCD_DATA20_PJ20_MARK, PJ20MD_010),
1315	PINMUX_DATA(LCD_TCON3_MARK, PJ20MD_011),
1316	PINMUX_DATA(IRQ0_PJ_MARK, PJ20MD_100),
1317	PINMUX_DATA(CRX2_MARK, PJ20MD_101),
1318	PINMUX_DATA(CRX0CRX1CRX2_PJ20_MARK, PJ20MD_110),
1319
1320	PINMUX_DATA(PJ19_DATA, PJ19MD_000),
1321	PINMUX_DATA(DV_DATA19_MARK, PJ19MD_001),
1322	PINMUX_DATA(LCD_DATA19_PJ19_MARK, PJ19MD_010),
1323	PINMUX_DATA(MISO0_PJ19_MARK, PJ19MD_011),
1324	PINMUX_DATA(TIOC0D_MARK, PJ19MD_100),
1325	PINMUX_DATA(SIOFRXD_MARK, PJ19MD_101),
1326	PINMUX_DATA(AUDIO_XOUT_MARK, PJ19MD_110),
1327
1328	PINMUX_DATA(PJ18_DATA, PJ18MD_000),
1329	PINMUX_DATA(DV_DATA18_MARK, PJ18MD_001),
1330	PINMUX_DATA(LCD_DATA18_PJ18_MARK, PJ18MD_010),
1331	PINMUX_DATA(MOSI0_PJ18_MARK, PJ18MD_011),
1332	PINMUX_DATA(TIOC0C_MARK, PJ18MD_100),
1333	PINMUX_DATA(SIOFTXD_MARK, PJ18MD_101),
1334
1335	PINMUX_DATA(PJ17_DATA, PJ17MD_000),
1336	PINMUX_DATA(DV_DATA17_MARK, PJ17MD_001),
1337	PINMUX_DATA(LCD_DATA17_PJ17_MARK, PJ17MD_010),
1338	PINMUX_DATA(SSL00_PJ17_MARK, PJ17MD_011),
1339	PINMUX_DATA(TIOC0B_MARK, PJ17MD_100),
1340	PINMUX_DATA(SIOFSYNC_MARK, PJ17MD_101),
1341
1342	PINMUX_DATA(PJ16_DATA, PJ16MD_000),
1343	PINMUX_DATA(DV_DATA16_MARK, PJ16MD_001),
1344	PINMUX_DATA(LCD_DATA16_PJ16_MARK, PJ16MD_010),
1345	PINMUX_DATA(RSPCK0_PJ16_MARK, PJ16MD_011),
1346	PINMUX_DATA(TIOC0A_MARK, PJ16MD_100),
1347	PINMUX_DATA(SIOFSCK_MARK, PJ16MD_101),
1348
1349	PINMUX_DATA(PJ15_DATA, PJ15MD_000),
1350	PINMUX_DATA(DV_DATA15_MARK, PJ15MD_001),
1351	PINMUX_DATA(LCD_DATA15_PJ15_MARK, PJ15MD_010),
1352	PINMUX_DATA(PINT7_PJ_MARK, PJ15MD_011),
1353	PINMUX_DATA(PWM2H_MARK, PJ15MD_100),
1354	PINMUX_DATA(TXD7_MARK, PJ15MD_101),
1355
1356	PINMUX_DATA(PJ14_DATA, PJ14MD_000),
1357	PINMUX_DATA(DV_DATA14_MARK, PJ14MD_001),
1358	PINMUX_DATA(LCD_DATA14_PJ14_MARK, PJ14MD_010),
1359	PINMUX_DATA(PINT6_PJ_MARK, PJ14MD_011),
1360	PINMUX_DATA(PWM2G_MARK, PJ14MD_100),
1361	PINMUX_DATA(TXD6_MARK, PJ14MD_101),
1362
1363	PINMUX_DATA(PJ13_DATA, PJ13MD_000),
1364	PINMUX_DATA(DV_DATA13_MARK, PJ13MD_001),
1365	PINMUX_DATA(LCD_DATA13_PJ13_MARK, PJ13MD_010),
1366	PINMUX_DATA(PINT5_PJ_MARK, PJ13MD_011),
1367	PINMUX_DATA(PWM2F_MARK, PJ13MD_100),
1368	PINMUX_DATA(TXD5_MARK, PJ13MD_101),
1369
1370	PINMUX_DATA(PJ12_DATA, PJ12MD_000),
1371	PINMUX_DATA(DV_DATA12_MARK, PJ12MD_001),
1372	PINMUX_DATA(LCD_DATA12_PJ12_MARK, PJ12MD_010),
1373	PINMUX_DATA(PINT4_PJ_MARK, PJ12MD_011),
1374	PINMUX_DATA(PWM2E_MARK, PJ12MD_100),
1375	PINMUX_DATA(SCK7_MARK, PJ12MD_101),
1376
1377	PINMUX_DATA(PJ11_DATA, PJ11MD_000),
1378	PINMUX_DATA(DV_DATA11_MARK, PJ11MD_001),
1379	PINMUX_DATA(LCD_DATA11_PJ11_MARK, PJ11MD_010),
1380	PINMUX_DATA(PINT3_PJ_MARK, PJ11MD_011),
1381	PINMUX_DATA(PWM2D_MARK, PJ11MD_100),
1382	PINMUX_DATA(SCK6_MARK, PJ11MD_101),
1383
1384	PINMUX_DATA(PJ10_DATA, PJ10MD_000),
1385	PINMUX_DATA(DV_DATA10_MARK, PJ10MD_001),
1386	PINMUX_DATA(LCD_DATA10_PJ10_MARK, PJ10MD_010),
1387	PINMUX_DATA(PINT2_PJ_MARK, PJ10MD_011),
1388	PINMUX_DATA(PWM2C_MARK, PJ10MD_100),
1389	PINMUX_DATA(SCK5_MARK, PJ10MD_101),
1390
1391	PINMUX_DATA(PJ9_DATA, PJ9MD_000),
1392	PINMUX_DATA(DV_DATA9_MARK, PJ9MD_001),
1393	PINMUX_DATA(LCD_DATA9_PJ9_MARK, PJ9MD_010),
1394	PINMUX_DATA(PINT1_PJ_MARK, PJ9MD_011),
1395	PINMUX_DATA(PWM2B_MARK, PJ9MD_100),
1396	PINMUX_DATA(RTS5_MARK, PJ9MD_101),
1397
1398	PINMUX_DATA(PJ8_DATA, PJ8MD_000),
1399	PINMUX_DATA(DV_DATA8_MARK, PJ8MD_001),
1400	PINMUX_DATA(LCD_DATA8_PJ8_MARK, PJ8MD_010),
1401	PINMUX_DATA(PINT0_PJ_MARK, PJ8MD_011),
1402	PINMUX_DATA(PWM2A_MARK, PJ8MD_100),
1403	PINMUX_DATA(CTS5_MARK, PJ8MD_101),
1404
1405	PINMUX_DATA(PJ7_DATA, PJ7MD_000),
1406	PINMUX_DATA(DV_DATA7_MARK, PJ7MD_001),
1407	PINMUX_DATA(LCD_DATA7_PJ7_MARK, PJ7MD_010),
1408	PINMUX_DATA(SD_D2_MARK, PJ7MD_011),
1409	PINMUX_DATA(PWM1H_MARK, PJ7MD_100),
1410
1411	PINMUX_DATA(PJ6_DATA, PJ6MD_000),
1412	PINMUX_DATA(DV_DATA6_MARK, PJ6MD_001),
1413	PINMUX_DATA(LCD_DATA6_PJ6_MARK, PJ6MD_010),
1414	PINMUX_DATA(SD_D3_MARK, PJ6MD_011),
1415	PINMUX_DATA(PWM1G_MARK, PJ6MD_100),
1416
1417	PINMUX_DATA(PJ5_DATA, PJ5MD_000),
1418	PINMUX_DATA(DV_DATA5_MARK, PJ5MD_001),
1419	PINMUX_DATA(LCD_DATA5_PJ5_MARK, PJ5MD_010),
1420	PINMUX_DATA(SD_CMD_MARK, PJ5MD_011),
1421	PINMUX_DATA(PWM1F_MARK, PJ5MD_100),
1422
1423	PINMUX_DATA(PJ4_DATA, PJ4MD_000),
1424	PINMUX_DATA(DV_DATA4_MARK, PJ4MD_001),
1425	PINMUX_DATA(LCD_DATA4_PJ4_MARK, PJ4MD_010),
1426	PINMUX_DATA(SD_CLK_MARK, PJ4MD_011),
1427	PINMUX_DATA(PWM1E_MARK, PJ4MD_100),
1428
1429	PINMUX_DATA(PJ3_DATA, PJ3MD_000),
1430	PINMUX_DATA(DV_DATA3_MARK, PJ3MD_001),
1431	PINMUX_DATA(LCD_DATA3_PJ3_MARK, PJ3MD_010),
1432	PINMUX_DATA(SD_D0_MARK, PJ3MD_011),
1433	PINMUX_DATA(PWM1D_MARK, PJ3MD_100),
1434
1435	PINMUX_DATA(PJ2_DATA, PJ2MD_000),
1436	PINMUX_DATA(DV_DATA2_MARK, PJ2MD_001),
1437	PINMUX_DATA(LCD_DATA2_PJ2_MARK, PJ2MD_010),
1438	PINMUX_DATA(SD_D1_MARK, PJ2MD_011),
1439	PINMUX_DATA(PWM1C_MARK, PJ2MD_100),
1440
1441	PINMUX_DATA(PJ1_DATA, PJ1MD_000),
1442	PINMUX_DATA(DV_DATA1_MARK, PJ1MD_001),
1443	PINMUX_DATA(LCD_DATA1_PJ1_MARK, PJ1MD_010),
1444	PINMUX_DATA(SD_WP_MARK, PJ1MD_011),
1445	PINMUX_DATA(PWM1B_MARK, PJ1MD_100),
1446
1447	PINMUX_DATA(PJ0_DATA, PJ0MD_000),
1448	PINMUX_DATA(DV_DATA0_MARK, PJ0MD_001),
1449	PINMUX_DATA(LCD_DATA0_PJ0_MARK, PJ0MD_010),
1450	PINMUX_DATA(SD_CD_MARK, PJ0MD_011),
1451	PINMUX_DATA(PWM1A_MARK, PJ0MD_100),
1452};
1453
1454static const struct sh_pfc_pin pinmux_pins[] = {
1455	/* Port A */
1456	PINMUX_GPIO(PA1),
1457	PINMUX_GPIO(PA0),
1458
1459	/* Port B */
1460	PINMUX_GPIO(PB22),
1461	PINMUX_GPIO(PB21),
1462	PINMUX_GPIO(PB20),
1463	PINMUX_GPIO(PB19),
1464	PINMUX_GPIO(PB18),
1465	PINMUX_GPIO(PB17),
1466	PINMUX_GPIO(PB16),
1467	PINMUX_GPIO(PB15),
1468	PINMUX_GPIO(PB14),
1469	PINMUX_GPIO(PB13),
1470	PINMUX_GPIO(PB12),
1471	PINMUX_GPIO(PB11),
1472	PINMUX_GPIO(PB10),
1473	PINMUX_GPIO(PB9),
1474	PINMUX_GPIO(PB8),
1475	PINMUX_GPIO(PB7),
1476	PINMUX_GPIO(PB6),
1477	PINMUX_GPIO(PB5),
1478	PINMUX_GPIO(PB4),
1479	PINMUX_GPIO(PB3),
1480	PINMUX_GPIO(PB2),
1481	PINMUX_GPIO(PB1),
1482
1483	/* Port C */
1484	PINMUX_GPIO(PC8),
1485	PINMUX_GPIO(PC7),
1486	PINMUX_GPIO(PC6),
1487	PINMUX_GPIO(PC5),
1488	PINMUX_GPIO(PC4),
1489	PINMUX_GPIO(PC3),
1490	PINMUX_GPIO(PC2),
1491	PINMUX_GPIO(PC1),
1492	PINMUX_GPIO(PC0),
1493
1494	/* Port D */
1495	PINMUX_GPIO(PD15),
1496	PINMUX_GPIO(PD14),
1497	PINMUX_GPIO(PD13),
1498	PINMUX_GPIO(PD12),
1499	PINMUX_GPIO(PD11),
1500	PINMUX_GPIO(PD10),
1501	PINMUX_GPIO(PD9),
1502	PINMUX_GPIO(PD8),
1503	PINMUX_GPIO(PD7),
1504	PINMUX_GPIO(PD6),
1505	PINMUX_GPIO(PD5),
1506	PINMUX_GPIO(PD4),
1507	PINMUX_GPIO(PD3),
1508	PINMUX_GPIO(PD2),
1509	PINMUX_GPIO(PD1),
1510	PINMUX_GPIO(PD0),
1511
1512	/* Port E */
1513	PINMUX_GPIO(PE7),
1514	PINMUX_GPIO(PE6),
1515	PINMUX_GPIO(PE5),
1516	PINMUX_GPIO(PE4),
1517	PINMUX_GPIO(PE3),
1518	PINMUX_GPIO(PE2),
1519	PINMUX_GPIO(PE1),
1520	PINMUX_GPIO(PE0),
1521
1522	/* Port F */
1523	PINMUX_GPIO(PF23),
1524	PINMUX_GPIO(PF22),
1525	PINMUX_GPIO(PF21),
1526	PINMUX_GPIO(PF20),
1527	PINMUX_GPIO(PF19),
1528	PINMUX_GPIO(PF18),
1529	PINMUX_GPIO(PF17),
1530	PINMUX_GPIO(PF16),
1531	PINMUX_GPIO(PF15),
1532	PINMUX_GPIO(PF14),
1533	PINMUX_GPIO(PF13),
1534	PINMUX_GPIO(PF12),
1535	PINMUX_GPIO(PF11),
1536	PINMUX_GPIO(PF10),
1537	PINMUX_GPIO(PF9),
1538	PINMUX_GPIO(PF8),
1539	PINMUX_GPIO(PF7),
1540	PINMUX_GPIO(PF6),
1541	PINMUX_GPIO(PF5),
1542	PINMUX_GPIO(PF4),
1543	PINMUX_GPIO(PF3),
1544	PINMUX_GPIO(PF2),
1545	PINMUX_GPIO(PF1),
1546	PINMUX_GPIO(PF0),
1547
1548	/* Port G */
1549	PINMUX_GPIO(PG27),
1550	PINMUX_GPIO(PG26),
1551	PINMUX_GPIO(PG25),
1552	PINMUX_GPIO(PG24),
1553	PINMUX_GPIO(PG23),
1554	PINMUX_GPIO(PG22),
1555	PINMUX_GPIO(PG21),
1556	PINMUX_GPIO(PG20),
1557	PINMUX_GPIO(PG19),
1558	PINMUX_GPIO(PG18),
1559	PINMUX_GPIO(PG17),
1560	PINMUX_GPIO(PG16),
1561	PINMUX_GPIO(PG15),
1562	PINMUX_GPIO(PG14),
1563	PINMUX_GPIO(PG13),
1564	PINMUX_GPIO(PG12),
1565	PINMUX_GPIO(PG11),
1566	PINMUX_GPIO(PG10),
1567	PINMUX_GPIO(PG9),
1568	PINMUX_GPIO(PG8),
1569	PINMUX_GPIO(PG7),
1570	PINMUX_GPIO(PG6),
1571	PINMUX_GPIO(PG5),
1572	PINMUX_GPIO(PG4),
1573	PINMUX_GPIO(PG3),
1574	PINMUX_GPIO(PG2),
1575	PINMUX_GPIO(PG1),
1576	PINMUX_GPIO(PG0),
1577
1578	/* Port H - Port H does not have a Data Register */
1579
1580	/* Port I - not on device */
1581
1582	/* Port J */
1583	PINMUX_GPIO(PJ31),
1584	PINMUX_GPIO(PJ30),
1585	PINMUX_GPIO(PJ29),
1586	PINMUX_GPIO(PJ28),
1587	PINMUX_GPIO(PJ27),
1588	PINMUX_GPIO(PJ26),
1589	PINMUX_GPIO(PJ25),
1590	PINMUX_GPIO(PJ24),
1591	PINMUX_GPIO(PJ23),
1592	PINMUX_GPIO(PJ22),
1593	PINMUX_GPIO(PJ21),
1594	PINMUX_GPIO(PJ20),
1595	PINMUX_GPIO(PJ19),
1596	PINMUX_GPIO(PJ18),
1597	PINMUX_GPIO(PJ17),
1598	PINMUX_GPIO(PJ16),
1599	PINMUX_GPIO(PJ15),
1600	PINMUX_GPIO(PJ14),
1601	PINMUX_GPIO(PJ13),
1602	PINMUX_GPIO(PJ12),
1603	PINMUX_GPIO(PJ11),
1604	PINMUX_GPIO(PJ10),
1605	PINMUX_GPIO(PJ9),
1606	PINMUX_GPIO(PJ8),
1607	PINMUX_GPIO(PJ7),
1608	PINMUX_GPIO(PJ6),
1609	PINMUX_GPIO(PJ5),
1610	PINMUX_GPIO(PJ4),
1611	PINMUX_GPIO(PJ3),
1612	PINMUX_GPIO(PJ2),
1613	PINMUX_GPIO(PJ1),
1614	PINMUX_GPIO(PJ0),
1615};
1616
1617#define PINMUX_FN_BASE	ARRAY_SIZE(pinmux_pins)
1618
1619static const struct pinmux_func pinmux_func_gpios[] = {
1620	/* INTC */
1621	GPIO_FN(IRQ7_PG),
1622	GPIO_FN(IRQ6_PG),
1623	GPIO_FN(IRQ5_PG),
1624	GPIO_FN(IRQ4_PG),
1625	GPIO_FN(IRQ3_PG),
1626	GPIO_FN(IRQ2_PG),
1627	GPIO_FN(IRQ1_PG),
1628	GPIO_FN(IRQ0_PG),
1629	GPIO_FN(IRQ7_PF),
1630	GPIO_FN(IRQ6_PF),
1631	GPIO_FN(IRQ5_PF),
1632	GPIO_FN(IRQ4_PF),
1633	GPIO_FN(IRQ3_PJ),
1634	GPIO_FN(IRQ2_PJ),
1635	GPIO_FN(IRQ1_PJ),
1636	GPIO_FN(IRQ0_PJ),
1637	GPIO_FN(IRQ1_PC),
1638	GPIO_FN(IRQ0_PC),
1639
1640	GPIO_FN(PINT7_PG),
1641	GPIO_FN(PINT6_PG),
1642	GPIO_FN(PINT5_PG),
1643	GPIO_FN(PINT4_PG),
1644	GPIO_FN(PINT3_PG),
1645	GPIO_FN(PINT2_PG),
1646	GPIO_FN(PINT1_PG),
1647	GPIO_FN(PINT0_PG),
1648	GPIO_FN(PINT7_PH),
1649	GPIO_FN(PINT6_PH),
1650	GPIO_FN(PINT5_PH),
1651	GPIO_FN(PINT4_PH),
1652	GPIO_FN(PINT3_PH),
1653	GPIO_FN(PINT2_PH),
1654	GPIO_FN(PINT1_PH),
1655	GPIO_FN(PINT0_PH),
1656	GPIO_FN(PINT7_PJ),
1657	GPIO_FN(PINT6_PJ),
1658	GPIO_FN(PINT5_PJ),
1659	GPIO_FN(PINT4_PJ),
1660	GPIO_FN(PINT3_PJ),
1661	GPIO_FN(PINT2_PJ),
1662	GPIO_FN(PINT1_PJ),
1663	GPIO_FN(PINT0_PJ),
1664
1665	/* WDT */
1666	GPIO_FN(WDTOVF),
1667
1668	/* CAN */
1669	GPIO_FN(CTX1),
1670	GPIO_FN(CRX1),
1671	GPIO_FN(CTX0),
1672	GPIO_FN(CRX0),
1673	GPIO_FN(CRX0_CRX1),
1674	GPIO_FN(CRX0_CRX1_CRX2),
1675
1676	/* DMAC */
1677	GPIO_FN(TEND0),
1678	GPIO_FN(DACK0),
1679	GPIO_FN(DREQ0),
1680	GPIO_FN(TEND1),
1681	GPIO_FN(DACK1),
1682	GPIO_FN(DREQ1),
1683
1684	/* ADC */
1685	GPIO_FN(ADTRG),
1686
1687	/* BSCh */
1688	GPIO_FN(A25),
1689	GPIO_FN(A24),
1690	GPIO_FN(A23),
1691	GPIO_FN(A22),
1692	GPIO_FN(A21),
1693	GPIO_FN(A20),
1694	GPIO_FN(A19),
1695	GPIO_FN(A18),
1696	GPIO_FN(A17),
1697	GPIO_FN(A16),
1698	GPIO_FN(A15),
1699	GPIO_FN(A14),
1700	GPIO_FN(A13),
1701	GPIO_FN(A12),
1702	GPIO_FN(A11),
1703	GPIO_FN(A10),
1704	GPIO_FN(A9),
1705	GPIO_FN(A8),
1706	GPIO_FN(A7),
1707	GPIO_FN(A6),
1708	GPIO_FN(A5),
1709	GPIO_FN(A4),
1710	GPIO_FN(A3),
1711	GPIO_FN(A2),
1712	GPIO_FN(A1),
1713	GPIO_FN(A0),
1714
1715	GPIO_FN(D15),
1716	GPIO_FN(D14),
1717	GPIO_FN(D13),
1718	GPIO_FN(D12),
1719	GPIO_FN(D11),
1720	GPIO_FN(D10),
1721	GPIO_FN(D9),
1722	GPIO_FN(D8),
1723	GPIO_FN(D7),
1724	GPIO_FN(D6),
1725	GPIO_FN(D5),
1726	GPIO_FN(D4),
1727	GPIO_FN(D3),
1728	GPIO_FN(D2),
1729	GPIO_FN(D1),
1730	GPIO_FN(D0),
1731
1732	GPIO_FN(BS),
1733	GPIO_FN(CS4),
1734	GPIO_FN(CS3),
1735	GPIO_FN(CS2),
1736	GPIO_FN(CS1),
1737	GPIO_FN(CS0),
1738	GPIO_FN(CS5CE1A),
1739	GPIO_FN(CE2A),
1740	GPIO_FN(CE2B),
1741	GPIO_FN(RD),
1742	GPIO_FN(RDWR),
1743	GPIO_FN(WE3ICIOWRAHDQMUU),
1744	GPIO_FN(WE2ICIORDDQMUL),
1745	GPIO_FN(WE1DQMUWE),
1746	GPIO_FN(WE0DQML),
1747	GPIO_FN(RAS),
1748	GPIO_FN(CAS),
1749	GPIO_FN(CKE),
1750	GPIO_FN(WAIT),
1751	GPIO_FN(BREQ),
1752	GPIO_FN(BACK),
1753	GPIO_FN(IOIS16),
1754
1755	/* TMU */
1756	GPIO_FN(TIOC4D),
1757	GPIO_FN(TIOC4C),
1758	GPIO_FN(TIOC4B),
1759	GPIO_FN(TIOC4A),
1760	GPIO_FN(TIOC3D),
1761	GPIO_FN(TIOC3C),
1762	GPIO_FN(TIOC3B),
1763	GPIO_FN(TIOC3A),
1764	GPIO_FN(TIOC2B),
1765	GPIO_FN(TIOC1B),
1766	GPIO_FN(TIOC2A),
1767	GPIO_FN(TIOC1A),
1768	GPIO_FN(TIOC0D),
1769	GPIO_FN(TIOC0C),
1770	GPIO_FN(TIOC0B),
1771	GPIO_FN(TIOC0A),
1772	GPIO_FN(TCLKD),
1773	GPIO_FN(TCLKC),
1774	GPIO_FN(TCLKB),
1775	GPIO_FN(TCLKA),
1776
1777	/* SCIF */
1778	GPIO_FN(SCK0),
1779	GPIO_FN(TXD0),
1780	GPIO_FN(RXD0),
1781	GPIO_FN(SCK1),
1782	GPIO_FN(TXD1),
1783	GPIO_FN(RXD1),
1784	GPIO_FN(RTS1),
1785	GPIO_FN(CTS1),
1786	GPIO_FN(SCK2),
1787	GPIO_FN(TXD2),
1788	GPIO_FN(RXD2),
1789	GPIO_FN(SCK3),
1790	GPIO_FN(TXD3),
1791	GPIO_FN(RXD3),
1792	GPIO_FN(SCK4),
1793	GPIO_FN(TXD4),
1794	GPIO_FN(RXD4),
1795	GPIO_FN(SCK5),
1796	GPIO_FN(TXD5),
1797	GPIO_FN(RXD5),
1798	GPIO_FN(RTS5),
1799	GPIO_FN(CTS5),
1800	GPIO_FN(SCK6),
1801	GPIO_FN(TXD6),
1802	GPIO_FN(RXD6),
1803	GPIO_FN(SCK7),
1804	GPIO_FN(TXD7),
1805	GPIO_FN(RXD7),
1806	GPIO_FN(RTS7),
1807	GPIO_FN(CTS7),
1808
1809	/* RSPI */
1810	GPIO_FN(RSPCK0_PJ16),
1811	GPIO_FN(SSL00_PJ17),
1812	GPIO_FN(MOSI0_PJ18),
1813	GPIO_FN(MISO0_PJ19),
1814	GPIO_FN(RSPCK0_PB17),
1815	GPIO_FN(SSL00_PB18),
1816	GPIO_FN(MOSI0_PB19),
1817	GPIO_FN(MISO0_PB20),
1818	GPIO_FN(RSPCK1),
1819	GPIO_FN(MOSI1),
1820	GPIO_FN(MISO1),
1821	GPIO_FN(SSL10),
1822
1823	/* IIC3 */
1824	GPIO_FN(SCL0),
1825	GPIO_FN(SCL1),
1826	GPIO_FN(SCL2),
1827	GPIO_FN(SDA0),
1828	GPIO_FN(SDA1),
1829	GPIO_FN(SDA2),
1830
1831	/* SSI */
1832	GPIO_FN(SSISCK0),
1833	GPIO_FN(SSIWS0),
1834	GPIO_FN(SSITXD0),
1835	GPIO_FN(SSIRXD0),
1836	GPIO_FN(SSIWS1),
1837	GPIO_FN(SSIWS2),
1838	GPIO_FN(SSIWS3),
1839	GPIO_FN(SSISCK1),
1840	GPIO_FN(SSISCK2),
1841	GPIO_FN(SSISCK3),
1842	GPIO_FN(SSIDATA1),
1843	GPIO_FN(SSIDATA2),
1844	GPIO_FN(SSIDATA3),
1845	GPIO_FN(AUDIO_CLK),
1846	GPIO_FN(AUDIO_XOUT),
1847
1848	/* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
1849	GPIO_FN(SIOFTXD),
1850	GPIO_FN(SIOFRXD),
1851	GPIO_FN(SIOFSYNC),
1852	GPIO_FN(SIOFSCK),
1853
1854	/* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
1855	GPIO_FN(SPDIF_IN),
1856	GPIO_FN(SPDIF_OUT),
1857
1858	/* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
1859	GPIO_FN(FCE),
1860	GPIO_FN(FRB),
1861
1862	/* VDC3 */
1863	GPIO_FN(DV_CLK),
1864	GPIO_FN(DV_VSYNC),
1865	GPIO_FN(DV_HSYNC),
1866
1867	GPIO_FN(DV_DATA23),
1868	GPIO_FN(DV_DATA22),
1869	GPIO_FN(DV_DATA21),
1870	GPIO_FN(DV_DATA20),
1871	GPIO_FN(DV_DATA19),
1872	GPIO_FN(DV_DATA18),
1873	GPIO_FN(DV_DATA17),
1874	GPIO_FN(DV_DATA16),
1875	GPIO_FN(DV_DATA15),
1876	GPIO_FN(DV_DATA14),
1877	GPIO_FN(DV_DATA13),
1878	GPIO_FN(DV_DATA12),
1879	GPIO_FN(DV_DATA11),
1880	GPIO_FN(DV_DATA10),
1881	GPIO_FN(DV_DATA9),
1882	GPIO_FN(DV_DATA8),
1883	GPIO_FN(DV_DATA7),
1884	GPIO_FN(DV_DATA6),
1885	GPIO_FN(DV_DATA5),
1886	GPIO_FN(DV_DATA4),
1887	GPIO_FN(DV_DATA3),
1888	GPIO_FN(DV_DATA2),
1889	GPIO_FN(DV_DATA1),
1890	GPIO_FN(DV_DATA0),
1891
1892	GPIO_FN(LCD_CLK),
1893	GPIO_FN(LCD_EXTCLK),
1894	GPIO_FN(LCD_VSYNC),
1895	GPIO_FN(LCD_HSYNC),
1896	GPIO_FN(LCD_DE),
1897
1898	GPIO_FN(LCD_DATA23_PG23),
1899	GPIO_FN(LCD_DATA22_PG22),
1900	GPIO_FN(LCD_DATA21_PG21),
1901	GPIO_FN(LCD_DATA20_PG20),
1902	GPIO_FN(LCD_DATA19_PG19),
1903	GPIO_FN(LCD_DATA18_PG18),
1904	GPIO_FN(LCD_DATA17_PG17),
1905	GPIO_FN(LCD_DATA16_PG16),
1906	GPIO_FN(LCD_DATA15_PG15),
1907	GPIO_FN(LCD_DATA14_PG14),
1908	GPIO_FN(LCD_DATA13_PG13),
1909	GPIO_FN(LCD_DATA12_PG12),
1910	GPIO_FN(LCD_DATA11_PG11),
1911	GPIO_FN(LCD_DATA10_PG10),
1912	GPIO_FN(LCD_DATA9_PG9),
1913	GPIO_FN(LCD_DATA8_PG8),
1914	GPIO_FN(LCD_DATA7_PG7),
1915	GPIO_FN(LCD_DATA6_PG6),
1916	GPIO_FN(LCD_DATA5_PG5),
1917	GPIO_FN(LCD_DATA4_PG4),
1918	GPIO_FN(LCD_DATA3_PG3),
1919	GPIO_FN(LCD_DATA2_PG2),
1920	GPIO_FN(LCD_DATA1_PG1),
1921	GPIO_FN(LCD_DATA0_PG0),
1922
1923	GPIO_FN(LCD_DATA23_PJ23),
1924	GPIO_FN(LCD_DATA22_PJ22),
1925	GPIO_FN(LCD_DATA21_PJ21),
1926	GPIO_FN(LCD_DATA20_PJ20),
1927	GPIO_FN(LCD_DATA19_PJ19),
1928	GPIO_FN(LCD_DATA18_PJ18),
1929	GPIO_FN(LCD_DATA17_PJ17),
1930	GPIO_FN(LCD_DATA16_PJ16),
1931	GPIO_FN(LCD_DATA15_PJ15),
1932	GPIO_FN(LCD_DATA14_PJ14),
1933	GPIO_FN(LCD_DATA13_PJ13),
1934	GPIO_FN(LCD_DATA12_PJ12),
1935	GPIO_FN(LCD_DATA11_PJ11),
1936	GPIO_FN(LCD_DATA10_PJ10),
1937	GPIO_FN(LCD_DATA9_PJ9),
1938	GPIO_FN(LCD_DATA8_PJ8),
1939	GPIO_FN(LCD_DATA7_PJ7),
1940	GPIO_FN(LCD_DATA6_PJ6),
1941	GPIO_FN(LCD_DATA5_PJ5),
1942	GPIO_FN(LCD_DATA4_PJ4),
1943	GPIO_FN(LCD_DATA3_PJ3),
1944	GPIO_FN(LCD_DATA2_PJ2),
1945	GPIO_FN(LCD_DATA1_PJ1),
1946	GPIO_FN(LCD_DATA0_PJ0),
1947
1948	GPIO_FN(LCD_M_DISP),
1949};
1950
1951static const struct pinmux_cfg_reg pinmux_config_regs[] = {
1952	/* "name" addr register_size Field_Width */
1953
1954	/* where Field_Width is 1 for single mode registers or 4 for upto 16
1955	   mode registers and modes are described in assending order [0..16] */
1956
1957	{ PINMUX_CFG_REG("PAIOR0", 0xfffe3812, 16, 1) {
1958		0, 0, 0, 0, 0, 0, 0, 0,
1959		0, 0, 0, 0, 0, 0, PA1_IN, PA1_OUT,
1960		0, 0, 0, 0, 0, 0, 0, 0,
1961		0, 0, 0, 0, 0, 0, PA0_IN, PA0_OUT }
1962	},
1963	{ PINMUX_CFG_REG("PBCR5", 0xfffe3824, 16, 4) {
1964		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1965
1966		PB22MD_000, PB22MD_001, PB22MD_010, PB22MD_011,
1967		PB22MD_100, PB22MD_101, PB22MD_110, PB22MD_111,
1968		0, 0, 0, 0, 0, 0, 0, 0,
1969
1970		PB21MD_00, PB21MD_01, PB21MD_10, PB21MD_11, 0, 0, 0, 0,
1971		0, 0, 0, 0, 0, 0, 0, 0,
1972
1973		PB20MD_000, PB20MD_001, PB20MD_010, PB20MD_011,
1974		PB20MD_100, PB20MD_101, PB20MD_110, PB20MD_111,
1975		0, 0, 0, 0, 0, 0, 0, 0 }
1976	},
1977	{ PINMUX_CFG_REG("PBCR4", 0xfffe3826, 16, 4) {
1978		PB19MD_000, PB19MD_001, PB19MD_010, PB19MD_011,
1979		PB19MD_100, PB19MD_101, PB19MD_110, PB19MD_111,
1980		0, 0, 0, 0, 0, 0, 0, 0,
1981
1982		PB18MD_000, PB18MD_001, PB18MD_010, PB18MD_011,
1983		PB18MD_100, PB18MD_101, PB18MD_110, PB18MD_111,
1984		0, 0, 0, 0, 0, 0, 0, 0,
1985
1986		PB17MD_000, PB17MD_001, PB17MD_010, PB17MD_011,
1987		PB17MD_100, PB17MD_101, PB17MD_110, PB17MD_111,
1988		0, 0, 0, 0, 0, 0, 0, 0,
1989
1990		PB16MD_000, PB16MD_001, PB16MD_010, PB16MD_011,
1991		PB16MD_100, PB16MD_101, PB16MD_110, PB16MD_111,
1992		0, 0, 0, 0, 0, 0, 0, 0 }
1993	},
1994	{ PINMUX_CFG_REG("PBCR3", 0xfffe3828, 16, 4) {
1995		PB15MD_000, PB15MD_001, PB15MD_010, PB15MD_011,
1996		PB15MD_100, PB15MD_101, PB15MD_110, PB15MD_111,
1997		0, 0, 0, 0, 0, 0, 0, 0,
1998
1999		PB14MD_000, PB14MD_001, PB14MD_010, PB14MD_011,
2000		PB14MD_100, PB14MD_101, PB14MD_110, PB14MD_111,
2001		0, 0, 0, 0, 0, 0, 0, 0,
2002
2003		PB13MD_000, PB13MD_001, PB13MD_010, PB13MD_011,
2004		PB13MD_100, PB13MD_101, PB13MD_110, PB13MD_111,
2005		0, 0, 0, 0, 0, 0, 0, 0,
2006
2007		PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11, 0, 0, 0, 0,
2008		0, 0, 0, 0, 0, 0, 0, 0 }
2009	},
2010	{ PINMUX_CFG_REG("PBCR2", 0xfffe382a, 16, 4) {
2011		PB11MD_00, PB11MD_01, PB11MD_10, PB11MD_11, 0, 0, 0, 0,
2012		0, 0, 0, 0, 0, 0, 0, 0,
2013
2014		PB10MD_00, PB10MD_01, PB10MD_10, PB10MD_11, 0, 0, 0, 0,
2015		0, 0, 0, 0, 0, 0, 0, 0,
2016
2017		PB9MD_00, PB9MD_01, PB9MD_10, PB9MD_11, 0, 0, 0, 0,
2018		0, 0, 0, 0, 0, 0, 0, 0,
2019
2020		PB8MD_00, PB8MD_01, PB8MD_10, PB8MD_11, 0, 0, 0, 0,
2021		0, 0, 0, 0, 0, 0, 0, 0 }
2022	},
2023	{ PINMUX_CFG_REG("PBCR1", 0xfffe382c, 16, 4) {
2024		PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11, 0, 0, 0, 0,
2025		0, 0, 0, 0, 0, 0, 0, 0,
2026
2027		PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11, 0, 0, 0, 0,
2028		0, 0, 0, 0, 0, 0, 0, 0,
2029
2030		PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11, 0, 0, 0, 0,
2031		0, 0, 0, 0, 0, 0, 0, 0,
2032
2033		PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11, 0, 0, 0, 0,
2034		0, 0, 0, 0, 0, 0, 0, 0 }
2035	},
2036	{ PINMUX_CFG_REG("PBCR0", 0xfffe382e, 16, 4) {
2037		PB3MD_00, PB3MD_01, PB3MD_10, PB3MD_11, 0, 0, 0, 0,
2038		0, 0, 0, 0, 0, 0, 0, 0,
2039
2040		PB2MD_00, PB2MD_01, PB2MD_10, PB2MD_11, 0, 0, 0, 0,
2041		0, 0, 0, 0, 0, 0, 0, 0,
2042
2043		PB1MD_00, PB1MD_01, PB1MD_10, PB1MD_11, 0, 0, 0, 0,
2044		0, 0, 0, 0, 0, 0, 0, 0,
2045
2046		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
2047	},
2048
2049	{ PINMUX_CFG_REG("PBIOR1", 0xfffe3830, 16, 1) {
2050		0, 0, 0, 0, 0, 0, 0, 0,
2051		0, 0, 0, 0, 0, 0, 0, 0,
2052		0, 0,
2053		PB22_IN, PB22_OUT,
2054		PB21_IN, PB21_OUT,
2055		PB20_IN, PB20_OUT,
2056		PB19_IN, PB19_OUT,
2057		PB18_IN, PB18_OUT,
2058		PB17_IN, PB17_OUT,
2059		PB16_IN, PB16_OUT }
2060	},
2061	{ PINMUX_CFG_REG("PBIOR0", 0xfffe3832, 16, 1) {
2062		PB15_IN, PB15_OUT,
2063		PB14_IN, PB14_OUT,
2064		PB13_IN, PB13_OUT,
2065		PB12_IN, PB12_OUT,
2066		PB11_IN, PB11_OUT,
2067		PB10_IN, PB10_OUT,
2068		PB9_IN, PB9_OUT,
2069		PB8_IN, PB8_OUT,
2070		PB7_IN, PB7_OUT,
2071		PB6_IN, PB6_OUT,
2072		PB5_IN, PB5_OUT,
2073		PB4_IN, PB4_OUT,
2074		PB3_IN, PB3_OUT,
2075		PB2_IN, PB2_OUT,
2076		PB1_IN, PB1_OUT,
2077		0, 0 }
2078	},
2079
2080	{ PINMUX_CFG_REG("PCCR2", 0xfffe384a, 16, 4) {
2081		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2082
2083		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2084
2085		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2086
2087		PC8MD_000, PC8MD_001, PC8MD_010, PC8MD_011,
2088		PC8MD_100, PC8MD_101, PC8MD_110, PC8MD_111,
2089		0, 0, 0, 0, 0, 0, 0, 0 }
2090	},
2091	{ PINMUX_CFG_REG("PCCR1", 0xfffe384c, 16, 4) {
2092		PC7MD_000, PC7MD_001, PC7MD_010, PC7MD_011,
2093		PC7MD_100, PC7MD_101, PC7MD_110, PC7MD_111,
2094		0, 0, 0, 0, 0, 0, 0, 0,
2095
2096		PC6MD_000, PC6MD_001, PC6MD_010, PC6MD_011,
2097		PC6MD_100, PC6MD_101, PC6MD_110, PC6MD_111,
2098		0, 0, 0, 0, 0, 0, 0, 0,
2099
2100		PC5MD_000, PC5MD_001, PC5MD_010, PC5MD_011,
2101		PC5MD_100, PC5MD_101, PC5MD_110, PC5MD_111,
2102		0, 0, 0, 0, 0, 0, 0, 0,
2103
2104		PC4MD_00, PC4MD_01, PC4MD_10, PC4MD_11, 0, 0, 0, 0,
2105		0, 0, 0, 0, 0, 0, 0, 0 }
2106	},
2107	{ PINMUX_CFG_REG("PCCR0", 0xfffe384e, 16, 4) {
2108		PC3MD_00, PC3MD_01, PC3MD_10, PC3MD_11, 0, 0, 0, 0,
2109		0, 0, 0, 0, 0, 0, 0, 0,
2110
2111		PC2MD_00, PC2MD_01, PC2MD_10, PC2MD_11, 0, 0, 0, 0,
2112		0, 0, 0, 0, 0, 0, 0, 0,
2113
2114		PC1MD_0, PC1MD_1, 0, 0, 0, 0, 0, 0,
2115		0, 0, 0, 0, 0, 0, 0, 0,
2116
2117		PC0MD_0, PC0MD_1, 0, 0, 0, 0, 0, 0,
2118		0, 0, 0, 0, 0, 0, 0, 0 }
2119	},
2120
2121	{ PINMUX_CFG_REG("PCIOR0", 0xfffe3852, 16, 1) {
2122		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2123		PC8_IN, PC8_OUT,
2124		PC7_IN, PC7_OUT,
2125		PC6_IN, PC6_OUT,
2126		PC5_IN, PC5_OUT,
2127		PC4_IN, PC4_OUT,
2128		PC3_IN, PC3_OUT,
2129		PC2_IN, PC2_OUT,
2130		PC1_IN, PC1_OUT,
2131		PC0_IN, PC0_OUT }
2132	},
2133
2134	{ PINMUX_CFG_REG("PDCR3", 0xfffe3868, 16, 4) {
2135		PD15MD_00, PD15MD_01, PD15MD_10, PD15MD_11, 0, 0, 0, 0,
2136		0, 0, 0, 0, 0, 0, 0, 0,
2137
2138		PD14MD_00, PD14MD_01, PD14MD_10, PD14MD_11, 0, 0, 0, 0,
2139		0, 0, 0, 0, 0, 0, 0, 0,
2140
2141		PD13MD_00, PD13MD_01, PD13MD_10, PD13MD_11, 0, 0, 0, 0,
2142		0, 0, 0, 0, 0, 0, 0, 0,
2143
2144		PD12MD_00, PD12MD_01, PD12MD_10, PD12MD_11, 0, 0, 0, 0,
2145		0, 0, 0, 0, 0, 0, 0, 0 }
2146	},
2147	{ PINMUX_CFG_REG("PDCR2", 0xfffe386a, 16, 4) {
2148		PD11MD_00, PD11MD_01, PD11MD_10, PD11MD_11, 0, 0, 0, 0,
2149		0, 0, 0, 0, 0, 0, 0, 0,
2150
2151		PD10MD_00, PD10MD_01, PD10MD_10, PD10MD_11, 0, 0, 0, 0,
2152		0, 0, 0, 0, 0, 0, 0, 0,
2153
2154		PD9MD_00, PD9MD_01, PD9MD_10, PD9MD_11, 0, 0, 0, 0,
2155		0, 0, 0, 0, 0, 0, 0, 0,
2156
2157		PD8MD_00, PD8MD_01, PD8MD_10, PD8MD_11, 0, 0, 0, 0,
2158		0, 0, 0, 0, 0, 0, 0, 0 }
2159	},
2160	{ PINMUX_CFG_REG("PDCR1", 0xfffe386c, 16, 4) {
2161		PD7MD_00, PD7MD_01, PD7MD_10, PD7MD_11, 0, 0, 0, 0,
2162		0, 0, 0, 0, 0, 0, 0, 0,
2163
2164		PD6MD_00, PD6MD_01, PD6MD_10, PD6MD_11, 0, 0, 0, 0,
2165		0, 0, 0, 0, 0, 0, 0, 0,
2166
2167		PD5MD_00, PD5MD_01, PD5MD_10, PD5MD_11, 0, 0, 0, 0,
2168		0, 0, 0, 0, 0, 0, 0, 0,
2169
2170		PD4MD_00, PD4MD_01, PD4MD_10, PD4MD_11, 0, 0, 0, 0,
2171		0, 0, 0, 0, 0, 0, 0, 0 }
2172	},
2173	{ PINMUX_CFG_REG("PDCR0", 0xfffe386e, 16, 4) {
2174		PD3MD_00, PD3MD_01, PD3MD_10, PD3MD_11, 0, 0, 0, 0,
2175		0, 0, 0, 0, 0, 0, 0, 0,
2176
2177		PD2MD_00, PD2MD_01, PD2MD_10, PD2MD_11, 0, 0, 0, 0,
2178		0, 0, 0, 0, 0, 0, 0, 0,
2179
2180		PD1MD_00, PD1MD_01, PD1MD_10, PD1MD_11, 0, 0, 0, 0,
2181		0, 0, 0, 0, 0, 0, 0, 0,
2182
2183		PD0MD_00, PD0MD_01, PD0MD_10, PD0MD_11, 0, 0, 0, 0,
2184		0, 0, 0, 0, 0, 0, 0, 0 }
2185	},
2186
2187	{ PINMUX_CFG_REG("PDIOR0", 0xfffe3872, 16, 1) {
2188		PD15_IN, PD15_OUT,
2189		PD14_IN, PD14_OUT,
2190		PD13_IN, PD13_OUT,
2191		PD12_IN, PD12_OUT,
2192		PD11_IN, PD11_OUT,
2193		PD10_IN, PD10_OUT,
2194		PD9_IN, PD9_OUT,
2195		PD8_IN, PD8_OUT,
2196		PD7_IN, PD7_OUT,
2197		PD6_IN, PD6_OUT,
2198		PD5_IN, PD5_OUT,
2199		PD4_IN, PD4_OUT,
2200		PD3_IN, PD3_OUT,
2201		PD2_IN, PD2_OUT,
2202		PD1_IN, PD1_OUT,
2203		PD0_IN, PD0_OUT }
2204	},
2205
2206	{ PINMUX_CFG_REG("PECR1", 0xfffe388c, 16, 4) {
2207		PE7MD_00, PE7MD_01, PE7MD_10, PE7MD_11, 0, 0, 0, 0,
2208		0, 0, 0, 0, 0, 0, 0, 0,
2209
2210		PE6MD_00, PE6MD_01, PE6MD_10, PE6MD_11, 0, 0, 0, 0,
2211		0, 0, 0, 0, 0, 0, 0, 0,
2212
2213		PE5MD_00, PE5MD_01, PE5MD_10, PE5MD_11, 0, 0, 0, 0,
2214		0, 0, 0, 0, 0, 0, 0, 0,
2215
2216		PE4MD_00, PE4MD_01, PE4MD_10, PE4MD_11, 0, 0, 0, 0,
2217		0, 0, 0, 0, 0, 0, 0, 0 }
2218	},
2219	{ PINMUX_CFG_REG("PECR0", 0xfffe388e, 16, 4) {
2220		PE3MD_000, PE3MD_001, PE3MD_010, PE3MD_011,
2221		PE3MD_100, PE3MD_101, PE3MD_110, PE3MD_111,
2222		0, 0, 0, 0, 0, 0, 0, 0,
2223
2224		PE2MD_000, PE2MD_001, PE2MD_010, PE2MD_011,
2225		PE2MD_100, PE2MD_101, PE2MD_110, PE2MD_111,
2226		0, 0, 0, 0, 0, 0, 0, 0,
2227
2228		PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
2229		PE1MD_100, PE1MD_101, PE1MD_110, PE1MD_111,
2230		0, 0, 0, 0, 0, 0, 0, 0,
2231
2232		PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11, 0, 0, 0, 0,
2233		0, 0, 0, 0, 0, 0, 0, 0 }
2234	},
2235	{ PINMUX_CFG_REG("PEIOR0", 0xfffe3892, 16, 1) {
2236		0, 0, 0, 0, 0, 0, 0, 0,
2237		0, 0, 0, 0, 0, 0, 0, 0,
2238		PE7_IN, PE7_OUT,
2239		PE6_IN, PE6_OUT,
2240		PE5_IN, PE5_OUT,
2241		PE4_IN, PE4_OUT,
2242		PE3_IN, PE3_OUT,
2243		PE2_IN, PE2_OUT,
2244		PE1_IN, PE1_OUT,
2245		PE0_IN, PE0_OUT }
2246	},
2247
2248	{ PINMUX_CFG_REG("PFCR6", 0xfffe38a2, 16, 4) {
2249		PF23MD_000, PF23MD_001, PF23MD_010, PF23MD_011,
2250		PF23MD_100, PF23MD_101, PF23MD_110, PF23MD_111,
2251		0, 0, 0, 0, 0, 0, 0, 0,
2252
2253		PF22MD_000, PF22MD_001, PF22MD_010, PF22MD_011,
2254		PF22MD_100, PF22MD_101, PF22MD_110, PF22MD_111,
2255		0, 0, 0, 0, 0, 0, 0, 0,
2256
2257		PF21MD_000, PF21MD_001, PF21MD_010, PF21MD_011,
2258		PF21MD_100, PF21MD_101, PF21MD_110, PF21MD_111,
2259		0, 0, 0, 0, 0, 0, 0, 0,
2260
2261		PF20MD_000, PF20MD_001, PF20MD_010, PF20MD_011,
2262		PF20MD_100, PF20MD_101, PF20MD_110, PF20MD_111,
2263		0, 0, 0, 0, 0, 0, 0, 0 }
2264	},
2265	{ PINMUX_CFG_REG("PFCR5", 0xfffe38a4, 16, 4) {
2266		PF19MD_000, PF19MD_001, PF19MD_010, PF19MD_011,
2267		PF19MD_100, PF19MD_101, PF19MD_110, PF19MD_111,
2268		0, 0, 0, 0, 0, 0, 0, 0,
2269
2270		PF18MD_000, PF18MD_001, PF18MD_010, PF18MD_011,
2271		PF18MD_100, PF18MD_101, PF18MD_110, PF18MD_111,
2272		0, 0, 0, 0, 0, 0, 0, 0,
2273
2274		PF17MD_000, PF17MD_001, PF17MD_010, PF17MD_011,
2275		PF17MD_100, PF17MD_101, PF17MD_110, PF17MD_111,
2276		0, 0, 0, 0, 0, 0, 0, 0,
2277
2278		PF16MD_000, PF16MD_001, PF16MD_010, PF16MD_011,
2279		PF16MD_100, PF16MD_101, PF16MD_110, PF16MD_111,
2280		0, 0, 0, 0, 0, 0, 0, 0 }
2281	},
2282	{ PINMUX_CFG_REG("PFCR4", 0xfffe38a6, 16, 4) {
2283		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2284
2285		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2286
2287		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2288
2289		PF15MD_000, PF15MD_001, PF15MD_010, PF15MD_011,
2290		PF15MD_100, PF15MD_101, PF15MD_110, PF15MD_111,
2291		0, 0, 0, 0, 0, 0, 0, 0 }
2292	},
2293	{ PINMUX_CFG_REG("PFCR3", 0xfffe38a8, 16, 4) {
2294		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2295
2296		PF14MD_000, PF14MD_001, PF14MD_010, PF14MD_011,
2297		PF14MD_100, PF14MD_101, PF14MD_110, PF14MD_111,
2298		0, 0, 0, 0, 0, 0, 0, 0,
2299
2300		PF13MD_000, PF13MD_001, PF13MD_010, PF13MD_011,
2301		PF13MD_100, PF13MD_101, PF13MD_110, PF13MD_111,
2302		0, 0, 0, 0, 0, 0, 0, 0,
2303
2304		PF12MD_000, PF12MD_001, PF12MD_010, PF12MD_011,
2305		PF12MD_100, PF12MD_101, PF12MD_110, PF12MD_111,
2306		0, 0, 0, 0, 0, 0, 0, 0 }
2307	},
2308	{ PINMUX_CFG_REG("PFCR2", 0xfffe38aa, 16, 4) {
2309		PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
2310		PF11MD_100, PF11MD_101, PF11MD_110, PF11MD_111,
2311		0, 0, 0, 0, 0, 0, 0, 0,
2312
2313		PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
2314		PF10MD_100, PF10MD_101, PF10MD_110, PF10MD_111,
2315		0, 0, 0, 0, 0, 0, 0, 0,
2316
2317		PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
2318		PF9MD_100, PF9MD_101, PF9MD_110, PF9MD_111,
2319		0, 0, 0, 0, 0, 0, 0, 0,
2320
2321		PF8MD_000, PF8MD_001, PF8MD_010, PF8MD_011,
2322		PF8MD_100, PF8MD_101, PF8MD_110, PF8MD_111,
2323		0, 0, 0, 0, 0, 0, 0, 0 }
2324	},
2325	{ PINMUX_CFG_REG("PFCR1", 0xfffe38ac, 16, 4) {
2326		PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
2327		PF7MD_100, PF7MD_101, PF7MD_110, PF7MD_111,
2328		0, 0, 0, 0, 0, 0, 0, 0,
2329
2330		PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
2331		PF6MD_100, PF6MD_101, PF6MD_110, PF6MD_111,
2332		0, 0, 0, 0, 0, 0, 0, 0,
2333
2334		PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
2335		PF5MD_100, PF5MD_101, PF5MD_110, PF5MD_111,
2336		0, 0, 0, 0, 0, 0, 0, 0,
2337
2338		PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
2339		PF4MD_100, PF4MD_101, PF4MD_110, PF4MD_111,
2340		0, 0, 0, 0, 0, 0, 0, 0 }
2341	},
2342	{ PINMUX_CFG_REG("PFCR0", 0xfffe38ae, 16, 4) {
2343		PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
2344		PF3MD_100, PF3MD_101, PF3MD_110, PF3MD_111,
2345		0, 0, 0, 0, 0, 0, 0, 0,
2346
2347		PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
2348		PF2MD_100, PF2MD_101, PF2MD_110, PF2MD_111,
2349		0, 0, 0, 0, 0, 0, 0, 0,
2350
2351		PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
2352		PF1MD_100, PF1MD_101, PF1MD_110, PF1MD_111,
2353		0, 0, 0, 0, 0, 0, 0, 0,
2354
2355		PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
2356		PF0MD_100, PF0MD_101, PF0MD_110, PF0MD_111,
2357		0, 0, 0, 0, 0, 0, 0, 0 }
2358	},
2359
2360	{ PINMUX_CFG_REG("PFIOR1", 0xfffe38b0, 16, 1) {
2361		0, 0, 0, 0, 0, 0, 0, 0,
2362		0, 0, 0, 0, 0, 0, 0, 0,
2363		PF23_IN, PF23_OUT,
2364		PF22_IN, PF22_OUT,
2365		PF21_IN, PF21_OUT,
2366		PF20_IN, PF20_OUT,
2367		PF19_IN, PF19_OUT,
2368		PF18_IN, PF18_OUT,
2369		PF17_IN, PF17_OUT,
2370		PF16_IN, PF16_OUT }
2371	},
2372	{ PINMUX_CFG_REG("PFIOR0", 0xfffe38b2, 16, 1) {
2373		PF15_IN, PF15_OUT,
2374		PF14_IN, PF14_OUT,
2375		PF13_IN, PF13_OUT,
2376		PF12_IN, PF12_OUT,
2377		PF11_IN, PF11_OUT,
2378		PF10_IN, PF10_OUT,
2379		PF9_IN, PF9_OUT,
2380		PF8_IN, PF8_OUT,
2381		PF7_IN, PF7_OUT,
2382		PF6_IN, PF6_OUT,
2383		PF5_IN, PF5_OUT,
2384		PF4_IN, PF4_OUT,
2385		PF3_IN, PF3_OUT,
2386		PF2_IN, PF2_OUT,
2387		PF1_IN, PF1_OUT,
2388		PF0_IN, PF0_OUT }
2389	},
2390
2391	{ PINMUX_CFG_REG("PGCR6", 0xfffe38c2, 16, 4) {
2392		PG27MD_00, PG27MD_01, PG27MD_10, PG27MD_11, 0, 0, 0, 0,
2393		0, 0, 0, 0, 0, 0, 0, 0,
2394
2395		PG26MD_00, PG26MD_01, PG26MD_10, PG26MD_11, 0, 0, 0, 0,
2396		0, 0, 0, 0, 0, 0, 0, 0,
2397
2398		PG25MD_00, PG25MD_01, PG25MD_10, PG25MD_11, 0, 0, 0, 0,
2399		0, 0, 0, 0, 0, 0, 0, 0,
2400
2401		PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11, 0, 0, 0, 0,
2402		0, 0, 0, 0, 0, 0, 0, 0 }
2403	},
2404	{ PINMUX_CFG_REG("PGCR5", 0xfffe38c4, 16, 4) {
2405		PG23MD_000, PG23MD_001, PG23MD_010, PG23MD_011,
2406		PG23MD_100, PG23MD_101, PG23MD_110, PG23MD_111,
2407		0, 0, 0, 0, 0, 0, 0, 0,
2408
2409		PG22MD_000, PG22MD_001, PG22MD_010, PG22MD_011,
2410		PG22MD_100, PG22MD_101, PG22MD_110, PG22MD_111,
2411		0, 0, 0, 0, 0, 0, 0, 0,
2412
2413		PG21MD_000, PG21MD_001, PG21MD_010, PG21MD_011,
2414		PG21MD_100, PG21MD_101, PG21MD_110, PG21MD_111,
2415		0, 0, 0, 0, 0, 0, 0, 0,
2416
2417		PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
2418		PG20MD_100, PG20MD_101, PG20MD_110, PG20MD_111,
2419		0, 0, 0, 0, 0, 0, 0, 0 }
2420	},
2421	{ PINMUX_CFG_REG("PGCR4", 0xfffe38c6, 16, 4) {
2422		PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
2423		PG19MD_100, PG19MD_101, PG19MD_110, PG19MD_111,
2424		0, 0, 0, 0, 0, 0, 0, 0,
2425
2426		PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
2427		PG18MD_100, PG18MD_101, PG18MD_110, PG18MD_111,
2428		0, 0, 0, 0, 0, 0, 0, 0,
2429
2430		PG17MD_00, PG17MD_01, PG17MD_10, PG17MD_11, 0, 0, 0, 0,
2431		0, 0, 0, 0, 0, 0, 0, 0,
2432
2433		PG16MD_00, PG16MD_01, PG16MD_10, PG16MD_11, 0, 0, 0, 0,
2434		0, 0, 0, 0, 0, 0, 0, 0 }
2435	},
2436	{ PINMUX_CFG_REG("PGCR3", 0xfffe38c8, 16, 4) {
2437		PG15MD_00, PG15MD_01, PG15MD_10, PG15MD_11, 0, 0, 0, 0,
2438		0, 0, 0, 0, 0, 0, 0, 0,
2439
2440		PG14MD_00, PG14MD_01, PG14MD_10, PG14MD_11, 0, 0, 0, 0,
2441		0, 0, 0, 0, 0, 0, 0, 0,
2442
2443		PG13MD_00, PG13MD_01, PG13MD_10, PG13MD_11, 0, 0, 0, 0,
2444		0, 0, 0, 0, 0, 0, 0, 0,
2445
2446		PG12MD_00, PG12MD_01, PG12MD_10, PG12MD_11, 0, 0, 0, 0,
2447		0, 0, 0, 0, 0, 0, 0, 0 }
2448	},
2449	{ PINMUX_CFG_REG("PGCR2", 0xfffe38ca, 16, 4) {
2450		PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
2451		PG11MD_100, PG11MD_101, PG11MD_110, PG11MD_111,
2452		0, 0, 0, 0, 0, 0, 0, 0,
2453
2454		PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
2455		PG10MD_100, PG10MD_101, PG10MD_110, PG10MD_111,
2456		0, 0, 0, 0, 0, 0, 0, 0,
2457
2458		PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
2459		PG9MD_100, PG9MD_101, PG9MD_110, PG9MD_111,
2460		0, 0, 0, 0, 0, 0, 0, 0,
2461
2462		PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
2463		PG8MD_100, PG8MD_101, PG8MD_110, PG8MD_111,
2464		0, 0, 0, 0, 0, 0, 0, 0 }
2465	},
2466
2467	{ PINMUX_CFG_REG("PGCR1", 0xfffe38cc, 16, 4) {
2468		PG7MD_000, PG7MD_001, PG7MD_010, PG7MD_011,
2469		PG7MD_100, PG7MD_101, PG7MD_110, PG7MD_111,
2470		0, 0, 0, 0, 0, 0, 0, 0,
2471
2472		PG6MD_000, PG6MD_001, PG6MD_010, PG6MD_011,
2473		PG6MD_100, PG6MD_101, PG6MD_110, PG6MD_111,
2474		0, 0, 0, 0, 0, 0, 0, 0,
2475
2476		PG5MD_000, PG5MD_001, PG5MD_010, PG5MD_011,
2477		PG5MD_100, PG5MD_101, PG5MD_110, PG5MD_111,
2478		0, 0, 0, 0, 0, 0, 0, 0,
2479
2480		PG4MD_000, PG4MD_001, PG4MD_010, PG4MD_011,
2481		PG4MD_100, PG4MD_101, PG4MD_110, PG4MD_111,
2482		0, 0, 0, 0, 0, 0, 0, 0 }
2483	},
2484	{ PINMUX_CFG_REG("PGCR0", 0xfffe38ce, 16, 4) {
2485		PG3MD_000, PG3MD_001, PG3MD_010, PG3MD_011,
2486		PG3MD_100, PG3MD_101, PG3MD_110, PG3MD_111,
2487		0, 0, 0, 0, 0, 0, 0, 0,
2488
2489		PG2MD_000, PG2MD_001, PG2MD_010, PG2MD_011,
2490		PG2MD_100, PG2MD_101, PG2MD_110, PG2MD_111,
2491		0, 0, 0, 0, 0, 0, 0, 0,
2492
2493		PG1MD_000, PG1MD_001, PG1MD_010, PG1MD_011,
2494		PG1MD_100, PG1MD_101, PG1MD_110, PG1MD_111,
2495		0, 0, 0, 0, 0, 0, 0, 0,
2496
2497		PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
2498		PG0MD_100, PG0MD_101, PG0MD_110, PG0MD_111,
2499		0, 0, 0, 0, 0, 0, 0, 0 }
2500	},
2501
2502	{ PINMUX_CFG_REG("PGIOR1", 0xfffe38d0, 16, 1) {
2503		0, 0, 0, 0, 0, 0, 0, 0,
2504		PG27_IN, PG27_OUT,
2505		PG26_IN, PG26_OUT,
2506		PG25_IN, PG25_OUT,
2507		PG24_IN, PG24_OUT,
2508		PG23_IN, PG23_OUT,
2509		PG22_IN, PG22_OUT,
2510		PG21_IN, PG21_OUT,
2511		PG20_IN, PG20_OUT,
2512		PG19_IN, PG19_OUT,
2513		PG18_IN, PG18_OUT,
2514		PG17_IN, PG17_OUT,
2515		PG16_IN, PG16_OUT }
2516	},
2517	{ PINMUX_CFG_REG("PGIOR0", 0xfffe38d2, 16, 1) {
2518		PG15_IN, PG15_OUT,
2519		PG14_IN, PG14_OUT,
2520		PG13_IN, PG13_OUT,
2521		PG12_IN, PG12_OUT,
2522		PG11_IN, PG11_OUT,
2523		PG10_IN, PG10_OUT,
2524		PG9_IN, PG9_OUT,
2525		PG8_IN, PG8_OUT,
2526		PG7_IN, PG7_OUT,
2527		PG6_IN, PG6_OUT,
2528		PG5_IN, PG5_OUT,
2529		PG4_IN, PG4_OUT,
2530		PG3_IN, PG3_OUT,
2531		PG2_IN, PG2_OUT,
2532		PG1_IN, PG1_OUT,
2533		PG0_IN, PG0_OUT }
2534	},
2535
2536	{ PINMUX_CFG_REG("PHCR1", 0xfffe38ec, 16, 4) {
2537		PH7MD_00, PH7MD_01, PH7MD_10, PH7MD_11, 0, 0, 0, 0,
2538		0, 0, 0, 0, 0, 0, 0, 0,
2539
2540		PH6MD_00, PH6MD_01, PH6MD_10, PH6MD_11, 0, 0, 0, 0,
2541		0, 0, 0, 0, 0, 0, 0, 0,
2542
2543		PH5MD_00, PH5MD_01, PH5MD_10, PH5MD_11, 0, 0, 0, 0,
2544		0, 0, 0, 0, 0, 0, 0, 0,
2545
2546		PH4MD_00, PH4MD_01, PH4MD_10, PH4MD_11, 0, 0, 0, 0,
2547		0, 0, 0, 0, 0, 0, 0, 0 }
2548	},
2549
2550	{ PINMUX_CFG_REG("PHCR0", 0xfffe38ee, 16, 4) {
2551		PH3MD_00, PH3MD_01, PH3MD_10, PH3MD_11, 0, 0, 0, 0,
2552		0, 0, 0, 0, 0, 0, 0, 0,
2553
2554		PH2MD_00, PH2MD_01, PH2MD_10, PH2MD_11, 0, 0, 0, 0,
2555		0, 0, 0, 0, 0, 0, 0, 0,
2556
2557		PH1MD_00, PH1MD_01, PH1MD_10, PH1MD_11, 0, 0, 0, 0,
2558		0, 0, 0, 0, 0, 0, 0, 0,
2559
2560		PH0MD_00, PH0MD_01, PH0MD_10, PH0MD_11, 0, 0, 0, 0,
2561		0, 0, 0, 0, 0, 0, 0, 0 }
2562	},
2563
2564	{ PINMUX_CFG_REG("PJCR7", 0xfffe3900, 16, 4) {
2565		PJ31MD_0, PJ31MD_1, 0, 0, 0, 0, 0, 0,
2566		0, 0, 0, 0, 0, 0, 0, 0,
2567
2568		PJ30MD_000, PJ30MD_001, PJ30MD_010, PJ30MD_011,
2569		PJ30MD_100, PJ30MD_101, PJ30MD_110, PJ30MD_111,
2570		0, 0, 0, 0, 0, 0, 0, 0,
2571
2572		PJ29MD_000, PJ29MD_001, PJ29MD_010, PJ29MD_011,
2573		PJ29MD_100, PJ29MD_101, PJ29MD_110, PJ29MD_111,
2574		0, 0, 0, 0, 0, 0, 0, 0,
2575
2576		PJ28MD_000, PJ28MD_001, PJ28MD_010, PJ28MD_011,
2577		PJ28MD_100, PJ28MD_101, PJ28MD_110, PJ28MD_111,
2578		0, 0, 0, 0, 0, 0, 0, 0 }
2579	},
2580	{ PINMUX_CFG_REG("PJCR6", 0xfffe3902, 16, 4) {
2581		PJ27MD_000, PJ27MD_001, PJ27MD_010, PJ27MD_011,
2582		PJ27MD_100, PJ27MD_101, PJ27MD_110, PJ27MD_111,
2583		0, 0, 0, 0, 0, 0, 0, 0,
2584
2585		PJ26MD_000, PJ26MD_001, PJ26MD_010, PJ26MD_011,
2586		PJ26MD_100, PJ26MD_101, PJ26MD_110, PJ26MD_111,
2587		0, 0, 0, 0, 0, 0, 0, 0,
2588
2589		PJ25MD_000, PJ25MD_001, PJ25MD_010, PJ25MD_011,
2590		PJ25MD_100, PJ25MD_101, PJ25MD_110, PJ25MD_111,
2591		0, 0, 0, 0, 0, 0, 0, 0,
2592
2593		PJ24MD_000, PJ24MD_001, PJ24MD_010, PJ24MD_011,
2594		PJ24MD_100, PJ24MD_101, PJ24MD_110, PJ24MD_111,
2595		0, 0, 0, 0, 0, 0, 0, 0 }
2596	},
2597	{ PINMUX_CFG_REG("PJCR5", 0xfffe3904, 16, 4) {
2598		PJ23MD_000, PJ23MD_001, PJ23MD_010, PJ23MD_011,
2599		PJ23MD_100, PJ23MD_101, PJ23MD_110, PJ23MD_111,
2600		0, 0, 0, 0, 0, 0, 0, 0,
2601
2602		PJ22MD_000, PJ22MD_001, PJ22MD_010, PJ22MD_011,
2603		PJ22MD_100, PJ22MD_101, PJ22MD_110, PJ22MD_111,
2604		0, 0, 0, 0, 0, 0, 0, 0,
2605
2606		PJ21MD_000, PJ21MD_001, PJ21MD_010, PJ21MD_011,
2607		PJ21MD_100, PJ21MD_101, PJ21MD_110, PJ21MD_111,
2608		0, 0, 0, 0, 0, 0, 0, 0,
2609
2610		PJ20MD_000, PJ20MD_001, PJ20MD_010, PJ20MD_011,
2611		PJ20MD_100, PJ20MD_101, PJ20MD_110, PJ20MD_111,
2612		0, 0, 0, 0, 0, 0, 0, 0 }
2613	},
2614	{ PINMUX_CFG_REG("PJCR4", 0xfffe3906, 16, 4) {
2615		PJ19MD_000, PJ19MD_001, PJ19MD_010, PJ19MD_011,
2616		PJ19MD_100, PJ19MD_101, PJ19MD_110, PJ19MD_111,
2617		0, 0, 0, 0, 0, 0, 0, 0,
2618
2619		PJ18MD_000, PJ18MD_001, PJ18MD_010, PJ18MD_011,
2620		PJ18MD_100, PJ18MD_101, PJ18MD_110, PJ18MD_111,
2621		0, 0, 0, 0, 0, 0, 0, 0,
2622
2623		PJ17MD_000, PJ17MD_001, PJ17MD_010, PJ17MD_011,
2624		PJ17MD_100, PJ17MD_101, PJ17MD_110, PJ17MD_111,
2625		0, 0, 0, 0, 0, 0, 0, 0,
2626
2627		PJ16MD_000, PJ16MD_001, PJ16MD_010, PJ16MD_011,
2628		PJ16MD_100, PJ16MD_101, PJ16MD_110, PJ16MD_111,
2629		0, 0, 0, 0, 0, 0, 0, 0 }
2630	},
2631	{ PINMUX_CFG_REG("PJCR3", 0xfffe3908, 16, 4) {
2632		PJ15MD_000, PJ15MD_001, PJ15MD_010, PJ15MD_011,
2633		PJ15MD_100, PJ15MD_101, PJ15MD_110, PJ15MD_111,
2634		0, 0, 0, 0, 0, 0, 0, 0,
2635
2636		PJ14MD_000, PJ14MD_001, PJ14MD_010, PJ14MD_011,
2637		PJ14MD_100, PJ14MD_101, PJ14MD_110, PJ14MD_111,
2638		0, 0, 0, 0, 0, 0, 0, 0,
2639
2640		PJ13MD_000, PJ13MD_001, PJ13MD_010, PJ13MD_011,
2641		PJ13MD_100, PJ13MD_101, PJ13MD_110, PJ13MD_111,
2642		0, 0, 0, 0, 0, 0, 0, 0,
2643
2644		PJ12MD_000, PJ12MD_001, PJ12MD_010, PJ12MD_011,
2645		PJ12MD_100, PJ12MD_101, PJ12MD_110, PJ12MD_111,
2646		0, 0, 0, 0, 0, 0, 0, 0 }
2647	},
2648	{ PINMUX_CFG_REG("PJCR2", 0xfffe390a, 16, 4) {
2649		PJ11MD_000, PJ11MD_001, PJ11MD_010, PJ11MD_011,
2650		PJ11MD_100, PJ11MD_101, PJ11MD_110, PJ11MD_111,
2651		0, 0, 0, 0, 0, 0, 0, 0,
2652
2653		PJ10MD_000, PJ10MD_001, PJ10MD_010, PJ10MD_011,
2654		PJ10MD_100, PJ10MD_101, PJ10MD_110, PJ10MD_111,
2655		0, 0, 0, 0, 0, 0, 0, 0,
2656
2657		PJ9MD_000, PJ9MD_001, PJ9MD_010, PJ9MD_011,
2658		PJ9MD_100, PJ9MD_101, PJ9MD_110, PJ9MD_111,
2659		0, 0, 0, 0, 0, 0, 0, 0,
2660
2661		PJ8MD_000, PJ8MD_001, PJ8MD_010, PJ8MD_011,
2662		PJ8MD_100, PJ8MD_101, PJ8MD_110, PJ8MD_111,
2663		0, 0, 0, 0, 0, 0, 0, 0 }
2664	},
2665	{ PINMUX_CFG_REG("PJCR1", 0xfffe390c, 16, 4) {
2666		PJ7MD_000, PJ7MD_001, PJ7MD_010, PJ7MD_011,
2667		PJ7MD_100, PJ7MD_101, PJ7MD_110, PJ7MD_111,
2668		0, 0, 0, 0, 0, 0, 0, 0,
2669
2670		PJ6MD_000, PJ6MD_001, PJ6MD_010, PJ6MD_011,
2671		PJ6MD_100, PJ6MD_101, PJ6MD_110, PJ6MD_111,
2672		0, 0, 0, 0, 0, 0, 0, 0,
2673
2674		PJ5MD_000, PJ5MD_001, PJ5MD_010, PJ5MD_011,
2675		PJ5MD_100, PJ5MD_101, PJ5MD_110, PJ5MD_111,
2676		0, 0, 0, 0, 0, 0, 0, 0,
2677
2678		PJ4MD_000, PJ4MD_001, PJ4MD_010, PJ4MD_011,
2679		PJ4MD_100, PJ4MD_101, PJ4MD_110, PJ4MD_111,
2680		0, 0, 0, 0, 0, 0, 0, 0 }
2681	},
2682	{ PINMUX_CFG_REG("PJCR0", 0xfffe390e, 16, 4) {
2683		PJ3MD_000, PJ3MD_001, PJ3MD_010, PJ3MD_011,
2684		PJ3MD_100, PJ3MD_101, PJ3MD_110, PJ3MD_111,
2685		0, 0, 0, 0, 0, 0, 0, 0,
2686
2687		PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
2688		PJ2MD_100, PJ2MD_101, PJ2MD_110, PJ2MD_111,
2689		0, 0, 0, 0, 0, 0, 0, 0,
2690
2691		PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
2692		PJ1MD_100, PJ1MD_101, PJ1MD_110, PJ1MD_111,
2693		0, 0, 0, 0, 0, 0, 0, 0,
2694
2695		PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
2696		PJ0MD_100, PJ0MD_101, PJ0MD_110, PJ0MD_111,
2697		0, 0, 0, 0, 0, 0, 0, 0 }
2698	},
2699
2700	{ PINMUX_CFG_REG("PJIOR1", 0xfffe3910, 16, 1) {
2701		PJ31_IN, PJ31_OUT,
2702		PJ30_IN, PJ30_OUT,
2703		PJ29_IN, PJ29_OUT,
2704		PJ28_IN, PJ28_OUT,
2705		PJ27_IN, PJ27_OUT,
2706		PJ26_IN, PJ26_OUT,
2707		PJ25_IN, PJ25_OUT,
2708		PJ24_IN, PJ24_OUT,
2709		PJ23_IN, PJ23_OUT,
2710		PJ22_IN, PJ22_OUT,
2711		PJ21_IN, PJ21_OUT,
2712		PJ20_IN, PJ20_OUT,
2713		PJ19_IN, PJ19_OUT,
2714		PJ18_IN, PJ18_OUT,
2715		PJ17_IN, PJ17_OUT,
2716		PJ16_IN, PJ16_OUT }
2717	},
2718	{ PINMUX_CFG_REG("PJIOR0", 0xfffe3912, 16, 1) {
2719		PJ15_IN, PJ15_OUT,
2720		PJ14_IN, PJ14_OUT,
2721		PJ13_IN, PJ13_OUT,
2722		PJ12_IN, PJ12_OUT,
2723		PJ11_IN, PJ11_OUT,
2724		PJ10_IN, PJ10_OUT,
2725		PJ9_IN, PJ9_OUT,
2726		PJ8_IN, PJ8_OUT,
2727		PJ7_IN, PJ7_OUT,
2728		PJ6_IN, PJ6_OUT,
2729		PJ5_IN, PJ5_OUT,
2730		PJ4_IN, PJ4_OUT,
2731		PJ3_IN, PJ3_OUT,
2732		PJ2_IN, PJ2_OUT,
2733		PJ1_IN, PJ1_OUT,
2734		PJ0_IN, PJ0_OUT }
2735	},
2736
2737	{}
2738};
2739
2740static const struct pinmux_data_reg pinmux_data_regs[] = {
2741	{ PINMUX_DATA_REG("PADR0", 0xfffe3816, 16) {
2742		0, 0, 0, 0, 0, 0, 0, PA1_DATA,
2743		0, 0, 0, 0, 0, 0, 0, PA0_DATA }
2744	},
2745
2746	{ PINMUX_DATA_REG("PBDR1", 0xfffe3834, 16) {
2747		0, 0, 0, 0, 0, 0, 0, 0,
2748		0, PB22_DATA, PB21_DATA, PB20_DATA,
2749		PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA }
2750	},
2751	{ PINMUX_DATA_REG("PBDR0", 0xfffe3836, 16) {
2752		PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
2753		PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
2754		PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
2755		PB3_DATA, PB2_DATA, PB1_DATA, 0 }
2756	},
2757
2758	{ PINMUX_DATA_REG("PCDR0", 0xfffe3856, 16) {
2759		0, 0, 0, 0,
2760		0, 0, 0, PC8_DATA,
2761		PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
2762		PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA }
2763	},
2764
2765	{ PINMUX_DATA_REG("PDDR0", 0xfffe3876, 16) {
2766		PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
2767		PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
2768		PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
2769		PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA }
2770	},
2771
2772	{ PINMUX_DATA_REG("PEDR0", 0xfffe3896, 16) {
2773		0, 0, 0, 0, 0, 0, 0, 0,
2774		PE7_DATA, PE6_DATA, PE5_DATA, PE4_DATA,
2775		PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA }
2776	},
2777
2778	{ PINMUX_DATA_REG("PFDR1", 0xfffe38b4, 16) {
2779		0, 0, 0, 0, 0, 0, 0, 0,
2780		PF23_DATA, PF22_DATA, PF21_DATA, PF20_DATA,
2781		PF19_DATA, PF18_DATA, PF17_DATA, PF16_DATA }
2782	},
2783	{ PINMUX_DATA_REG("PFDR0", 0xfffe38b6, 16) {
2784		PF15_DATA, PF14_DATA, PF13_DATA, PF12_DATA,
2785		PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
2786		PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
2787		PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA }
2788	},
2789
2790	{ PINMUX_DATA_REG("PGDR1", 0xfffe38d4, 16) {
2791		0, 0, 0, 0,
2792		PG27_DATA, PG26_DATA, PG25_DATA, PG24_DATA,
2793		PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
2794		PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA }
2795	},
2796	{ PINMUX_DATA_REG("PGDR0", 0xfffe38d6, 16) {
2797		PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
2798		PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
2799		PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
2800		PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA }
2801	},
2802
2803	{ PINMUX_DATA_REG("PJDR1", 0xfffe3914, 16) {
2804		PJ31_DATA, PJ30_DATA, PJ29_DATA, PJ28_DATA,
2805		PJ27_DATA, PJ26_DATA, PJ25_DATA, PJ24_DATA,
2806		PJ23_DATA, PJ22_DATA, PJ21_DATA, PJ20_DATA,
2807		PJ19_DATA, PJ18_DATA, PJ17_DATA, PJ16_DATA }
2808	},
2809	{ PINMUX_DATA_REG("PJDR0", 0xfffe3916, 16) {
2810		PJ15_DATA, PJ14_DATA, PJ13_DATA, PJ12_DATA,
2811		PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
2812		PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
2813		PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA }
2814	},
2815
2816	{ }
2817};
2818
2819const struct sh_pfc_soc_info sh7269_pinmux_info = {
2820	.name = "sh7269_pfc",
2821	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },
2822	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },
2823	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
2824
2825	.pins = pinmux_pins,
2826	.nr_pins = ARRAY_SIZE(pinmux_pins),
2827	.func_gpios = pinmux_func_gpios,
2828	.nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
2829
2830	.cfg_regs = pinmux_config_regs,
2831	.data_regs = pinmux_data_regs,
2832
2833	.gpio_data = pinmux_data,
2834	.gpio_data_size = ARRAY_SIZE(pinmux_data),
2835};
2836