1  // SPDX-License-Identifier: GPL-2.0
2  /*
3   * SH7720 Pinmux
4   *
5   *  Copyright (C) 2008  Magnus Damm
6   */
7  
8  #include <linux/kernel.h>
9  #include <cpu/sh7720.h>
10  
11  #include "sh_pfc.h"
12  
13  enum {
14  	PINMUX_RESERVED = 0,
15  
16  	PINMUX_DATA_BEGIN,
17  	PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
18  	PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA,
19  	PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
20  	PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA,
21  	PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
22  	PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA,
23  	PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
24  	PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA,
25  	PTE6_DATA, PTE5_DATA, PTE4_DATA,
26  	PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA,
27  	PTF6_DATA, PTF5_DATA, PTF4_DATA,
28  	PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA,
29  	PTG6_DATA, PTG5_DATA, PTG4_DATA,
30  	PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA,
31  	PTH6_DATA, PTH5_DATA, PTH4_DATA,
32  	PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA,
33  	PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
34  	PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA,
35  	PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA,
36  	PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA, PTL3_DATA,
37  	PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
38  	PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA,
39  	PTP4_DATA, PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA,
40  	PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
41  	PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA,
42  	PTS4_DATA, PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA,
43  	PTT4_DATA, PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA,
44  	PTU4_DATA, PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA,
45  	PTV4_DATA, PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA,
46  	PINMUX_DATA_END,
47  
48  	PINMUX_INPUT_BEGIN,
49  	PTA7_IN, PTA6_IN, PTA5_IN, PTA4_IN,
50  	PTA3_IN, PTA2_IN, PTA1_IN, PTA0_IN,
51  	PTB7_IN, PTB6_IN, PTB5_IN, PTB4_IN,
52  	PTB3_IN, PTB2_IN, PTB1_IN, PTB0_IN,
53  	PTC7_IN, PTC6_IN, PTC5_IN, PTC4_IN,
54  	PTC3_IN, PTC2_IN, PTC1_IN, PTC0_IN,
55  	PTD7_IN, PTD6_IN, PTD5_IN, PTD4_IN,
56  	PTD3_IN, PTD2_IN, PTD1_IN, PTD0_IN,
57  	PTE6_IN, PTE5_IN, PTE4_IN,
58  	PTE3_IN, PTE2_IN, PTE1_IN, PTE0_IN,
59  	PTF6_IN, PTF5_IN, PTF4_IN,
60  	PTF3_IN, PTF2_IN, PTF1_IN, PTF0_IN,
61  	PTG6_IN, PTG5_IN, PTG4_IN,
62  	PTG3_IN, PTG2_IN, PTG1_IN, PTG0_IN,
63  	PTH6_IN, PTH5_IN, PTH4_IN,
64  	PTH3_IN, PTH2_IN, PTH1_IN, PTH0_IN,
65  	PTJ6_IN, PTJ5_IN, PTJ4_IN,
66  	PTJ3_IN, PTJ2_IN, PTJ1_IN, PTJ0_IN,
67  	PTK3_IN, PTK2_IN, PTK1_IN, PTK0_IN,
68  	PTL7_IN, PTL6_IN, PTL5_IN, PTL4_IN, PTL3_IN,
69  	PTM7_IN, PTM6_IN, PTM5_IN, PTM4_IN,
70  	PTM3_IN, PTM2_IN, PTM1_IN, PTM0_IN,
71  	PTP4_IN, PTP3_IN, PTP2_IN, PTP1_IN, PTP0_IN,
72  	PTR7_IN, PTR6_IN, PTR5_IN, PTR4_IN,
73  	PTR3_IN, PTR2_IN, PTR1_IN, PTR0_IN,
74  	PTS4_IN, PTS3_IN, PTS2_IN, PTS1_IN, PTS0_IN,
75  	PTT4_IN, PTT3_IN, PTT2_IN, PTT1_IN, PTT0_IN,
76  	PTU4_IN, PTU3_IN, PTU2_IN, PTU1_IN, PTU0_IN,
77  	PTV4_IN, PTV3_IN, PTV2_IN, PTV1_IN, PTV0_IN,
78  	PINMUX_INPUT_END,
79  
80  	PINMUX_OUTPUT_BEGIN,
81  	PTA7_OUT, PTA6_OUT, PTA5_OUT, PTA4_OUT,
82  	PTA3_OUT, PTA2_OUT, PTA1_OUT, PTA0_OUT,
83  	PTB7_OUT, PTB6_OUT, PTB5_OUT, PTB4_OUT,
84  	PTB3_OUT, PTB2_OUT, PTB1_OUT, PTB0_OUT,
85  	PTC7_OUT, PTC6_OUT, PTC5_OUT, PTC4_OUT,
86  	PTC3_OUT, PTC2_OUT, PTC1_OUT, PTC0_OUT,
87  	PTD7_OUT, PTD6_OUT, PTD5_OUT, PTD4_OUT,
88  	PTD3_OUT, PTD2_OUT, PTD1_OUT, PTD0_OUT,
89  	PTE4_OUT, PTE3_OUT, PTE2_OUT, PTE1_OUT, PTE0_OUT,
90  	PTF0_OUT,
91  	PTG6_OUT, PTG5_OUT, PTG4_OUT,
92  	PTG3_OUT, PTG2_OUT, PTG1_OUT, PTG0_OUT,
93  	PTH6_OUT, PTH5_OUT, PTH4_OUT,
94  	PTH3_OUT, PTH2_OUT, PTH1_OUT, PTH0_OUT,
95  	PTJ6_OUT, PTJ5_OUT, PTJ4_OUT,
96  	PTJ3_OUT, PTJ2_OUT, PTJ1_OUT, PTJ0_OUT,
97  	PTK3_OUT, PTK2_OUT, PTK1_OUT, PTK0_OUT,
98  	PTL7_OUT, PTL6_OUT, PTL5_OUT, PTL4_OUT, PTL3_OUT,
99  	PTM7_OUT, PTM6_OUT, PTM5_OUT, PTM4_OUT,
100  	PTM3_OUT, PTM2_OUT, PTM1_OUT, PTM0_OUT,
101  	PTP4_OUT, PTP3_OUT, PTP2_OUT, PTP1_OUT, PTP0_OUT,
102  	PTR7_OUT, PTR6_OUT, PTR5_OUT, PTR4_OUT,
103  	PTR3_OUT, PTR2_OUT, PTR1_OUT, PTR0_OUT,
104  	PTS4_OUT, PTS3_OUT, PTS2_OUT, PTS1_OUT, PTS0_OUT,
105  	PTT4_OUT, PTT3_OUT, PTT2_OUT, PTT1_OUT, PTT0_OUT,
106  	PTU4_OUT, PTU3_OUT, PTU2_OUT, PTU1_OUT, PTU0_OUT,
107  	PTV4_OUT, PTV3_OUT, PTV2_OUT, PTV1_OUT, PTV0_OUT,
108  	PINMUX_OUTPUT_END,
109  
110  	PINMUX_FUNCTION_BEGIN,
111  	PTA7_FN, PTA6_FN, PTA5_FN, PTA4_FN,
112  	PTA3_FN, PTA2_FN, PTA1_FN, PTA0_FN,
113  	PTB7_FN, PTB6_FN, PTB5_FN, PTB4_FN,
114  	PTB3_FN, PTB2_FN, PTB1_FN, PTB0_FN,
115  	PTC7_FN, PTC6_FN, PTC5_FN, PTC4_FN,
116  	PTC3_FN, PTC2_FN, PTC1_FN, PTC0_FN,
117  	PTD7_FN, PTD6_FN, PTD5_FN, PTD4_FN,
118  	PTD3_FN, PTD2_FN, PTD1_FN, PTD0_FN,
119  	PTE6_FN, PTE5_FN, PTE4_FN,
120  	PTE3_FN, PTE2_FN, PTE1_FN, PTE0_FN,
121  	PTF6_FN, PTF5_FN, PTF4_FN,
122  	PTF3_FN, PTF2_FN, PTF1_FN, PTF0_FN,
123  	PTG6_FN, PTG5_FN, PTG4_FN,
124  	PTG3_FN, PTG2_FN, PTG1_FN, PTG0_FN,
125  	PTH6_FN, PTH5_FN, PTH4_FN,
126  	PTH3_FN, PTH2_FN, PTH1_FN, PTH0_FN,
127  	PTJ6_FN, PTJ5_FN, PTJ4_FN,
128  	PTJ3_FN, PTJ2_FN, PTJ1_FN, PTJ0_FN,
129  	PTK3_FN, PTK2_FN, PTK1_FN, PTK0_FN,
130  	PTL7_FN, PTL6_FN, PTL5_FN, PTL4_FN, PTL3_FN,
131  	PTM7_FN, PTM6_FN, PTM5_FN, PTM4_FN,
132  	PTM3_FN, PTM2_FN, PTM1_FN, PTM0_FN,
133  	PTP4_FN, PTP3_FN, PTP2_FN, PTP1_FN, PTP0_FN,
134  	PTR7_FN, PTR6_FN, PTR5_FN, PTR4_FN,
135  	PTR3_FN, PTR2_FN, PTR1_FN, PTR0_FN,
136  	PTS4_FN, PTS3_FN, PTS2_FN, PTS1_FN, PTS0_FN,
137  	PTT4_FN, PTT3_FN, PTT2_FN, PTT1_FN, PTT0_FN,
138  	PTU4_FN, PTU3_FN, PTU2_FN, PTU1_FN, PTU0_FN,
139  	PTV4_FN, PTV3_FN, PTV2_FN, PTV1_FN, PTV0_FN,
140  
141  	PSELA_1_0_00, PSELA_1_0_01, PSELA_1_0_10,
142  	PSELA_3_2_00, PSELA_3_2_01, PSELA_3_2_10, PSELA_3_2_11,
143  	PSELA_5_4_00, PSELA_5_4_01, PSELA_5_4_10, PSELA_5_4_11,
144  	PSELA_7_6_00, PSELA_7_6_01, PSELA_7_6_10,
145  	PSELA_9_8_00, PSELA_9_8_01, PSELA_9_8_10,
146  	PSELA_11_10_00, PSELA_11_10_01, PSELA_11_10_10,
147  	PSELA_13_12_00, PSELA_13_12_10,
148  	PSELA_15_14_00, PSELA_15_14_10,
149  	PSELB_9_8_00, PSELB_9_8_11,
150  	PSELB_11_10_00, PSELB_11_10_01, PSELB_11_10_10, PSELB_11_10_11,
151  	PSELB_13_12_00, PSELB_13_12_01, PSELB_13_12_10, PSELB_13_12_11,
152  	PSELB_15_14_00, PSELB_15_14_11,
153  	PSELC_9_8_00, PSELC_9_8_10,
154  	PSELC_11_10_00, PSELC_11_10_10,
155  	PSELC_13_12_00,	PSELC_13_12_01,	PSELC_13_12_10,
156  	PSELC_15_14_00,	PSELC_15_14_01,	PSELC_15_14_10,
157  	PSELD_1_0_00, PSELD_1_0_10,
158  	PSELD_11_10_00,	PSELD_11_10_01,
159  	PSELD_15_14_00,	PSELD_15_14_01,	PSELD_15_14_10,
160  	PINMUX_FUNCTION_END,
161  
162  	PINMUX_MARK_BEGIN,
163  	D31_MARK, D30_MARK, D29_MARK, D28_MARK,
164  	D27_MARK, D26_MARK, D25_MARK, D24_MARK,
165  	D23_MARK, D22_MARK, D21_MARK, D20_MARK,
166  	D19_MARK, D18_MARK, D17_MARK, D16_MARK,
167  	IOIS16_MARK, RAS_MARK, CAS_MARK, CKE_MARK,
168  	CS5B_CE1A_MARK, CS6B_CE1B_MARK,
169  	A25_MARK, A24_MARK, A23_MARK, A22_MARK,
170  	A21_MARK, A20_MARK, A19_MARK, A0_MARK,
171  	REFOUT_MARK, IRQOUT_MARK,
172  	LCD_DATA15_MARK, LCD_DATA14_MARK,
173  	LCD_DATA13_MARK, LCD_DATA12_MARK,
174  	LCD_DATA11_MARK, LCD_DATA10_MARK,
175  	LCD_DATA9_MARK, LCD_DATA8_MARK,
176  	LCD_DATA7_MARK, LCD_DATA6_MARK,
177  	LCD_DATA5_MARK, LCD_DATA4_MARK,
178  	LCD_DATA3_MARK, LCD_DATA2_MARK,
179  	LCD_DATA1_MARK, LCD_DATA0_MARK,
180  	LCD_M_DISP_MARK,
181  	LCD_CL1_MARK, LCD_CL2_MARK,
182  	LCD_DON_MARK, LCD_FLM_MARK,
183  	LCD_VEPWC_MARK, LCD_VCPWC_MARK,
184  	AFE_RXIN_MARK, AFE_RDET_MARK,
185  	AFE_FS_MARK, AFE_TXOUT_MARK,
186  	AFE_SCLK_MARK, AFE_RLYCNT_MARK,
187  	AFE_HC1_MARK,
188  	IIC_SCL_MARK, IIC_SDA_MARK,
189  	DA1_MARK, DA0_MARK,
190  	AN3_MARK, AN2_MARK, AN1_MARK, AN0_MARK, ADTRG_MARK,
191  	USB1D_RCV_MARK, USB1D_TXSE0_MARK,
192  	USB1D_TXDPLS_MARK, USB1D_DMNS_MARK,
193  	USB1D_DPLS_MARK, USB1D_SPEED_MARK,
194  	USB1D_TXENL_MARK,
195  	USB2_PWR_EN_MARK, USB1_PWR_EN_USBF_UPLUP_MARK, USB1D_SUSPEND_MARK,
196  	IRQ5_MARK, IRQ4_MARK,
197  	IRQ3_IRL3_MARK, IRQ2_IRL2_MARK,
198  	IRQ1_IRL1_MARK, IRQ0_IRL0_MARK,
199  	PCC_REG_MARK, PCC_DRV_MARK,
200  	PCC_BVD2_MARK, PCC_BVD1_MARK,
201  	PCC_CD2_MARK, PCC_CD1_MARK,
202  	PCC_RESET_MARK, PCC_RDY_MARK,
203  	PCC_VS2_MARK, PCC_VS1_MARK,
204  	AUDATA3_MARK, AUDATA2_MARK, AUDATA1_MARK, AUDATA0_MARK,
205  	AUDCK_MARK, AUDSYNC_MARK, ASEBRKAK_MARK, TRST_MARK,
206  	TMS_MARK, TDO_MARK, TDI_MARK, TCK_MARK,
207  	DACK1_MARK, DREQ1_MARK, DACK0_MARK, DREQ0_MARK,
208  	TEND1_MARK, TEND0_MARK,
209  	SIOF0_SYNC_MARK, SIOF0_MCLK_MARK,
210  	SIOF0_TXD_MARK, SIOF0_RXD_MARK,
211  	SIOF0_SCK_MARK,
212  	SIOF1_SYNC_MARK, SIOF1_MCLK_MARK,
213  	SIOF1_TXD_MARK, SIOF1_RXD_MARK,
214  	SIOF1_SCK_MARK,
215  	SCIF0_TXD_MARK, SCIF0_RXD_MARK,
216  	SCIF0_RTS_MARK, SCIF0_CTS_MARK, SCIF0_SCK_MARK,
217  	SCIF1_TXD_MARK, SCIF1_RXD_MARK,
218  	SCIF1_RTS_MARK, SCIF1_CTS_MARK, SCIF1_SCK_MARK,
219  	TPU_TO1_MARK, TPU_TO0_MARK,
220  	TPU_TI3B_MARK, TPU_TI3A_MARK,
221  	TPU_TI2B_MARK, TPU_TI2A_MARK,
222  	TPU_TO3_MARK, TPU_TO2_MARK,
223  	SIM_D_MARK, SIM_CLK_MARK, SIM_RST_MARK,
224  	MMC_DAT_MARK, MMC_CMD_MARK,
225  	MMC_CLK_MARK, MMC_VDDON_MARK,
226  	MMC_ODMOD_MARK,
227  	STATUS0_MARK, STATUS1_MARK,
228  	PINMUX_MARK_END,
229  };
230  
231  static const u16 pinmux_data[] = {
232  	/* PTA GPIO */
233  	PINMUX_DATA(PTA7_DATA, PTA7_IN, PTA7_OUT),
234  	PINMUX_DATA(PTA6_DATA, PTA6_IN, PTA6_OUT),
235  	PINMUX_DATA(PTA5_DATA, PTA5_IN, PTA5_OUT),
236  	PINMUX_DATA(PTA4_DATA, PTA4_IN, PTA4_OUT),
237  	PINMUX_DATA(PTA3_DATA, PTA3_IN, PTA3_OUT),
238  	PINMUX_DATA(PTA2_DATA, PTA2_IN, PTA2_OUT),
239  	PINMUX_DATA(PTA1_DATA, PTA1_IN, PTA1_OUT),
240  	PINMUX_DATA(PTA0_DATA, PTA0_IN, PTA0_OUT),
241  
242  	/* PTB GPIO */
243  	PINMUX_DATA(PTB7_DATA, PTB7_IN, PTB7_OUT),
244  	PINMUX_DATA(PTB6_DATA, PTB6_IN, PTB6_OUT),
245  	PINMUX_DATA(PTB5_DATA, PTB5_IN, PTB5_OUT),
246  	PINMUX_DATA(PTB4_DATA, PTB4_IN, PTB4_OUT),
247  	PINMUX_DATA(PTB3_DATA, PTB3_IN, PTB3_OUT),
248  	PINMUX_DATA(PTB2_DATA, PTB2_IN, PTB2_OUT),
249  	PINMUX_DATA(PTB1_DATA, PTB1_IN, PTB1_OUT),
250  	PINMUX_DATA(PTB0_DATA, PTB0_IN, PTB0_OUT),
251  
252  	/* PTC GPIO */
253  	PINMUX_DATA(PTC7_DATA, PTC7_IN, PTC7_OUT),
254  	PINMUX_DATA(PTC6_DATA, PTC6_IN, PTC6_OUT),
255  	PINMUX_DATA(PTC5_DATA, PTC5_IN, PTC5_OUT),
256  	PINMUX_DATA(PTC4_DATA, PTC4_IN, PTC4_OUT),
257  	PINMUX_DATA(PTC3_DATA, PTC3_IN, PTC3_OUT),
258  	PINMUX_DATA(PTC2_DATA, PTC2_IN, PTC2_OUT),
259  	PINMUX_DATA(PTC1_DATA, PTC1_IN, PTC1_OUT),
260  	PINMUX_DATA(PTC0_DATA, PTC0_IN, PTC0_OUT),
261  
262  	/* PTD GPIO */
263  	PINMUX_DATA(PTD7_DATA, PTD7_IN, PTD7_OUT),
264  	PINMUX_DATA(PTD6_DATA, PTD6_IN, PTD6_OUT),
265  	PINMUX_DATA(PTD5_DATA, PTD5_IN, PTD5_OUT),
266  	PINMUX_DATA(PTD4_DATA, PTD4_IN, PTD4_OUT),
267  	PINMUX_DATA(PTD3_DATA, PTD3_IN, PTD3_OUT),
268  	PINMUX_DATA(PTD2_DATA, PTD2_IN, PTD2_OUT),
269  	PINMUX_DATA(PTD1_DATA, PTD1_IN, PTD1_OUT),
270  	PINMUX_DATA(PTD0_DATA, PTD0_IN, PTD0_OUT),
271  
272  	/* PTE GPIO */
273  	PINMUX_DATA(PTE6_DATA, PTE6_IN),
274  	PINMUX_DATA(PTE5_DATA, PTE5_IN),
275  	PINMUX_DATA(PTE4_DATA, PTE4_IN, PTE4_OUT),
276  	PINMUX_DATA(PTE3_DATA, PTE3_IN, PTE3_OUT),
277  	PINMUX_DATA(PTE2_DATA, PTE2_IN, PTE2_OUT),
278  	PINMUX_DATA(PTE1_DATA, PTE1_IN, PTE1_OUT),
279  	PINMUX_DATA(PTE0_DATA, PTE0_IN, PTE0_OUT),
280  
281  	/* PTF GPIO */
282  	PINMUX_DATA(PTF6_DATA, PTF6_IN),
283  	PINMUX_DATA(PTF5_DATA, PTF5_IN),
284  	PINMUX_DATA(PTF4_DATA, PTF4_IN),
285  	PINMUX_DATA(PTF3_DATA, PTF3_IN),
286  	PINMUX_DATA(PTF2_DATA, PTF2_IN),
287  	PINMUX_DATA(PTF1_DATA, PTF1_IN),
288  	PINMUX_DATA(PTF0_DATA, PTF0_IN, PTF0_OUT),
289  
290  	/* PTG GPIO */
291  	PINMUX_DATA(PTG6_DATA, PTG6_IN, PTG6_OUT),
292  	PINMUX_DATA(PTG5_DATA, PTG5_IN, PTG5_OUT),
293  	PINMUX_DATA(PTG4_DATA, PTG4_IN, PTG4_OUT),
294  	PINMUX_DATA(PTG3_DATA, PTG3_IN, PTG3_OUT),
295  	PINMUX_DATA(PTG2_DATA, PTG2_IN, PTG2_OUT),
296  	PINMUX_DATA(PTG1_DATA, PTG1_IN, PTG1_OUT),
297  	PINMUX_DATA(PTG0_DATA, PTG0_IN, PTG0_OUT),
298  
299  	/* PTH GPIO */
300  	PINMUX_DATA(PTH6_DATA, PTH6_IN, PTH6_OUT),
301  	PINMUX_DATA(PTH5_DATA, PTH5_IN, PTH5_OUT),
302  	PINMUX_DATA(PTH4_DATA, PTH4_IN, PTH4_OUT),
303  	PINMUX_DATA(PTH3_DATA, PTH3_IN, PTH3_OUT),
304  	PINMUX_DATA(PTH2_DATA, PTH2_IN, PTH2_OUT),
305  	PINMUX_DATA(PTH1_DATA, PTH1_IN, PTH1_OUT),
306  	PINMUX_DATA(PTH0_DATA, PTH0_IN, PTH0_OUT),
307  
308  	/* PTJ GPIO */
309  	PINMUX_DATA(PTJ6_DATA, PTJ6_IN, PTJ6_OUT),
310  	PINMUX_DATA(PTJ5_DATA, PTJ5_IN, PTJ5_OUT),
311  	PINMUX_DATA(PTJ4_DATA, PTJ4_IN, PTJ4_OUT),
312  	PINMUX_DATA(PTJ3_DATA, PTJ3_IN, PTJ3_OUT),
313  	PINMUX_DATA(PTJ2_DATA, PTJ2_IN, PTJ2_OUT),
314  	PINMUX_DATA(PTJ1_DATA, PTJ1_IN, PTJ1_OUT),
315  	PINMUX_DATA(PTJ0_DATA, PTJ0_IN, PTJ0_OUT),
316  
317  	/* PTK GPIO */
318  	PINMUX_DATA(PTK3_DATA, PTK3_IN, PTK3_OUT),
319  	PINMUX_DATA(PTK2_DATA, PTK2_IN, PTK2_OUT),
320  	PINMUX_DATA(PTK1_DATA, PTK1_IN, PTK1_OUT),
321  	PINMUX_DATA(PTK0_DATA, PTK0_IN, PTK0_OUT),
322  
323  	/* PTL GPIO */
324  	PINMUX_DATA(PTL7_DATA, PTL7_IN, PTL7_OUT),
325  	PINMUX_DATA(PTL6_DATA, PTL6_IN, PTL6_OUT),
326  	PINMUX_DATA(PTL5_DATA, PTL5_IN, PTL5_OUT),
327  	PINMUX_DATA(PTL4_DATA, PTL4_IN, PTL4_OUT),
328  	PINMUX_DATA(PTL3_DATA, PTL3_IN, PTL3_OUT),
329  
330  	/* PTM GPIO */
331  	PINMUX_DATA(PTM7_DATA, PTM7_IN, PTM7_OUT),
332  	PINMUX_DATA(PTM6_DATA, PTM6_IN, PTM6_OUT),
333  	PINMUX_DATA(PTM5_DATA, PTM5_IN, PTM5_OUT),
334  	PINMUX_DATA(PTM4_DATA, PTM4_IN, PTM4_OUT),
335  	PINMUX_DATA(PTM3_DATA, PTM3_IN, PTM3_OUT),
336  	PINMUX_DATA(PTM2_DATA, PTM2_IN, PTM2_OUT),
337  	PINMUX_DATA(PTM1_DATA, PTM1_IN, PTM1_OUT),
338  	PINMUX_DATA(PTM0_DATA, PTM0_IN, PTM0_OUT),
339  
340  	/* PTP GPIO */
341  	PINMUX_DATA(PTP4_DATA, PTP4_IN, PTP4_OUT),
342  	PINMUX_DATA(PTP3_DATA, PTP3_IN, PTP3_OUT),
343  	PINMUX_DATA(PTP2_DATA, PTP2_IN, PTP2_OUT),
344  	PINMUX_DATA(PTP1_DATA, PTP1_IN, PTP1_OUT),
345  	PINMUX_DATA(PTP0_DATA, PTP0_IN, PTP0_OUT),
346  
347  	/* PTR GPIO */
348  	PINMUX_DATA(PTR7_DATA, PTR7_IN, PTR7_OUT),
349  	PINMUX_DATA(PTR6_DATA, PTR6_IN, PTR6_OUT),
350  	PINMUX_DATA(PTR5_DATA, PTR5_IN, PTR5_OUT),
351  	PINMUX_DATA(PTR4_DATA, PTR4_IN, PTR4_OUT),
352  	PINMUX_DATA(PTR3_DATA, PTR3_IN, PTR3_OUT),
353  	PINMUX_DATA(PTR2_DATA, PTR2_IN, PTR2_OUT),
354  	PINMUX_DATA(PTR1_DATA, PTR1_IN, PTR1_OUT),
355  	PINMUX_DATA(PTR0_DATA, PTR0_IN, PTR0_OUT),
356  
357  	/* PTS GPIO */
358  	PINMUX_DATA(PTS4_DATA, PTS4_IN, PTS4_OUT),
359  	PINMUX_DATA(PTS3_DATA, PTS3_IN, PTS3_OUT),
360  	PINMUX_DATA(PTS2_DATA, PTS2_IN, PTS2_OUT),
361  	PINMUX_DATA(PTS1_DATA, PTS1_IN, PTS1_OUT),
362  	PINMUX_DATA(PTS0_DATA, PTS0_IN, PTS0_OUT),
363  
364  	/* PTT GPIO */
365  	PINMUX_DATA(PTT4_DATA, PTT4_IN, PTT4_OUT),
366  	PINMUX_DATA(PTT3_DATA, PTT3_IN, PTT3_OUT),
367  	PINMUX_DATA(PTT2_DATA, PTT2_IN, PTT2_OUT),
368  	PINMUX_DATA(PTT1_DATA, PTT1_IN, PTT1_OUT),
369  	PINMUX_DATA(PTT0_DATA, PTT0_IN, PTT0_OUT),
370  
371  	/* PTU GPIO */
372  	PINMUX_DATA(PTU4_DATA, PTU4_IN, PTU4_OUT),
373  	PINMUX_DATA(PTU3_DATA, PTU3_IN, PTU3_OUT),
374  	PINMUX_DATA(PTU2_DATA, PTU2_IN, PTU2_OUT),
375  	PINMUX_DATA(PTU1_DATA, PTU1_IN, PTU1_OUT),
376  	PINMUX_DATA(PTU0_DATA, PTU0_IN, PTU0_OUT),
377  
378  	/* PTV GPIO */
379  	PINMUX_DATA(PTV4_DATA, PTV4_IN, PTV4_OUT),
380  	PINMUX_DATA(PTV3_DATA, PTV3_IN, PTV3_OUT),
381  	PINMUX_DATA(PTV2_DATA, PTV2_IN, PTV2_OUT),
382  	PINMUX_DATA(PTV1_DATA, PTV1_IN, PTV1_OUT),
383  	PINMUX_DATA(PTV0_DATA, PTV0_IN, PTV0_OUT),
384  
385  	/* PTA FN */
386  	PINMUX_DATA(D23_MARK, PTA7_FN),
387  	PINMUX_DATA(D22_MARK, PTA6_FN),
388  	PINMUX_DATA(D21_MARK, PTA5_FN),
389  	PINMUX_DATA(D20_MARK, PTA4_FN),
390  	PINMUX_DATA(D19_MARK, PTA3_FN),
391  	PINMUX_DATA(D18_MARK, PTA2_FN),
392  	PINMUX_DATA(D17_MARK, PTA1_FN),
393  	PINMUX_DATA(D16_MARK, PTA0_FN),
394  
395  	/* PTB FN */
396  	PINMUX_DATA(D31_MARK, PTB7_FN),
397  	PINMUX_DATA(D30_MARK, PTB6_FN),
398  	PINMUX_DATA(D29_MARK, PTB5_FN),
399  	PINMUX_DATA(D28_MARK, PTB4_FN),
400  	PINMUX_DATA(D27_MARK, PTB3_FN),
401  	PINMUX_DATA(D26_MARK, PTB2_FN),
402  	PINMUX_DATA(D25_MARK, PTB1_FN),
403  	PINMUX_DATA(D24_MARK, PTB0_FN),
404  
405  	/* PTC FN */
406  	PINMUX_DATA(LCD_DATA7_MARK, PTC7_FN),
407  	PINMUX_DATA(LCD_DATA6_MARK, PTC6_FN),
408  	PINMUX_DATA(LCD_DATA5_MARK, PTC5_FN),
409  	PINMUX_DATA(LCD_DATA4_MARK, PTC4_FN),
410  	PINMUX_DATA(LCD_DATA3_MARK, PTC3_FN),
411  	PINMUX_DATA(LCD_DATA2_MARK, PTC2_FN),
412  	PINMUX_DATA(LCD_DATA1_MARK, PTC1_FN),
413  	PINMUX_DATA(LCD_DATA0_MARK, PTC0_FN),
414  
415  	/* PTD FN */
416  	PINMUX_DATA(LCD_DATA15_MARK, PTD7_FN),
417  	PINMUX_DATA(LCD_DATA14_MARK, PTD6_FN),
418  	PINMUX_DATA(LCD_DATA13_MARK, PTD5_FN),
419  	PINMUX_DATA(LCD_DATA12_MARK, PTD4_FN),
420  	PINMUX_DATA(LCD_DATA11_MARK, PTD3_FN),
421  	PINMUX_DATA(LCD_DATA10_MARK, PTD2_FN),
422  	PINMUX_DATA(LCD_DATA9_MARK, PTD1_FN),
423  	PINMUX_DATA(LCD_DATA8_MARK, PTD0_FN),
424  
425  	/* PTE FN */
426  	PINMUX_DATA(IIC_SCL_MARK, PSELB_9_8_00, PTE6_FN),
427  	PINMUX_DATA(AFE_RXIN_MARK, PSELB_9_8_11, PTE6_FN),
428  	PINMUX_DATA(IIC_SDA_MARK, PSELB_9_8_00, PTE5_FN),
429  	PINMUX_DATA(AFE_RDET_MARK, PSELB_9_8_11, PTE5_FN),
430  	PINMUX_DATA(LCD_M_DISP_MARK, PTE4_FN),
431  	PINMUX_DATA(LCD_CL1_MARK, PTE3_FN),
432  	PINMUX_DATA(LCD_CL2_MARK, PTE2_FN),
433  	PINMUX_DATA(LCD_DON_MARK, PTE1_FN),
434  	PINMUX_DATA(LCD_FLM_MARK, PTE0_FN),
435  
436  	/* PTF FN */
437  	PINMUX_DATA(DA1_MARK, PTF6_FN),
438  	PINMUX_DATA(DA0_MARK, PTF5_FN),
439  	PINMUX_DATA(AN3_MARK, PTF4_FN),
440  	PINMUX_DATA(AN2_MARK, PTF3_FN),
441  	PINMUX_DATA(AN1_MARK, PTF2_FN),
442  	PINMUX_DATA(AN0_MARK, PTF1_FN),
443  	PINMUX_DATA(ADTRG_MARK, PTF0_FN),
444  
445  	/* PTG FN */
446  	PINMUX_DATA(USB1D_RCV_MARK, PSELA_3_2_00, PTG6_FN),
447  	PINMUX_DATA(AFE_FS_MARK, PSELA_3_2_01, PTG6_FN),
448  	PINMUX_DATA(PCC_REG_MARK, PSELA_3_2_10, PTG6_FN),
449  	PINMUX_DATA(IRQ5_MARK, PSELA_3_2_11, PTG6_FN),
450  	PINMUX_DATA(USB1D_TXSE0_MARK, PSELA_5_4_00, PTG5_FN),
451  	PINMUX_DATA(AFE_TXOUT_MARK, PSELA_5_4_01, PTG5_FN),
452  	PINMUX_DATA(PCC_DRV_MARK, PSELA_5_4_10, PTG5_FN),
453  	PINMUX_DATA(IRQ4_MARK, PSELA_5_4_11, PTG5_FN),
454  	PINMUX_DATA(USB1D_TXDPLS_MARK, PSELA_7_6_00, PTG4_FN),
455  	PINMUX_DATA(AFE_SCLK_MARK, PSELA_7_6_01, PTG4_FN),
456  	PINMUX_DATA(IOIS16_MARK, PSELA_7_6_10, PTG4_FN),
457  	PINMUX_DATA(USB1D_DMNS_MARK, PSELA_9_8_00, PTG3_FN),
458  	PINMUX_DATA(AFE_RLYCNT_MARK, PSELA_9_8_01, PTG3_FN),
459  	PINMUX_DATA(PCC_BVD2_MARK, PSELA_9_8_10, PTG3_FN),
460  	PINMUX_DATA(USB1D_DPLS_MARK, PSELA_11_10_00, PTG2_FN),
461  	PINMUX_DATA(AFE_HC1_MARK, PSELA_11_10_01, PTG2_FN),
462  	PINMUX_DATA(PCC_BVD1_MARK, PSELA_11_10_10, PTG2_FN),
463  	PINMUX_DATA(USB1D_SPEED_MARK, PSELA_13_12_00, PTG1_FN),
464  	PINMUX_DATA(PCC_CD2_MARK, PSELA_13_12_10, PTG1_FN),
465  	PINMUX_DATA(USB1D_TXENL_MARK, PSELA_15_14_00, PTG0_FN),
466  	PINMUX_DATA(PCC_CD1_MARK, PSELA_15_14_10, PTG0_FN),
467  
468  	/* PTH FN */
469  	PINMUX_DATA(RAS_MARK, PTH6_FN),
470  	PINMUX_DATA(CAS_MARK, PTH5_FN),
471  	PINMUX_DATA(CKE_MARK, PTH4_FN),
472  	PINMUX_DATA(STATUS1_MARK, PTH3_FN),
473  	PINMUX_DATA(STATUS0_MARK, PTH2_FN),
474  	PINMUX_DATA(USB2_PWR_EN_MARK, PTH1_FN),
475  	PINMUX_DATA(USB1_PWR_EN_USBF_UPLUP_MARK, PTH0_FN),
476  
477  	/* PTJ FN */
478  	PINMUX_DATA(AUDCK_MARK, PTJ6_FN),
479  	PINMUX_DATA(ASEBRKAK_MARK, PTJ5_FN),
480  	PINMUX_DATA(AUDATA3_MARK, PTJ4_FN),
481  	PINMUX_DATA(AUDATA2_MARK, PTJ3_FN),
482  	PINMUX_DATA(AUDATA1_MARK, PTJ2_FN),
483  	PINMUX_DATA(AUDATA0_MARK, PTJ1_FN),
484  	PINMUX_DATA(AUDSYNC_MARK, PTJ0_FN),
485  
486  	/* PTK FN */
487  	PINMUX_DATA(PCC_RESET_MARK, PTK3_FN),
488  	PINMUX_DATA(PCC_RDY_MARK, PTK2_FN),
489  	PINMUX_DATA(PCC_VS2_MARK, PTK1_FN),
490  	PINMUX_DATA(PCC_VS1_MARK, PTK0_FN),
491  
492  	/* PTL FN */
493  	PINMUX_DATA(TRST_MARK, PTL7_FN),
494  	PINMUX_DATA(TMS_MARK, PTL6_FN),
495  	PINMUX_DATA(TDO_MARK, PTL5_FN),
496  	PINMUX_DATA(TDI_MARK, PTL4_FN),
497  	PINMUX_DATA(TCK_MARK, PTL3_FN),
498  
499  	/* PTM FN */
500  	PINMUX_DATA(DREQ1_MARK, PTM7_FN),
501  	PINMUX_DATA(DREQ0_MARK, PTM6_FN),
502  	PINMUX_DATA(DACK1_MARK, PTM5_FN),
503  	PINMUX_DATA(DACK0_MARK, PTM4_FN),
504  	PINMUX_DATA(TEND1_MARK, PTM3_FN),
505  	PINMUX_DATA(TEND0_MARK, PTM2_FN),
506  	PINMUX_DATA(CS5B_CE1A_MARK, PTM1_FN),
507  	PINMUX_DATA(CS6B_CE1B_MARK, PTM0_FN),
508  
509  	/* PTP FN */
510  	PINMUX_DATA(USB1D_SUSPEND_MARK, PSELA_1_0_00, PTP4_FN),
511  	PINMUX_DATA(REFOUT_MARK, PSELA_1_0_01, PTP4_FN),
512  	PINMUX_DATA(IRQOUT_MARK, PSELA_1_0_10, PTP4_FN),
513  	PINMUX_DATA(IRQ3_IRL3_MARK, PTP3_FN),
514  	PINMUX_DATA(IRQ2_IRL2_MARK, PTP2_FN),
515  	PINMUX_DATA(IRQ1_IRL1_MARK, PTP1_FN),
516  	PINMUX_DATA(IRQ0_IRL0_MARK, PTP0_FN),
517  
518  	/* PTR FN */
519  	PINMUX_DATA(A25_MARK, PTR7_FN),
520  	PINMUX_DATA(A24_MARK, PTR6_FN),
521  	PINMUX_DATA(A23_MARK, PTR5_FN),
522  	PINMUX_DATA(A22_MARK, PTR4_FN),
523  	PINMUX_DATA(A21_MARK, PTR3_FN),
524  	PINMUX_DATA(A20_MARK, PTR2_FN),
525  	PINMUX_DATA(A19_MARK, PTR1_FN),
526  	PINMUX_DATA(A0_MARK, PTR0_FN),
527  
528  	/* PTS FN */
529  	PINMUX_DATA(SIOF0_SYNC_MARK, PTS4_FN),
530  	PINMUX_DATA(SIOF0_MCLK_MARK, PTS3_FN),
531  	PINMUX_DATA(SIOF0_TXD_MARK, PTS2_FN),
532  	PINMUX_DATA(SIOF0_RXD_MARK, PTS1_FN),
533  	PINMUX_DATA(SIOF0_SCK_MARK, PTS0_FN),
534  
535  	/* PTT FN */
536  	PINMUX_DATA(SCIF0_CTS_MARK, PSELB_15_14_00, PTT4_FN),
537  	PINMUX_DATA(TPU_TO1_MARK, PSELB_15_14_11, PTT4_FN),
538  	PINMUX_DATA(SCIF0_RTS_MARK, PSELB_15_14_00, PTT3_FN),
539  	PINMUX_DATA(TPU_TO0_MARK, PSELB_15_14_11, PTT3_FN),
540  	PINMUX_DATA(SCIF0_TXD_MARK, PTT2_FN),
541  	PINMUX_DATA(SCIF0_RXD_MARK, PTT1_FN),
542  	PINMUX_DATA(SCIF0_SCK_MARK, PTT0_FN),
543  
544  	/* PTU FN */
545  	PINMUX_DATA(SIOF1_SYNC_MARK, PTU4_FN),
546  	PINMUX_DATA(SIOF1_MCLK_MARK, PSELD_11_10_00, PTU3_FN),
547  	PINMUX_DATA(TPU_TI3B_MARK, PSELD_11_10_01, PTU3_FN),
548  	PINMUX_DATA(SIOF1_TXD_MARK, PSELD_15_14_00, PTU2_FN),
549  	PINMUX_DATA(TPU_TI3A_MARK, PSELD_15_14_01, PTU2_FN),
550  	PINMUX_DATA(MMC_DAT_MARK, PSELD_15_14_10, PTU2_FN),
551  	PINMUX_DATA(SIOF1_RXD_MARK, PSELC_13_12_00, PTU1_FN),
552  	PINMUX_DATA(TPU_TI2B_MARK, PSELC_13_12_01, PTU1_FN),
553  	PINMUX_DATA(MMC_CMD_MARK, PSELC_13_12_10, PTU1_FN),
554  	PINMUX_DATA(SIOF1_SCK_MARK, PSELC_15_14_00, PTU0_FN),
555  	PINMUX_DATA(TPU_TI2A_MARK, PSELC_15_14_01, PTU0_FN),
556  	PINMUX_DATA(MMC_CLK_MARK, PSELC_15_14_10, PTU0_FN),
557  
558  	/* PTV FN */
559  	PINMUX_DATA(SCIF1_CTS_MARK, PSELB_11_10_00, PTV4_FN),
560  	PINMUX_DATA(TPU_TO3_MARK, PSELB_11_10_01, PTV4_FN),
561  	PINMUX_DATA(MMC_VDDON_MARK, PSELB_11_10_10, PTV4_FN),
562  	PINMUX_DATA(LCD_VEPWC_MARK, PSELB_11_10_11, PTV4_FN),
563  	PINMUX_DATA(SCIF1_RTS_MARK, PSELB_13_12_00, PTV3_FN),
564  	PINMUX_DATA(TPU_TO2_MARK, PSELB_13_12_01, PTV3_FN),
565  	PINMUX_DATA(MMC_ODMOD_MARK, PSELB_13_12_10, PTV3_FN),
566  	PINMUX_DATA(LCD_VCPWC_MARK, PSELB_13_12_11, PTV3_FN),
567  	PINMUX_DATA(SCIF1_TXD_MARK, PSELC_9_8_00, PTV2_FN),
568  	PINMUX_DATA(SIM_D_MARK, PSELC_9_8_10, PTV2_FN),
569  	PINMUX_DATA(SCIF1_RXD_MARK, PSELC_11_10_00, PTV1_FN),
570  	PINMUX_DATA(SIM_RST_MARK, PSELC_11_10_10, PTV1_FN),
571  	PINMUX_DATA(SCIF1_SCK_MARK, PSELD_1_0_00, PTV0_FN),
572  	PINMUX_DATA(SIM_CLK_MARK, PSELD_1_0_10, PTV0_FN),
573  };
574  
575  static const struct sh_pfc_pin pinmux_pins[] = {
576  	/* PTA */
577  	PINMUX_GPIO(PTA7),
578  	PINMUX_GPIO(PTA6),
579  	PINMUX_GPIO(PTA5),
580  	PINMUX_GPIO(PTA4),
581  	PINMUX_GPIO(PTA3),
582  	PINMUX_GPIO(PTA2),
583  	PINMUX_GPIO(PTA1),
584  	PINMUX_GPIO(PTA0),
585  
586  	/* PTB */
587  	PINMUX_GPIO(PTB7),
588  	PINMUX_GPIO(PTB6),
589  	PINMUX_GPIO(PTB5),
590  	PINMUX_GPIO(PTB4),
591  	PINMUX_GPIO(PTB3),
592  	PINMUX_GPIO(PTB2),
593  	PINMUX_GPIO(PTB1),
594  	PINMUX_GPIO(PTB0),
595  
596  	/* PTC */
597  	PINMUX_GPIO(PTC7),
598  	PINMUX_GPIO(PTC6),
599  	PINMUX_GPIO(PTC5),
600  	PINMUX_GPIO(PTC4),
601  	PINMUX_GPIO(PTC3),
602  	PINMUX_GPIO(PTC2),
603  	PINMUX_GPIO(PTC1),
604  	PINMUX_GPIO(PTC0),
605  
606  	/* PTD */
607  	PINMUX_GPIO(PTD7),
608  	PINMUX_GPIO(PTD6),
609  	PINMUX_GPIO(PTD5),
610  	PINMUX_GPIO(PTD4),
611  	PINMUX_GPIO(PTD3),
612  	PINMUX_GPIO(PTD2),
613  	PINMUX_GPIO(PTD1),
614  	PINMUX_GPIO(PTD0),
615  
616  	/* PTE */
617  	PINMUX_GPIO(PTE6),
618  	PINMUX_GPIO(PTE5),
619  	PINMUX_GPIO(PTE4),
620  	PINMUX_GPIO(PTE3),
621  	PINMUX_GPIO(PTE2),
622  	PINMUX_GPIO(PTE1),
623  	PINMUX_GPIO(PTE0),
624  
625  	/* PTF */
626  	PINMUX_GPIO(PTF6),
627  	PINMUX_GPIO(PTF5),
628  	PINMUX_GPIO(PTF4),
629  	PINMUX_GPIO(PTF3),
630  	PINMUX_GPIO(PTF2),
631  	PINMUX_GPIO(PTF1),
632  	PINMUX_GPIO(PTF0),
633  
634  	/* PTG */
635  	PINMUX_GPIO(PTG6),
636  	PINMUX_GPIO(PTG5),
637  	PINMUX_GPIO(PTG4),
638  	PINMUX_GPIO(PTG3),
639  	PINMUX_GPIO(PTG2),
640  	PINMUX_GPIO(PTG1),
641  	PINMUX_GPIO(PTG0),
642  
643  	/* PTH */
644  	PINMUX_GPIO(PTH6),
645  	PINMUX_GPIO(PTH5),
646  	PINMUX_GPIO(PTH4),
647  	PINMUX_GPIO(PTH3),
648  	PINMUX_GPIO(PTH2),
649  	PINMUX_GPIO(PTH1),
650  	PINMUX_GPIO(PTH0),
651  
652  	/* PTJ */
653  	PINMUX_GPIO(PTJ6),
654  	PINMUX_GPIO(PTJ5),
655  	PINMUX_GPIO(PTJ4),
656  	PINMUX_GPIO(PTJ3),
657  	PINMUX_GPIO(PTJ2),
658  	PINMUX_GPIO(PTJ1),
659  	PINMUX_GPIO(PTJ0),
660  
661  	/* PTK */
662  	PINMUX_GPIO(PTK3),
663  	PINMUX_GPIO(PTK2),
664  	PINMUX_GPIO(PTK1),
665  	PINMUX_GPIO(PTK0),
666  
667  	/* PTL */
668  	PINMUX_GPIO(PTL7),
669  	PINMUX_GPIO(PTL6),
670  	PINMUX_GPIO(PTL5),
671  	PINMUX_GPIO(PTL4),
672  	PINMUX_GPIO(PTL3),
673  
674  	/* PTM */
675  	PINMUX_GPIO(PTM7),
676  	PINMUX_GPIO(PTM6),
677  	PINMUX_GPIO(PTM5),
678  	PINMUX_GPIO(PTM4),
679  	PINMUX_GPIO(PTM3),
680  	PINMUX_GPIO(PTM2),
681  	PINMUX_GPIO(PTM1),
682  	PINMUX_GPIO(PTM0),
683  
684  	/* PTP */
685  	PINMUX_GPIO(PTP4),
686  	PINMUX_GPIO(PTP3),
687  	PINMUX_GPIO(PTP2),
688  	PINMUX_GPIO(PTP1),
689  	PINMUX_GPIO(PTP0),
690  
691  	/* PTR */
692  	PINMUX_GPIO(PTR7),
693  	PINMUX_GPIO(PTR6),
694  	PINMUX_GPIO(PTR5),
695  	PINMUX_GPIO(PTR4),
696  	PINMUX_GPIO(PTR3),
697  	PINMUX_GPIO(PTR2),
698  	PINMUX_GPIO(PTR1),
699  	PINMUX_GPIO(PTR0),
700  
701  	/* PTS */
702  	PINMUX_GPIO(PTS4),
703  	PINMUX_GPIO(PTS3),
704  	PINMUX_GPIO(PTS2),
705  	PINMUX_GPIO(PTS1),
706  	PINMUX_GPIO(PTS0),
707  
708  	/* PTT */
709  	PINMUX_GPIO(PTT4),
710  	PINMUX_GPIO(PTT3),
711  	PINMUX_GPIO(PTT2),
712  	PINMUX_GPIO(PTT1),
713  	PINMUX_GPIO(PTT0),
714  
715  	/* PTU */
716  	PINMUX_GPIO(PTU4),
717  	PINMUX_GPIO(PTU3),
718  	PINMUX_GPIO(PTU2),
719  	PINMUX_GPIO(PTU1),
720  	PINMUX_GPIO(PTU0),
721  
722  	/* PTV */
723  	PINMUX_GPIO(PTV4),
724  	PINMUX_GPIO(PTV3),
725  	PINMUX_GPIO(PTV2),
726  	PINMUX_GPIO(PTV1),
727  	PINMUX_GPIO(PTV0),
728  };
729  
730  #define PINMUX_FN_BASE	ARRAY_SIZE(pinmux_pins)
731  
732  static const struct pinmux_func pinmux_func_gpios[] = {
733  	/* BSC */
734  	GPIO_FN(D31),
735  	GPIO_FN(D30),
736  	GPIO_FN(D29),
737  	GPIO_FN(D28),
738  	GPIO_FN(D27),
739  	GPIO_FN(D26),
740  	GPIO_FN(D25),
741  	GPIO_FN(D24),
742  	GPIO_FN(D23),
743  	GPIO_FN(D22),
744  	GPIO_FN(D21),
745  	GPIO_FN(D20),
746  	GPIO_FN(D19),
747  	GPIO_FN(D18),
748  	GPIO_FN(D17),
749  	GPIO_FN(D16),
750  	GPIO_FN(IOIS16),
751  	GPIO_FN(RAS),
752  	GPIO_FN(CAS),
753  	GPIO_FN(CKE),
754  	GPIO_FN(CS5B_CE1A),
755  	GPIO_FN(CS6B_CE1B),
756  	GPIO_FN(A25),
757  	GPIO_FN(A24),
758  	GPIO_FN(A23),
759  	GPIO_FN(A22),
760  	GPIO_FN(A21),
761  	GPIO_FN(A20),
762  	GPIO_FN(A19),
763  	GPIO_FN(A0),
764  	GPIO_FN(REFOUT),
765  	GPIO_FN(IRQOUT),
766  
767  	/* LCDC */
768  	GPIO_FN(LCD_DATA15),
769  	GPIO_FN(LCD_DATA14),
770  	GPIO_FN(LCD_DATA13),
771  	GPIO_FN(LCD_DATA12),
772  	GPIO_FN(LCD_DATA11),
773  	GPIO_FN(LCD_DATA10),
774  	GPIO_FN(LCD_DATA9),
775  	GPIO_FN(LCD_DATA8),
776  	GPIO_FN(LCD_DATA7),
777  	GPIO_FN(LCD_DATA6),
778  	GPIO_FN(LCD_DATA5),
779  	GPIO_FN(LCD_DATA4),
780  	GPIO_FN(LCD_DATA3),
781  	GPIO_FN(LCD_DATA2),
782  	GPIO_FN(LCD_DATA1),
783  	GPIO_FN(LCD_DATA0),
784  	GPIO_FN(LCD_M_DISP),
785  	GPIO_FN(LCD_CL1),
786  	GPIO_FN(LCD_CL2),
787  	GPIO_FN(LCD_DON),
788  	GPIO_FN(LCD_FLM),
789  	GPIO_FN(LCD_VEPWC),
790  	GPIO_FN(LCD_VCPWC),
791  
792  	/* AFEIF */
793  	GPIO_FN(AFE_RXIN),
794  	GPIO_FN(AFE_RDET),
795  	GPIO_FN(AFE_FS),
796  	GPIO_FN(AFE_TXOUT),
797  	GPIO_FN(AFE_SCLK),
798  	GPIO_FN(AFE_RLYCNT),
799  	GPIO_FN(AFE_HC1),
800  
801  	/* IIC */
802  	GPIO_FN(IIC_SCL),
803  	GPIO_FN(IIC_SDA),
804  
805  	/* DAC */
806  	GPIO_FN(DA1),
807  	GPIO_FN(DA0),
808  
809  	/* ADC */
810  	GPIO_FN(AN3),
811  	GPIO_FN(AN2),
812  	GPIO_FN(AN1),
813  	GPIO_FN(AN0),
814  	GPIO_FN(ADTRG),
815  
816  	/* USB */
817  	GPIO_FN(USB1D_RCV),
818  	GPIO_FN(USB1D_TXSE0),
819  	GPIO_FN(USB1D_TXDPLS),
820  	GPIO_FN(USB1D_DMNS),
821  	GPIO_FN(USB1D_DPLS),
822  	GPIO_FN(USB1D_SPEED),
823  	GPIO_FN(USB1D_TXENL),
824  
825  	GPIO_FN(USB2_PWR_EN),
826  	GPIO_FN(USB1_PWR_EN_USBF_UPLUP),
827  	GPIO_FN(USB1D_SUSPEND),
828  
829  	/* INTC */
830  	GPIO_FN(IRQ5),
831  	GPIO_FN(IRQ4),
832  	GPIO_FN(IRQ3_IRL3),
833  	GPIO_FN(IRQ2_IRL2),
834  	GPIO_FN(IRQ1_IRL1),
835  	GPIO_FN(IRQ0_IRL0),
836  
837  	/* PCC */
838  	GPIO_FN(PCC_REG),
839  	GPIO_FN(PCC_DRV),
840  	GPIO_FN(PCC_BVD2),
841  	GPIO_FN(PCC_BVD1),
842  	GPIO_FN(PCC_CD2),
843  	GPIO_FN(PCC_CD1),
844  	GPIO_FN(PCC_RESET),
845  	GPIO_FN(PCC_RDY),
846  	GPIO_FN(PCC_VS2),
847  	GPIO_FN(PCC_VS1),
848  
849  	/* HUDI */
850  	GPIO_FN(AUDATA3),
851  	GPIO_FN(AUDATA2),
852  	GPIO_FN(AUDATA1),
853  	GPIO_FN(AUDATA0),
854  	GPIO_FN(AUDCK),
855  	GPIO_FN(AUDSYNC),
856  	GPIO_FN(ASEBRKAK),
857  	GPIO_FN(TRST),
858  	GPIO_FN(TMS),
859  	GPIO_FN(TDO),
860  	GPIO_FN(TDI),
861  	GPIO_FN(TCK),
862  
863  	/* DMAC */
864  	GPIO_FN(DACK1),
865  	GPIO_FN(DREQ1),
866  	GPIO_FN(DACK0),
867  	GPIO_FN(DREQ0),
868  	GPIO_FN(TEND1),
869  	GPIO_FN(TEND0),
870  
871  	/* SIOF0 */
872  	GPIO_FN(SIOF0_SYNC),
873  	GPIO_FN(SIOF0_MCLK),
874  	GPIO_FN(SIOF0_TXD),
875  	GPIO_FN(SIOF0_RXD),
876  	GPIO_FN(SIOF0_SCK),
877  
878  	/* SIOF1 */
879  	GPIO_FN(SIOF1_SYNC),
880  	GPIO_FN(SIOF1_MCLK),
881  	GPIO_FN(SIOF1_TXD),
882  	GPIO_FN(SIOF1_RXD),
883  	GPIO_FN(SIOF1_SCK),
884  
885  	/* SCIF0 */
886  	GPIO_FN(SCIF0_TXD),
887  	GPIO_FN(SCIF0_RXD),
888  	GPIO_FN(SCIF0_RTS),
889  	GPIO_FN(SCIF0_CTS),
890  	GPIO_FN(SCIF0_SCK),
891  
892  	/* SCIF1 */
893  	GPIO_FN(SCIF1_TXD),
894  	GPIO_FN(SCIF1_RXD),
895  	GPIO_FN(SCIF1_RTS),
896  	GPIO_FN(SCIF1_CTS),
897  	GPIO_FN(SCIF1_SCK),
898  
899  	/* TPU */
900  	GPIO_FN(TPU_TO1),
901  	GPIO_FN(TPU_TO0),
902  	GPIO_FN(TPU_TI3B),
903  	GPIO_FN(TPU_TI3A),
904  	GPIO_FN(TPU_TI2B),
905  	GPIO_FN(TPU_TI2A),
906  	GPIO_FN(TPU_TO3),
907  	GPIO_FN(TPU_TO2),
908  
909  	/* SIM */
910  	GPIO_FN(SIM_D),
911  	GPIO_FN(SIM_CLK),
912  	GPIO_FN(SIM_RST),
913  
914  	/* MMC */
915  	GPIO_FN(MMC_DAT),
916  	GPIO_FN(MMC_CMD),
917  	GPIO_FN(MMC_CLK),
918  	GPIO_FN(MMC_VDDON),
919  	GPIO_FN(MMC_ODMOD),
920  
921  	/* SYSC */
922  	GPIO_FN(STATUS0),
923  	GPIO_FN(STATUS1),
924  };
925  
926  static const struct pinmux_cfg_reg pinmux_config_regs[] = {
927  	{ PINMUX_CFG_REG("PACR", 0xa4050100, 16, 2, GROUP(
928  		PTA7_FN, PTA7_OUT, 0, PTA7_IN,
929  		PTA6_FN, PTA6_OUT, 0, PTA6_IN,
930  		PTA5_FN, PTA5_OUT, 0, PTA5_IN,
931  		PTA4_FN, PTA4_OUT, 0, PTA4_IN,
932  		PTA3_FN, PTA3_OUT, 0, PTA3_IN,
933  		PTA2_FN, PTA2_OUT, 0, PTA2_IN,
934  		PTA1_FN, PTA1_OUT, 0, PTA1_IN,
935  		PTA0_FN, PTA0_OUT, 0, PTA0_IN ))
936  	},
937  	{ PINMUX_CFG_REG("PBCR", 0xa4050102, 16, 2, GROUP(
938  		PTB7_FN, PTB7_OUT, 0, PTB7_IN,
939  		PTB6_FN, PTB6_OUT, 0, PTB6_IN,
940  		PTB5_FN, PTB5_OUT, 0, PTB5_IN,
941  		PTB4_FN, PTB4_OUT, 0, PTB4_IN,
942  		PTB3_FN, PTB3_OUT, 0, PTB3_IN,
943  		PTB2_FN, PTB2_OUT, 0, PTB2_IN,
944  		PTB1_FN, PTB1_OUT, 0, PTB1_IN,
945  		PTB0_FN, PTB0_OUT, 0, PTB0_IN ))
946  	},
947  	{ PINMUX_CFG_REG("PCCR", 0xa4050104, 16, 2, GROUP(
948  		PTC7_FN, PTC7_OUT, 0, PTC7_IN,
949  		PTC6_FN, PTC6_OUT, 0, PTC6_IN,
950  		PTC5_FN, PTC5_OUT, 0, PTC5_IN,
951  		PTC4_FN, PTC4_OUT, 0, PTC4_IN,
952  		PTC3_FN, PTC3_OUT, 0, PTC3_IN,
953  		PTC2_FN, PTC2_OUT, 0, PTC2_IN,
954  		PTC1_FN, PTC1_OUT, 0, PTC1_IN,
955  		PTC0_FN, PTC0_OUT, 0, PTC0_IN ))
956  	},
957  	{ PINMUX_CFG_REG("PDCR", 0xa4050106, 16, 2, GROUP(
958  		PTD7_FN, PTD7_OUT, 0, PTD7_IN,
959  		PTD6_FN, PTD6_OUT, 0, PTD6_IN,
960  		PTD5_FN, PTD5_OUT, 0, PTD5_IN,
961  		PTD4_FN, PTD4_OUT, 0, PTD4_IN,
962  		PTD3_FN, PTD3_OUT, 0, PTD3_IN,
963  		PTD2_FN, PTD2_OUT, 0, PTD2_IN,
964  		PTD1_FN, PTD1_OUT, 0, PTD1_IN,
965  		PTD0_FN, PTD0_OUT, 0, PTD0_IN ))
966  	},
967  	{ PINMUX_CFG_REG("PECR", 0xa4050108, 16, 2, GROUP(
968  		0, 0, 0, 0,
969  		PTE6_FN, 0, 0, PTE6_IN,
970  		PTE5_FN, 0, 0, PTE5_IN,
971  		PTE4_FN, PTE4_OUT, 0, PTE4_IN,
972  		PTE3_FN, PTE3_OUT, 0, PTE3_IN,
973  		PTE2_FN, PTE2_OUT, 0, PTE2_IN,
974  		PTE1_FN, PTE1_OUT, 0, PTE1_IN,
975  		PTE0_FN, PTE0_OUT, 0, PTE0_IN ))
976  	},
977  	{ PINMUX_CFG_REG("PFCR", 0xa405010a, 16, 2, GROUP(
978  		0, 0, 0, 0,
979  		PTF6_FN, 0, 0, PTF6_IN,
980  		PTF5_FN, 0, 0, PTF5_IN,
981  		PTF4_FN, 0, 0, PTF4_IN,
982  		PTF3_FN, 0, 0, PTF3_IN,
983  		PTF2_FN, 0, 0, PTF2_IN,
984  		PTF1_FN, 0, 0, PTF1_IN,
985  		PTF0_FN, 0, 0, PTF0_IN ))
986  	},
987  	{ PINMUX_CFG_REG("PGCR", 0xa405010c, 16, 2, GROUP(
988  		0, 0, 0, 0,
989  		PTG6_FN, PTG6_OUT, 0, PTG6_IN,
990  		PTG5_FN, PTG5_OUT, 0, PTG5_IN,
991  		PTG4_FN, PTG4_OUT, 0, PTG4_IN,
992  		PTG3_FN, PTG3_OUT, 0, PTG3_IN,
993  		PTG2_FN, PTG2_OUT, 0, PTG2_IN,
994  		PTG1_FN, PTG1_OUT, 0, PTG1_IN,
995  		PTG0_FN, PTG0_OUT, 0, PTG0_IN ))
996  	},
997  	{ PINMUX_CFG_REG("PHCR", 0xa405010e, 16, 2, GROUP(
998  		0, 0, 0, 0,
999  		PTH6_FN, PTH6_OUT, 0, PTH6_IN,
1000  		PTH5_FN, PTH5_OUT, 0, PTH5_IN,
1001  		PTH4_FN, PTH4_OUT, 0, PTH4_IN,
1002  		PTH3_FN, PTH3_OUT, 0, PTH3_IN,
1003  		PTH2_FN, PTH2_OUT, 0, PTH2_IN,
1004  		PTH1_FN, PTH1_OUT, 0, PTH1_IN,
1005  		PTH0_FN, PTH0_OUT, 0, PTH0_IN ))
1006  	},
1007  	{ PINMUX_CFG_REG("PJCR", 0xa4050110, 16, 2, GROUP(
1008  		0, 0, 0, 0,
1009  		PTJ6_FN, PTJ6_OUT, 0, PTJ6_IN,
1010  		PTJ5_FN, PTJ5_OUT, 0, PTJ5_IN,
1011  		PTJ4_FN, PTJ4_OUT, 0, PTJ4_IN,
1012  		PTJ3_FN, PTJ3_OUT, 0, PTJ3_IN,
1013  		PTJ2_FN, PTJ2_OUT, 0, PTJ2_IN,
1014  		PTJ1_FN, PTJ1_OUT, 0, PTJ1_IN,
1015  		PTJ0_FN, PTJ0_OUT, 0, PTJ0_IN ))
1016  	},
1017  	{ PINMUX_CFG_REG_VAR("PKCR", 0xa4050112, 16,
1018  			     GROUP(-8, 2, 2, 2, 2),
1019  			     GROUP(
1020  		/* RESERVED [8] */
1021  		PTK3_FN, PTK3_OUT, 0, PTK3_IN,
1022  		PTK2_FN, PTK2_OUT, 0, PTK2_IN,
1023  		PTK1_FN, PTK1_OUT, 0, PTK1_IN,
1024  		PTK0_FN, PTK0_OUT, 0, PTK0_IN ))
1025  	},
1026  	{ PINMUX_CFG_REG_VAR("PLCR", 0xa4050114, 16,
1027  			     GROUP(2, 2, 2, 2, 2, -6),
1028  			     GROUP(
1029  		PTL7_FN, PTL7_OUT, 0, PTL7_IN,
1030  		PTL6_FN, PTL6_OUT, 0, PTL6_IN,
1031  		PTL5_FN, PTL5_OUT, 0, PTL5_IN,
1032  		PTL4_FN, PTL4_OUT, 0, PTL4_IN,
1033  		PTL3_FN, PTL3_OUT, 0, PTL3_IN,
1034  		/* RESERVED [6] */ ))
1035  	},
1036  	{ PINMUX_CFG_REG("PMCR", 0xa4050116, 16, 2, GROUP(
1037  		PTM7_FN, PTM7_OUT, 0, PTM7_IN,
1038  		PTM6_FN, PTM6_OUT, 0, PTM6_IN,
1039  		PTM5_FN, PTM5_OUT, 0, PTM5_IN,
1040  		PTM4_FN, PTM4_OUT, 0, PTM4_IN,
1041  		PTM3_FN, PTM3_OUT, 0, PTM3_IN,
1042  		PTM2_FN, PTM2_OUT, 0, PTM2_IN,
1043  		PTM1_FN, PTM1_OUT, 0, PTM1_IN,
1044  		PTM0_FN, PTM0_OUT, 0, PTM0_IN ))
1045  	},
1046  	{ PINMUX_CFG_REG_VAR("PPCR", 0xa4050118, 16,
1047  			     GROUP(-6, 2, 2, 2, 2, 2),
1048  			     GROUP(
1049  		/* RESERVED [6] */
1050  		PTP4_FN, PTP4_OUT, 0, PTP4_IN,
1051  		PTP3_FN, PTP3_OUT, 0, PTP3_IN,
1052  		PTP2_FN, PTP2_OUT, 0, PTP2_IN,
1053  		PTP1_FN, PTP1_OUT, 0, PTP1_IN,
1054  		PTP0_FN, PTP0_OUT, 0, PTP0_IN ))
1055  	},
1056  	{ PINMUX_CFG_REG("PRCR", 0xa405011a, 16, 2, GROUP(
1057  		PTR7_FN, PTR7_OUT, 0, PTR7_IN,
1058  		PTR6_FN, PTR6_OUT, 0, PTR6_IN,
1059  		PTR5_FN, PTR5_OUT, 0, PTR5_IN,
1060  		PTR4_FN, PTR4_OUT, 0, PTR4_IN,
1061  		PTR3_FN, PTR3_OUT, 0, PTR3_IN,
1062  		PTR2_FN, PTR2_OUT, 0, PTR2_IN,
1063  		PTR1_FN, PTR1_OUT, 0, PTR1_IN,
1064  		PTR0_FN, PTR0_OUT, 0, PTR0_IN ))
1065  	},
1066  	{ PINMUX_CFG_REG_VAR("PSCR", 0xa405011c, 16,
1067  			     GROUP(-6, 2, 2, 2, 2, 2),
1068  			     GROUP(
1069  		/* RESERVED [6] */
1070  		PTS4_FN, PTS4_OUT, 0, PTS4_IN,
1071  		PTS3_FN, PTS3_OUT, 0, PTS3_IN,
1072  		PTS2_FN, PTS2_OUT, 0, PTS2_IN,
1073  		PTS1_FN, PTS1_OUT, 0, PTS1_IN,
1074  		PTS0_FN, PTS0_OUT, 0, PTS0_IN ))
1075  	},
1076  	{ PINMUX_CFG_REG_VAR("PTCR", 0xa405011e, 16,
1077  			     GROUP(-6, 2, 2, 2, 2, 2),
1078  			     GROUP(
1079  		/* RESERVED [6] */
1080  		PTT4_FN, PTT4_OUT, 0, PTT4_IN,
1081  		PTT3_FN, PTT3_OUT, 0, PTT3_IN,
1082  		PTT2_FN, PTT2_OUT, 0, PTT2_IN,
1083  		PTT1_FN, PTT1_OUT, 0, PTT1_IN,
1084  		PTT0_FN, PTT0_OUT, 0, PTT0_IN ))
1085  	},
1086  	{ PINMUX_CFG_REG_VAR("PUCR", 0xa4050120, 16,
1087  			     GROUP(-6, 2, 2, 2, 2, 2),
1088  			     GROUP(
1089  		/* RESERVED [6] */
1090  		PTU4_FN, PTU4_OUT, 0, PTU4_IN,
1091  		PTU3_FN, PTU3_OUT, 0, PTU3_IN,
1092  		PTU2_FN, PTU2_OUT, 0, PTU2_IN,
1093  		PTU1_FN, PTU1_OUT, 0, PTU1_IN,
1094  		PTU0_FN, PTU0_OUT, 0, PTU0_IN ))
1095  	},
1096  	{ PINMUX_CFG_REG_VAR("PVCR", 0xa4050122, 16,
1097  			     GROUP(-6, 2, 2, 2, 2, 2),
1098  			     GROUP(
1099  		/* RESERVED [6] */
1100  		PTV4_FN, PTV4_OUT, 0, PTV4_IN,
1101  		PTV3_FN, PTV3_OUT, 0, PTV3_IN,
1102  		PTV2_FN, PTV2_OUT, 0, PTV2_IN,
1103  		PTV1_FN, PTV1_OUT, 0, PTV1_IN,
1104  		PTV0_FN, PTV0_OUT, 0, PTV0_IN ))
1105  	},
1106  	{ /* sentinel */ }
1107  };
1108  
1109  static const struct pinmux_data_reg pinmux_data_regs[] = {
1110  	{ PINMUX_DATA_REG("PADR", 0xa4050140, 8, GROUP(
1111  		PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
1112  		PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA ))
1113  	},
1114  	{ PINMUX_DATA_REG("PBDR", 0xa4050142, 8, GROUP(
1115  		PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
1116  		PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA ))
1117  	},
1118  	{ PINMUX_DATA_REG("PCDR", 0xa4050144, 8, GROUP(
1119  		PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
1120  		PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA ))
1121  	},
1122  	{ PINMUX_DATA_REG("PDDR", 0xa4050126, 8, GROUP(
1123  		PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
1124  		PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA ))
1125  	},
1126  	{ PINMUX_DATA_REG("PEDR", 0xa4050148, 8, GROUP(
1127  		0, PTE6_DATA, PTE5_DATA, PTE4_DATA,
1128  		PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA ))
1129  	},
1130  	{ PINMUX_DATA_REG("PFDR", 0xa405014a, 8, GROUP(
1131  		0, PTF6_DATA, PTF5_DATA, PTF4_DATA,
1132  		PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA ))
1133  	},
1134  	{ PINMUX_DATA_REG("PGDR", 0xa405014c, 8, GROUP(
1135  		0, PTG6_DATA, PTG5_DATA, PTG4_DATA,
1136  		PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA ))
1137  	},
1138  	{ PINMUX_DATA_REG("PHDR", 0xa405014e, 8, GROUP(
1139  		0, PTH6_DATA, PTH5_DATA, PTH4_DATA,
1140  		PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA ))
1141  	},
1142  	{ PINMUX_DATA_REG("PJDR", 0xa4050150, 8, GROUP(
1143  		0, PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
1144  		PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA ))
1145  	},
1146  	{ PINMUX_DATA_REG("PKDR", 0xa4050152, 8, GROUP(
1147  		0, 0, 0, 0,
1148  		PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA ))
1149  	},
1150  	{ PINMUX_DATA_REG("PLDR", 0xa4050154, 8, GROUP(
1151  		PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA,
1152  		PTL3_DATA, 0, 0, 0 ))
1153  	},
1154  	{ PINMUX_DATA_REG("PMDR", 0xa4050156, 8, GROUP(
1155  		PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
1156  		PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA ))
1157  	},
1158  	{ PINMUX_DATA_REG("PPDR", 0xa4050158, 8, GROUP(
1159  		0, 0, 0, PTP4_DATA,
1160  		PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA ))
1161  	},
1162  	{ PINMUX_DATA_REG("PRDR", 0xa405015a, 8, GROUP(
1163  		PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
1164  		PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA ))
1165  	},
1166  	{ PINMUX_DATA_REG("PSDR", 0xa405015c, 8, GROUP(
1167  		0, 0, 0, PTS4_DATA,
1168  		PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA ))
1169  	},
1170  	{ PINMUX_DATA_REG("PTDR", 0xa405015e, 8, GROUP(
1171  		0, 0, 0, PTT4_DATA,
1172  		PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA ))
1173  	},
1174  	{ PINMUX_DATA_REG("PUDR", 0xa4050160, 8, GROUP(
1175  		0, 0, 0, PTU4_DATA,
1176  		PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA ))
1177  	},
1178  	{ PINMUX_DATA_REG("PVDR", 0xa4050162, 8, GROUP(
1179  		0, 0, 0, PTV4_DATA,
1180  		PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA ))
1181  	},
1182  	{ /* sentinel */ }
1183  };
1184  
1185  const struct sh_pfc_soc_info sh7720_pinmux_info = {
1186  	.name = "sh7720_pfc",
1187  	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
1188  	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
1189  	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
1190  
1191  	.pins = pinmux_pins,
1192  	.nr_pins = ARRAY_SIZE(pinmux_pins),
1193  	.func_gpios = pinmux_func_gpios,
1194  	.nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
1195  
1196  	.cfg_regs = pinmux_config_regs,
1197  	.data_regs = pinmux_data_regs,
1198  
1199  	.pinmux_data = pinmux_data,
1200  	.pinmux_data_size = ARRAY_SIZE(pinmux_data),
1201  };
1202