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