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