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