Merge tag 'gpio-updates-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / drivers / pinctrl / renesas / pfc-sh7264.c
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * SH7264 Pinmux
4  *
5  *  Copyright (C) 2012  Renesas Electronics Europe Ltd
6  */
7
8 #include <linux/kernel.h>
9 #include <linux/gpio.h>
10 #include <cpu/sh7264.h>
11
12 #include "sh_pfc.h"
13
14 enum {
15         PINMUX_RESERVED = 0,
16
17         PINMUX_DATA_BEGIN,
18         /* Port A */
19         PA3_DATA, PA2_DATA, PA1_DATA, PA0_DATA,
20         /* Port B */
21         PB22_DATA, PB21_DATA, PB20_DATA,
22         PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA,
23         PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
24         PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
25         PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
26         PB3_DATA, PB2_DATA, PB1_DATA,
27         /* Port C */
28         PC10_DATA, PC9_DATA, PC8_DATA,
29         PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
30         PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA,
31         /* Port D */
32         PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
33         PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
34         PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
35         PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA,
36         /* Port E */
37         PE5_DATA, PE4_DATA,
38         PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA,
39         /* Port F */
40         PF12_DATA,
41         PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
42         PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
43         PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA,
44         /* Port G */
45         PG24_DATA,
46         PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
47         PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA,
48         PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
49         PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
50         PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
51         PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA,
52         /* Port H */
53         /* NOTE - Port H does not have a Data Register, but PH Data is
54            connected to PH Port Register */
55         PH7_DATA, PH6_DATA, PH5_DATA, PH4_DATA,
56         PH3_DATA, PH2_DATA, PH1_DATA, PH0_DATA,
57         /* Port I - not on device */
58         /* Port J */
59         PJ12_DATA,
60         PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
61         PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
62         PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA,
63         /* Port K */
64         PK12_DATA,
65         PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,
66         PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,
67         PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA,
68         PINMUX_DATA_END,
69
70         PINMUX_INPUT_BEGIN,
71         FORCE_IN,
72         /* Port A */
73         PA3_IN, PA2_IN, PA1_IN, PA0_IN,
74         /* Port B */
75         PB22_IN, PB21_IN, PB20_IN,
76         PB19_IN, PB18_IN, PB17_IN, PB16_IN,
77         PB15_IN, PB14_IN, PB13_IN, PB12_IN,
78         PB11_IN, PB10_IN, PB9_IN, PB8_IN,
79         PB7_IN, PB6_IN, PB5_IN, PB4_IN,
80         PB3_IN, PB2_IN, PB1_IN,
81         /* Port C */
82         PC10_IN, PC9_IN, PC8_IN,
83         PC7_IN, PC6_IN, PC5_IN, PC4_IN,
84         PC3_IN, PC2_IN, PC1_IN, PC0_IN,
85         /* Port D */
86         PD15_IN, PD14_IN, PD13_IN, PD12_IN,
87         PD11_IN, PD10_IN, PD9_IN, PD8_IN,
88         PD7_IN, PD6_IN, PD5_IN, PD4_IN,
89         PD3_IN, PD2_IN, PD1_IN, PD0_IN,
90         /* Port E */
91         PE5_IN, PE4_IN,
92         PE3_IN, PE2_IN, PE1_IN, PE0_IN,
93         /* Port F */
94         PF12_IN,
95         PF11_IN, PF10_IN, PF9_IN, PF8_IN,
96         PF7_IN, PF6_IN, PF5_IN, PF4_IN,
97         PF3_IN, PF2_IN, PF1_IN, PF0_IN,
98         /* Port G */
99         PG24_IN,
100         PG23_IN, PG22_IN, PG21_IN, PG20_IN,
101         PG19_IN, PG18_IN, PG17_IN, PG16_IN,
102         PG15_IN, PG14_IN, PG13_IN, PG12_IN,
103         PG11_IN, PG10_IN, PG9_IN, PG8_IN,
104         PG7_IN, PG6_IN, PG5_IN, PG4_IN,
105         PG3_IN, PG2_IN, PG1_IN, PG0_IN,
106         /* Port H - Port H does not have a Data Register */
107         /* Port I - not on device */
108         /* Port J */
109         PJ12_IN,
110         PJ11_IN, PJ10_IN, PJ9_IN, PJ8_IN,
111         PJ7_IN, PJ6_IN, PJ5_IN, PJ4_IN,
112         PJ3_IN, PJ2_IN, PJ1_IN, PJ0_IN,
113         /* Port K */
114         PK12_IN,
115         PK11_IN, PK10_IN, PK9_IN, PK8_IN,
116         PK7_IN, PK6_IN, PK5_IN, PK4_IN,
117         PK3_IN, PK2_IN, PK1_IN, PK0_IN,
118         PINMUX_INPUT_END,
119
120         PINMUX_OUTPUT_BEGIN,
121         FORCE_OUT,
122         /* Port A */
123         PA3_OUT, PA2_OUT, PA1_OUT, PA0_OUT,
124         /* Port B */
125         PB22_OUT, PB21_OUT, PB20_OUT,
126         PB19_OUT, PB18_OUT, PB17_OUT, PB16_OUT,
127         PB15_OUT, PB14_OUT, PB13_OUT, PB12_OUT,
128         PB11_OUT, PB10_OUT, PB9_OUT, PB8_OUT,
129         PB7_OUT, PB6_OUT, PB5_OUT, PB4_OUT,
130         PB3_OUT, PB2_OUT, PB1_OUT,
131         /* Port C */
132         PC10_OUT, PC9_OUT, PC8_OUT,
133         PC7_OUT, PC6_OUT, PC5_OUT, PC4_OUT,
134         PC3_OUT, PC2_OUT, PC1_OUT, PC0_OUT,
135         /* Port D */
136         PD15_OUT, PD14_OUT, PD13_OUT, PD12_OUT,
137         PD11_OUT, PD10_OUT, PD9_OUT, PD8_OUT,
138         PD7_OUT, PD6_OUT, PD5_OUT, PD4_OUT,
139         PD3_OUT, PD2_OUT, PD1_OUT, PD0_OUT,
140         /* Port E */
141         PE5_OUT, PE4_OUT,
142         PE3_OUT, PE2_OUT, PE1_OUT, PE0_OUT,
143         /* Port F */
144         PF12_OUT,
145         PF11_OUT, PF10_OUT, PF9_OUT, PF8_OUT,
146         PF7_OUT, PF6_OUT, PF5_OUT, PF4_OUT,
147         PF3_OUT, PF2_OUT, PF1_OUT, PF0_OUT,
148         /* Port G */
149         PG24_OUT,
150         PG23_OUT, PG22_OUT, PG21_OUT, PG20_OUT,
151         PG19_OUT, PG18_OUT, PG17_OUT, PG16_OUT,
152         PG15_OUT, PG14_OUT, PG13_OUT, PG12_OUT,
153         PG11_OUT, PG10_OUT, PG9_OUT, PG8_OUT,
154         PG7_OUT, PG6_OUT, PG5_OUT, PG4_OUT,
155         PG3_OUT, PG2_OUT, PG1_OUT, PG0_OUT,
156         /* Port H - Port H does not have a Data Register */
157         /* Port I - not on device */
158         /* Port J */
159         PJ12_OUT,
160         PJ11_OUT, PJ10_OUT, PJ9_OUT, PJ8_OUT,
161         PJ7_OUT, PJ6_OUT, PJ5_OUT, PJ4_OUT,
162         PJ3_OUT, PJ2_OUT, PJ1_OUT, PJ0_OUT,
163         /* Port K */
164         PK12_OUT,
165         PK11_OUT, PK10_OUT, PK9_OUT, PK8_OUT,
166         PK7_OUT, PK6_OUT, PK5_OUT, PK4_OUT,
167         PK3_OUT, PK2_OUT, PK1_OUT, PK0_OUT,
168         PINMUX_OUTPUT_END,
169
170         PINMUX_FUNCTION_BEGIN,
171         /* Port A */
172         PA3_IOR_IN, PA3_IOR_OUT,
173         PA2_IOR_IN, PA2_IOR_OUT,
174         PA1_IOR_IN, PA1_IOR_OUT,
175         PA0_IOR_IN, PA0_IOR_OUT,
176
177         /* Port B */
178         PB11_IOR_IN, PB11_IOR_OUT,
179         PB10_IOR_IN, PB10_IOR_OUT,
180         PB9_IOR_IN, PB9_IOR_OUT,
181         PB8_IOR_IN, PB8_IOR_OUT,
182
183         PB22MD_00, PB22MD_01, PB22MD_10,
184         PB21MD_0, PB21MD_1,
185         PB20MD_0, PB20MD_1,
186         PB19MD_00, PB19MD_01, PB19MD_10, PB19MD_11,
187         PB18MD_00, PB18MD_01, PB18MD_10, PB18MD_11,
188         PB17MD_00, PB17MD_01, PB17MD_10, PB17MD_11,
189         PB16MD_00, PB16MD_01, PB16MD_10, PB16MD_11,
190         PB15MD_00, PB15MD_01, PB15MD_10, PB15MD_11,
191         PB14MD_00, PB14MD_01, PB14MD_10, PB14MD_11,
192         PB13MD_00, PB13MD_01, PB13MD_10, PB13MD_11,
193         PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,
194         PB11MD_00, PB11MD_01, PB11MD_10, PB11MD_11,
195         PB10MD_00, PB10MD_01, PB10MD_10, PB10MD_11,
196         PB9MD_00, PB9MD_01, PB9MD_10, PB9MD_11,
197         PB8MD_00, PB8MD_01, PB8MD_10, PB8MD_11,
198         PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,
199         PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,
200         PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,
201         PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,
202         PB3MD_0, PB3MD_1,
203         PB2MD_0, PB2MD_1,
204         PB1MD_0, PB1MD_1,
205
206         /* Port C */
207         PC14_IOR_IN, PC14_IOR_OUT,
208         PC13_IOR_IN, PC13_IOR_OUT,
209         PC12_IOR_IN, PC12_IOR_OUT,
210         PC11_IOR_IN, PC11_IOR_OUT,
211         PC10_IOR_IN, PC10_IOR_OUT,
212         PC9_IOR_IN, PC9_IOR_OUT,
213         PC8_IOR_IN, PC8_IOR_OUT,
214         PC7_IOR_IN, PC7_IOR_OUT,
215         PC6_IOR_IN, PC6_IOR_OUT,
216         PC5_IOR_IN, PC5_IOR_OUT,
217         PC4_IOR_IN, PC4_IOR_OUT,
218         PC3_IOR_IN, PC3_IOR_OUT,
219         PC2_IOR_IN, PC2_IOR_OUT,
220         PC1_IOR_IN, PC1_IOR_OUT,
221         PC0_IOR_IN, PC0_IOR_OUT,
222
223         PC10MD_0, PC10MD_1,
224         PC9MD_0, PC9MD_1,
225         PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11,
226         PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11,
227         PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11,
228         PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11,
229         PC4MD_0, PC4MD_1,
230         PC3MD_0, PC3MD_1,
231         PC2MD_0, PC2MD_1,
232         PC1MD_0, PC1MD_1,
233         PC0MD_0, PC0MD_1,
234
235         /* Port D */
236         PD15_IOR_IN, PD15_IOR_OUT,
237         PD14_IOR_IN, PD14_IOR_OUT,
238         PD13_IOR_IN, PD13_IOR_OUT,
239         PD12_IOR_IN, PD12_IOR_OUT,
240         PD11_IOR_IN, PD11_IOR_OUT,
241         PD10_IOR_IN, PD10_IOR_OUT,
242         PD9_IOR_IN, PD9_IOR_OUT,
243         PD8_IOR_IN, PD8_IOR_OUT,
244         PD7_IOR_IN, PD7_IOR_OUT,
245         PD6_IOR_IN, PD6_IOR_OUT,
246         PD5_IOR_IN, PD5_IOR_OUT,
247         PD4_IOR_IN, PD4_IOR_OUT,
248         PD3_IOR_IN, PD3_IOR_OUT,
249         PD2_IOR_IN, PD2_IOR_OUT,
250         PD1_IOR_IN, PD1_IOR_OUT,
251         PD0_IOR_IN, PD0_IOR_OUT,
252
253         PD15MD_00, PD15MD_01, PD15MD_10, PD15MD_11,
254         PD14MD_00, PD14MD_01, PD14MD_10, PD14MD_11,
255         PD13MD_00, PD13MD_01, PD13MD_10, PD13MD_11,
256         PD12MD_00, PD12MD_01, PD12MD_10, PD12MD_11,
257         PD11MD_00, PD11MD_01, PD11MD_10, PD11MD_11,
258         PD10MD_00, PD10MD_01, PD10MD_10, PD10MD_11,
259         PD9MD_00, PD9MD_01, PD9MD_10, PD9MD_11,
260         PD8MD_00, PD8MD_01, PD8MD_10, PD8MD_11,
261         PD7MD_00, PD7MD_01, PD7MD_10, PD7MD_11,
262         PD6MD_00, PD6MD_01, PD6MD_10, PD6MD_11,
263         PD5MD_00, PD5MD_01, PD5MD_10, PD5MD_11,
264         PD4MD_00, PD4MD_01, PD4MD_10, PD4MD_11,
265         PD3MD_00, PD3MD_01, PD3MD_10, PD3MD_11,
266         PD2MD_00, PD2MD_01, PD2MD_10, PD2MD_11,
267         PD1MD_00, PD1MD_01, PD1MD_10, PD1MD_11,
268         PD0MD_00, PD0MD_01, PD0MD_10, PD0MD_11,
269
270         /* Port E */
271         PE5_IOR_IN, PE5_IOR_OUT,
272         PE4_IOR_IN, PE4_IOR_OUT,
273         PE3_IOR_IN, PE3_IOR_OUT,
274         PE2_IOR_IN, PE2_IOR_OUT,
275         PE1_IOR_IN, PE1_IOR_OUT,
276         PE0_IOR_IN, PE0_IOR_OUT,
277
278         PE5MD_00, PE5MD_01, PE5MD_10, PE5MD_11,
279         PE4MD_00, PE4MD_01, PE4MD_10, PE4MD_11,
280         PE3MD_00, PE3MD_01, PE3MD_10, PE3MD_11,
281         PE2MD_00, PE2MD_01, PE2MD_10, PE2MD_11,
282         PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
283         PE1MD_100, PE1MD_101, PE1MD_110, PE1MD_111,
284         PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11,
285
286         /* Port F */
287         PF12_IOR_IN, PF12_IOR_OUT,
288         PF11_IOR_IN, PF11_IOR_OUT,
289         PF10_IOR_IN, PF10_IOR_OUT,
290         PF9_IOR_IN, PF9_IOR_OUT,
291         PF8_IOR_IN, PF8_IOR_OUT,
292         PF7_IOR_IN, PF7_IOR_OUT,
293         PF6_IOR_IN, PF6_IOR_OUT,
294         PF5_IOR_IN, PF5_IOR_OUT,
295         PF4_IOR_IN, PF4_IOR_OUT,
296         PF3_IOR_IN, PF3_IOR_OUT,
297         PF2_IOR_IN, PF2_IOR_OUT,
298         PF1_IOR_IN, PF1_IOR_OUT,
299         PF0_IOR_IN, PF0_IOR_OUT,
300
301         PF12MD_000, PF12MD_001, PF12MD_010, PF12MD_011,
302         PF12MD_100, PF12MD_101, PF12MD_110, PF12MD_111,
303         PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
304         PF11MD_100, PF11MD_101, PF11MD_110, PF11MD_111,
305         PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
306         PF10MD_100, PF10MD_101, PF10MD_110, PF10MD_111,
307         PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
308         PF9MD_100, PF9MD_101, PF9MD_110, PF9MD_111,
309         PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11,
310         PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
311         PF7MD_100, PF7MD_101, PF7MD_110, PF7MD_111,
312         PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
313         PF6MD_100, PF6MD_101, PF6MD_110, PF6MD_111,
314         PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
315         PF5MD_100, PF5MD_101, PF5MD_110, PF5MD_111,
316         PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
317         PF4MD_100, PF4MD_101, PF4MD_110, PF4MD_111,
318         PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
319         PF3MD_100, PF3MD_101, PF3MD_110, PF3MD_111,
320         PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
321         PF2MD_100, PF2MD_101, PF2MD_110, PF2MD_111,
322         PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
323         PF1MD_100, PF1MD_101, PF1MD_110, PF1MD_111,
324         PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
325         PF0MD_100, PF0MD_101, PF0MD_110, PF0MD_111,
326
327         /* Port G */
328         PG24_IOR_IN, PG24_IOR_OUT,
329         PG23_IOR_IN, PG23_IOR_OUT,
330         PG22_IOR_IN, PG22_IOR_OUT,
331         PG21_IOR_IN, PG21_IOR_OUT,
332         PG20_IOR_IN, PG20_IOR_OUT,
333         PG19_IOR_IN, PG19_IOR_OUT,
334         PG18_IOR_IN, PG18_IOR_OUT,
335         PG17_IOR_IN, PG17_IOR_OUT,
336         PG16_IOR_IN, PG16_IOR_OUT,
337         PG15_IOR_IN, PG15_IOR_OUT,
338         PG14_IOR_IN, PG14_IOR_OUT,
339         PG13_IOR_IN, PG13_IOR_OUT,
340         PG12_IOR_IN, PG12_IOR_OUT,
341         PG11_IOR_IN, PG11_IOR_OUT,
342         PG10_IOR_IN, PG10_IOR_OUT,
343         PG9_IOR_IN, PG9_IOR_OUT,
344         PG8_IOR_IN, PG8_IOR_OUT,
345         PG7_IOR_IN, PG7_IOR_OUT,
346         PG6_IOR_IN, PG6_IOR_OUT,
347         PG5_IOR_IN, PG5_IOR_OUT,
348         PG4_IOR_IN, PG4_IOR_OUT,
349         PG3_IOR_IN, PG3_IOR_OUT,
350         PG2_IOR_IN, PG2_IOR_OUT,
351         PG1_IOR_IN, PG1_IOR_OUT,
352         PG0_IOR_IN, PG0_IOR_OUT,
353
354         PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11,
355         PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11,
356         PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11,
357         PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11,
358         PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
359         PG20MD_100, PG20MD_101, PG20MD_110, PG20MD_111,
360         PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
361         PG19MD_100, PG19MD_101, PG19MD_110, PG19MD_111,
362         PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
363         PG18MD_100, PG18MD_101, PG18MD_110, PG18MD_111,
364         PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,
365         PG17MD_100, PG17MD_101, PG17MD_110, PG17MD_111,
366         PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,
367         PG16MD_100, PG16MD_101, PG16MD_110, PG16MD_111,
368         PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,
369         PG15MD_100, PG15MD_101, PG15MD_110, PG15MD_111,
370         PG14MD_000, PG14MD_001, PG14MD_010, PG14MD_011,
371         PG14MD_100, PG14MD_101, PG14MD_110, PG14MD_111,
372         PG13MD_000, PG13MD_001, PG13MD_010, PG13MD_011,
373         PG13MD_100, PG13MD_101, PG13MD_110, PG13MD_111,
374         PG12MD_000, PG12MD_001, PG12MD_010, PG12MD_011,
375         PG12MD_100, PG12MD_101, PG12MD_110, PG12MD_111,
376         PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
377         PG11MD_100, PG11MD_101, PG11MD_110, PG11MD_111,
378         PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
379         PG10MD_100, PG10MD_101, PG10MD_110, PG10MD_111,
380         PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
381         PG9MD_100, PG9MD_101, PG9MD_110, PG9MD_111,
382         PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
383         PG8MD_100, PG8MD_101, PG8MD_110, PG8MD_111,
384         PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11,
385         PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11,
386         PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11,
387         PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11,
388         PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11,
389         PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11,
390         PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11,
391         PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
392         PG0MD_100, PG0MD_101, PG0MD_110, PG0MD_111,
393
394         /* Port H */
395         PH7MD_0, PH7MD_1,
396         PH6MD_0, PH6MD_1,
397         PH5MD_0, PH5MD_1,
398         PH4MD_0, PH4MD_1,
399         PH3MD_0, PH3MD_1,
400         PH2MD_0, PH2MD_1,
401         PH1MD_0, PH1MD_1,
402         PH0MD_0, PH0MD_1,
403
404         /* Port I - not on device */
405
406         /* Port J */
407         PJ11_IOR_IN, PJ11_IOR_OUT,
408         PJ10_IOR_IN, PJ10_IOR_OUT,
409         PJ9_IOR_IN, PJ9_IOR_OUT,
410         PJ8_IOR_IN, PJ8_IOR_OUT,
411         PJ7_IOR_IN, PJ7_IOR_OUT,
412         PJ6_IOR_IN, PJ6_IOR_OUT,
413         PJ5_IOR_IN, PJ5_IOR_OUT,
414         PJ4_IOR_IN, PJ4_IOR_OUT,
415         PJ3_IOR_IN, PJ3_IOR_OUT,
416         PJ2_IOR_IN, PJ2_IOR_OUT,
417         PJ1_IOR_IN, PJ1_IOR_OUT,
418         PJ0_IOR_IN, PJ0_IOR_OUT,
419
420         PJ11MD_00, PJ11MD_01, PJ11MD_10, PJ11MD_11,
421         PJ10MD_00, PJ10MD_01, PJ10MD_10, PJ10MD_11,
422         PJ9MD_00, PJ9MD_01, PJ9MD_10, PJ9MD_11,
423         PJ8MD_00, PJ8MD_01, PJ8MD_10, PJ8MD_11,
424         PJ7MD_00, PJ7MD_01, PJ7MD_10, PJ7MD_11,
425         PJ6MD_00, PJ6MD_01, PJ6MD_10, PJ6MD_11,
426         PJ5MD_00, PJ5MD_01, PJ5MD_10, PJ5MD_11,
427         PJ4MD_00, PJ4MD_01, PJ4MD_10, PJ4MD_11,
428         PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11,
429         PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
430         PJ2MD_100, PJ2MD_101, PJ2MD_110, PJ2MD_111,
431         PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
432         PJ1MD_100, PJ1MD_101, PJ1MD_110, PJ1MD_111,
433         PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
434         PJ0MD_100, PJ0MD_101, PJ0MD_110, PJ0MD_111,
435
436         /* Port K */
437         PK11_IOR_IN, PK11_IOR_OUT,
438         PK10_IOR_IN, PK10_IOR_OUT,
439         PK9_IOR_IN, PK9_IOR_OUT,
440         PK8_IOR_IN, PK8_IOR_OUT,
441         PK7_IOR_IN, PK7_IOR_OUT,
442         PK6_IOR_IN, PK6_IOR_OUT,
443         PK5_IOR_IN, PK5_IOR_OUT,
444         PK4_IOR_IN, PK4_IOR_OUT,
445         PK3_IOR_IN, PK3_IOR_OUT,
446         PK2_IOR_IN, PK2_IOR_OUT,
447         PK1_IOR_IN, PK1_IOR_OUT,
448         PK0_IOR_IN, PK0_IOR_OUT,
449
450         PK11MD_00, PK11MD_01, PK11MD_10, PK11MD_11,
451         PK10MD_00, PK10MD_01, PK10MD_10, PK10MD_11,
452         PK9MD_00, PK9MD_01, PK9MD_10, PK9MD_11,
453         PK8MD_00, PK8MD_01, PK8MD_10, PK8MD_11,
454         PK7MD_00, PK7MD_01, PK7MD_10, PK7MD_11,
455         PK6MD_00, PK6MD_01, PK6MD_10, PK6MD_11,
456         PK5MD_00, PK5MD_01, PK5MD_10, PK5MD_11,
457         PK4MD_00, PK4MD_01, PK4MD_10, PK4MD_11,
458         PK3MD_00, PK3MD_01, PK3MD_10, PK3MD_11,
459         PK2MD_00, PK2MD_01, PK2MD_10, PK2MD_11,
460         PK1MD_00, PK1MD_01, PK1MD_10, PK1MD_11,
461         PK0MD_00, PK0MD_01, PK0MD_10, PK0MD_11,
462         PINMUX_FUNCTION_END,
463
464         PINMUX_MARK_BEGIN,
465         /* Port A */
466
467         /* Port B */
468
469         /* Port C */
470
471         /* Port D */
472
473         /* Port E */
474
475         /* Port F */
476
477         /* Port G */
478
479         /* Port H */
480         PHAN7_MARK, PHAN6_MARK, PHAN5_MARK, PHAN4_MARK,
481         PHAN3_MARK, PHAN2_MARK, PHAN1_MARK, PHAN0_MARK,
482
483         /* Port I - not on device */
484
485         /* Port J */
486
487         /* Port K */
488
489         IRQ7_PC_MARK, IRQ6_PC_MARK, IRQ5_PC_MARK, IRQ4_PC_MARK,
490         IRQ3_PG_MARK, IRQ2_PG_MARK, IRQ1_PJ_MARK, IRQ0_PJ_MARK,
491         IRQ3_PE_MARK, IRQ2_PE_MARK, IRQ1_PE_MARK, IRQ0_PE_MARK,
492
493         PINT7_PG_MARK, PINT6_PG_MARK, PINT5_PG_MARK, PINT4_PG_MARK,
494         PINT3_PG_MARK, PINT2_PG_MARK, PINT1_PG_MARK, PINT0_PG_MARK,
495
496         SD_CD_MARK, SD_D0_MARK, SD_D1_MARK, SD_D2_MARK, SD_D3_MARK,
497         SD_WP_MARK, SD_CLK_MARK, SD_CMD_MARK,
498         CRX0_MARK, CRX1_MARK,
499         CTX0_MARK, CTX1_MARK,
500         CRX0_CRX1_MARK, CTX0_CTX1_MARK,
501
502         PWM1A_MARK, PWM1B_MARK, PWM1C_MARK, PWM1D_MARK,
503         PWM1E_MARK, PWM1F_MARK, PWM1G_MARK, PWM1H_MARK,
504         PWM2A_MARK, PWM2B_MARK, PWM2C_MARK, PWM2D_MARK,
505         PWM2E_MARK, PWM2F_MARK, PWM2G_MARK, PWM2H_MARK,
506         IERXD_MARK, IETXD_MARK,
507         WDTOVF_MARK,
508
509         /* DMAC */
510         TEND0_MARK, DACK0_MARK, DREQ0_MARK,
511         TEND1_MARK, DACK1_MARK, DREQ1_MARK,
512
513         /* ADC */
514         ADTRG_MARK,
515
516         /* BSC */
517         A25_MARK, A24_MARK,
518         A23_MARK, A22_MARK, A21_MARK, A20_MARK,
519         A19_MARK, A18_MARK, A17_MARK, A16_MARK,
520         A15_MARK, A14_MARK, A13_MARK, A12_MARK,
521         A11_MARK, A10_MARK, A9_MARK, A8_MARK,
522         A7_MARK, A6_MARK, A5_MARK, A4_MARK,
523         A3_MARK, A2_MARK, A1_MARK, A0_MARK,
524         D15_MARK, D14_MARK, D13_MARK, D12_MARK,
525         D11_MARK, D10_MARK, D9_MARK, D8_MARK,
526         D7_MARK, D6_MARK, D5_MARK, D4_MARK,
527         D3_MARK, D2_MARK, D1_MARK, D0_MARK,
528         BS_MARK,
529         CS4_MARK, CS3_MARK, CS2_MARK, CS1_MARK, CS0_MARK,
530         CS6CE1B_MARK, CS5CE1A_MARK,
531         CE2A_MARK, CE2B_MARK,
532         RD_MARK, RDWR_MARK,
533         ICIOWRAH_MARK,
534         ICIORD_MARK,
535         WE1DQMUWE_MARK,
536         WE0DQML_MARK,
537         RAS_MARK, CAS_MARK, CKE_MARK,
538         WAIT_MARK, BREQ_MARK, BACK_MARK, IOIS16_MARK,
539
540         /* TMU */
541         TIOC0A_MARK, TIOC0B_MARK, TIOC0C_MARK, TIOC0D_MARK,
542         TIOC1A_MARK, TIOC1B_MARK,
543         TIOC2A_MARK, TIOC2B_MARK,
544         TIOC3A_MARK, TIOC3B_MARK, TIOC3C_MARK, TIOC3D_MARK,
545         TIOC4A_MARK, TIOC4B_MARK, TIOC4C_MARK, TIOC4D_MARK,
546         TCLKA_MARK,     TCLKB_MARK, TCLKC_MARK, TCLKD_MARK,
547
548         /* SCIF */
549         SCK0_MARK, SCK1_MARK, SCK2_MARK, SCK3_MARK,
550         RXD0_MARK, RXD1_MARK, RXD2_MARK, RXD3_MARK,
551         TXD0_MARK, TXD1_MARK, TXD2_MARK, TXD3_MARK,
552         RXD4_MARK, RXD5_MARK, RXD6_MARK, RXD7_MARK,
553         TXD4_MARK, TXD5_MARK, TXD6_MARK, TXD7_MARK,
554         RTS1_MARK, RTS3_MARK,
555         CTS1_MARK, CTS3_MARK,
556
557         /* RSPI */
558         RSPCK0_MARK, RSPCK1_MARK,
559         MOSI0_MARK, MOSI1_MARK,
560         MISO0_PF12_MARK, MISO1_MARK, MISO1_PG19_MARK,
561         SSL00_MARK, SSL10_MARK,
562
563         /* IIC3 */
564         SCL0_MARK, SCL1_MARK, SCL2_MARK,
565         SDA0_MARK, SDA1_MARK, SDA2_MARK,
566
567         /* SSI */
568         SSISCK0_MARK,
569         SSIWS0_MARK,
570         SSITXD0_MARK,
571         SSIRXD0_MARK,
572         SSIWS1_MARK, SSIWS2_MARK, SSIWS3_MARK,
573         SSISCK1_MARK, SSISCK2_MARK, SSISCK3_MARK,
574         SSIDATA1_MARK, SSIDATA2_MARK, SSIDATA3_MARK,
575         AUDIO_CLK_MARK,
576
577         /* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
578         SIOFTXD_MARK, SIOFRXD_MARK, SIOFSYNC_MARK, SIOFSCK_MARK,
579
580         /* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
581         SPDIF_IN_MARK, SPDIF_OUT_MARK,
582
583         /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
584         FCE_MARK,
585         FRB_MARK,
586
587         /* VDC3 */
588         DV_CLK_MARK,
589         DV_VSYNC_MARK, DV_HSYNC_MARK,
590         DV_DATA7_MARK, DV_DATA6_MARK, DV_DATA5_MARK, DV_DATA4_MARK,
591         DV_DATA3_MARK, DV_DATA2_MARK, DV_DATA1_MARK, DV_DATA0_MARK,
592         LCD_CLK_MARK, LCD_EXTCLK_MARK,
593         LCD_VSYNC_MARK, LCD_HSYNC_MARK, LCD_DE_MARK,
594         LCD_DATA15_MARK, LCD_DATA14_MARK, LCD_DATA13_MARK, LCD_DATA12_MARK,
595         LCD_DATA11_MARK, LCD_DATA10_MARK, LCD_DATA9_MARK, LCD_DATA8_MARK,
596         LCD_DATA7_MARK, LCD_DATA6_MARK, LCD_DATA5_MARK, LCD_DATA4_MARK,
597         LCD_DATA3_MARK, LCD_DATA2_MARK, LCD_DATA1_MARK, LCD_DATA0_MARK,
598         LCD_M_DISP_MARK,
599         PINMUX_MARK_END,
600 };
601
602 static const u16 pinmux_data[] = {
603         /* Port A */
604         PINMUX_DATA(PA3_DATA, PA3_IN),
605         PINMUX_DATA(PA2_DATA, PA2_IN),
606         PINMUX_DATA(PA1_DATA, PA1_IN),
607         PINMUX_DATA(PA0_DATA, PA0_IN),
608
609         /* Port B */
610         PINMUX_DATA(PB22_DATA, PB22MD_00, PB22_IN, PB22_OUT),
611         PINMUX_DATA(A22_MARK, PB22MD_01),
612         PINMUX_DATA(CS4_MARK, PB22MD_10),
613
614         PINMUX_DATA(PB21_DATA, PB21MD_0, PB21_IN, PB21_OUT),
615         PINMUX_DATA(A21_MARK, PB21MD_1),
616         PINMUX_DATA(A20_MARK, PB20MD_1),
617         PINMUX_DATA(A19_MARK, PB19MD_01),
618         PINMUX_DATA(A18_MARK, PB18MD_01),
619         PINMUX_DATA(A17_MARK, PB17MD_01),
620         PINMUX_DATA(A16_MARK, PB16MD_01),
621         PINMUX_DATA(A15_MARK, PB15MD_01),
622         PINMUX_DATA(A14_MARK, PB14MD_01),
623         PINMUX_DATA(A13_MARK, PB13MD_01),
624         PINMUX_DATA(A12_MARK, PB12MD_01),
625         PINMUX_DATA(A11_MARK, PB11MD_01),
626         PINMUX_DATA(A10_MARK, PB10MD_01),
627         PINMUX_DATA(A9_MARK, PB9MD_01),
628         PINMUX_DATA(A8_MARK, PB8MD_01),
629         PINMUX_DATA(A7_MARK, PB7MD_01),
630         PINMUX_DATA(A6_MARK, PB6MD_01),
631         PINMUX_DATA(A5_MARK, PB5MD_01),
632         PINMUX_DATA(A4_MARK, PB4MD_01),
633         PINMUX_DATA(A3_MARK, PB3MD_1),
634         PINMUX_DATA(A2_MARK, PB2MD_1),
635         PINMUX_DATA(A1_MARK, PB1MD_1),
636
637         /* Port C */
638         PINMUX_DATA(PC10_DATA, PC10MD_0),
639         PINMUX_DATA(TIOC2B_MARK, PC1MD_1),
640         PINMUX_DATA(PC9_DATA, PC9MD_0),
641         PINMUX_DATA(TIOC2A_MARK, PC9MD_1),
642         PINMUX_DATA(PC8_DATA, PC8MD_00),
643         PINMUX_DATA(CS3_MARK, PC8MD_01),
644         PINMUX_DATA(TIOC4D_MARK, PC8MD_10),
645         PINMUX_DATA(IRQ7_PC_MARK, PC8MD_11),
646         PINMUX_DATA(PC7_DATA, PC7MD_00),
647         PINMUX_DATA(CKE_MARK, PC7MD_01),
648         PINMUX_DATA(TIOC4C_MARK, PC7MD_10),
649         PINMUX_DATA(IRQ6_PC_MARK, PC7MD_11),
650         PINMUX_DATA(PC6_DATA, PC6MD_00),
651         PINMUX_DATA(CAS_MARK, PC6MD_01),
652         PINMUX_DATA(TIOC4B_MARK, PC6MD_10),
653         PINMUX_DATA(IRQ5_PC_MARK, PC6MD_11),
654         PINMUX_DATA(PC5_DATA, PC5MD_00),
655         PINMUX_DATA(RAS_MARK, PC5MD_01),
656         PINMUX_DATA(TIOC4A_MARK, PC5MD_10),
657         PINMUX_DATA(IRQ4_PC_MARK, PC5MD_11),
658         PINMUX_DATA(PC4_DATA, PC4MD_0),
659         PINMUX_DATA(WE1DQMUWE_MARK, PC4MD_1),
660         PINMUX_DATA(PC3_DATA, PC3MD_0),
661         PINMUX_DATA(WE0DQML_MARK, PC3MD_1),
662         PINMUX_DATA(PC2_DATA, PC2MD_0),
663         PINMUX_DATA(RDWR_MARK, PC2MD_1),
664         PINMUX_DATA(PC1_DATA, PC1MD_0),
665         PINMUX_DATA(RD_MARK, PC1MD_1),
666         PINMUX_DATA(PC0_DATA, PC0MD_0),
667         PINMUX_DATA(CS0_MARK, PC0MD_1),
668
669         /* Port D */
670         PINMUX_DATA(D15_MARK, PD15MD_01),
671         PINMUX_DATA(D14_MARK, PD14MD_01),
672         PINMUX_DATA(D13_MARK, PD13MD_01),
673         PINMUX_DATA(D12_MARK, PD12MD_01),
674         PINMUX_DATA(D11_MARK, PD11MD_01),
675         PINMUX_DATA(D10_MARK, PD10MD_01),
676         PINMUX_DATA(D9_MARK, PD9MD_01),
677         PINMUX_DATA(D8_MARK, PD8MD_01),
678         PINMUX_DATA(D7_MARK, PD7MD_01),
679         PINMUX_DATA(D6_MARK, PD6MD_01),
680         PINMUX_DATA(D5_MARK, PD5MD_01),
681         PINMUX_DATA(D4_MARK, PD4MD_01),
682         PINMUX_DATA(D3_MARK, PD3MD_01),
683         PINMUX_DATA(D2_MARK, PD2MD_01),
684         PINMUX_DATA(D1_MARK, PD1MD_01),
685         PINMUX_DATA(D0_MARK, PD0MD_01),
686
687         /* Port E */
688         PINMUX_DATA(PE5_DATA, PE5MD_00),
689         PINMUX_DATA(SDA2_MARK, PE5MD_01),
690         PINMUX_DATA(DV_HSYNC_MARK, PE5MD_11),
691
692         PINMUX_DATA(PE4_DATA, PE4MD_00),
693         PINMUX_DATA(SCL2_MARK, PE4MD_01),
694         PINMUX_DATA(DV_VSYNC_MARK, PE4MD_11),
695
696         PINMUX_DATA(PE3_DATA, PE3MD_00),
697         PINMUX_DATA(SDA1_MARK, PE3MD_01),
698         PINMUX_DATA(IRQ3_PE_MARK, PE3MD_11),
699
700         PINMUX_DATA(PE2_DATA, PE2MD_00),
701         PINMUX_DATA(SCL1_MARK, PE2MD_01),
702         PINMUX_DATA(IRQ2_PE_MARK, PE2MD_11),
703
704         PINMUX_DATA(PE1_DATA, PE1MD_000),
705         PINMUX_DATA(SDA0_MARK, PE1MD_001),
706         PINMUX_DATA(IOIS16_MARK, PE1MD_010),
707         PINMUX_DATA(IRQ1_PE_MARK, PE1MD_011),
708         PINMUX_DATA(TCLKA_MARK, PE1MD_100),
709         PINMUX_DATA(ADTRG_MARK, PE1MD_101),
710
711         PINMUX_DATA(PE0_DATA, PE0MD_00),
712         PINMUX_DATA(SCL0_MARK, PE0MD_01),
713         PINMUX_DATA(AUDIO_CLK_MARK, PE0MD_10),
714         PINMUX_DATA(IRQ0_PE_MARK, PE0MD_11),
715
716         /* Port F */
717         PINMUX_DATA(PF12_DATA, PF12MD_000),
718         PINMUX_DATA(BS_MARK, PF12MD_001),
719         PINMUX_DATA(MISO0_PF12_MARK, PF12MD_011),
720         PINMUX_DATA(TIOC3D_MARK, PF12MD_100),
721         PINMUX_DATA(SPDIF_OUT_MARK, PF12MD_101),
722
723         PINMUX_DATA(PF11_DATA, PF11MD_000),
724         PINMUX_DATA(A25_MARK, PF11MD_001),
725         PINMUX_DATA(SSIDATA3_MARK, PF11MD_010),
726         PINMUX_DATA(MOSI0_MARK, PF11MD_011),
727         PINMUX_DATA(TIOC3C_MARK, PF11MD_100),
728         PINMUX_DATA(SPDIF_IN_MARK, PF11MD_101),
729
730         PINMUX_DATA(PF10_DATA, PF10MD_000),
731         PINMUX_DATA(A24_MARK, PF10MD_001),
732         PINMUX_DATA(SSIWS3_MARK, PF10MD_010),
733         PINMUX_DATA(SSL00_MARK, PF10MD_011),
734         PINMUX_DATA(TIOC3B_MARK, PF10MD_100),
735         PINMUX_DATA(FCE_MARK, PF10MD_101),
736
737         PINMUX_DATA(PF9_DATA, PF9MD_000),
738         PINMUX_DATA(A23_MARK, PF9MD_001),
739         PINMUX_DATA(SSISCK3_MARK, PF9MD_010),
740         PINMUX_DATA(RSPCK0_MARK, PF9MD_011),
741         PINMUX_DATA(TIOC3A_MARK, PF9MD_100),
742         PINMUX_DATA(FRB_MARK, PF9MD_101),
743
744         PINMUX_DATA(PF8_DATA, PF8MD_00),
745         PINMUX_DATA(CE2B_MARK, PF8MD_01),
746         PINMUX_DATA(SSIDATA3_MARK, PF8MD_10),
747         PINMUX_DATA(DV_CLK_MARK, PF8MD_11),
748
749         PINMUX_DATA(PF7_DATA, PF7MD_000),
750         PINMUX_DATA(CE2A_MARK, PF7MD_001),
751         PINMUX_DATA(SSIWS3_MARK, PF7MD_010),
752         PINMUX_DATA(DV_DATA7_MARK, PF7MD_011),
753         PINMUX_DATA(TCLKD_MARK, PF7MD_100),
754
755         PINMUX_DATA(PF6_DATA, PF6MD_000),
756         PINMUX_DATA(CS6CE1B_MARK, PF6MD_001),
757         PINMUX_DATA(SSISCK3_MARK, PF6MD_010),
758         PINMUX_DATA(DV_DATA6_MARK, PF6MD_011),
759         PINMUX_DATA(TCLKB_MARK, PF6MD_100),
760
761         PINMUX_DATA(PF5_DATA, PF5MD_000),
762         PINMUX_DATA(CS5CE1A_MARK, PF5MD_001),
763         PINMUX_DATA(SSIDATA2_MARK, PF5MD_010),
764         PINMUX_DATA(DV_DATA5_MARK, PF5MD_011),
765         PINMUX_DATA(TCLKC_MARK, PF5MD_100),
766
767         PINMUX_DATA(PF4_DATA, PF4MD_000),
768         PINMUX_DATA(ICIOWRAH_MARK, PF4MD_001),
769         PINMUX_DATA(SSIWS2_MARK, PF4MD_010),
770         PINMUX_DATA(DV_DATA4_MARK, PF4MD_011),
771         PINMUX_DATA(TXD3_MARK, PF4MD_100),
772
773         PINMUX_DATA(PF3_DATA, PF3MD_000),
774         PINMUX_DATA(ICIORD_MARK, PF3MD_001),
775         PINMUX_DATA(SSISCK2_MARK, PF3MD_010),
776         PINMUX_DATA(DV_DATA3_MARK, PF3MD_011),
777         PINMUX_DATA(RXD3_MARK, PF3MD_100),
778
779         PINMUX_DATA(PF2_DATA, PF2MD_000),
780         PINMUX_DATA(BACK_MARK, PF2MD_001),
781         PINMUX_DATA(SSIDATA1_MARK, PF2MD_010),
782         PINMUX_DATA(DV_DATA2_MARK, PF2MD_011),
783         PINMUX_DATA(TXD2_MARK, PF2MD_100),
784         PINMUX_DATA(DACK0_MARK, PF2MD_101),
785
786         PINMUX_DATA(PF1_DATA, PF1MD_000),
787         PINMUX_DATA(BREQ_MARK, PF1MD_001),
788         PINMUX_DATA(SSIWS1_MARK, PF1MD_010),
789         PINMUX_DATA(DV_DATA1_MARK, PF1MD_011),
790         PINMUX_DATA(RXD2_MARK, PF1MD_100),
791         PINMUX_DATA(DREQ0_MARK, PF1MD_101),
792
793         PINMUX_DATA(PF0_DATA, PF0MD_000),
794         PINMUX_DATA(WAIT_MARK, PF0MD_001),
795         PINMUX_DATA(SSISCK1_MARK, PF0MD_010),
796         PINMUX_DATA(DV_DATA0_MARK, PF0MD_011),
797         PINMUX_DATA(SCK2_MARK, PF0MD_100),
798         PINMUX_DATA(TEND0_MARK, PF0MD_101),
799
800         /* Port G */
801         PINMUX_DATA(PG24_DATA, PG24MD_00),
802         PINMUX_DATA(MOSI0_MARK, PG24MD_01),
803         PINMUX_DATA(TIOC0D_MARK, PG24MD_10),
804
805         PINMUX_DATA(PG23_DATA, PG23MD_00),
806         PINMUX_DATA(MOSI1_MARK, PG23MD_01),
807         PINMUX_DATA(TIOC0C_MARK, PG23MD_10),
808
809         PINMUX_DATA(PG22_DATA, PG22MD_00),
810         PINMUX_DATA(SSL10_MARK, PG22MD_01),
811         PINMUX_DATA(TIOC0B_MARK, PG22MD_10),
812
813         PINMUX_DATA(PG21_DATA, PG21MD_00),
814         PINMUX_DATA(RSPCK1_MARK, PG21MD_01),
815         PINMUX_DATA(TIOC0A_MARK, PG21MD_10),
816
817         PINMUX_DATA(PG20_DATA, PG20MD_000),
818         PINMUX_DATA(LCD_EXTCLK_MARK, PG20MD_001),
819         PINMUX_DATA(MISO1_MARK, PG20MD_011),
820         PINMUX_DATA(TXD7_MARK, PG20MD_100),
821
822         PINMUX_DATA(PG19_DATA, PG19MD_000),
823         PINMUX_DATA(LCD_CLK_MARK, PG19MD_001),
824         PINMUX_DATA(TIOC2B_MARK, PG19MD_010),
825         PINMUX_DATA(MISO1_PG19_MARK, PG19MD_011),
826         PINMUX_DATA(RXD7_MARK, PG19MD_100),
827
828         PINMUX_DATA(PG18_DATA, PG18MD_000),
829         PINMUX_DATA(LCD_DE_MARK, PG18MD_001),
830         PINMUX_DATA(TIOC2A_MARK, PG18MD_010),
831         PINMUX_DATA(SSL10_MARK, PG18MD_011),
832         PINMUX_DATA(TXD6_MARK, PG18MD_100),
833
834         PINMUX_DATA(PG17_DATA, PG17MD_000),
835         PINMUX_DATA(LCD_HSYNC_MARK, PG17MD_001),
836         PINMUX_DATA(TIOC1B_MARK, PG17MD_010),
837         PINMUX_DATA(RSPCK1_MARK, PG17MD_011),
838         PINMUX_DATA(RXD6_MARK, PG17MD_100),
839
840         PINMUX_DATA(PG16_DATA, PG16MD_000),
841         PINMUX_DATA(LCD_VSYNC_MARK, PG16MD_001),
842         PINMUX_DATA(TIOC1A_MARK, PG16MD_010),
843         PINMUX_DATA(TXD3_MARK, PG16MD_011),
844         PINMUX_DATA(CTS1_MARK, PG16MD_100),
845
846         PINMUX_DATA(PG15_DATA, PG15MD_000),
847         PINMUX_DATA(LCD_DATA15_MARK, PG15MD_001),
848         PINMUX_DATA(TIOC0D_MARK, PG15MD_010),
849         PINMUX_DATA(RXD3_MARK, PG15MD_011),
850         PINMUX_DATA(RTS1_MARK, PG15MD_100),
851
852         PINMUX_DATA(PG14_DATA, PG14MD_000),
853         PINMUX_DATA(LCD_DATA14_MARK, PG14MD_001),
854         PINMUX_DATA(TIOC0C_MARK, PG14MD_010),
855         PINMUX_DATA(SCK1_MARK, PG14MD_100),
856
857         PINMUX_DATA(PG13_DATA, PG13MD_000),
858         PINMUX_DATA(LCD_DATA13_MARK, PG13MD_001),
859         PINMUX_DATA(TIOC0B_MARK, PG13MD_010),
860         PINMUX_DATA(TXD1_MARK, PG13MD_100),
861
862         PINMUX_DATA(PG12_DATA, PG12MD_000),
863         PINMUX_DATA(LCD_DATA12_MARK, PG12MD_001),
864         PINMUX_DATA(TIOC0A_MARK, PG12MD_010),
865         PINMUX_DATA(RXD1_MARK, PG12MD_100),
866
867         PINMUX_DATA(PG11_DATA, PG11MD_000),
868         PINMUX_DATA(LCD_DATA11_MARK, PG11MD_001),
869         PINMUX_DATA(SSITXD0_MARK, PG11MD_010),
870         PINMUX_DATA(IRQ3_PG_MARK, PG11MD_011),
871         PINMUX_DATA(TXD5_MARK, PG11MD_100),
872         PINMUX_DATA(SIOFTXD_MARK, PG11MD_101),
873
874         PINMUX_DATA(PG10_DATA, PG10MD_000),
875         PINMUX_DATA(LCD_DATA10_MARK, PG10MD_001),
876         PINMUX_DATA(SSIRXD0_MARK, PG10MD_010),
877         PINMUX_DATA(IRQ2_PG_MARK, PG10MD_011),
878         PINMUX_DATA(RXD5_MARK, PG10MD_100),
879         PINMUX_DATA(SIOFRXD_MARK, PG10MD_101),
880
881         PINMUX_DATA(PG9_DATA, PG9MD_000),
882         PINMUX_DATA(LCD_DATA9_MARK, PG9MD_001),
883         PINMUX_DATA(SSIWS0_MARK, PG9MD_010),
884         PINMUX_DATA(TXD4_MARK, PG9MD_100),
885         PINMUX_DATA(SIOFSYNC_MARK, PG9MD_101),
886
887         PINMUX_DATA(PG8_DATA, PG8MD_000),
888         PINMUX_DATA(LCD_DATA8_MARK, PG8MD_001),
889         PINMUX_DATA(SSISCK0_MARK, PG8MD_010),
890         PINMUX_DATA(RXD4_MARK, PG8MD_100),
891         PINMUX_DATA(SIOFSCK_MARK, PG8MD_101),
892
893         PINMUX_DATA(PG7_DATA, PG7MD_00),
894         PINMUX_DATA(LCD_DATA7_MARK, PG7MD_01),
895         PINMUX_DATA(SD_CD_MARK, PG7MD_10),
896         PINMUX_DATA(PINT7_PG_MARK, PG7MD_11),
897
898         PINMUX_DATA(PG6_DATA, PG7MD_00),
899         PINMUX_DATA(LCD_DATA6_MARK, PG7MD_01),
900         PINMUX_DATA(SD_WP_MARK, PG7MD_10),
901         PINMUX_DATA(PINT6_PG_MARK, PG7MD_11),
902
903         PINMUX_DATA(PG5_DATA, PG5MD_00),
904         PINMUX_DATA(LCD_DATA5_MARK, PG5MD_01),
905         PINMUX_DATA(SD_D1_MARK, PG5MD_10),
906         PINMUX_DATA(PINT5_PG_MARK, PG5MD_11),
907
908         PINMUX_DATA(PG4_DATA, PG4MD_00),
909         PINMUX_DATA(LCD_DATA4_MARK, PG4MD_01),
910         PINMUX_DATA(SD_D0_MARK, PG4MD_10),
911         PINMUX_DATA(PINT4_PG_MARK, PG4MD_11),
912
913         PINMUX_DATA(PG3_DATA, PG3MD_00),
914         PINMUX_DATA(LCD_DATA3_MARK, PG3MD_01),
915         PINMUX_DATA(SD_CLK_MARK, PG3MD_10),
916         PINMUX_DATA(PINT3_PG_MARK, PG3MD_11),
917
918         PINMUX_DATA(PG2_DATA, PG2MD_00),
919         PINMUX_DATA(LCD_DATA2_MARK, PG2MD_01),
920         PINMUX_DATA(SD_CMD_MARK, PG2MD_10),
921         PINMUX_DATA(PINT2_PG_MARK, PG2MD_11),
922
923         PINMUX_DATA(PG1_DATA, PG1MD_00),
924         PINMUX_DATA(LCD_DATA1_MARK, PG1MD_01),
925         PINMUX_DATA(SD_D3_MARK, PG1MD_10),
926         PINMUX_DATA(PINT1_PG_MARK, PG1MD_11),
927
928         PINMUX_DATA(PG0_DATA, PG0MD_000),
929         PINMUX_DATA(LCD_DATA0_MARK, PG0MD_001),
930         PINMUX_DATA(SD_D2_MARK, PG0MD_010),
931         PINMUX_DATA(PINT0_PG_MARK, PG0MD_011),
932         PINMUX_DATA(WDTOVF_MARK, PG0MD_100),
933
934         /* Port H */
935         PINMUX_DATA(PH7_DATA, PH7MD_0),
936         PINMUX_DATA(PHAN7_MARK, PH7MD_1),
937
938         PINMUX_DATA(PH6_DATA, PH6MD_0),
939         PINMUX_DATA(PHAN6_MARK, PH6MD_1),
940
941         PINMUX_DATA(PH5_DATA, PH5MD_0),
942         PINMUX_DATA(PHAN5_MARK, PH5MD_1),
943
944         PINMUX_DATA(PH4_DATA, PH4MD_0),
945         PINMUX_DATA(PHAN4_MARK, PH4MD_1),
946
947         PINMUX_DATA(PH3_DATA, PH3MD_0),
948         PINMUX_DATA(PHAN3_MARK, PH3MD_1),
949
950         PINMUX_DATA(PH2_DATA, PH2MD_0),
951         PINMUX_DATA(PHAN2_MARK, PH2MD_1),
952
953         PINMUX_DATA(PH1_DATA, PH1MD_0),
954         PINMUX_DATA(PHAN1_MARK, PH1MD_1),
955
956         PINMUX_DATA(PH0_DATA, PH0MD_0),
957         PINMUX_DATA(PHAN0_MARK, PH0MD_1),
958
959         /* Port I - not on device */
960
961         /* Port J */
962         PINMUX_DATA(PJ11_DATA, PJ11MD_00),
963         PINMUX_DATA(PWM2H_MARK, PJ11MD_01),
964         PINMUX_DATA(DACK1_MARK, PJ11MD_10),
965
966         PINMUX_DATA(PJ10_DATA, PJ10MD_00),
967         PINMUX_DATA(PWM2G_MARK, PJ10MD_01),
968         PINMUX_DATA(DREQ1_MARK, PJ10MD_10),
969
970         PINMUX_DATA(PJ9_DATA, PJ9MD_00),
971         PINMUX_DATA(PWM2F_MARK, PJ9MD_01),
972         PINMUX_DATA(TEND1_MARK, PJ9MD_10),
973
974         PINMUX_DATA(PJ8_DATA, PJ8MD_00),
975         PINMUX_DATA(PWM2E_MARK, PJ8MD_01),
976         PINMUX_DATA(RTS3_MARK, PJ8MD_10),
977
978         PINMUX_DATA(PJ7_DATA, PJ7MD_00),
979         PINMUX_DATA(TIOC1B_MARK, PJ7MD_01),
980         PINMUX_DATA(CTS3_MARK, PJ7MD_10),
981
982         PINMUX_DATA(PJ6_DATA, PJ6MD_00),
983         PINMUX_DATA(TIOC1A_MARK, PJ6MD_01),
984         PINMUX_DATA(SCK3_MARK, PJ6MD_10),
985
986         PINMUX_DATA(PJ5_DATA, PJ5MD_00),
987         PINMUX_DATA(IERXD_MARK, PJ5MD_01),
988         PINMUX_DATA(TXD3_MARK, PJ5MD_10),
989
990         PINMUX_DATA(PJ4_DATA, PJ4MD_00),
991         PINMUX_DATA(IETXD_MARK, PJ4MD_01),
992         PINMUX_DATA(RXD3_MARK, PJ4MD_10),
993
994         PINMUX_DATA(PJ3_DATA, PJ3MD_00),
995         PINMUX_DATA(CRX1_MARK, PJ3MD_01),
996         PINMUX_DATA(CRX0_CRX1_MARK, PJ3MD_10),
997         PINMUX_DATA(IRQ1_PJ_MARK, PJ3MD_11),
998
999         PINMUX_DATA(PJ2_DATA, PJ2MD_000),
1000         PINMUX_DATA(CTX1_MARK, PJ2MD_001),
1001         PINMUX_DATA(CTX0_CTX1_MARK, PJ2MD_010),
1002         PINMUX_DATA(CS2_MARK, PJ2MD_011),
1003         PINMUX_DATA(SCK0_MARK, PJ2MD_100),
1004         PINMUX_DATA(LCD_M_DISP_MARK, PJ2MD_101),
1005
1006         PINMUX_DATA(PJ1_DATA, PJ1MD_000),
1007         PINMUX_DATA(CRX0_MARK, PJ1MD_001),
1008         PINMUX_DATA(IERXD_MARK, PJ1MD_010),
1009         PINMUX_DATA(IRQ0_PJ_MARK, PJ1MD_011),
1010         PINMUX_DATA(RXD0_MARK, PJ1MD_100),
1011
1012         PINMUX_DATA(PJ0_DATA, PJ0MD_000),
1013         PINMUX_DATA(CTX0_MARK, PJ0MD_001),
1014         PINMUX_DATA(IERXD_MARK, PJ0MD_010),
1015         PINMUX_DATA(CS1_MARK, PJ0MD_011),
1016         PINMUX_DATA(TXD0_MARK, PJ0MD_100),
1017         PINMUX_DATA(A0_MARK, PJ0MD_101),
1018
1019         /* Port K */
1020         PINMUX_DATA(PK11_DATA, PK11MD_00),
1021         PINMUX_DATA(PWM2D_MARK, PK11MD_01),
1022         PINMUX_DATA(SSITXD0_MARK, PK11MD_10),
1023
1024         PINMUX_DATA(PK10_DATA, PK10MD_00),
1025         PINMUX_DATA(PWM2C_MARK, PK10MD_01),
1026         PINMUX_DATA(SSIRXD0_MARK, PK10MD_10),
1027
1028         PINMUX_DATA(PK9_DATA, PK9MD_00),
1029         PINMUX_DATA(PWM2B_MARK, PK9MD_01),
1030         PINMUX_DATA(SSIWS0_MARK, PK9MD_10),
1031
1032         PINMUX_DATA(PK8_DATA, PK8MD_00),
1033         PINMUX_DATA(PWM2A_MARK, PK8MD_01),
1034         PINMUX_DATA(SSISCK0_MARK, PK8MD_10),
1035
1036         PINMUX_DATA(PK7_DATA, PK7MD_00),
1037         PINMUX_DATA(PWM1H_MARK, PK7MD_01),
1038         PINMUX_DATA(SD_CD_MARK, PK7MD_10),
1039
1040         PINMUX_DATA(PK6_DATA, PK6MD_00),
1041         PINMUX_DATA(PWM1G_MARK, PK6MD_01),
1042         PINMUX_DATA(SD_WP_MARK, PK6MD_10),
1043
1044         PINMUX_DATA(PK5_DATA, PK5MD_00),
1045         PINMUX_DATA(PWM1F_MARK, PK5MD_01),
1046         PINMUX_DATA(SD_D1_MARK, PK5MD_10),
1047
1048         PINMUX_DATA(PK4_DATA, PK4MD_00),
1049         PINMUX_DATA(PWM1E_MARK, PK4MD_01),
1050         PINMUX_DATA(SD_D0_MARK, PK4MD_10),
1051
1052         PINMUX_DATA(PK3_DATA, PK3MD_00),
1053         PINMUX_DATA(PWM1D_MARK, PK3MD_01),
1054         PINMUX_DATA(SD_CLK_MARK, PK3MD_10),
1055
1056         PINMUX_DATA(PK2_DATA, PK2MD_00),
1057         PINMUX_DATA(PWM1C_MARK, PK2MD_01),
1058         PINMUX_DATA(SD_CMD_MARK, PK2MD_10),
1059
1060         PINMUX_DATA(PK1_DATA, PK1MD_00),
1061         PINMUX_DATA(PWM1B_MARK, PK1MD_01),
1062         PINMUX_DATA(SD_D3_MARK, PK1MD_10),
1063
1064         PINMUX_DATA(PK0_DATA, PK0MD_00),
1065         PINMUX_DATA(PWM1A_MARK, PK0MD_01),
1066         PINMUX_DATA(SD_D2_MARK, PK0MD_10),
1067 };
1068
1069 static const struct sh_pfc_pin pinmux_pins[] = {
1070         /* Port A */
1071         PINMUX_GPIO(PA3),
1072         PINMUX_GPIO(PA2),
1073         PINMUX_GPIO(PA1),
1074         PINMUX_GPIO(PA0),
1075
1076         /* Port B */
1077         PINMUX_GPIO(PB22),
1078         PINMUX_GPIO(PB21),
1079         PINMUX_GPIO(PB20),
1080         PINMUX_GPIO(PB19),
1081         PINMUX_GPIO(PB18),
1082         PINMUX_GPIO(PB17),
1083         PINMUX_GPIO(PB16),
1084         PINMUX_GPIO(PB15),
1085         PINMUX_GPIO(PB14),
1086         PINMUX_GPIO(PB13),
1087         PINMUX_GPIO(PB12),
1088         PINMUX_GPIO(PB11),
1089         PINMUX_GPIO(PB10),
1090         PINMUX_GPIO(PB9),
1091         PINMUX_GPIO(PB8),
1092         PINMUX_GPIO(PB7),
1093         PINMUX_GPIO(PB6),
1094         PINMUX_GPIO(PB5),
1095         PINMUX_GPIO(PB4),
1096         PINMUX_GPIO(PB3),
1097         PINMUX_GPIO(PB2),
1098         PINMUX_GPIO(PB1),
1099
1100         /* Port C */
1101         PINMUX_GPIO(PC10),
1102         PINMUX_GPIO(PC9),
1103         PINMUX_GPIO(PC8),
1104         PINMUX_GPIO(PC7),
1105         PINMUX_GPIO(PC6),
1106         PINMUX_GPIO(PC5),
1107         PINMUX_GPIO(PC4),
1108         PINMUX_GPIO(PC3),
1109         PINMUX_GPIO(PC2),
1110         PINMUX_GPIO(PC1),
1111         PINMUX_GPIO(PC0),
1112
1113         /* Port D */
1114         PINMUX_GPIO(PD15),
1115         PINMUX_GPIO(PD14),
1116         PINMUX_GPIO(PD13),
1117         PINMUX_GPIO(PD12),
1118         PINMUX_GPIO(PD11),
1119         PINMUX_GPIO(PD10),
1120         PINMUX_GPIO(PD9),
1121         PINMUX_GPIO(PD8),
1122         PINMUX_GPIO(PD7),
1123         PINMUX_GPIO(PD6),
1124         PINMUX_GPIO(PD5),
1125         PINMUX_GPIO(PD4),
1126         PINMUX_GPIO(PD3),
1127         PINMUX_GPIO(PD2),
1128         PINMUX_GPIO(PD1),
1129         PINMUX_GPIO(PD0),
1130
1131         /* Port E */
1132         PINMUX_GPIO(PE5),
1133         PINMUX_GPIO(PE4),
1134         PINMUX_GPIO(PE3),
1135         PINMUX_GPIO(PE2),
1136         PINMUX_GPIO(PE1),
1137         PINMUX_GPIO(PE0),
1138
1139         /* Port F */
1140         PINMUX_GPIO(PF12),
1141         PINMUX_GPIO(PF11),
1142         PINMUX_GPIO(PF10),
1143         PINMUX_GPIO(PF9),
1144         PINMUX_GPIO(PF8),
1145         PINMUX_GPIO(PF7),
1146         PINMUX_GPIO(PF6),
1147         PINMUX_GPIO(PF5),
1148         PINMUX_GPIO(PF4),
1149         PINMUX_GPIO(PF3),
1150         PINMUX_GPIO(PF2),
1151         PINMUX_GPIO(PF1),
1152         PINMUX_GPIO(PF0),
1153
1154         /* Port G */
1155         PINMUX_GPIO(PG24),
1156         PINMUX_GPIO(PG23),
1157         PINMUX_GPIO(PG22),
1158         PINMUX_GPIO(PG21),
1159         PINMUX_GPIO(PG20),
1160         PINMUX_GPIO(PG19),
1161         PINMUX_GPIO(PG18),
1162         PINMUX_GPIO(PG17),
1163         PINMUX_GPIO(PG16),
1164         PINMUX_GPIO(PG15),
1165         PINMUX_GPIO(PG14),
1166         PINMUX_GPIO(PG13),
1167         PINMUX_GPIO(PG12),
1168         PINMUX_GPIO(PG11),
1169         PINMUX_GPIO(PG10),
1170         PINMUX_GPIO(PG9),
1171         PINMUX_GPIO(PG8),
1172         PINMUX_GPIO(PG7),
1173         PINMUX_GPIO(PG6),
1174         PINMUX_GPIO(PG5),
1175         PINMUX_GPIO(PG4),
1176         PINMUX_GPIO(PG3),
1177         PINMUX_GPIO(PG2),
1178         PINMUX_GPIO(PG1),
1179         PINMUX_GPIO(PG0),
1180
1181         /* Port H - Port H does not have a Data Register */
1182
1183         /* Port I - not on device */
1184
1185         /* Port J */
1186         PINMUX_GPIO(PJ11),
1187         PINMUX_GPIO(PJ10),
1188         PINMUX_GPIO(PJ9),
1189         PINMUX_GPIO(PJ8),
1190         PINMUX_GPIO(PJ7),
1191         PINMUX_GPIO(PJ6),
1192         PINMUX_GPIO(PJ5),
1193         PINMUX_GPIO(PJ4),
1194         PINMUX_GPIO(PJ3),
1195         PINMUX_GPIO(PJ2),
1196         PINMUX_GPIO(PJ1),
1197         PINMUX_GPIO(PJ0),
1198
1199         /* Port K */
1200         PINMUX_GPIO(PK11),
1201         PINMUX_GPIO(PK10),
1202         PINMUX_GPIO(PK9),
1203         PINMUX_GPIO(PK8),
1204         PINMUX_GPIO(PK7),
1205         PINMUX_GPIO(PK6),
1206         PINMUX_GPIO(PK5),
1207         PINMUX_GPIO(PK4),
1208         PINMUX_GPIO(PK3),
1209         PINMUX_GPIO(PK2),
1210         PINMUX_GPIO(PK1),
1211         PINMUX_GPIO(PK0),
1212 };
1213
1214 #define PINMUX_FN_BASE  ARRAY_SIZE(pinmux_pins)
1215
1216 static const struct pinmux_func pinmux_func_gpios[] = {
1217         /* INTC */
1218         GPIO_FN(PINT7_PG),
1219         GPIO_FN(PINT6_PG),
1220         GPIO_FN(PINT5_PG),
1221         GPIO_FN(PINT4_PG),
1222         GPIO_FN(PINT3_PG),
1223         GPIO_FN(PINT2_PG),
1224         GPIO_FN(PINT1_PG),
1225
1226         GPIO_FN(IRQ7_PC),
1227         GPIO_FN(IRQ6_PC),
1228         GPIO_FN(IRQ5_PC),
1229         GPIO_FN(IRQ4_PC),
1230         GPIO_FN(IRQ3_PG),
1231         GPIO_FN(IRQ2_PG),
1232         GPIO_FN(IRQ1_PJ),
1233         GPIO_FN(IRQ0_PJ),
1234         GPIO_FN(IRQ3_PE),
1235         GPIO_FN(IRQ2_PE),
1236         GPIO_FN(IRQ1_PE),
1237         GPIO_FN(IRQ0_PE),
1238
1239         /* WDT */
1240         GPIO_FN(WDTOVF),
1241
1242         /* CAN */
1243         GPIO_FN(CTX1),
1244         GPIO_FN(CRX1),
1245         GPIO_FN(CTX0),
1246         GPIO_FN(CTX0_CTX1),
1247         GPIO_FN(CRX0),
1248         GPIO_FN(CRX0_CRX1),
1249
1250         /* DMAC */
1251         GPIO_FN(TEND0),
1252         GPIO_FN(DACK0),
1253         GPIO_FN(DREQ0),
1254         GPIO_FN(TEND1),
1255         GPIO_FN(DACK1),
1256         GPIO_FN(DREQ1),
1257
1258         /* ADC */
1259         GPIO_FN(ADTRG),
1260
1261         /* BSCh */
1262         GPIO_FN(A25),
1263         GPIO_FN(A24),
1264         GPIO_FN(A23),
1265         GPIO_FN(A22),
1266         GPIO_FN(A21),
1267         GPIO_FN(A20),
1268         GPIO_FN(A19),
1269         GPIO_FN(A18),
1270         GPIO_FN(A17),
1271         GPIO_FN(A16),
1272         GPIO_FN(A15),
1273         GPIO_FN(A14),
1274         GPIO_FN(A13),
1275         GPIO_FN(A12),
1276         GPIO_FN(A11),
1277         GPIO_FN(A10),
1278         GPIO_FN(A9),
1279         GPIO_FN(A8),
1280         GPIO_FN(A7),
1281         GPIO_FN(A6),
1282         GPIO_FN(A5),
1283         GPIO_FN(A4),
1284         GPIO_FN(A3),
1285         GPIO_FN(A2),
1286         GPIO_FN(A1),
1287         GPIO_FN(A0),
1288
1289         GPIO_FN(D15),
1290         GPIO_FN(D14),
1291         GPIO_FN(D13),
1292         GPIO_FN(D12),
1293         GPIO_FN(D11),
1294         GPIO_FN(D10),
1295         GPIO_FN(D9),
1296         GPIO_FN(D8),
1297         GPIO_FN(D7),
1298         GPIO_FN(D6),
1299         GPIO_FN(D5),
1300         GPIO_FN(D4),
1301         GPIO_FN(D3),
1302         GPIO_FN(D2),
1303         GPIO_FN(D1),
1304         GPIO_FN(D0),
1305
1306         GPIO_FN(BS),
1307         GPIO_FN(CS4),
1308         GPIO_FN(CS3),
1309         GPIO_FN(CS2),
1310         GPIO_FN(CS1),
1311         GPIO_FN(CS0),
1312         GPIO_FN(CS6CE1B),
1313         GPIO_FN(CS5CE1A),
1314         GPIO_FN(CE2A),
1315         GPIO_FN(CE2B),
1316         GPIO_FN(RD),
1317         GPIO_FN(RDWR),
1318         GPIO_FN(ICIOWRAH),
1319         GPIO_FN(ICIORD),
1320         GPIO_FN(WE1DQMUWE),
1321         GPIO_FN(WE0DQML),
1322         GPIO_FN(RAS),
1323         GPIO_FN(CAS),
1324         GPIO_FN(CKE),
1325         GPIO_FN(WAIT),
1326         GPIO_FN(BREQ),
1327         GPIO_FN(BACK),
1328         GPIO_FN(IOIS16),
1329
1330         /* TMU */
1331         GPIO_FN(TIOC4D),
1332         GPIO_FN(TIOC4C),
1333         GPIO_FN(TIOC4B),
1334         GPIO_FN(TIOC4A),
1335         GPIO_FN(TIOC3D),
1336         GPIO_FN(TIOC3C),
1337         GPIO_FN(TIOC3B),
1338         GPIO_FN(TIOC3A),
1339         GPIO_FN(TIOC2B),
1340         GPIO_FN(TIOC1B),
1341         GPIO_FN(TIOC2A),
1342         GPIO_FN(TIOC1A),
1343         GPIO_FN(TIOC0D),
1344         GPIO_FN(TIOC0C),
1345         GPIO_FN(TIOC0B),
1346         GPIO_FN(TIOC0A),
1347         GPIO_FN(TCLKD),
1348         GPIO_FN(TCLKC),
1349         GPIO_FN(TCLKB),
1350         GPIO_FN(TCLKA),
1351
1352         /* SCIF */
1353         GPIO_FN(TXD0),
1354         GPIO_FN(RXD0),
1355         GPIO_FN(SCK0),
1356         GPIO_FN(TXD1),
1357         GPIO_FN(RXD1),
1358         GPIO_FN(SCK1),
1359         GPIO_FN(TXD2),
1360         GPIO_FN(RXD2),
1361         GPIO_FN(SCK2),
1362         GPIO_FN(RTS3),
1363         GPIO_FN(CTS3),
1364         GPIO_FN(TXD3),
1365         GPIO_FN(RXD3),
1366         GPIO_FN(SCK3),
1367         GPIO_FN(TXD4),
1368         GPIO_FN(RXD4),
1369         GPIO_FN(TXD5),
1370         GPIO_FN(RXD5),
1371         GPIO_FN(TXD6),
1372         GPIO_FN(RXD6),
1373         GPIO_FN(TXD7),
1374         GPIO_FN(RXD7),
1375         GPIO_FN(RTS1),
1376         GPIO_FN(CTS1),
1377
1378         /* RSPI */
1379         GPIO_FN(RSPCK0),
1380         GPIO_FN(MOSI0),
1381         GPIO_FN(MISO0_PF12),
1382         GPIO_FN(MISO1),
1383         GPIO_FN(SSL00),
1384         GPIO_FN(RSPCK1),
1385         GPIO_FN(MOSI1),
1386         GPIO_FN(MISO1_PG19),
1387         GPIO_FN(SSL10),
1388
1389         /* IIC3 */
1390         GPIO_FN(SCL0),
1391         GPIO_FN(SCL1),
1392         GPIO_FN(SCL2),
1393         GPIO_FN(SDA0),
1394         GPIO_FN(SDA1),
1395         GPIO_FN(SDA2),
1396
1397         /* SSI */
1398         GPIO_FN(SSISCK0),
1399         GPIO_FN(SSIWS0),
1400         GPIO_FN(SSITXD0),
1401         GPIO_FN(SSIRXD0),
1402         GPIO_FN(SSIWS1),
1403         GPIO_FN(SSIWS2),
1404         GPIO_FN(SSIWS3),
1405         GPIO_FN(SSISCK1),
1406         GPIO_FN(SSISCK2),
1407         GPIO_FN(SSISCK3),
1408         GPIO_FN(SSIDATA1),
1409         GPIO_FN(SSIDATA2),
1410         GPIO_FN(SSIDATA3),
1411         GPIO_FN(AUDIO_CLK),
1412
1413         /* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
1414         GPIO_FN(SIOFTXD),
1415         GPIO_FN(SIOFRXD),
1416         GPIO_FN(SIOFSYNC),
1417         GPIO_FN(SIOFSCK),
1418
1419         /* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
1420         GPIO_FN(SPDIF_IN),
1421         GPIO_FN(SPDIF_OUT),
1422
1423         /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
1424         GPIO_FN(FCE),
1425         GPIO_FN(FRB),
1426
1427         /* VDC3 */
1428         GPIO_FN(DV_CLK),
1429         GPIO_FN(DV_VSYNC),
1430         GPIO_FN(DV_HSYNC),
1431
1432         GPIO_FN(DV_DATA7),
1433         GPIO_FN(DV_DATA6),
1434         GPIO_FN(DV_DATA5),
1435         GPIO_FN(DV_DATA4),
1436         GPIO_FN(DV_DATA3),
1437         GPIO_FN(DV_DATA2),
1438         GPIO_FN(DV_DATA1),
1439         GPIO_FN(DV_DATA0),
1440
1441         GPIO_FN(LCD_CLK),
1442         GPIO_FN(LCD_EXTCLK),
1443         GPIO_FN(LCD_VSYNC),
1444         GPIO_FN(LCD_HSYNC),
1445         GPIO_FN(LCD_DE),
1446
1447         GPIO_FN(LCD_DATA15),
1448         GPIO_FN(LCD_DATA14),
1449         GPIO_FN(LCD_DATA13),
1450         GPIO_FN(LCD_DATA12),
1451         GPIO_FN(LCD_DATA11),
1452         GPIO_FN(LCD_DATA10),
1453         GPIO_FN(LCD_DATA9),
1454         GPIO_FN(LCD_DATA8),
1455         GPIO_FN(LCD_DATA7),
1456         GPIO_FN(LCD_DATA6),
1457         GPIO_FN(LCD_DATA5),
1458         GPIO_FN(LCD_DATA4),
1459         GPIO_FN(LCD_DATA3),
1460         GPIO_FN(LCD_DATA2),
1461         GPIO_FN(LCD_DATA1),
1462         GPIO_FN(LCD_DATA0),
1463
1464         GPIO_FN(LCD_M_DISP),
1465 };
1466
1467 static const struct pinmux_cfg_reg pinmux_config_regs[] = {
1468         { PINMUX_CFG_REG("PAIOR0", 0xfffe3812, 16, 1, GROUP(
1469                 0, 0, 0, 0, 0, 0, 0, 0,
1470                 0, 0, 0, 0, 0, 0, 0, 0,
1471                 0, 0, 0, 0, 0, 0, 0, 0,
1472                 PA3_IN, PA3_OUT,
1473                 PA2_IN, PA2_OUT,
1474                 PA1_IN, PA1_OUT,
1475                 PA0_IN, PA0_OUT ))
1476         },
1477
1478         { PINMUX_CFG_REG("PBCR5", 0xfffe3824, 16, 4, GROUP(
1479                 0, 0, 0, 0, 0, 0, 0, 0,
1480                 0, 0, 0, 0, 0, 0, 0, 0,
1481                 PB22MD_00, PB22MD_01, PB22MD_10, 0, 0, 0, 0, 0,
1482                 0, 0, 0, 0, 0, 0, 0, 0,
1483                 PB21MD_0, PB21MD_1, 0, 0, 0, 0, 0, 0,
1484                 0, 0, 0, 0, 0, 0, 0, 0,
1485                 0, PB20MD_1, 0, 0, 0, 0, 0, 0,
1486                 0, 0, 0, 0, 0, 0, 0, 0 ))
1487
1488         },
1489         { PINMUX_CFG_REG("PBCR4", 0xfffe3826, 16, 4, GROUP(
1490                 0, PB19MD_01, 0, 0, 0, 0, 0, 0,
1491                 0, 0, 0, 0, 0, 0, 0, 0,
1492                 0, PB18MD_01, 0, 0, 0, 0, 0, 0,
1493                 0, 0, 0, 0, 0, 0, 0, 0,
1494                 0, PB17MD_01, 0, 0, 0, 0, 0, 0,
1495                 0, 0, 0, 0, 0, 0, 0, 0,
1496                 0, PB16MD_01, 0, 0, 0, 0, 0, 0,
1497                 0, 0, 0, 0, 0, 0, 0, 0 ))
1498         },
1499         { PINMUX_CFG_REG("PBCR3", 0xfffe3828, 16, 4, GROUP(
1500                 0, PB15MD_01, 0, 0, 0, 0, 0, 0,
1501                 0, 0, 0, 0, 0, 0, 0, 0,
1502                 0, PB14MD_01, 0, 0, 0, 0, 0, 0,
1503                 0, 0, 0, 0, 0, 0, 0, 0,
1504                 0, PB13MD_01, 0, 0, 0, 0, 0, 0,
1505                 0, 0, 0, 0, 0, 0, 0, 0,
1506                 0, PB12MD_01, 0, 0, 0, 0, 0, 0,
1507                 0, 0, 0, 0, 0, 0, 0, 0 ))
1508         },
1509         { PINMUX_CFG_REG("PBCR2", 0xfffe382a, 16, 4, GROUP(
1510                 0, PB11MD_01, 0, 0, 0, 0, 0, 0,
1511                 0, 0, 0, 0, 0, 0, 0, 0,
1512                 0, PB10MD_01, 0, 0, 0, 0, 0, 0,
1513                 0, 0, 0, 0, 0, 0, 0, 0,
1514                 0, PB9MD_01, 0, 0, 0, 0, 0, 0,
1515                 0, 0, 0, 0, 0, 0, 0, 0,
1516                 0, PB8MD_01, 0, 0, 0, 0, 0, 0,
1517                 0, 0, 0, 0, 0, 0, 0, 0 ))
1518         },
1519         { PINMUX_CFG_REG("PBCR1", 0xfffe382c, 16, 4, GROUP(
1520                 0, PB7MD_01, 0, 0, 0, 0, 0, 0,
1521                 0, 0, 0, 0, 0, 0, 0, 0,
1522                 0, PB6MD_01, 0, 0, 0, 0, 0, 0,
1523                 0, 0, 0, 0, 0, 0, 0, 0,
1524                 0, PB5MD_01, 0, 0, 0, 0, 0, 0,
1525                 0, 0, 0, 0, 0, 0, 0, 0,
1526                 0, PB4MD_01, 0, 0, 0, 0, 0, 0,
1527                 0, 0, 0, 0, 0, 0, 0, 0 ))
1528         },
1529         { PINMUX_CFG_REG("PBCR0", 0xfffe382e, 16, 4, GROUP(
1530                 0, PB3MD_1, 0, 0, 0, 0, 0, 0,
1531                 0, 0, 0, 0, 0, 0, 0, 0,
1532                 0, PB2MD_1, 0, 0, 0, 0, 0, 0,
1533                 0, 0, 0, 0, 0, 0, 0, 0,
1534                 0, PB1MD_1, 0, 0, 0, 0, 0, 0,
1535                 0, 0, 0, 0, 0, 0, 0, 0,
1536                 0, 0, 0, 0, 0, 0, 0, 0,
1537                 0, 0, 0, 0, 0, 0, 0, 0 ))
1538         },
1539
1540         { PINMUX_CFG_REG("PBIOR1", 0xfffe3830, 16, 1, GROUP(
1541                 0, 0, 0, 0, 0, 0, 0, 0,
1542                 0, 0, 0, 0, 0, 0, 0, 0,
1543                 0, 0,
1544                 PB22_IN, PB22_OUT,
1545                 PB21_IN, PB21_OUT,
1546                 PB20_IN, PB20_OUT,
1547                 PB19_IN, PB19_OUT,
1548                 PB18_IN, PB18_OUT,
1549                 PB17_IN, PB17_OUT,
1550                 PB16_IN, PB16_OUT ))
1551         },
1552
1553         { PINMUX_CFG_REG("PBIOR0", 0xfffe3832, 16, 1, GROUP(
1554                 PB15_IN, PB15_OUT,
1555                 PB14_IN, PB14_OUT,
1556                 PB13_IN, PB13_OUT,
1557                 PB12_IN, PB12_OUT,
1558                 PB11_IN, PB11_OUT,
1559                 PB10_IN, PB10_OUT,
1560                 PB9_IN, PB9_OUT,
1561                 PB8_IN, PB8_OUT,
1562                 PB7_IN, PB7_OUT,
1563                 PB6_IN, PB6_OUT,
1564                 PB5_IN, PB5_OUT,
1565                 PB4_IN, PB4_OUT,
1566                 PB3_IN, PB3_OUT,
1567                 PB2_IN, PB2_OUT,
1568                 PB1_IN, PB1_OUT,
1569                 0, 0 ))
1570         },
1571
1572         { PINMUX_CFG_REG("PCCR2", 0xfffe384a, 16, 4, GROUP(
1573                 0, 0, 0, 0, 0, 0, 0, 0,
1574                 0, 0, 0, 0, 0, 0, 0, 0,
1575                 PC10MD_0, PC10MD_1, 0, 0, 0, 0, 0, 0,
1576                 0, 0, 0, 0, 0, 0, 0, 0,
1577                 PC9MD_0, PC9MD_1, 0, 0, 0, 0, 0, 0,
1578                 0, 0, 0, 0, 0, 0, 0, 0,
1579                 PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11, 0, 0, 0, 0,
1580                 0, 0, 0, 0, 0, 0, 0, 0 ))
1581         },
1582         { PINMUX_CFG_REG("PCCR1", 0xfffe384c, 16, 4, GROUP(
1583                 PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11, 0, 0, 0, 0,
1584                 0, 0, 0, 0, 0, 0, 0, 0,
1585                 PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11, 0, 0, 0, 0,
1586                 0, 0, 0, 0, 0, 0, 0, 0,
1587                 PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11, 0, 0, 0, 0,
1588                 0, 0, 0, 0, 0, 0, 0, 0,
1589                 PC4MD_0, PC4MD_1, 0, 0, 0, 0, 0, 0,
1590                 0, 0, 0, 0, 0, 0, 0, 0 ))
1591         },
1592         { PINMUX_CFG_REG("PCCR0", 0xfffe384e, 16, 4, GROUP(
1593                 PC3MD_0, PC3MD_1, 0, 0, 0, 0, 0, 0,
1594                 0, 0, 0, 0, 0, 0, 0, 0,
1595                 PC2MD_0, PC2MD_1, 0, 0, 0, 0, 0, 0,
1596                 0, 0, 0, 0, 0, 0, 0, 0,
1597                 PC1MD_0, PC1MD_1, 0, 0, 0, 0, 0, 0,
1598                 0, 0, 0, 0, 0, 0, 0, 0,
1599                 PC0MD_0, PC0MD_1, 0, 0, 0, 0, 0, 0,
1600                 0, 0, 0, 0, 0, 0, 0, 0 ))
1601         },
1602
1603         { PINMUX_CFG_REG("PCIOR0", 0xfffe3852, 16, 1, GROUP(
1604                 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1605                 PC10_IN, PC10_OUT,
1606                 PC9_IN, PC9_OUT,
1607                 PC8_IN, PC8_OUT,
1608                 PC7_IN, PC7_OUT,
1609                 PC6_IN, PC6_OUT,
1610                 PC5_IN, PC5_OUT,
1611                 PC4_IN, PC4_OUT,
1612                 PC3_IN, PC3_OUT,
1613                 PC2_IN, PC2_OUT,
1614                 PC1_IN, PC1_OUT,
1615                 PC0_IN, PC0_OUT
1616          ))
1617         },
1618
1619         { PINMUX_CFG_REG("PDCR3", 0xfffe3868, 16, 4, GROUP(
1620                 0, PD15MD_01, 0, 0, 0, 0, 0, 0,
1621                 0, 0, 0, 0, 0, 0, 0, 0,
1622                 0, PD14MD_01, 0, 0, 0, 0, 0, 0,
1623                 0, 0, 0, 0, 0, 0, 0, 0,
1624                 0, PD13MD_01, 0, 0, 0, 0, 0, 0,
1625                 0, 0, 0, 0, 0, 0, 0, 0,
1626                 0, PD12MD_01, 0, 0, 0, 0, 0, 0,
1627                 0, 0, 0, 0, 0, 0, 0, 0 ))
1628         },
1629         { PINMUX_CFG_REG("PDCR2", 0xfffe386a, 16, 4, GROUP(
1630                 0, PD11MD_01, 0, 0, 0, 0, 0, 0,
1631                 0, 0, 0, 0, 0, 0, 0, 0,
1632                 0, PD10MD_01, 0, 0, 0, 0, 0, 0,
1633                 0, 0, 0, 0, 0, 0, 0, 0,
1634                 0, PD9MD_01, 0, 0, 0, 0, 0, 0,
1635                 0, 0, 0, 0, 0, 0, 0, 0,
1636                 0, PD8MD_01, 0, 0, 0, 0, 0, 0,
1637                 0, 0, 0, 0, 0, 0, 0, 0 ))
1638         },
1639         { PINMUX_CFG_REG("PDCR1", 0xfffe386c, 16, 4, GROUP(
1640                 0, PD7MD_01, 0, 0, 0, 0, 0, 0,
1641                 0, 0, 0, 0, 0, 0, 0, 0,
1642                 0, PD6MD_01, 0, 0, 0, 0, 0, 0,
1643                 0, 0, 0, 0, 0, 0, 0, 0,
1644                 0, PD5MD_01, 0, 0, 0, 0, 0, 0,
1645                 0, 0, 0, 0, 0, 0, 0, 0,
1646                 0, PD4MD_01, 0, 0, 0, 0, 0, 0,
1647                 0, 0, 0, 0, 0, 0, 0, 0 ))
1648         },
1649         { PINMUX_CFG_REG("PDCR0", 0xfffe386e, 16, 4, GROUP(
1650                 0, PD3MD_01, 0, 0, 0, 0, 0, 0,
1651                 0, 0, 0, 0, 0, 0, 0, 0,
1652                 0, PD2MD_01, 0, 0, 0, 0, 0, 0,
1653                 0, 0, 0, 0, 0, 0, 0, 0,
1654                 0, PD1MD_01, 0, 0, 0, 0, 0, 0,
1655                 0, 0, 0, 0, 0, 0, 0, 0,
1656                 0, PD0MD_01, 0, 0, 0, 0, 0, 0,
1657                 0, 0, 0, 0, 0, 0, 0, 0 ))
1658         },
1659
1660         { PINMUX_CFG_REG("PDIOR0", 0xfffe3872, 16, 1, GROUP(
1661                 PD15_IN, PD15_OUT,
1662                 PD14_IN, PD14_OUT,
1663                 PD13_IN, PD13_OUT,
1664                 PD12_IN, PD12_OUT,
1665                 PD11_IN, PD11_OUT,
1666                 PD10_IN, PD10_OUT,
1667                 PD9_IN, PD9_OUT,
1668                 PD8_IN, PD8_OUT,
1669                 PD7_IN, PD7_OUT,
1670                 PD6_IN, PD6_OUT,
1671                 PD5_IN, PD5_OUT,
1672                 PD4_IN, PD4_OUT,
1673                 PD3_IN, PD3_OUT,
1674                 PD2_IN, PD2_OUT,
1675                 PD1_IN, PD1_OUT,
1676                 PD0_IN, PD0_OUT ))
1677         },
1678
1679         { PINMUX_CFG_REG("PECR1", 0xfffe388c, 16, 4, GROUP(
1680                 0, 0, 0, 0, 0, 0, 0, 0,
1681                 0, 0, 0, 0, 0, 0, 0, 0,
1682                 0, 0, 0, 0, 0, 0, 0, 0,
1683                 0, 0, 0, 0, 0, 0, 0, 0,
1684                 PE5MD_00, PE5MD_01, 0, PE5MD_11, 0, 0, 0, 0,
1685                 0, 0, 0, 0, 0, 0, 0, 0,
1686                 PE4MD_00, PE4MD_01, 0, PE4MD_11, 0, 0, 0, 0,
1687                 0, 0, 0, 0, 0, 0, 0, 0 ))
1688         },
1689
1690         { PINMUX_CFG_REG("PECR0", 0xfffe388e, 16, 4, GROUP(
1691                 PE3MD_00, PE3MD_01, 0, PE3MD_11, 0, 0, 0, 0,
1692                 0, 0, 0, 0, 0, 0, 0, 0,
1693                 PE2MD_00, PE2MD_01, 0, PE2MD_11, 0, 0, 0, 0,
1694                 0, 0, 0, 0, 0, 0, 0, 0,
1695                 PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
1696                 PE1MD_100, PE1MD_101, 0, 0,
1697                 0, 0, 0, 0, 0, 0, 0, 0,
1698                 PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11, 0, 0, 0, 0,
1699                 0, 0, 0, 0, 0, 0, 0, 0 ))
1700         },
1701
1702         { PINMUX_CFG_REG("PEIOR0", 0xfffe3892, 16, 1, GROUP(
1703                 0, 0, 0, 0, 0, 0, 0, 0,
1704                 0, 0, 0, 0, 0, 0, 0, 0,
1705                 0, 0, 0, 0,
1706                 PE5_IN, PE5_OUT,
1707                 PE4_IN, PE4_OUT,
1708                 PE3_IN, PE3_OUT,
1709                 PE2_IN, PE2_OUT,
1710                 PE1_IN, PE1_OUT,
1711                 PE0_IN, PE0_OUT ))
1712         },
1713
1714         { PINMUX_CFG_REG("PFCR3", 0xfffe38a8, 16, 4, GROUP(
1715                 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1716                 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1717                 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1718                 PF12MD_000, PF12MD_001, 0, PF12MD_011,
1719                 PF12MD_100, PF12MD_101, 0, 0,
1720                 0, 0, 0, 0, 0, 0, 0, 0 ))
1721         },
1722
1723         { PINMUX_CFG_REG("PFCR2", 0xfffe38aa, 16, 4, GROUP(
1724                 PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
1725                 PF11MD_100, PF11MD_101, 0, 0,
1726                 0, 0, 0, 0, 0, 0, 0, 0,
1727                 PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
1728                 PF10MD_100, PF10MD_101, 0, 0,
1729                 0, 0, 0, 0, 0, 0, 0, 0,
1730                 PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
1731                 PF9MD_100, PF9MD_101, 0, 0,
1732                 0, 0, 0, 0, 0, 0, 0, 0,
1733                 PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11, 0, 0, 0, 0,
1734                 0, 0, 0, 0, 0, 0, 0, 0 ))
1735         },
1736
1737         { PINMUX_CFG_REG("PFCR1", 0xfffe38ac, 16, 4, GROUP(
1738                 PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
1739                 PF7MD_100, 0, 0, 0,
1740                 0, 0, 0, 0, 0, 0, 0, 0,
1741                 PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
1742                 PF6MD_100, 0, 0, 0,
1743                 0, 0, 0, 0, 0, 0, 0, 0,
1744                 PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
1745                 PF5MD_100, 0, 0, 0,
1746                 0, 0, 0, 0, 0, 0, 0, 0,
1747                 PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
1748                 PF4MD_100, 0, 0, 0,
1749                 0, 0, 0, 0, 0, 0, 0, 0 ))
1750         },
1751
1752         { PINMUX_CFG_REG("PFCR0", 0xfffe38ae, 16, 4, GROUP(
1753                 PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
1754                 PF3MD_100, 0, 0, 0,
1755                 0, 0, 0, 0, 0, 0, 0, 0,
1756                 PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
1757                 PF2MD_100, PF2MD_101, 0, 0,
1758                 0, 0, 0, 0, 0, 0, 0, 0,
1759                 PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
1760                 PF1MD_100, PF1MD_101, 0, 0,
1761                 0, 0, 0, 0, 0, 0, 0, 0,
1762                 PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
1763                 PF0MD_100, PF0MD_101, 0, 0,
1764                 0, 0, 0, 0, 0, 0, 0, 0 ))
1765         },
1766
1767         { PINMUX_CFG_REG("PFIOR0", 0xfffe38b2, 16, 1, GROUP(
1768                 0, 0, 0, 0, 0, 0,
1769                 PF12_IN, PF12_OUT,
1770                 PF11_IN, PF11_OUT,
1771                 PF10_IN, PF10_OUT,
1772                 PF9_IN, PF9_OUT,
1773                 PF8_IN, PF8_OUT,
1774                 PF7_IN, PF7_OUT,
1775                 PF6_IN, PF6_OUT,
1776                 PF5_IN, PF5_OUT,
1777                 PF4_IN, PF4_OUT,
1778                 PF3_IN, PF3_OUT,
1779                 PF2_IN, PF2_OUT,
1780                 PF1_IN, PF1_OUT,
1781                 PF0_IN, PF0_OUT ))
1782         },
1783
1784         { PINMUX_CFG_REG("PGCR7", 0xfffe38c0, 16, 4, GROUP(
1785                 0, 0, 0, 0, 0, 0, 0, 0,
1786                 0, 0, 0, 0, 0, 0, 0, 0,
1787                 0, 0, 0, 0, 0, 0, 0, 0,
1788                 0, 0, 0, 0, 0, 0, 0, 0,
1789                 0, 0, 0, 0, 0, 0, 0, 0,
1790                 0, 0, 0, 0, 0, 0, 0, 0,
1791                 PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
1792                 PG0MD_100, 0, 0, 0,
1793                 0, 0, 0, 0, 0, 0, 0, 0 ))
1794         },
1795
1796         { PINMUX_CFG_REG("PGCR6", 0xfffe38c2, 16, 4, GROUP(
1797                 0, 0, 0, 0, 0, 0, 0, 0,
1798                 0, 0, 0, 0, 0, 0, 0, 0,
1799                 0, 0, 0, 0, 0, 0, 0, 0,
1800                 0, 0, 0, 0, 0, 0, 0, 0,
1801                 0, 0, 0, 0, 0, 0, 0, 0,
1802                 0, 0, 0, 0, 0, 0, 0, 0,
1803                 PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11, 0, 0, 0, 0,
1804                 0, 0, 0, 0, 0, 0, 0, 0 ))
1805         },
1806
1807         { PINMUX_CFG_REG("PGCR5", 0xfffe38c4, 16, 4, GROUP(
1808                 PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11, 0, 0, 0, 0,
1809                 0, 0, 0, 0, 0, 0, 0, 0,
1810                 PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11, 0, 0, 0, 0,
1811                 0, 0, 0, 0, 0, 0, 0, 0,
1812                 PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11, 0, 0, 0, 0,
1813                 0, 0, 0, 0, 0, 0, 0, 0,
1814                 PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
1815                 PG20MD_100, 0, 0, 0,
1816                 0, 0, 0, 0, 0, 0, 0, 0 ))
1817         },
1818
1819         { PINMUX_CFG_REG("PGCR4", 0xfffe38c6, 16, 4, GROUP(
1820                 PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
1821                 PG19MD_100, 0, 0, 0,
1822                 0, 0, 0, 0, 0, 0, 0, 0,
1823                 PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
1824                 PG18MD_100, 0, 0, 0,
1825                 0, 0, 0, 0, 0, 0, 0, 0,
1826                 PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,
1827                 PG17MD_100, 0, 0, 0,
1828                 0, 0, 0, 0, 0, 0, 0, 0,
1829                 PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,
1830                 PG16MD_100, 0, 0, 0,
1831                 0, 0, 0, 0, 0, 0, 0, 0 ))
1832         },
1833
1834         { PINMUX_CFG_REG("PGCR3", 0xfffe38c8, 16, 4, GROUP(
1835                 PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,
1836                 PG15MD_100, 0, 0, 0,
1837                 0, 0, 0, 0, 0, 0, 0, 0,
1838                 PG14MD_000, PG14MD_001, PG14MD_010, 0,
1839                 PG14MD_100, 0, 0, 0,
1840                 0, 0, 0, 0, 0, 0, 0, 0,
1841                 PG13MD_000, PG13MD_001, PG13MD_010, 0,
1842                 PG13MD_100, 0, 0, 0,
1843                 0, 0, 0, 0, 0, 0, 0, 0,
1844                 PG12MD_000, PG12MD_001, PG12MD_010, 0,
1845                 PG12MD_100, 0, 0, 0,
1846                 0, 0, 0, 0, 0, 0, 0, 0 ))
1847         },
1848         { PINMUX_CFG_REG("PGCR2", 0xfffe38ca, 16, 4, GROUP(
1849                 PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
1850                 PG11MD_100, PG11MD_101, 0, 0,
1851                 0, 0, 0, 0, 0, 0, 0, 0,
1852                 PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
1853                 PG10MD_100, PG10MD_101, 0, 0,
1854                 0, 0, 0, 0, 0, 0, 0, 0,
1855                 PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
1856                 PG9MD_100, PG9MD_101, 0, 0,
1857                 0, 0, 0, 0, 0, 0, 0, 0,
1858                 PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
1859                 PG8MD_100, PG8MD_101, 0, 0,
1860                 0, 0, 0, 0, 0, 0, 0, 0 ))
1861         },
1862
1863         { PINMUX_CFG_REG("PGCR1", 0xfffe38cc, 16, 4, GROUP(
1864                 PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11, 0, 0, 0, 0,
1865                 0, 0, 0, 0, 0, 0, 0, 0,
1866                 PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11, 0, 0, 0, 0,
1867                 0, 0, 0, 0, 0, 0, 0, 0,
1868                 PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11, 0, 0, 0, 0,
1869                 0, 0, 0, 0, 0, 0, 0, 0,
1870                 PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11, 0, 0, 0, 0,
1871                 0, 0, 0, 0, 0, 0, 0, 0 ))
1872         },
1873         { PINMUX_CFG_REG("PGCR0", 0xfffe38ce, 16, 4, GROUP(
1874                 PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11, 0, 0, 0, 0,
1875                 0, 0, 0, 0, 0, 0, 0, 0,
1876                 PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11, 0, 0, 0, 0,
1877                 0, 0, 0, 0, 0, 0, 0, 0,
1878                 PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11, 0, 0, 0, 0,
1879                 0, 0, 0, 0, 0, 0, 0, 0,
1880                 0, 0, 0, 0, 0, 0, 0, 0,
1881                 0, 0, 0, 0, 0, 0, 0, 0 ))
1882         },
1883         { PINMUX_CFG_REG("PGIOR1", 0xfffe38d0, 16, 1, GROUP(
1884                 0, 0, 0, 0, 0, 0, 0, 0,
1885                 0, 0, 0, 0, 0, 0,
1886                 PG24_IN, PG24_OUT,
1887                 PG23_IN, PG23_OUT,
1888                 PG22_IN, PG22_OUT,
1889                 PG21_IN, PG21_OUT,
1890                 PG20_IN, PG20_OUT,
1891                 PG19_IN, PG19_OUT,
1892                 PG18_IN, PG18_OUT,
1893                 PG17_IN, PG17_OUT,
1894                 PG16_IN, PG16_OUT ))
1895         },
1896
1897         { PINMUX_CFG_REG("PGIOR0", 0xfffe38d2, 16, 1, GROUP(
1898                 PG15_IN, PG15_OUT,
1899                 PG14_IN, PG14_OUT,
1900                 PG13_IN, PG13_OUT,
1901                 PG12_IN, PG12_OUT,
1902                 PG11_IN, PG11_OUT,
1903                 PG10_IN, PG10_OUT,
1904                 PG9_IN, PG9_OUT,
1905                 PG8_IN, PG8_OUT,
1906                 PG7_IN, PG7_OUT,
1907                 PG6_IN, PG6_OUT,
1908                 PG5_IN, PG5_OUT,
1909                 PG4_IN, PG4_OUT,
1910                 PG3_IN, PG3_OUT,
1911                 PG2_IN, PG2_OUT,
1912                 PG1_IN, PG1_OUT,
1913                 PG0_IN, PG0_OUT
1914          ))
1915         },
1916
1917         { PINMUX_CFG_REG("PHCR1", 0xfffe38ec, 16, 4, GROUP(
1918                 PH7MD_0, PH7MD_1, 0, 0, 0, 0, 0, 0,
1919                 0, 0, 0, 0, 0, 0, 0, 0,
1920                 PH6MD_0, PH6MD_1, 0, 0, 0, 0, 0, 0,
1921                 0, 0, 0, 0, 0, 0, 0, 0,
1922                 PH5MD_0, PH5MD_1, 0, 0, 0, 0, 0, 0,
1923                 0, 0, 0, 0, 0, 0, 0, 0,
1924                 PH4MD_0, PH4MD_1, 0, 0, 0, 0, 0, 0,
1925                 0, 0, 0, 0, 0, 0, 0, 0 ))
1926         },
1927
1928         { PINMUX_CFG_REG("PHCR0", 0xfffe38ee, 16, 4, GROUP(
1929                 PH3MD_0, PH3MD_1, 0, 0, 0, 0, 0, 0,
1930                 0, 0, 0, 0, 0, 0, 0, 0,
1931                 PH2MD_0, PH2MD_1, 0, 0, 0, 0, 0, 0,
1932                 0, 0, 0, 0, 0, 0, 0, 0,
1933                 PH1MD_0, PH1MD_1, 0, 0, 0, 0, 0, 0,
1934                 0, 0, 0, 0, 0, 0, 0, 0,
1935                 PH0MD_0, PH0MD_1, 0, 0, 0, 0, 0, 0,
1936                 0, 0, 0, 0, 0, 0, 0, 0 ))
1937         },
1938
1939         { PINMUX_CFG_REG("PJCR2", 0xfffe390a, 16, 4, GROUP(
1940                 PJ11MD_00, PJ11MD_01, PJ11MD_10, 0, 0, 0, 0, 0,
1941                 0, 0, 0, 0, 0, 0, 0, 0,
1942                 PJ10MD_00, PJ10MD_01, PJ10MD_10, 0, 0, 0, 0, 0,
1943                 0, 0, 0, 0, 0, 0, 0, 0,
1944                 PJ9MD_00, PJ9MD_01, PJ9MD_10, 0, 0, 0, 0, 0,
1945                 0, 0, 0, 0, 0, 0, 0, 0,
1946                 PJ8MD_00, PJ8MD_01, PJ8MD_10, 0, 0, 0, 0, 0,
1947                 0, 0, 0, 0, 0, 0, 0, 0 ))
1948         },
1949         { PINMUX_CFG_REG("PJCR1", 0xfffe390c, 16, 4, GROUP(
1950                 PJ7MD_00, PJ7MD_01, PJ7MD_10, 0, 0, 0, 0, 0,
1951                 0, 0, 0, 0, 0, 0, 0, 0,
1952                 PJ6MD_00, PJ6MD_01, PJ6MD_10, 0, 0, 0, 0, 0,
1953                 0, 0, 0, 0, 0, 0, 0, 0,
1954                 PJ5MD_00, PJ5MD_01, PJ5MD_10, 0, 0, 0, 0, 0,
1955                 0, 0, 0, 0, 0, 0, 0, 0,
1956                 PJ4MD_00, PJ4MD_01, PJ4MD_10, 0, 0, 0, 0, 0,
1957                 0, 0, 0, 0, 0, 0, 0, 0 ))
1958         },
1959         { PINMUX_CFG_REG("PJCR0", 0xfffe390e, 16, 4, GROUP(
1960                 PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11, 0, 0, 0, 0,
1961                 0, 0, 0, 0, 0, 0, 0, 0,
1962                 PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
1963                 PJ2MD_100, PJ2MD_101, 0, 0,
1964                 0, 0, 0, 0, 0, 0, 0, 0,
1965                 PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
1966                 PJ1MD_100, 0, 0, 0,
1967                 0, 0, 0, 0, 0, 0, 0, 0,
1968                 PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
1969                 PJ0MD_100, PJ0MD_101, 0, 0,
1970                 0, 0, 0, 0, 0, 0, 0, 0, ))
1971         },
1972         { PINMUX_CFG_REG("PJIOR0", 0xfffe3912, 16, 1, GROUP(
1973                 0, 0, 0, 0, 0, 0, 0, 0,
1974                 PJ11_IN, PJ11_OUT,
1975                 PJ10_IN, PJ10_OUT,
1976                 PJ9_IN, PJ9_OUT,
1977                 PJ8_IN, PJ8_OUT,
1978                 PJ7_IN, PJ7_OUT,
1979                 PJ6_IN, PJ6_OUT,
1980                 PJ5_IN, PJ5_OUT,
1981                 PJ4_IN, PJ4_OUT,
1982                 PJ3_IN, PJ3_OUT,
1983                 PJ2_IN, PJ2_OUT,
1984                 PJ1_IN, PJ1_OUT,
1985                 PJ0_IN, PJ0_OUT ))
1986         },
1987
1988         { PINMUX_CFG_REG("PKCR2", 0xfffe392a, 16, 4, GROUP(
1989                 PK11MD_00, PK11MD_01, PK11MD_10, 0, 0, 0, 0, 0,
1990                 0, 0, 0, 0, 0, 0, 0, 0,
1991                 PK10MD_00, PK10MD_01, PK10MD_10, 0, 0, 0, 0, 0,
1992                 0, 0, 0, 0, 0, 0, 0, 0,
1993                 PK9MD_00, PK9MD_01, PK9MD_10, 0, 0, 0, 0, 0,
1994                 0, 0, 0, 0, 0, 0, 0, 0,
1995                 PK8MD_00, PK8MD_01, PK8MD_10, 0, 0, 0, 0, 0,
1996                 0, 0, 0, 0, 0, 0, 0, 0 ))
1997         },
1998
1999         { PINMUX_CFG_REG("PKCR1", 0xfffe392c, 16, 4, GROUP(
2000                 PK7MD_00, PK7MD_01, PK7MD_10, 0, 0, 0, 0, 0,
2001                 0, 0, 0, 0, 0, 0, 0, 0,
2002                 PK6MD_00, PK6MD_01, PK6MD_10, 0,  0, 0, 0, 0,
2003                 0, 0, 0, 0, 0, 0, 0, 0,
2004                 PK5MD_00, PK5MD_01, PK5MD_10, 0, 0, 0, 0, 0,
2005                 0, 0, 0, 0, 0, 0, 0, 0,
2006                 PK4MD_00, PK4MD_01, PK4MD_10, 0, 0, 0, 0, 0,
2007                 0, 0, 0, 0, 0, 0, 0, 0 ))
2008         },
2009         { PINMUX_CFG_REG("PKCR0", 0xfffe392e, 16, 4, GROUP(
2010                 PK3MD_00, PK3MD_01, PK3MD_10, 0, 0, 0, 0, 0,
2011                 0, 0, 0, 0, 0, 0, 0, 0,
2012                 PK2MD_00, PK2MD_01, PK2MD_10, 0, 0, 0, 0, 0,
2013                 0, 0, 0, 0, 0, 0, 0, 0,
2014                 PK1MD_00, PK1MD_01, PK1MD_10, 0, 0, 0, 0, 0,
2015                 0, 0, 0, 0, 0, 0, 0, 0,
2016                 PK0MD_00, PK0MD_01, PK0MD_10, 0, 0, 0, 0, 0,
2017                 0, 0, 0, 0, 0, 0, 0, 0 ))
2018         },
2019
2020         { PINMUX_CFG_REG("PKIOR0", 0xfffe3932, 16, 1, GROUP(
2021                 0, 0, 0, 0, 0, 0, 0, 0,
2022                 PK11_IN, PK11_OUT,
2023                 PK10_IN, PK10_OUT,
2024                 PK9_IN, PK9_OUT,
2025                 PK8_IN, PK8_OUT,
2026                 PK7_IN, PK7_OUT,
2027                 PK6_IN, PK6_OUT,
2028                 PK5_IN, PK5_OUT,
2029                 PK4_IN, PK4_OUT,
2030                 PK3_IN, PK3_OUT,
2031                 PK2_IN, PK2_OUT,
2032                 PK1_IN, PK1_OUT,
2033                 PK0_IN, PK0_OUT ))
2034         },
2035         {}
2036 };
2037
2038 static const struct pinmux_data_reg pinmux_data_regs[] = {
2039         { PINMUX_DATA_REG("PADR1", 0xfffe3814, 16, GROUP(
2040                 0, 0, 0, 0, 0, 0, 0, PA3_DATA,
2041                 0, 0, 0, 0, 0, 0, 0, PA2_DATA ))
2042         },
2043
2044         { PINMUX_DATA_REG("PADR0", 0xfffe3816, 16, GROUP(
2045                 0, 0, 0, 0, 0, 0, 0, PA1_DATA,
2046                 0, 0, 0, 0, 0, 0, 0, PA0_DATA ))
2047         },
2048
2049         { PINMUX_DATA_REG("PBDR1", 0xfffe3834, 16, GROUP(
2050                 0, 0, 0, 0, 0, 0, 0, 0,
2051                 0, PB22_DATA, PB21_DATA, PB20_DATA,
2052                 PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA ))
2053         },
2054
2055         { PINMUX_DATA_REG("PBDR0", 0xfffe3836, 16, GROUP(
2056                 PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
2057                 PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
2058                 PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
2059                 PB3_DATA, PB2_DATA, PB1_DATA, 0 ))
2060         },
2061
2062         { PINMUX_DATA_REG("PCDR0", 0xfffe3856, 16, GROUP(
2063                 0, 0, 0, 0,
2064                 0, PC10_DATA, PC9_DATA, PC8_DATA,
2065                 PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
2066                 PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA ))
2067         },
2068
2069         { PINMUX_DATA_REG("PDDR0", 0xfffe3876, 16, GROUP(
2070                 PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
2071                 PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
2072                 PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
2073                 PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA ))
2074         },
2075
2076         { PINMUX_DATA_REG("PEDR0", 0xfffe3896, 16, GROUP(
2077                 0, 0, 0, 0, 0, 0, 0, 0,
2078                 0, 0, PE5_DATA, PE4_DATA,
2079                 PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA ))
2080         },
2081
2082         { PINMUX_DATA_REG("PFDR0", 0xfffe38b6, 16, GROUP(
2083                 0, 0, 0, PF12_DATA,
2084                 PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
2085                 PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
2086                 PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA ))
2087         },
2088
2089         { PINMUX_DATA_REG("PGDR1", 0xfffe38d4, 16, GROUP(
2090                 0, 0, 0, 0, 0, 0, 0, PG24_DATA,
2091                 PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
2092                 PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA ))
2093         },
2094
2095         { PINMUX_DATA_REG("PGDR0", 0xfffe38d6, 16, GROUP(
2096                 PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
2097                 PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
2098                 PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
2099                 PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA ))
2100         },
2101         { PINMUX_DATA_REG("PJDR0", 0xfffe3916, 16, GROUP(
2102                 0, 0, 0, PJ12_DATA,
2103                 PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
2104                 PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
2105                 PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA ))
2106         },
2107         { PINMUX_DATA_REG("PKDR0", 0xfffe3936, 16, GROUP(
2108                 0, 0, 0, PK12_DATA,
2109                 PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,
2110                 PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,
2111                 PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA ))
2112         },
2113         { }
2114 };
2115
2116 const struct sh_pfc_soc_info sh7264_pinmux_info = {
2117         .name = "sh7264_pfc",
2118         .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },
2119         .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },
2120         .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
2121
2122         .pins = pinmux_pins,
2123         .nr_pins = ARRAY_SIZE(pinmux_pins),
2124         .func_gpios = pinmux_func_gpios,
2125         .nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
2126
2127         .cfg_regs = pinmux_config_regs,
2128         .data_regs = pinmux_data_regs,
2129
2130         .pinmux_data = pinmux_data,
2131         .pinmux_data_size = ARRAY_SIZE(pinmux_data),
2132 };