1 /*
2  * Copyright (C) 2015-2017 Socionext Inc.
3  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program5 is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  */
15 
16 #include <linux/kernel.h>
17 #include <linux/init.h>
18 #include <linux/pinctrl/pinctrl.h>
19 #include <linux/platform_device.h>
20 
21 #include "pinctrl-uniphier.h"
22 
23 static const struct pinctrl_pin_desc uniphier_pro5_pins[] = {
24 	UNIPHIER_PINCTRL_PIN(0, "AEXCKA1", 0,
25 			     0, UNIPHIER_PIN_DRV_1BIT,
26 			     0, UNIPHIER_PIN_PULL_DOWN),
27 	UNIPHIER_PINCTRL_PIN(1, "AEXCKA2", 0,
28 			     1, UNIPHIER_PIN_DRV_1BIT,
29 			     1, UNIPHIER_PIN_PULL_DOWN),
30 	UNIPHIER_PINCTRL_PIN(2, "CK27EXI", 0,
31 			     2, UNIPHIER_PIN_DRV_1BIT,
32 			     2, UNIPHIER_PIN_PULL_DOWN),
33 	UNIPHIER_PINCTRL_PIN(3, "CK54EXI", 0,
34 			     3, UNIPHIER_PIN_DRV_1BIT,
35 			     3, UNIPHIER_PIN_PULL_DOWN),
36 	UNIPHIER_PINCTRL_PIN(4, "ED0", UNIPHIER_PIN_IECTRL_NONE,
37 			     4, UNIPHIER_PIN_DRV_1BIT,
38 			     4, UNIPHIER_PIN_PULL_DOWN),
39 	UNIPHIER_PINCTRL_PIN(5, "ED1", UNIPHIER_PIN_IECTRL_NONE,
40 			     5, UNIPHIER_PIN_DRV_1BIT,
41 			     5, UNIPHIER_PIN_PULL_DOWN),
42 	UNIPHIER_PINCTRL_PIN(6, "ED2", UNIPHIER_PIN_IECTRL_NONE,
43 			     6, UNIPHIER_PIN_DRV_1BIT,
44 			     6, UNIPHIER_PIN_PULL_DOWN),
45 	UNIPHIER_PINCTRL_PIN(7, "ED3", UNIPHIER_PIN_IECTRL_NONE,
46 			     7, UNIPHIER_PIN_DRV_1BIT,
47 			     7, UNIPHIER_PIN_PULL_DOWN),
48 	UNIPHIER_PINCTRL_PIN(8, "ED4", UNIPHIER_PIN_IECTRL_NONE,
49 			     8, UNIPHIER_PIN_DRV_1BIT,
50 			     8, UNIPHIER_PIN_PULL_DOWN),
51 	UNIPHIER_PINCTRL_PIN(9, "ED5", UNIPHIER_PIN_IECTRL_NONE,
52 			     9, UNIPHIER_PIN_DRV_1BIT,
53 			     9, UNIPHIER_PIN_PULL_DOWN),
54 	UNIPHIER_PINCTRL_PIN(10, "ED6", UNIPHIER_PIN_IECTRL_NONE,
55 			     10, UNIPHIER_PIN_DRV_1BIT,
56 			     10, UNIPHIER_PIN_PULL_DOWN),
57 	UNIPHIER_PINCTRL_PIN(11, "ED7", UNIPHIER_PIN_IECTRL_NONE,
58 			     11, UNIPHIER_PIN_DRV_1BIT,
59 			     11, UNIPHIER_PIN_PULL_DOWN),
60 	UNIPHIER_PINCTRL_PIN(12, "XERWE0", UNIPHIER_PIN_IECTRL_NONE,
61 			     12, UNIPHIER_PIN_DRV_1BIT,
62 			     12, UNIPHIER_PIN_PULL_UP),
63 	UNIPHIER_PINCTRL_PIN(13, "XERWE1", UNIPHIER_PIN_IECTRL_NONE,
64 			     13, UNIPHIER_PIN_DRV_1BIT,
65 			     13, UNIPHIER_PIN_PULL_UP),
66 	UNIPHIER_PINCTRL_PIN(14, "ERXW", UNIPHIER_PIN_IECTRL_NONE,
67 			     14, UNIPHIER_PIN_DRV_1BIT,
68 			     14, UNIPHIER_PIN_PULL_UP),
69 	UNIPHIER_PINCTRL_PIN(15, "ES0", UNIPHIER_PIN_IECTRL_NONE,
70 			     15, UNIPHIER_PIN_DRV_1BIT,
71 			     15, UNIPHIER_PIN_PULL_UP),
72 	UNIPHIER_PINCTRL_PIN(16, "ES1", UNIPHIER_PIN_IECTRL_NONE,
73 			     16, UNIPHIER_PIN_DRV_1BIT,
74 			     16, UNIPHIER_PIN_PULL_UP),
75 	UNIPHIER_PINCTRL_PIN(17, "ES2", UNIPHIER_PIN_IECTRL_NONE,
76 			     17, UNIPHIER_PIN_DRV_1BIT,
77 			     17, UNIPHIER_PIN_PULL_UP),
78 	UNIPHIER_PINCTRL_PIN(18, "XECS1", UNIPHIER_PIN_IECTRL_NONE,
79 			     18, UNIPHIER_PIN_DRV_1BIT,
80 			     18, UNIPHIER_PIN_PULL_UP),
81 	UNIPHIER_PINCTRL_PIN(19, "XNFRE", UNIPHIER_PIN_IECTRL_NONE,
82 			     19, UNIPHIER_PIN_DRV_1BIT,
83 			     19, UNIPHIER_PIN_PULL_UP),
84 	UNIPHIER_PINCTRL_PIN(20, "XNFWE", UNIPHIER_PIN_IECTRL_NONE,
85 			     20, UNIPHIER_PIN_DRV_1BIT,
86 			     20, UNIPHIER_PIN_PULL_UP),
87 	UNIPHIER_PINCTRL_PIN(21, "NFALE", UNIPHIER_PIN_IECTRL_NONE,
88 			     21, UNIPHIER_PIN_DRV_1BIT,
89 			     21, UNIPHIER_PIN_PULL_DOWN),
90 	UNIPHIER_PINCTRL_PIN(22, "NFCLE", UNIPHIER_PIN_IECTRL_NONE,
91 			     22, UNIPHIER_PIN_DRV_1BIT,
92 			     22, UNIPHIER_PIN_PULL_DOWN),
93 	UNIPHIER_PINCTRL_PIN(23, "XNFWP", UNIPHIER_PIN_IECTRL_NONE,
94 			     23, UNIPHIER_PIN_DRV_1BIT,
95 			     23, UNIPHIER_PIN_PULL_DOWN),
96 	UNIPHIER_PINCTRL_PIN(24, "XNFCE0", UNIPHIER_PIN_IECTRL_NONE,
97 			     24, UNIPHIER_PIN_DRV_1BIT,
98 			     24, UNIPHIER_PIN_PULL_UP),
99 	UNIPHIER_PINCTRL_PIN(25, "NFRYBY0", UNIPHIER_PIN_IECTRL_NONE,
100 			     25, UNIPHIER_PIN_DRV_1BIT,
101 			     25, UNIPHIER_PIN_PULL_UP),
102 	UNIPHIER_PINCTRL_PIN(26, "XNFCE1", UNIPHIER_PIN_IECTRL_NONE,
103 			     26, UNIPHIER_PIN_DRV_1BIT,
104 			     26, UNIPHIER_PIN_PULL_UP),
105 	UNIPHIER_PINCTRL_PIN(27, "NFRYBY1", UNIPHIER_PIN_IECTRL_NONE,
106 			     27, UNIPHIER_PIN_DRV_1BIT,
107 			     27, UNIPHIER_PIN_PULL_UP),
108 	UNIPHIER_PINCTRL_PIN(28, "NFD0", UNIPHIER_PIN_IECTRL_NONE,
109 			     28, UNIPHIER_PIN_DRV_1BIT,
110 			     28, UNIPHIER_PIN_PULL_UP),
111 	UNIPHIER_PINCTRL_PIN(29, "NFD1", UNIPHIER_PIN_IECTRL_NONE,
112 			     29, UNIPHIER_PIN_DRV_1BIT,
113 			     29, UNIPHIER_PIN_PULL_UP),
114 	UNIPHIER_PINCTRL_PIN(30, "NFD2", UNIPHIER_PIN_IECTRL_NONE,
115 			     30, UNIPHIER_PIN_DRV_1BIT,
116 			     30, UNIPHIER_PIN_PULL_UP),
117 	UNIPHIER_PINCTRL_PIN(31, "NFD3", UNIPHIER_PIN_IECTRL_NONE,
118 			     31, UNIPHIER_PIN_DRV_1BIT,
119 			     31, UNIPHIER_PIN_PULL_UP),
120 	UNIPHIER_PINCTRL_PIN(32, "NFD4", UNIPHIER_PIN_IECTRL_NONE,
121 			     32, UNIPHIER_PIN_DRV_1BIT,
122 			     32, UNIPHIER_PIN_PULL_UP),
123 	UNIPHIER_PINCTRL_PIN(33, "NFD5", UNIPHIER_PIN_IECTRL_NONE,
124 			     33, UNIPHIER_PIN_DRV_1BIT,
125 			     33, UNIPHIER_PIN_PULL_UP),
126 	UNIPHIER_PINCTRL_PIN(34, "NFD6", UNIPHIER_PIN_IECTRL_NONE,
127 			     34, UNIPHIER_PIN_DRV_1BIT,
128 			     34, UNIPHIER_PIN_PULL_UP),
129 	UNIPHIER_PINCTRL_PIN(35, "NFD7", UNIPHIER_PIN_IECTRL_NONE,
130 			     35, UNIPHIER_PIN_DRV_1BIT,
131 			     35, UNIPHIER_PIN_PULL_UP),
132 	UNIPHIER_PINCTRL_PIN(36, "XERST", UNIPHIER_PIN_IECTRL_NONE,
133 			     36, UNIPHIER_PIN_DRV_1BIT,
134 			     36, UNIPHIER_PIN_PULL_UP),
135 	UNIPHIER_PINCTRL_PIN(37, "MMCCLK", UNIPHIER_PIN_IECTRL_NONE,
136 			     37, UNIPHIER_PIN_DRV_1BIT,
137 			     37, UNIPHIER_PIN_PULL_UP),
138 	UNIPHIER_PINCTRL_PIN(38, "MMCCMD", UNIPHIER_PIN_IECTRL_NONE,
139 			     38, UNIPHIER_PIN_DRV_1BIT,
140 			     38, UNIPHIER_PIN_PULL_UP),
141 	UNIPHIER_PINCTRL_PIN(39, "MMCDAT0", UNIPHIER_PIN_IECTRL_NONE,
142 			     39, UNIPHIER_PIN_DRV_1BIT,
143 			     39, UNIPHIER_PIN_PULL_UP),
144 	UNIPHIER_PINCTRL_PIN(40, "MMCDAT1", UNIPHIER_PIN_IECTRL_NONE,
145 			     40, UNIPHIER_PIN_DRV_1BIT,
146 			     40, UNIPHIER_PIN_PULL_UP),
147 	UNIPHIER_PINCTRL_PIN(41, "MMCDAT2", UNIPHIER_PIN_IECTRL_NONE,
148 			     41, UNIPHIER_PIN_DRV_1BIT,
149 			     41, UNIPHIER_PIN_PULL_UP),
150 	UNIPHIER_PINCTRL_PIN(42, "MMCDAT3", UNIPHIER_PIN_IECTRL_NONE,
151 			     42, UNIPHIER_PIN_DRV_1BIT,
152 			     42, UNIPHIER_PIN_PULL_UP),
153 	UNIPHIER_PINCTRL_PIN(43, "MMCDAT4", UNIPHIER_PIN_IECTRL_NONE,
154 			     43, UNIPHIER_PIN_DRV_1BIT,
155 			     43, UNIPHIER_PIN_PULL_UP),
156 	UNIPHIER_PINCTRL_PIN(44, "MMCDAT5", UNIPHIER_PIN_IECTRL_NONE,
157 			     44, UNIPHIER_PIN_DRV_1BIT,
158 			     44, UNIPHIER_PIN_PULL_UP),
159 	UNIPHIER_PINCTRL_PIN(45, "MMCDAT6", UNIPHIER_PIN_IECTRL_NONE,
160 			     45, UNIPHIER_PIN_DRV_1BIT,
161 			     45, UNIPHIER_PIN_PULL_UP),
162 	UNIPHIER_PINCTRL_PIN(46, "MMCDAT7", UNIPHIER_PIN_IECTRL_NONE,
163 			     46, UNIPHIER_PIN_DRV_1BIT,
164 			     46, UNIPHIER_PIN_PULL_UP),
165 	UNIPHIER_PINCTRL_PIN(47, "TXD0", 0,
166 			     47, UNIPHIER_PIN_DRV_1BIT,
167 			     47, UNIPHIER_PIN_PULL_UP),
168 	UNIPHIER_PINCTRL_PIN(48, "RXD0", 0,
169 			     48, UNIPHIER_PIN_DRV_1BIT,
170 			     48, UNIPHIER_PIN_PULL_UP),
171 	UNIPHIER_PINCTRL_PIN(49, "TXD1", 0,
172 			     49, UNIPHIER_PIN_DRV_1BIT,
173 			     49, UNIPHIER_PIN_PULL_UP),
174 	UNIPHIER_PINCTRL_PIN(50, "RXD1", 0,
175 			     50, UNIPHIER_PIN_DRV_1BIT,
176 			     50, UNIPHIER_PIN_PULL_UP),
177 	UNIPHIER_PINCTRL_PIN(51, "TXD2", UNIPHIER_PIN_IECTRL_NONE,
178 			     51, UNIPHIER_PIN_DRV_1BIT,
179 			     51, UNIPHIER_PIN_PULL_UP),
180 	UNIPHIER_PINCTRL_PIN(52, "RXD2", UNIPHIER_PIN_IECTRL_NONE,
181 			     52, UNIPHIER_PIN_DRV_1BIT,
182 			     52, UNIPHIER_PIN_PULL_UP),
183 	UNIPHIER_PINCTRL_PIN(53, "TXD3", 0,
184 			     53, UNIPHIER_PIN_DRV_1BIT,
185 			     53, UNIPHIER_PIN_PULL_UP),
186 	UNIPHIER_PINCTRL_PIN(54, "RXD3", 0,
187 			     54, UNIPHIER_PIN_DRV_1BIT,
188 			     54, UNIPHIER_PIN_PULL_UP),
189 	UNIPHIER_PINCTRL_PIN(55, "MS0CS0", 0,
190 			     55, UNIPHIER_PIN_DRV_1BIT,
191 			     55, UNIPHIER_PIN_PULL_DOWN),
192 	UNIPHIER_PINCTRL_PIN(56, "MS0DO", 0,
193 			     56, UNIPHIER_PIN_DRV_1BIT,
194 			     56, UNIPHIER_PIN_PULL_DOWN),
195 	UNIPHIER_PINCTRL_PIN(57, "MS0DI", 0,
196 			     57, UNIPHIER_PIN_DRV_1BIT,
197 			     57, UNIPHIER_PIN_PULL_DOWN),
198 	UNIPHIER_PINCTRL_PIN(58, "MS0CLK", 0,
199 			     58, UNIPHIER_PIN_DRV_1BIT,
200 			     58, UNIPHIER_PIN_PULL_DOWN),
201 	UNIPHIER_PINCTRL_PIN(59, "CSCLK", 0,
202 			     59, UNIPHIER_PIN_DRV_1BIT,
203 			     59, UNIPHIER_PIN_PULL_DOWN),
204 	UNIPHIER_PINCTRL_PIN(60, "CSBPTM", 0,
205 			     60, UNIPHIER_PIN_DRV_1BIT,
206 			     60, UNIPHIER_PIN_PULL_DOWN),
207 	UNIPHIER_PINCTRL_PIN(61, "CSBMTP", 0,
208 			     61, UNIPHIER_PIN_DRV_1BIT,
209 			     61, UNIPHIER_PIN_PULL_DOWN),
210 	UNIPHIER_PINCTRL_PIN(62, "XCINTP", 0,
211 			     62, UNIPHIER_PIN_DRV_1BIT,
212 			     62, UNIPHIER_PIN_PULL_DOWN),
213 	UNIPHIER_PINCTRL_PIN(63, "XCINTM", 0,
214 			     63, UNIPHIER_PIN_DRV_1BIT,
215 			     63, UNIPHIER_PIN_PULL_DOWN),
216 	UNIPHIER_PINCTRL_PIN(64, "XCMPREQ", 0,
217 			     64, UNIPHIER_PIN_DRV_1BIT,
218 			     64, UNIPHIER_PIN_PULL_DOWN),
219 	UNIPHIER_PINCTRL_PIN(65, "XSRST", 0,
220 			     65, UNIPHIER_PIN_DRV_1BIT,
221 			     65, UNIPHIER_PIN_PULL_DOWN),
222 	UNIPHIER_PINCTRL_PIN(66, "LPST", UNIPHIER_PIN_IECTRL_NONE,
223 			     66, UNIPHIER_PIN_DRV_1BIT,
224 			     66, UNIPHIER_PIN_PULL_DOWN),
225 	UNIPHIER_PINCTRL_PIN(67, "PWMA", 0,
226 			     67, UNIPHIER_PIN_DRV_1BIT,
227 			     67, UNIPHIER_PIN_PULL_DOWN),
228 	UNIPHIER_PINCTRL_PIN(68, "XIRQ0", 0,
229 			     68, UNIPHIER_PIN_DRV_1BIT,
230 			     68, UNIPHIER_PIN_PULL_DOWN),
231 	UNIPHIER_PINCTRL_PIN(69, "XIRQ1", 0,
232 			     69, UNIPHIER_PIN_DRV_1BIT,
233 			     69, UNIPHIER_PIN_PULL_DOWN),
234 	UNIPHIER_PINCTRL_PIN(70, "XIRQ2", 0,
235 			     70, UNIPHIER_PIN_DRV_1BIT,
236 			     70, UNIPHIER_PIN_PULL_DOWN),
237 	UNIPHIER_PINCTRL_PIN(71, "XIRQ3", 0,
238 			     71, UNIPHIER_PIN_DRV_1BIT,
239 			     71, UNIPHIER_PIN_PULL_DOWN),
240 	UNIPHIER_PINCTRL_PIN(72, "XIRQ4", 0,
241 			     72, UNIPHIER_PIN_DRV_1BIT,
242 			     72, UNIPHIER_PIN_PULL_DOWN),
243 	UNIPHIER_PINCTRL_PIN(73, "XIRQ5", 0,
244 			     73, UNIPHIER_PIN_DRV_1BIT,
245 			     73, UNIPHIER_PIN_PULL_DOWN),
246 	UNIPHIER_PINCTRL_PIN(74, "XIRQ6", 0,
247 			     74, UNIPHIER_PIN_DRV_1BIT,
248 			     74, UNIPHIER_PIN_PULL_DOWN),
249 	UNIPHIER_PINCTRL_PIN(75, "XIRQ7", 0,
250 			     75, UNIPHIER_PIN_DRV_1BIT,
251 			     75, UNIPHIER_PIN_PULL_DOWN),
252 	UNIPHIER_PINCTRL_PIN(76, "XIRQ8", 0,
253 			     76, UNIPHIER_PIN_DRV_1BIT,
254 			     76, UNIPHIER_PIN_PULL_DOWN),
255 	UNIPHIER_PINCTRL_PIN(77, "XIRQ9", 0,
256 			     77, UNIPHIER_PIN_DRV_1BIT,
257 			     77, UNIPHIER_PIN_PULL_DOWN),
258 	UNIPHIER_PINCTRL_PIN(78, "XIRQ10", 0,
259 			     78, UNIPHIER_PIN_DRV_1BIT,
260 			     78, UNIPHIER_PIN_PULL_DOWN),
261 	UNIPHIER_PINCTRL_PIN(79, "XIRQ11", UNIPHIER_PIN_IECTRL_NONE,
262 			     -1, UNIPHIER_PIN_DRV_FIXED8,
263 			     79, UNIPHIER_PIN_PULL_DOWN),
264 	UNIPHIER_PINCTRL_PIN(80, "XIRQ12", UNIPHIER_PIN_IECTRL_NONE,
265 			     -1, UNIPHIER_PIN_DRV_FIXED8,
266 			     80, UNIPHIER_PIN_PULL_DOWN),
267 	UNIPHIER_PINCTRL_PIN(81, "XIRQ13", UNIPHIER_PIN_IECTRL_NONE,
268 			     -1, UNIPHIER_PIN_DRV_FIXED8,
269 			     81, UNIPHIER_PIN_PULL_DOWN),
270 	UNIPHIER_PINCTRL_PIN(82, "XIRQ14", 0,
271 			     82, UNIPHIER_PIN_DRV_1BIT,
272 			     82, UNIPHIER_PIN_PULL_DOWN),
273 	UNIPHIER_PINCTRL_PIN(83, "XIRQ15", 0,
274 			     83, UNIPHIER_PIN_DRV_1BIT,
275 			     83, UNIPHIER_PIN_PULL_DOWN),
276 	UNIPHIER_PINCTRL_PIN(84, "XIRQ16", 0,
277 			     84, UNIPHIER_PIN_DRV_1BIT,
278 			     84, UNIPHIER_PIN_PULL_DOWN),
279 	UNIPHIER_PINCTRL_PIN(85, "XIRQ17", UNIPHIER_PIN_IECTRL_NONE,
280 			     -1, UNIPHIER_PIN_DRV_FIXED8,
281 			     85, UNIPHIER_PIN_PULL_DOWN),
282 	UNIPHIER_PINCTRL_PIN(86, "XIRQ18", UNIPHIER_PIN_IECTRL_NONE,
283 			     -1, UNIPHIER_PIN_DRV_FIXED8,
284 			     86, UNIPHIER_PIN_PULL_DOWN),
285 	UNIPHIER_PINCTRL_PIN(87, "XIRQ19", 0,
286 			     87, UNIPHIER_PIN_DRV_1BIT,
287 			     87, UNIPHIER_PIN_PULL_DOWN),
288 	UNIPHIER_PINCTRL_PIN(88, "XIRQ20", 0,
289 			     88, UNIPHIER_PIN_DRV_1BIT,
290 			     88, UNIPHIER_PIN_PULL_DOWN),
291 	UNIPHIER_PINCTRL_PIN(89, "PORT00", 0,
292 			     89, UNIPHIER_PIN_DRV_1BIT,
293 			     89, UNIPHIER_PIN_PULL_DOWN),
294 	UNIPHIER_PINCTRL_PIN(90, "PORT01", 0,
295 			     90, UNIPHIER_PIN_DRV_1BIT,
296 			     90, UNIPHIER_PIN_PULL_DOWN),
297 	UNIPHIER_PINCTRL_PIN(91, "PORT02", 0,
298 			     91, UNIPHIER_PIN_DRV_1BIT,
299 			     91, UNIPHIER_PIN_PULL_DOWN),
300 	UNIPHIER_PINCTRL_PIN(92, "PORT03", 0,
301 			     92, UNIPHIER_PIN_DRV_1BIT,
302 			     92, UNIPHIER_PIN_PULL_DOWN),
303 	UNIPHIER_PINCTRL_PIN(93, "PORT04", 0,
304 			     93, UNIPHIER_PIN_DRV_1BIT,
305 			     93, UNIPHIER_PIN_PULL_DOWN),
306 	UNIPHIER_PINCTRL_PIN(94, "PORT05", 0,
307 			     94, UNIPHIER_PIN_DRV_1BIT,
308 			     94, UNIPHIER_PIN_PULL_DOWN),
309 	UNIPHIER_PINCTRL_PIN(95, "PORT06", 0,
310 			     95, UNIPHIER_PIN_DRV_1BIT,
311 			     95, UNIPHIER_PIN_PULL_DOWN),
312 	UNIPHIER_PINCTRL_PIN(96, "PORT07", 0,
313 			     96, UNIPHIER_PIN_DRV_1BIT,
314 			     96, UNIPHIER_PIN_PULL_DOWN),
315 	UNIPHIER_PINCTRL_PIN(97, "PORT10", 0,
316 			     97, UNIPHIER_PIN_DRV_1BIT,
317 			     97, UNIPHIER_PIN_PULL_DOWN),
318 	UNIPHIER_PINCTRL_PIN(98, "PORT11", 0,
319 			     98, UNIPHIER_PIN_DRV_1BIT,
320 			     98, UNIPHIER_PIN_PULL_DOWN),
321 	UNIPHIER_PINCTRL_PIN(99, "PORT12", 0,
322 			     99, UNIPHIER_PIN_DRV_1BIT,
323 			     99, UNIPHIER_PIN_PULL_DOWN),
324 	UNIPHIER_PINCTRL_PIN(100, "PORT13", 0,
325 			     100, UNIPHIER_PIN_DRV_1BIT,
326 			     100, UNIPHIER_PIN_PULL_DOWN),
327 	UNIPHIER_PINCTRL_PIN(101, "PORT14", 0,
328 			     101, UNIPHIER_PIN_DRV_1BIT,
329 			     101, UNIPHIER_PIN_PULL_DOWN),
330 	UNIPHIER_PINCTRL_PIN(102, "PORT15", 0,
331 			     102, UNIPHIER_PIN_DRV_1BIT,
332 			     102, UNIPHIER_PIN_PULL_DOWN),
333 	UNIPHIER_PINCTRL_PIN(103, "PORT16", 0,
334 			     103, UNIPHIER_PIN_DRV_1BIT,
335 			     103, UNIPHIER_PIN_PULL_DOWN),
336 	UNIPHIER_PINCTRL_PIN(104, "PORT17", 0,
337 			     104, UNIPHIER_PIN_DRV_1BIT,
338 			     104, UNIPHIER_PIN_PULL_DOWN),
339 	UNIPHIER_PINCTRL_PIN(105, "T0HPD", 0,
340 			     105, UNIPHIER_PIN_DRV_1BIT,
341 			     105, UNIPHIER_PIN_PULL_DOWN),
342 	UNIPHIER_PINCTRL_PIN(106, "T1HPD", 0,
343 			     106, UNIPHIER_PIN_DRV_1BIT,
344 			     106, UNIPHIER_PIN_PULL_DOWN),
345 	UNIPHIER_PINCTRL_PIN(107, "R0HPD", 0,
346 			     107, UNIPHIER_PIN_DRV_1BIT,
347 			     107, UNIPHIER_PIN_PULL_DOWN),
348 	UNIPHIER_PINCTRL_PIN(108, "R1HPD", 0,
349 			     108, UNIPHIER_PIN_DRV_1BIT,
350 			     108, UNIPHIER_PIN_PULL_DOWN),
351 	UNIPHIER_PINCTRL_PIN(109, "XPERST", 0,
352 			     109, UNIPHIER_PIN_DRV_1BIT,
353 			     109, UNIPHIER_PIN_PULL_UP),
354 	UNIPHIER_PINCTRL_PIN(110, "XPEWAKE", 0,
355 			     110, UNIPHIER_PIN_DRV_1BIT,
356 			     110, UNIPHIER_PIN_PULL_UP),
357 	UNIPHIER_PINCTRL_PIN(111, "XPECLKRQ", 0,
358 			     111, UNIPHIER_PIN_DRV_1BIT,
359 			     111, UNIPHIER_PIN_PULL_UP),
360 	UNIPHIER_PINCTRL_PIN(112, "SDA0", UNIPHIER_PIN_IECTRL_NONE,
361 			     -1, UNIPHIER_PIN_DRV_FIXED8,
362 			     112, UNIPHIER_PIN_PULL_UP),
363 	UNIPHIER_PINCTRL_PIN(113, "SCL0", UNIPHIER_PIN_IECTRL_NONE,
364 			     -1, UNIPHIER_PIN_DRV_FIXED8,
365 			     113, UNIPHIER_PIN_PULL_UP),
366 	UNIPHIER_PINCTRL_PIN(114, "SDA1", UNIPHIER_PIN_IECTRL_NONE,
367 			     -1, UNIPHIER_PIN_DRV_FIXED8,
368 			     114, UNIPHIER_PIN_PULL_UP),
369 	UNIPHIER_PINCTRL_PIN(115, "SCL1", UNIPHIER_PIN_IECTRL_NONE,
370 			     -1, UNIPHIER_PIN_DRV_FIXED8,
371 			     115, UNIPHIER_PIN_PULL_UP),
372 	UNIPHIER_PINCTRL_PIN(116, "SDA2", UNIPHIER_PIN_IECTRL_NONE,
373 			     -1, UNIPHIER_PIN_DRV_FIXED8,
374 			     116, UNIPHIER_PIN_PULL_UP),
375 	UNIPHIER_PINCTRL_PIN(117, "SCL2", UNIPHIER_PIN_IECTRL_NONE,
376 			     -1, UNIPHIER_PIN_DRV_FIXED8,
377 			     117, UNIPHIER_PIN_PULL_UP),
378 	UNIPHIER_PINCTRL_PIN(118, "SDA3", UNIPHIER_PIN_IECTRL_NONE,
379 			     -1, UNIPHIER_PIN_DRV_FIXED4,
380 			     118, UNIPHIER_PIN_PULL_UP),
381 	UNIPHIER_PINCTRL_PIN(119, "SCL3", UNIPHIER_PIN_IECTRL_NONE,
382 			     -1, UNIPHIER_PIN_DRV_FIXED4,
383 			     119, UNIPHIER_PIN_PULL_UP),
384 	UNIPHIER_PINCTRL_PIN(120, "SPISYNC", UNIPHIER_PIN_IECTRL_NONE,
385 			     -1, UNIPHIER_PIN_DRV_FIXED8,
386 			     120, UNIPHIER_PIN_PULL_DOWN),
387 	UNIPHIER_PINCTRL_PIN(121, "SPISCLK", UNIPHIER_PIN_IECTRL_NONE,
388 			     -1, UNIPHIER_PIN_DRV_FIXED8,
389 			     121, UNIPHIER_PIN_PULL_DOWN),
390 	UNIPHIER_PINCTRL_PIN(122, "SPITXD", UNIPHIER_PIN_IECTRL_NONE,
391 			     -1, UNIPHIER_PIN_DRV_FIXED8,
392 			     122, UNIPHIER_PIN_PULL_DOWN),
393 	UNIPHIER_PINCTRL_PIN(123, "SPIRXD", UNIPHIER_PIN_IECTRL_NONE,
394 			     -1, UNIPHIER_PIN_DRV_FIXED8,
395 			     123, UNIPHIER_PIN_PULL_DOWN),
396 	UNIPHIER_PINCTRL_PIN(124, "USB0VBUS", UNIPHIER_PIN_IECTRL_NONE,
397 			     -1, UNIPHIER_PIN_DRV_FIXED8,
398 			     124, UNIPHIER_PIN_PULL_DOWN),
399 	UNIPHIER_PINCTRL_PIN(125, "USB0OD", UNIPHIER_PIN_IECTRL_NONE,
400 			     -1, UNIPHIER_PIN_DRV_FIXED8,
401 			     125, UNIPHIER_PIN_PULL_UP),
402 	UNIPHIER_PINCTRL_PIN(126, "USB1VBUS", UNIPHIER_PIN_IECTRL_NONE,
403 			     -1, UNIPHIER_PIN_DRV_FIXED8,
404 			     126, UNIPHIER_PIN_PULL_DOWN),
405 	UNIPHIER_PINCTRL_PIN(127, "USB1OD", UNIPHIER_PIN_IECTRL_NONE,
406 			     -1, UNIPHIER_PIN_DRV_FIXED8,
407 			     127, UNIPHIER_PIN_PULL_UP),
408 	UNIPHIER_PINCTRL_PIN(128, "USB2VBUS", UNIPHIER_PIN_IECTRL_NONE,
409 			     -1, UNIPHIER_PIN_DRV_FIXED8,
410 			     128, UNIPHIER_PIN_PULL_DOWN),
411 	UNIPHIER_PINCTRL_PIN(129, "USB2OD", UNIPHIER_PIN_IECTRL_NONE,
412 			     -1, UNIPHIER_PIN_DRV_FIXED8,
413 			     129, UNIPHIER_PIN_PULL_UP),
414 	UNIPHIER_PINCTRL_PIN(130, "SMTRST0", UNIPHIER_PIN_IECTRL_NONE,
415 			     -1, UNIPHIER_PIN_DRV_FIXED8,
416 			     130, UNIPHIER_PIN_PULL_DOWN),
417 	UNIPHIER_PINCTRL_PIN(131, "SMTCMD0", UNIPHIER_PIN_IECTRL_NONE,
418 			     -1, UNIPHIER_PIN_DRV_FIXED8,
419 			     131, UNIPHIER_PIN_PULL_DOWN),
420 	UNIPHIER_PINCTRL_PIN(132, "SMTD0", UNIPHIER_PIN_IECTRL_NONE,
421 			     -1, UNIPHIER_PIN_DRV_FIXED8,
422 			     132, UNIPHIER_PIN_PULL_DOWN),
423 	UNIPHIER_PINCTRL_PIN(133, "SMTSEL0", UNIPHIER_PIN_IECTRL_NONE,
424 			     -1, UNIPHIER_PIN_DRV_FIXED8,
425 			     133, UNIPHIER_PIN_PULL_DOWN),
426 	UNIPHIER_PINCTRL_PIN(134, "SMTCLK0", UNIPHIER_PIN_IECTRL_NONE,
427 			     -1, UNIPHIER_PIN_DRV_FIXED8,
428 			     134, UNIPHIER_PIN_PULL_DOWN),
429 	UNIPHIER_PINCTRL_PIN(135, "SMTRST1", UNIPHIER_PIN_IECTRL_NONE,
430 			     -1, UNIPHIER_PIN_DRV_FIXED8,
431 			     135, UNIPHIER_PIN_PULL_DOWN),
432 	UNIPHIER_PINCTRL_PIN(136, "SMTCMD1", UNIPHIER_PIN_IECTRL_NONE,
433 			     -1, UNIPHIER_PIN_DRV_FIXED8,
434 			     136, UNIPHIER_PIN_PULL_DOWN),
435 	UNIPHIER_PINCTRL_PIN(137, "SMTD1", UNIPHIER_PIN_IECTRL_NONE,
436 			     -1, UNIPHIER_PIN_DRV_FIXED8,
437 			     137, UNIPHIER_PIN_PULL_DOWN),
438 	UNIPHIER_PINCTRL_PIN(138, "SMTSEL1", UNIPHIER_PIN_IECTRL_NONE,
439 			     -1, UNIPHIER_PIN_DRV_FIXED8,
440 			     138, UNIPHIER_PIN_PULL_DOWN),
441 	UNIPHIER_PINCTRL_PIN(139, "SMTCLK1", UNIPHIER_PIN_IECTRL_NONE,
442 			     -1, UNIPHIER_PIN_DRV_FIXED8,
443 			     139, UNIPHIER_PIN_PULL_DOWN),
444 	UNIPHIER_PINCTRL_PIN(140, "CH0CLK", UNIPHIER_PIN_IECTRL_NONE,
445 			     -1, UNIPHIER_PIN_DRV_FIXED8,
446 			     140, UNIPHIER_PIN_PULL_DOWN),
447 	UNIPHIER_PINCTRL_PIN(141, "CH0PSYNC", UNIPHIER_PIN_IECTRL_NONE,
448 			     -1, UNIPHIER_PIN_DRV_FIXED8,
449 			     141, UNIPHIER_PIN_PULL_DOWN),
450 	UNIPHIER_PINCTRL_PIN(142, "CH0VAL", UNIPHIER_PIN_IECTRL_NONE,
451 			     -1, UNIPHIER_PIN_DRV_FIXED8,
452 			     142, UNIPHIER_PIN_PULL_DOWN),
453 	UNIPHIER_PINCTRL_PIN(143, "CH0DATA", UNIPHIER_PIN_IECTRL_NONE,
454 			     -1, UNIPHIER_PIN_DRV_FIXED8,
455 			     143, UNIPHIER_PIN_PULL_DOWN),
456 	UNIPHIER_PINCTRL_PIN(144, "CH1CLK", UNIPHIER_PIN_IECTRL_NONE,
457 			     -1, UNIPHIER_PIN_DRV_FIXED8,
458 			     144, UNIPHIER_PIN_PULL_DOWN),
459 	UNIPHIER_PINCTRL_PIN(145, "CH1PSYNC", UNIPHIER_PIN_IECTRL_NONE,
460 			     -1, UNIPHIER_PIN_DRV_FIXED8,
461 			     145, UNIPHIER_PIN_PULL_DOWN),
462 	UNIPHIER_PINCTRL_PIN(146, "CH1VAL", UNIPHIER_PIN_IECTRL_NONE,
463 			     -1, UNIPHIER_PIN_DRV_FIXED8,
464 			     146, UNIPHIER_PIN_PULL_DOWN),
465 	UNIPHIER_PINCTRL_PIN(147, "CH1DATA", UNIPHIER_PIN_IECTRL_NONE,
466 			     -1, UNIPHIER_PIN_DRV_FIXED8,
467 			     147, UNIPHIER_PIN_PULL_DOWN),
468 	UNIPHIER_PINCTRL_PIN(148, "CH2CLK", UNIPHIER_PIN_IECTRL_NONE,
469 			     -1, UNIPHIER_PIN_DRV_FIXED8,
470 			     148, UNIPHIER_PIN_PULL_DOWN),
471 	UNIPHIER_PINCTRL_PIN(149, "CH2PSYNC", UNIPHIER_PIN_IECTRL_NONE,
472 			     -1, UNIPHIER_PIN_DRV_FIXED8,
473 			     149, UNIPHIER_PIN_PULL_DOWN),
474 	UNIPHIER_PINCTRL_PIN(150, "CH2VAL", UNIPHIER_PIN_IECTRL_NONE,
475 			     -1, UNIPHIER_PIN_DRV_FIXED8,
476 			     150, UNIPHIER_PIN_PULL_DOWN),
477 	UNIPHIER_PINCTRL_PIN(151, "CH2DATA", UNIPHIER_PIN_IECTRL_NONE,
478 			     -1, UNIPHIER_PIN_DRV_FIXED8,
479 			     151, UNIPHIER_PIN_PULL_DOWN),
480 	UNIPHIER_PINCTRL_PIN(152, "CH3CLK", UNIPHIER_PIN_IECTRL_NONE,
481 			     -1, UNIPHIER_PIN_DRV_FIXED8,
482 			     152, UNIPHIER_PIN_PULL_DOWN),
483 	UNIPHIER_PINCTRL_PIN(153, "CH3PSYNC", UNIPHIER_PIN_IECTRL_NONE,
484 			     -1, UNIPHIER_PIN_DRV_FIXED8,
485 			     153, UNIPHIER_PIN_PULL_DOWN),
486 	UNIPHIER_PINCTRL_PIN(154, "CH3VAL", UNIPHIER_PIN_IECTRL_NONE,
487 			     -1, UNIPHIER_PIN_DRV_FIXED8,
488 			     154, UNIPHIER_PIN_PULL_DOWN),
489 	UNIPHIER_PINCTRL_PIN(155, "CH3DATA", UNIPHIER_PIN_IECTRL_NONE,
490 			     -1, UNIPHIER_PIN_DRV_FIXED8,
491 			     155, UNIPHIER_PIN_PULL_DOWN),
492 	UNIPHIER_PINCTRL_PIN(156, "CH4CLK", UNIPHIER_PIN_IECTRL_NONE,
493 			     -1, UNIPHIER_PIN_DRV_FIXED8,
494 			     156, UNIPHIER_PIN_PULL_DOWN),
495 	UNIPHIER_PINCTRL_PIN(157, "CH4PSYNC", UNIPHIER_PIN_IECTRL_NONE,
496 			     -1, UNIPHIER_PIN_DRV_FIXED8,
497 			     157, UNIPHIER_PIN_PULL_DOWN),
498 	UNIPHIER_PINCTRL_PIN(158, "CH4VAL", UNIPHIER_PIN_IECTRL_NONE,
499 			     -1, UNIPHIER_PIN_DRV_FIXED8,
500 			     158, UNIPHIER_PIN_PULL_DOWN),
501 	UNIPHIER_PINCTRL_PIN(159, "CH4DATA", UNIPHIER_PIN_IECTRL_NONE,
502 			     -1, UNIPHIER_PIN_DRV_FIXED8,
503 			     159, UNIPHIER_PIN_PULL_DOWN),
504 	UNIPHIER_PINCTRL_PIN(160, "CH5CLK", UNIPHIER_PIN_IECTRL_NONE,
505 			     -1, UNIPHIER_PIN_DRV_FIXED8,
506 			     160, UNIPHIER_PIN_PULL_DOWN),
507 	UNIPHIER_PINCTRL_PIN(161, "CH5PSYNC", UNIPHIER_PIN_IECTRL_NONE,
508 			     -1, UNIPHIER_PIN_DRV_FIXED8,
509 			     161, UNIPHIER_PIN_PULL_DOWN),
510 	UNIPHIER_PINCTRL_PIN(162, "CH5VAL", UNIPHIER_PIN_IECTRL_NONE,
511 			     -1, UNIPHIER_PIN_DRV_FIXED8,
512 			     162, UNIPHIER_PIN_PULL_DOWN),
513 	UNIPHIER_PINCTRL_PIN(163, "CH5DATA", UNIPHIER_PIN_IECTRL_NONE,
514 			     -1, UNIPHIER_PIN_DRV_FIXED8,
515 			     163, UNIPHIER_PIN_PULL_DOWN),
516 	UNIPHIER_PINCTRL_PIN(164, "CH6CLK", UNIPHIER_PIN_IECTRL_NONE,
517 			     -1, UNIPHIER_PIN_DRV_FIXED8,
518 			     164, UNIPHIER_PIN_PULL_DOWN),
519 	UNIPHIER_PINCTRL_PIN(165, "CH6PSYNC", UNIPHIER_PIN_IECTRL_NONE,
520 			     -1, UNIPHIER_PIN_DRV_FIXED8,
521 			     165, UNIPHIER_PIN_PULL_DOWN),
522 	UNIPHIER_PINCTRL_PIN(166, "CH6VAL", UNIPHIER_PIN_IECTRL_NONE,
523 			     -1, UNIPHIER_PIN_DRV_FIXED8,
524 			     166, UNIPHIER_PIN_PULL_DOWN),
525 	UNIPHIER_PINCTRL_PIN(167, "CH6DATA", UNIPHIER_PIN_IECTRL_NONE,
526 			     -1, UNIPHIER_PIN_DRV_FIXED8,
527 			     167, UNIPHIER_PIN_PULL_DOWN),
528 	UNIPHIER_PINCTRL_PIN(168, "CH7CLK", UNIPHIER_PIN_IECTRL_NONE,
529 			     -1, UNIPHIER_PIN_DRV_FIXED8,
530 			     168, UNIPHIER_PIN_PULL_DOWN),
531 	UNIPHIER_PINCTRL_PIN(169, "CH7PSYNC", UNIPHIER_PIN_IECTRL_NONE,
532 			     -1, UNIPHIER_PIN_DRV_FIXED8,
533 			     169, UNIPHIER_PIN_PULL_DOWN),
534 	UNIPHIER_PINCTRL_PIN(170, "CH7VAL", UNIPHIER_PIN_IECTRL_NONE,
535 			     -1, UNIPHIER_PIN_DRV_FIXED8,
536 			     170, UNIPHIER_PIN_PULL_DOWN),
537 	UNIPHIER_PINCTRL_PIN(171, "CH7DATA", UNIPHIER_PIN_IECTRL_NONE,
538 			     -1, UNIPHIER_PIN_DRV_FIXED8,
539 			     171, UNIPHIER_PIN_PULL_DOWN),
540 	UNIPHIER_PINCTRL_PIN(172, "AI1ADCCK", UNIPHIER_PIN_IECTRL_NONE,
541 			     -1, UNIPHIER_PIN_DRV_FIXED8,
542 			     172, UNIPHIER_PIN_PULL_DOWN),
543 	UNIPHIER_PINCTRL_PIN(173, "AI1BCK", UNIPHIER_PIN_IECTRL_NONE,
544 			     -1, UNIPHIER_PIN_DRV_FIXED8,
545 			     173, UNIPHIER_PIN_PULL_DOWN),
546 	UNIPHIER_PINCTRL_PIN(174, "AI1LRCK", UNIPHIER_PIN_IECTRL_NONE,
547 			     -1, UNIPHIER_PIN_DRV_FIXED8,
548 			     174, UNIPHIER_PIN_PULL_DOWN),
549 	UNIPHIER_PINCTRL_PIN(175, "AI1D0", UNIPHIER_PIN_IECTRL_NONE,
550 			     -1, UNIPHIER_PIN_DRV_FIXED8,
551 			     175, UNIPHIER_PIN_PULL_DOWN),
552 	UNIPHIER_PINCTRL_PIN(176, "AI1D1", UNIPHIER_PIN_IECTRL_NONE,
553 			     -1, UNIPHIER_PIN_DRV_FIXED8,
554 			     176, UNIPHIER_PIN_PULL_DOWN),
555 	UNIPHIER_PINCTRL_PIN(177, "AI1D2", UNIPHIER_PIN_IECTRL_NONE,
556 			     -1, UNIPHIER_PIN_DRV_FIXED8,
557 			     177, UNIPHIER_PIN_PULL_DOWN),
558 	UNIPHIER_PINCTRL_PIN(178, "AI1D3", UNIPHIER_PIN_IECTRL_NONE,
559 			     -1, UNIPHIER_PIN_DRV_FIXED8,
560 			     178, UNIPHIER_PIN_PULL_DOWN),
561 	UNIPHIER_PINCTRL_PIN(179, "AI2ADCCK", UNIPHIER_PIN_IECTRL_NONE,
562 			     -1, UNIPHIER_PIN_DRV_FIXED8,
563 			     179, UNIPHIER_PIN_PULL_DOWN),
564 	UNIPHIER_PINCTRL_PIN(180, "AI2BCK", UNIPHIER_PIN_IECTRL_NONE,
565 			     -1, UNIPHIER_PIN_DRV_FIXED8,
566 			     180, UNIPHIER_PIN_PULL_DOWN),
567 	UNIPHIER_PINCTRL_PIN(181, "AI2LRCK", UNIPHIER_PIN_IECTRL_NONE,
568 			     -1, UNIPHIER_PIN_DRV_FIXED8,
569 			     181, UNIPHIER_PIN_PULL_DOWN),
570 	UNIPHIER_PINCTRL_PIN(182, "AI2D0", UNIPHIER_PIN_IECTRL_NONE,
571 			     -1, UNIPHIER_PIN_DRV_FIXED8,
572 			     182, UNIPHIER_PIN_PULL_DOWN),
573 	UNIPHIER_PINCTRL_PIN(183, "AI2D1", UNIPHIER_PIN_IECTRL_NONE,
574 			     -1, UNIPHIER_PIN_DRV_FIXED8,
575 			     183, UNIPHIER_PIN_PULL_DOWN),
576 	UNIPHIER_PINCTRL_PIN(184, "AI2D2", UNIPHIER_PIN_IECTRL_NONE,
577 			     -1, UNIPHIER_PIN_DRV_FIXED8,
578 			     184, UNIPHIER_PIN_PULL_DOWN),
579 	UNIPHIER_PINCTRL_PIN(185, "AI2D3", UNIPHIER_PIN_IECTRL_NONE,
580 			     -1, UNIPHIER_PIN_DRV_FIXED8,
581 			     185, UNIPHIER_PIN_PULL_DOWN),
582 	UNIPHIER_PINCTRL_PIN(186, "AI3ADCCK", UNIPHIER_PIN_IECTRL_NONE,
583 			     -1, UNIPHIER_PIN_DRV_FIXED8,
584 			     186, UNIPHIER_PIN_PULL_DOWN),
585 	UNIPHIER_PINCTRL_PIN(187, "AI3BCK", UNIPHIER_PIN_IECTRL_NONE,
586 			     -1, UNIPHIER_PIN_DRV_FIXED8,
587 			     187, UNIPHIER_PIN_PULL_DOWN),
588 	UNIPHIER_PINCTRL_PIN(188, "AI3LRCK", UNIPHIER_PIN_IECTRL_NONE,
589 			     -1, UNIPHIER_PIN_DRV_FIXED8,
590 			     188, UNIPHIER_PIN_PULL_DOWN),
591 	UNIPHIER_PINCTRL_PIN(189, "AI3D0", UNIPHIER_PIN_IECTRL_NONE,
592 			     -1, UNIPHIER_PIN_DRV_FIXED8,
593 			     189, UNIPHIER_PIN_PULL_DOWN),
594 	UNIPHIER_PINCTRL_PIN(190, "AO1IEC", UNIPHIER_PIN_IECTRL_NONE,
595 			     -1, UNIPHIER_PIN_DRV_FIXED8,
596 			     190, UNIPHIER_PIN_PULL_DOWN),
597 	UNIPHIER_PINCTRL_PIN(191, "AO1DACCK", UNIPHIER_PIN_IECTRL_NONE,
598 			     -1, UNIPHIER_PIN_DRV_FIXED8,
599 			     191, UNIPHIER_PIN_PULL_DOWN),
600 	UNIPHIER_PINCTRL_PIN(192, "AO1BCK", UNIPHIER_PIN_IECTRL_NONE,
601 			     -1, UNIPHIER_PIN_DRV_FIXED8,
602 			     192, UNIPHIER_PIN_PULL_DOWN),
603 	UNIPHIER_PINCTRL_PIN(193, "AO1LRCK", UNIPHIER_PIN_IECTRL_NONE,
604 			     -1, UNIPHIER_PIN_DRV_FIXED8,
605 			     193, UNIPHIER_PIN_PULL_DOWN),
606 	UNIPHIER_PINCTRL_PIN(194, "AO1D0", UNIPHIER_PIN_IECTRL_NONE,
607 			     -1, UNIPHIER_PIN_DRV_FIXED8,
608 			     194, UNIPHIER_PIN_PULL_DOWN),
609 	UNIPHIER_PINCTRL_PIN(195, "AO1D1", UNIPHIER_PIN_IECTRL_NONE,
610 			     -1, UNIPHIER_PIN_DRV_FIXED8,
611 			     195, UNIPHIER_PIN_PULL_DOWN),
612 	UNIPHIER_PINCTRL_PIN(196, "AO1D2", UNIPHIER_PIN_IECTRL_NONE,
613 			     -1, UNIPHIER_PIN_DRV_FIXED8,
614 			     196, UNIPHIER_PIN_PULL_UP),
615 	UNIPHIER_PINCTRL_PIN(197, "AO1D3", UNIPHIER_PIN_IECTRL_NONE,
616 			     -1, UNIPHIER_PIN_DRV_FIXED8,
617 			     197, UNIPHIER_PIN_PULL_UP),
618 	UNIPHIER_PINCTRL_PIN(198, "AO2IEC", UNIPHIER_PIN_IECTRL_NONE,
619 			     -1, UNIPHIER_PIN_DRV_FIXED8,
620 			     198, UNIPHIER_PIN_PULL_DOWN),
621 	UNIPHIER_PINCTRL_PIN(199, "AO2DACCK", UNIPHIER_PIN_IECTRL_NONE,
622 			     -1, UNIPHIER_PIN_DRV_FIXED8,
623 			     199, UNIPHIER_PIN_PULL_DOWN),
624 	UNIPHIER_PINCTRL_PIN(200, "AO2BCK", UNIPHIER_PIN_IECTRL_NONE,
625 			     -1, UNIPHIER_PIN_DRV_FIXED8,
626 			     200, UNIPHIER_PIN_PULL_DOWN),
627 	UNIPHIER_PINCTRL_PIN(201, "AO2LRCK", UNIPHIER_PIN_IECTRL_NONE,
628 			     -1, UNIPHIER_PIN_DRV_FIXED8,
629 			     201, UNIPHIER_PIN_PULL_DOWN),
630 	UNIPHIER_PINCTRL_PIN(202, "AO2D0", UNIPHIER_PIN_IECTRL_NONE,
631 			     -1, UNIPHIER_PIN_DRV_FIXED8,
632 			     202, UNIPHIER_PIN_PULL_DOWN),
633 	UNIPHIER_PINCTRL_PIN(203, "AO2D1", UNIPHIER_PIN_IECTRL_NONE,
634 			     -1, UNIPHIER_PIN_DRV_FIXED8,
635 			     203, UNIPHIER_PIN_PULL_DOWN),
636 	UNIPHIER_PINCTRL_PIN(204, "AO2D2", UNIPHIER_PIN_IECTRL_NONE,
637 			     -1, UNIPHIER_PIN_DRV_FIXED8,
638 			     204, UNIPHIER_PIN_PULL_DOWN),
639 	UNIPHIER_PINCTRL_PIN(205, "AO2D3", UNIPHIER_PIN_IECTRL_NONE,
640 			     -1, UNIPHIER_PIN_DRV_FIXED8,
641 			     205, UNIPHIER_PIN_PULL_DOWN),
642 	UNIPHIER_PINCTRL_PIN(206, "AO3DACCK", UNIPHIER_PIN_IECTRL_NONE,
643 			     -1, UNIPHIER_PIN_DRV_FIXED8,
644 			     206, UNIPHIER_PIN_PULL_DOWN),
645 	UNIPHIER_PINCTRL_PIN(207, "AO3BCK", UNIPHIER_PIN_IECTRL_NONE,
646 			     -1, UNIPHIER_PIN_DRV_FIXED8,
647 			     207, UNIPHIER_PIN_PULL_DOWN),
648 	UNIPHIER_PINCTRL_PIN(208, "AO3LRCK", UNIPHIER_PIN_IECTRL_NONE,
649 			     -1, UNIPHIER_PIN_DRV_FIXED8,
650 			     208, UNIPHIER_PIN_PULL_DOWN),
651 	UNIPHIER_PINCTRL_PIN(209, "AO3DMIX", UNIPHIER_PIN_IECTRL_NONE,
652 			     -1, UNIPHIER_PIN_DRV_FIXED8,
653 			     209, UNIPHIER_PIN_PULL_DOWN),
654 	UNIPHIER_PINCTRL_PIN(210, "AO4DACCK", UNIPHIER_PIN_IECTRL_NONE,
655 			     -1, UNIPHIER_PIN_DRV_FIXED8,
656 			     210, UNIPHIER_PIN_PULL_DOWN),
657 	UNIPHIER_PINCTRL_PIN(211, "AO4BCK", UNIPHIER_PIN_IECTRL_NONE,
658 			     -1, UNIPHIER_PIN_DRV_FIXED8,
659 			     211, UNIPHIER_PIN_PULL_DOWN),
660 	UNIPHIER_PINCTRL_PIN(212, "AO4LRCK", UNIPHIER_PIN_IECTRL_NONE,
661 			     -1, UNIPHIER_PIN_DRV_FIXED8,
662 			     212, UNIPHIER_PIN_PULL_DOWN),
663 	UNIPHIER_PINCTRL_PIN(213, "AO4DMIX", UNIPHIER_PIN_IECTRL_NONE,
664 			     -1, UNIPHIER_PIN_DRV_FIXED8,
665 			     213, UNIPHIER_PIN_PULL_DOWN),
666 	UNIPHIER_PINCTRL_PIN(214, "VI1CLK", UNIPHIER_PIN_IECTRL_NONE,
667 			     -1, UNIPHIER_PIN_DRV_FIXED8,
668 			     214, UNIPHIER_PIN_PULL_DOWN),
669 	UNIPHIER_PINCTRL_PIN(215, "VI1C0", UNIPHIER_PIN_IECTRL_NONE,
670 			     -1, UNIPHIER_PIN_DRV_FIXED8,
671 			     215, UNIPHIER_PIN_PULL_DOWN),
672 	UNIPHIER_PINCTRL_PIN(216, "VI1C1", UNIPHIER_PIN_IECTRL_NONE,
673 			     -1, UNIPHIER_PIN_DRV_FIXED8,
674 			     216, UNIPHIER_PIN_PULL_DOWN),
675 	UNIPHIER_PINCTRL_PIN(217, "VI1C2", UNIPHIER_PIN_IECTRL_NONE,
676 			     -1, UNIPHIER_PIN_DRV_FIXED8,
677 			     217, UNIPHIER_PIN_PULL_DOWN),
678 	UNIPHIER_PINCTRL_PIN(218, "VI1C3", UNIPHIER_PIN_IECTRL_NONE,
679 			     -1, UNIPHIER_PIN_DRV_FIXED8,
680 			     218, UNIPHIER_PIN_PULL_DOWN),
681 	UNIPHIER_PINCTRL_PIN(219, "VI1C4", UNIPHIER_PIN_IECTRL_NONE,
682 			     -1, UNIPHIER_PIN_DRV_FIXED8,
683 			     219, UNIPHIER_PIN_PULL_DOWN),
684 	UNIPHIER_PINCTRL_PIN(220, "VI1C5", UNIPHIER_PIN_IECTRL_NONE,
685 			     -1, UNIPHIER_PIN_DRV_FIXED8,
686 			     220, UNIPHIER_PIN_PULL_DOWN),
687 	UNIPHIER_PINCTRL_PIN(221, "VI1C6", UNIPHIER_PIN_IECTRL_NONE,
688 			     -1, UNIPHIER_PIN_DRV_FIXED8,
689 			     221, UNIPHIER_PIN_PULL_DOWN),
690 	UNIPHIER_PINCTRL_PIN(222, "VI1C7", UNIPHIER_PIN_IECTRL_NONE,
691 			     -1, UNIPHIER_PIN_DRV_FIXED8,
692 			     222, UNIPHIER_PIN_PULL_DOWN),
693 	UNIPHIER_PINCTRL_PIN(223, "VI1C8", UNIPHIER_PIN_IECTRL_NONE,
694 			     -1, UNIPHIER_PIN_DRV_FIXED8,
695 			     223, UNIPHIER_PIN_PULL_DOWN),
696 	UNIPHIER_PINCTRL_PIN(224, "VI1C9", UNIPHIER_PIN_IECTRL_NONE,
697 			     -1, UNIPHIER_PIN_DRV_FIXED8,
698 			     224, UNIPHIER_PIN_PULL_DOWN),
699 	UNIPHIER_PINCTRL_PIN(225, "VI1Y0", UNIPHIER_PIN_IECTRL_NONE,
700 			     -1, UNIPHIER_PIN_DRV_FIXED8,
701 			     225, UNIPHIER_PIN_PULL_DOWN),
702 	UNIPHIER_PINCTRL_PIN(226, "VI1Y1", UNIPHIER_PIN_IECTRL_NONE,
703 			     -1, UNIPHIER_PIN_DRV_FIXED8,
704 			     226, UNIPHIER_PIN_PULL_DOWN),
705 	UNIPHIER_PINCTRL_PIN(227, "VI1Y2", UNIPHIER_PIN_IECTRL_NONE,
706 			     -1, UNIPHIER_PIN_DRV_FIXED8,
707 			     227, UNIPHIER_PIN_PULL_DOWN),
708 	UNIPHIER_PINCTRL_PIN(228, "VI1Y3", UNIPHIER_PIN_IECTRL_NONE,
709 			     -1, UNIPHIER_PIN_DRV_FIXED8,
710 			     228, UNIPHIER_PIN_PULL_DOWN),
711 	UNIPHIER_PINCTRL_PIN(229, "VI1Y4", UNIPHIER_PIN_IECTRL_NONE,
712 			     -1, UNIPHIER_PIN_DRV_FIXED8,
713 			     229, UNIPHIER_PIN_PULL_DOWN),
714 	UNIPHIER_PINCTRL_PIN(230, "VI1Y5", UNIPHIER_PIN_IECTRL_NONE,
715 			     -1, UNIPHIER_PIN_DRV_FIXED8,
716 			     230, UNIPHIER_PIN_PULL_DOWN),
717 	UNIPHIER_PINCTRL_PIN(231, "VI1Y6", UNIPHIER_PIN_IECTRL_NONE,
718 			     -1, UNIPHIER_PIN_DRV_FIXED8,
719 			     231, UNIPHIER_PIN_PULL_DOWN),
720 	UNIPHIER_PINCTRL_PIN(232, "VI1Y7", UNIPHIER_PIN_IECTRL_NONE,
721 			     -1, UNIPHIER_PIN_DRV_FIXED8,
722 			     232, UNIPHIER_PIN_PULL_DOWN),
723 	UNIPHIER_PINCTRL_PIN(233, "VI1Y8", UNIPHIER_PIN_IECTRL_NONE,
724 			     -1, UNIPHIER_PIN_DRV_FIXED8,
725 			     233, UNIPHIER_PIN_PULL_DOWN),
726 	UNIPHIER_PINCTRL_PIN(234, "VI1Y9", UNIPHIER_PIN_IECTRL_NONE,
727 			     -1, UNIPHIER_PIN_DRV_FIXED8,
728 			     234, UNIPHIER_PIN_PULL_DOWN),
729 	UNIPHIER_PINCTRL_PIN(235, "VI1DE", UNIPHIER_PIN_IECTRL_NONE,
730 			     -1, UNIPHIER_PIN_DRV_FIXED8,
731 			     235, UNIPHIER_PIN_PULL_DOWN),
732 	UNIPHIER_PINCTRL_PIN(236, "VI1HSYNC", UNIPHIER_PIN_IECTRL_NONE,
733 			     -1, UNIPHIER_PIN_DRV_FIXED8,
734 			     236, UNIPHIER_PIN_PULL_DOWN),
735 	UNIPHIER_PINCTRL_PIN(237, "VI1VSYNC", UNIPHIER_PIN_IECTRL_NONE,
736 			     -1, UNIPHIER_PIN_DRV_FIXED8,
737 			     237, UNIPHIER_PIN_PULL_DOWN),
738 	UNIPHIER_PINCTRL_PIN(238, "VO1CLK", UNIPHIER_PIN_IECTRL_NONE,
739 			     -1, UNIPHIER_PIN_DRV_FIXED8,
740 			     238, UNIPHIER_PIN_PULL_DOWN),
741 	UNIPHIER_PINCTRL_PIN(239, "VO1D0", UNIPHIER_PIN_IECTRL_NONE,
742 			     -1, UNIPHIER_PIN_DRV_FIXED8,
743 			     239, UNIPHIER_PIN_PULL_DOWN),
744 	UNIPHIER_PINCTRL_PIN(240, "VO1D1", UNIPHIER_PIN_IECTRL_NONE,
745 			     -1, UNIPHIER_PIN_DRV_FIXED8,
746 			     240, UNIPHIER_PIN_PULL_DOWN),
747 	UNIPHIER_PINCTRL_PIN(241, "VO1D2", UNIPHIER_PIN_IECTRL_NONE,
748 			     -1, UNIPHIER_PIN_DRV_FIXED8,
749 			     241, UNIPHIER_PIN_PULL_DOWN),
750 	UNIPHIER_PINCTRL_PIN(242, "VO1D3", UNIPHIER_PIN_IECTRL_NONE,
751 			     -1, UNIPHIER_PIN_DRV_FIXED8,
752 			     242, UNIPHIER_PIN_PULL_DOWN),
753 	UNIPHIER_PINCTRL_PIN(243, "VO1D4", UNIPHIER_PIN_IECTRL_NONE,
754 			     -1, UNIPHIER_PIN_DRV_FIXED8,
755 			     243, UNIPHIER_PIN_PULL_DOWN),
756 	UNIPHIER_PINCTRL_PIN(244, "VO1D5", UNIPHIER_PIN_IECTRL_NONE,
757 			     -1, UNIPHIER_PIN_DRV_FIXED8,
758 			     244, UNIPHIER_PIN_PULL_DOWN),
759 	UNIPHIER_PINCTRL_PIN(245, "VO1D6", UNIPHIER_PIN_IECTRL_NONE,
760 			     -1, UNIPHIER_PIN_DRV_FIXED8,
761 			     245, UNIPHIER_PIN_PULL_DOWN),
762 	UNIPHIER_PINCTRL_PIN(246, "VO1D7", UNIPHIER_PIN_IECTRL_NONE,
763 			     -1, UNIPHIER_PIN_DRV_FIXED8,
764 			     246, UNIPHIER_PIN_PULL_DOWN),
765 	UNIPHIER_PINCTRL_PIN(247, "SDCD", UNIPHIER_PIN_IECTRL_NONE,
766 			     -1, UNIPHIER_PIN_DRV_FIXED8,
767 			     247, UNIPHIER_PIN_PULL_UP),
768 	UNIPHIER_PINCTRL_PIN(248, "SDWP", UNIPHIER_PIN_IECTRL_NONE,
769 			     -1, UNIPHIER_PIN_DRV_FIXED8,
770 			     248, UNIPHIER_PIN_PULL_UP),
771 	UNIPHIER_PINCTRL_PIN(249, "SDVOLC", UNIPHIER_PIN_IECTRL_NONE,
772 			     -1, UNIPHIER_PIN_DRV_FIXED8,
773 			     249, UNIPHIER_PIN_PULL_UP),
774 	UNIPHIER_PINCTRL_PIN(250, "SDCLK", UNIPHIER_PIN_IECTRL_NONE,
775 			     10, UNIPHIER_PIN_DRV_2BIT,
776 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
777 	UNIPHIER_PINCTRL_PIN(251, "SDCMD", UNIPHIER_PIN_IECTRL_NONE,
778 			     11, UNIPHIER_PIN_DRV_2BIT,
779 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
780 	UNIPHIER_PINCTRL_PIN(252, "SDDAT0", UNIPHIER_PIN_IECTRL_NONE,
781 			     12, UNIPHIER_PIN_DRV_2BIT,
782 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
783 	UNIPHIER_PINCTRL_PIN(253, "SDDAT1", UNIPHIER_PIN_IECTRL_NONE,
784 			     13, UNIPHIER_PIN_DRV_2BIT,
785 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
786 	UNIPHIER_PINCTRL_PIN(254, "SDDAT2", UNIPHIER_PIN_IECTRL_NONE,
787 			     14, UNIPHIER_PIN_DRV_2BIT,
788 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
789 	UNIPHIER_PINCTRL_PIN(255, "SDDAT3", UNIPHIER_PIN_IECTRL_NONE,
790 			     15, UNIPHIER_PIN_DRV_2BIT,
791 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
792 };
793 
794 static const unsigned emmc_pins[] = {36, 37, 38, 39, 40, 41, 42};
795 static const int emmc_muxvals[] = {0, 0, 0, 0, 0, 0, 0};
796 static const unsigned emmc_dat8_pins[] = {43, 44, 45, 46};
797 static const int emmc_dat8_muxvals[] = {0, 0, 0, 0};
798 static const unsigned i2c0_pins[] = {112, 113};
799 static const int i2c0_muxvals[] = {0, 0};
800 static const unsigned i2c1_pins[] = {114, 115};
801 static const int i2c1_muxvals[] = {0, 0};
802 static const unsigned i2c2_pins[] = {116, 117};
803 static const int i2c2_muxvals[] = {0, 0};
804 static const unsigned i2c3_pins[] = {118, 119};
805 static const int i2c3_muxvals[] = {0, 0};
806 static const unsigned i2c5_pins[] = {87, 88};
807 static const int i2c5_muxvals[] = {2, 2};
808 static const unsigned i2c5b_pins[] = {196, 197};
809 static const int i2c5b_muxvals[] = {2, 2};
810 static const unsigned i2c5c_pins[] = {215, 216};
811 static const int i2c5c_muxvals[] = {2, 2};
812 static const unsigned i2c6_pins[] = {101, 102};
813 static const int i2c6_muxvals[] = {2, 2};
814 static const unsigned nand_pins[] = {19, 20, 21, 22, 23, 24, 25, 28, 29, 30,
815 				     31, 32, 33, 34, 35};
816 static const int nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
817 static const unsigned nand_cs1_pins[] = {26, 27};
818 static const int nand_cs1_muxvals[] = {0, 0};
819 static const unsigned sd_pins[] = {250, 251, 252, 253, 254, 255, 256, 257, 258};
820 static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0};
821 static const unsigned system_bus_pins[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
822 					   14, 15, 16, 17};
823 static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
824 					 0};
825 static const unsigned system_bus_cs0_pins[] = {105};
826 static const int system_bus_cs0_muxvals[] = {1};
827 static const unsigned system_bus_cs1_pins[] = {18};
828 static const int system_bus_cs1_muxvals[] = {0};
829 static const unsigned system_bus_cs2_pins[] = {106};
830 static const int system_bus_cs2_muxvals[] = {1};
831 static const unsigned system_bus_cs3_pins[] = {100};
832 static const int system_bus_cs3_muxvals[] = {1};
833 static const unsigned system_bus_cs4_pins[] = {101};
834 static const int system_bus_cs4_muxvals[] = {1};
835 static const unsigned system_bus_cs5_pins[] = {102};
836 static const int system_bus_cs5_muxvals[] = {1};
837 static const unsigned system_bus_cs6_pins[] = {69};
838 static const int system_bus_cs6_muxvals[] = {5};
839 static const unsigned system_bus_cs7_pins[] = {70};
840 static const int system_bus_cs7_muxvals[] = {5};
841 static const unsigned uart0_pins[] = {47, 48};
842 static const int uart0_muxvals[] = {0, 0};
843 static const unsigned uart0b_pins[] = {227, 228};
844 static const int uart0b_muxvals[] = {3, 3};
845 static const unsigned uart1_pins[] = {49, 50};
846 static const int uart1_muxvals[] = {0, 0};
847 static const unsigned uart2_pins[] = {51, 52};
848 static const int uart2_muxvals[] = {0, 0};
849 static const unsigned uart3_pins[] = {53, 54};
850 static const int uart3_muxvals[] = {0, 0};
851 static const unsigned usb0_pins[] = {124, 125};
852 static const int usb0_muxvals[] = {0, 0};
853 static const unsigned usb1_pins[] = {126, 127};
854 static const int usb1_muxvals[] = {0, 0};
855 static const unsigned usb2_pins[] = {128, 129};
856 static const int usb2_muxvals[] = {0, 0};
857 static const unsigned port_range0_pins[] = {
858 	89, 90, 91, 92, 93, 94, 95, 96,			/* PORT0x */
859 	97, 98, 99, 100, 101, 102, 103, 104,		/* PORT1x */
860 	251, 252, 253, 254, 255, 247, 248, 249,		/* PORT2x */
861 	39, 40, 41, 42, 43, 44, 45, 46,			/* PORT3x */
862 	156, 157, 158, 159, 160, 161, 162, 163,		/* PORT4x */
863 	164, 165, 166, 167, 168, 169, 170, 171,		/* PORT5x */
864 	190, 191, 192, 193, 194, 195, 196, 197,		/* PORT6x */
865 	198, 199, 200, 201, 202, 203, 204, 205,		/* PORT7x */
866 	120, 121, 122, 123, 55, 56, 57, 58,		/* PORT8x */
867 	124, 125, 126, 127, 49, 50, 53, 54,		/* PORT9x */
868 	148, 149, 150, 151, 152, 153, 154, 155,		/* PORT10x */
869 	133, 134, 131, 130, 138, 139, 136, 135,		/* PORT11x */
870 	28, 29, 30, 31, 32, 33, 34, 35,			/* PORT12x */
871 	179, 180, 181, 182, 186, 187, 188, 189,		/* PORT13x */
872 	4, 5, 6, 7, 8, 9, 10, 11,			/* PORT14x */
873 };
874 static const int port_range0_muxvals[] = {
875 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT0x */
876 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT1x */
877 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT2x */
878 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT3x */
879 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT4x */
880 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT5x */
881 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT6x */
882 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT7x */
883 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT8x */
884 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT9x */
885 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT10x */
886 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT11x */
887 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT12x */
888 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT13x */
889 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT14x */
890 };
891 static const unsigned port_range1_pins[] = {
892 	109, 110, 111,					/* PORT175-177 */
893 	206, 207, 208, 209, 210, 211, 212, 213,		/* PORT18x */
894 	12, 13, 14, 15, 16, 17, 107, 108,		/* PORT19x */
895 	140, 141, 142, 143, 144, 145, 146, 147,		/* PORT20x */
896 	59, 60, 61, 62, 63, 64, 65, 66,			/* PORT21x */
897 	214, 215, 216, 217, 218, 219, 220, 221,		/* PORT22x */
898 	222, 223, 224, 225, 226, 227, 228, 229,		/* PORT23x */
899 	19, 20, 21, 22, 23, 24, 25, 26,			/* PORT24x */
900 	230, 231, 232, 233, 234, 235, 236, 237,		/* PORT25x */
901 	239, 240, 241, 242, 243, 244, 245, 246,		/* PORT26x */
902 	172, 173, 174, 175, 176, 177, 178, 129,		/* PORT27x */
903 	0, 1, 2, 67, 85, 86, 87, 88,			/* PORT28x */
904 	105, 106, 18, 27, 36, 128, 132, 137,		/* PORT29x */
905 	183, 184, 185, 84, 47, 48, 51, 52,		/* PORT30x */
906 };
907 static const int port_range1_muxvals[] = {
908 	15, 15, 15,					/* PORT175-177 */
909 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT18x */
910 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT19x */
911 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT20x */
912 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT21x */
913 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT22x */
914 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT23x */
915 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT24x */
916 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT25x */
917 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT26x */
918 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT27x */
919 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT28x */
920 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT29x */
921 	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT30x */
922 };
923 static const unsigned xirq_pins[] = {
924 	68, 69, 70, 71, 72, 73, 74, 75,			/* XIRQ0-7 */
925 	76, 77, 78, 79, 80, 81, 82, 83,			/* XIRQ8-15 */
926 	84, 85, 86, 87, 88,				/* XIRQ16-20 */
927 };
928 static const int xirq_muxvals[] = {
929 	14, 14, 14, 14, 14, 14, 14, 14,			/* XIRQ0-7 */
930 	14, 14, 14, 14, 14, 14, 14, 14,			/* XIRQ8-15 */
931 	14, 14, 14, 14, 14,				/* XIRQ16-20 */
932 };
933 static const unsigned xirq_alternatives_pins[] = {
934 	91, 92, 239, 144, 240, 156, 241, 106, 128,
935 };
936 static const int xirq_alternatives_muxvals[] = {
937 	14, 14, 14, 14, 14, 14, 14, 14, 14,
938 };
939 
940 static const struct uniphier_pinctrl_group uniphier_pro5_groups[] = {
941 	UNIPHIER_PINCTRL_GROUP(nand),
942 	UNIPHIER_PINCTRL_GROUP(nand_cs1),
943 	UNIPHIER_PINCTRL_GROUP(emmc),
944 	UNIPHIER_PINCTRL_GROUP(emmc_dat8),
945 	UNIPHIER_PINCTRL_GROUP(i2c0),
946 	UNIPHIER_PINCTRL_GROUP(i2c1),
947 	UNIPHIER_PINCTRL_GROUP(i2c2),
948 	UNIPHIER_PINCTRL_GROUP(i2c3),
949 	UNIPHIER_PINCTRL_GROUP(i2c5),
950 	UNIPHIER_PINCTRL_GROUP(i2c5b),
951 	UNIPHIER_PINCTRL_GROUP(i2c5c),
952 	UNIPHIER_PINCTRL_GROUP(i2c6),
953 	UNIPHIER_PINCTRL_GROUP(sd),
954 	UNIPHIER_PINCTRL_GROUP(system_bus),
955 	UNIPHIER_PINCTRL_GROUP(system_bus_cs0),
956 	UNIPHIER_PINCTRL_GROUP(system_bus_cs1),
957 	UNIPHIER_PINCTRL_GROUP(system_bus_cs2),
958 	UNIPHIER_PINCTRL_GROUP(system_bus_cs3),
959 	UNIPHIER_PINCTRL_GROUP(system_bus_cs4),
960 	UNIPHIER_PINCTRL_GROUP(system_bus_cs5),
961 	UNIPHIER_PINCTRL_GROUP(system_bus_cs6),
962 	UNIPHIER_PINCTRL_GROUP(system_bus_cs7),
963 	UNIPHIER_PINCTRL_GROUP(uart0),
964 	UNIPHIER_PINCTRL_GROUP(uart0b),
965 	UNIPHIER_PINCTRL_GROUP(uart1),
966 	UNIPHIER_PINCTRL_GROUP(uart2),
967 	UNIPHIER_PINCTRL_GROUP(uart3),
968 	UNIPHIER_PINCTRL_GROUP(usb0),
969 	UNIPHIER_PINCTRL_GROUP(usb1),
970 	UNIPHIER_PINCTRL_GROUP(usb2),
971 	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range0),
972 	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range1),
973 	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq),
974 	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq_alternatives),
975 	UNIPHIER_PINCTRL_GROUP_SINGLE(port00, port_range0, 0),
976 	UNIPHIER_PINCTRL_GROUP_SINGLE(port01, port_range0, 1),
977 	UNIPHIER_PINCTRL_GROUP_SINGLE(port02, port_range0, 2),
978 	UNIPHIER_PINCTRL_GROUP_SINGLE(port03, port_range0, 3),
979 	UNIPHIER_PINCTRL_GROUP_SINGLE(port04, port_range0, 4),
980 	UNIPHIER_PINCTRL_GROUP_SINGLE(port05, port_range0, 5),
981 	UNIPHIER_PINCTRL_GROUP_SINGLE(port06, port_range0, 6),
982 	UNIPHIER_PINCTRL_GROUP_SINGLE(port07, port_range0, 7),
983 	UNIPHIER_PINCTRL_GROUP_SINGLE(port10, port_range0, 8),
984 	UNIPHIER_PINCTRL_GROUP_SINGLE(port11, port_range0, 9),
985 	UNIPHIER_PINCTRL_GROUP_SINGLE(port12, port_range0, 10),
986 	UNIPHIER_PINCTRL_GROUP_SINGLE(port13, port_range0, 11),
987 	UNIPHIER_PINCTRL_GROUP_SINGLE(port14, port_range0, 12),
988 	UNIPHIER_PINCTRL_GROUP_SINGLE(port15, port_range0, 13),
989 	UNIPHIER_PINCTRL_GROUP_SINGLE(port16, port_range0, 14),
990 	UNIPHIER_PINCTRL_GROUP_SINGLE(port17, port_range0, 15),
991 	UNIPHIER_PINCTRL_GROUP_SINGLE(port20, port_range0, 16),
992 	UNIPHIER_PINCTRL_GROUP_SINGLE(port21, port_range0, 17),
993 	UNIPHIER_PINCTRL_GROUP_SINGLE(port22, port_range0, 18),
994 	UNIPHIER_PINCTRL_GROUP_SINGLE(port23, port_range0, 19),
995 	UNIPHIER_PINCTRL_GROUP_SINGLE(port24, port_range0, 20),
996 	UNIPHIER_PINCTRL_GROUP_SINGLE(port25, port_range0, 21),
997 	UNIPHIER_PINCTRL_GROUP_SINGLE(port26, port_range0, 22),
998 	UNIPHIER_PINCTRL_GROUP_SINGLE(port27, port_range0, 23),
999 	UNIPHIER_PINCTRL_GROUP_SINGLE(port30, port_range0, 24),
1000 	UNIPHIER_PINCTRL_GROUP_SINGLE(port31, port_range0, 25),
1001 	UNIPHIER_PINCTRL_GROUP_SINGLE(port32, port_range0, 26),
1002 	UNIPHIER_PINCTRL_GROUP_SINGLE(port33, port_range0, 27),
1003 	UNIPHIER_PINCTRL_GROUP_SINGLE(port34, port_range0, 28),
1004 	UNIPHIER_PINCTRL_GROUP_SINGLE(port35, port_range0, 29),
1005 	UNIPHIER_PINCTRL_GROUP_SINGLE(port36, port_range0, 30),
1006 	UNIPHIER_PINCTRL_GROUP_SINGLE(port37, port_range0, 31),
1007 	UNIPHIER_PINCTRL_GROUP_SINGLE(port40, port_range0, 32),
1008 	UNIPHIER_PINCTRL_GROUP_SINGLE(port41, port_range0, 33),
1009 	UNIPHIER_PINCTRL_GROUP_SINGLE(port42, port_range0, 34),
1010 	UNIPHIER_PINCTRL_GROUP_SINGLE(port43, port_range0, 35),
1011 	UNIPHIER_PINCTRL_GROUP_SINGLE(port44, port_range0, 36),
1012 	UNIPHIER_PINCTRL_GROUP_SINGLE(port45, port_range0, 37),
1013 	UNIPHIER_PINCTRL_GROUP_SINGLE(port46, port_range0, 38),
1014 	UNIPHIER_PINCTRL_GROUP_SINGLE(port47, port_range0, 39),
1015 	UNIPHIER_PINCTRL_GROUP_SINGLE(port50, port_range0, 40),
1016 	UNIPHIER_PINCTRL_GROUP_SINGLE(port51, port_range0, 41),
1017 	UNIPHIER_PINCTRL_GROUP_SINGLE(port52, port_range0, 42),
1018 	UNIPHIER_PINCTRL_GROUP_SINGLE(port53, port_range0, 43),
1019 	UNIPHIER_PINCTRL_GROUP_SINGLE(port54, port_range0, 44),
1020 	UNIPHIER_PINCTRL_GROUP_SINGLE(port55, port_range0, 45),
1021 	UNIPHIER_PINCTRL_GROUP_SINGLE(port56, port_range0, 46),
1022 	UNIPHIER_PINCTRL_GROUP_SINGLE(port57, port_range0, 47),
1023 	UNIPHIER_PINCTRL_GROUP_SINGLE(port60, port_range0, 48),
1024 	UNIPHIER_PINCTRL_GROUP_SINGLE(port61, port_range0, 49),
1025 	UNIPHIER_PINCTRL_GROUP_SINGLE(port62, port_range0, 50),
1026 	UNIPHIER_PINCTRL_GROUP_SINGLE(port63, port_range0, 51),
1027 	UNIPHIER_PINCTRL_GROUP_SINGLE(port64, port_range0, 52),
1028 	UNIPHIER_PINCTRL_GROUP_SINGLE(port65, port_range0, 53),
1029 	UNIPHIER_PINCTRL_GROUP_SINGLE(port66, port_range0, 54),
1030 	UNIPHIER_PINCTRL_GROUP_SINGLE(port67, port_range0, 55),
1031 	UNIPHIER_PINCTRL_GROUP_SINGLE(port70, port_range0, 56),
1032 	UNIPHIER_PINCTRL_GROUP_SINGLE(port71, port_range0, 57),
1033 	UNIPHIER_PINCTRL_GROUP_SINGLE(port72, port_range0, 58),
1034 	UNIPHIER_PINCTRL_GROUP_SINGLE(port73, port_range0, 59),
1035 	UNIPHIER_PINCTRL_GROUP_SINGLE(port74, port_range0, 60),
1036 	UNIPHIER_PINCTRL_GROUP_SINGLE(port75, port_range0, 61),
1037 	UNIPHIER_PINCTRL_GROUP_SINGLE(port76, port_range0, 62),
1038 	UNIPHIER_PINCTRL_GROUP_SINGLE(port77, port_range0, 63),
1039 	UNIPHIER_PINCTRL_GROUP_SINGLE(port80, port_range0, 64),
1040 	UNIPHIER_PINCTRL_GROUP_SINGLE(port81, port_range0, 65),
1041 	UNIPHIER_PINCTRL_GROUP_SINGLE(port82, port_range0, 66),
1042 	UNIPHIER_PINCTRL_GROUP_SINGLE(port83, port_range0, 67),
1043 	UNIPHIER_PINCTRL_GROUP_SINGLE(port84, port_range0, 68),
1044 	UNIPHIER_PINCTRL_GROUP_SINGLE(port85, port_range0, 69),
1045 	UNIPHIER_PINCTRL_GROUP_SINGLE(port86, port_range0, 70),
1046 	UNIPHIER_PINCTRL_GROUP_SINGLE(port87, port_range0, 71),
1047 	UNIPHIER_PINCTRL_GROUP_SINGLE(port90, port_range0, 72),
1048 	UNIPHIER_PINCTRL_GROUP_SINGLE(port91, port_range0, 73),
1049 	UNIPHIER_PINCTRL_GROUP_SINGLE(port92, port_range0, 74),
1050 	UNIPHIER_PINCTRL_GROUP_SINGLE(port93, port_range0, 75),
1051 	UNIPHIER_PINCTRL_GROUP_SINGLE(port94, port_range0, 76),
1052 	UNIPHIER_PINCTRL_GROUP_SINGLE(port95, port_range0, 77),
1053 	UNIPHIER_PINCTRL_GROUP_SINGLE(port96, port_range0, 78),
1054 	UNIPHIER_PINCTRL_GROUP_SINGLE(port97, port_range0, 79),
1055 	UNIPHIER_PINCTRL_GROUP_SINGLE(port100, port_range0, 80),
1056 	UNIPHIER_PINCTRL_GROUP_SINGLE(port101, port_range0, 81),
1057 	UNIPHIER_PINCTRL_GROUP_SINGLE(port102, port_range0, 82),
1058 	UNIPHIER_PINCTRL_GROUP_SINGLE(port103, port_range0, 83),
1059 	UNIPHIER_PINCTRL_GROUP_SINGLE(port104, port_range0, 84),
1060 	UNIPHIER_PINCTRL_GROUP_SINGLE(port105, port_range0, 85),
1061 	UNIPHIER_PINCTRL_GROUP_SINGLE(port106, port_range0, 86),
1062 	UNIPHIER_PINCTRL_GROUP_SINGLE(port107, port_range0, 87),
1063 	UNIPHIER_PINCTRL_GROUP_SINGLE(port110, port_range0, 88),
1064 	UNIPHIER_PINCTRL_GROUP_SINGLE(port111, port_range0, 89),
1065 	UNIPHIER_PINCTRL_GROUP_SINGLE(port112, port_range0, 90),
1066 	UNIPHIER_PINCTRL_GROUP_SINGLE(port113, port_range0, 91),
1067 	UNIPHIER_PINCTRL_GROUP_SINGLE(port114, port_range0, 92),
1068 	UNIPHIER_PINCTRL_GROUP_SINGLE(port115, port_range0, 93),
1069 	UNIPHIER_PINCTRL_GROUP_SINGLE(port116, port_range0, 94),
1070 	UNIPHIER_PINCTRL_GROUP_SINGLE(port117, port_range0, 95),
1071 	UNIPHIER_PINCTRL_GROUP_SINGLE(port120, port_range0, 96),
1072 	UNIPHIER_PINCTRL_GROUP_SINGLE(port121, port_range0, 97),
1073 	UNIPHIER_PINCTRL_GROUP_SINGLE(port122, port_range0, 98),
1074 	UNIPHIER_PINCTRL_GROUP_SINGLE(port123, port_range0, 99),
1075 	UNIPHIER_PINCTRL_GROUP_SINGLE(port124, port_range0, 100),
1076 	UNIPHIER_PINCTRL_GROUP_SINGLE(port125, port_range0, 101),
1077 	UNIPHIER_PINCTRL_GROUP_SINGLE(port126, port_range0, 102),
1078 	UNIPHIER_PINCTRL_GROUP_SINGLE(port127, port_range0, 103),
1079 	UNIPHIER_PINCTRL_GROUP_SINGLE(port130, port_range0, 104),
1080 	UNIPHIER_PINCTRL_GROUP_SINGLE(port131, port_range0, 105),
1081 	UNIPHIER_PINCTRL_GROUP_SINGLE(port132, port_range0, 106),
1082 	UNIPHIER_PINCTRL_GROUP_SINGLE(port133, port_range0, 107),
1083 	UNIPHIER_PINCTRL_GROUP_SINGLE(port134, port_range0, 108),
1084 	UNIPHIER_PINCTRL_GROUP_SINGLE(port135, port_range0, 109),
1085 	UNIPHIER_PINCTRL_GROUP_SINGLE(port136, port_range0, 110),
1086 	UNIPHIER_PINCTRL_GROUP_SINGLE(port137, port_range0, 111),
1087 	UNIPHIER_PINCTRL_GROUP_SINGLE(port140, port_range0, 112),
1088 	UNIPHIER_PINCTRL_GROUP_SINGLE(port141, port_range0, 113),
1089 	UNIPHIER_PINCTRL_GROUP_SINGLE(port142, port_range0, 114),
1090 	UNIPHIER_PINCTRL_GROUP_SINGLE(port143, port_range0, 115),
1091 	UNIPHIER_PINCTRL_GROUP_SINGLE(port144, port_range0, 116),
1092 	UNIPHIER_PINCTRL_GROUP_SINGLE(port145, port_range0, 117),
1093 	UNIPHIER_PINCTRL_GROUP_SINGLE(port146, port_range0, 118),
1094 	UNIPHIER_PINCTRL_GROUP_SINGLE(port147, port_range0, 119),
1095 	UNIPHIER_PINCTRL_GROUP_SINGLE(port175, port_range1, 0),
1096 	UNIPHIER_PINCTRL_GROUP_SINGLE(port176, port_range1, 1),
1097 	UNIPHIER_PINCTRL_GROUP_SINGLE(port177, port_range1, 2),
1098 	UNIPHIER_PINCTRL_GROUP_SINGLE(port180, port_range1, 3),
1099 	UNIPHIER_PINCTRL_GROUP_SINGLE(port181, port_range1, 4),
1100 	UNIPHIER_PINCTRL_GROUP_SINGLE(port182, port_range1, 5),
1101 	UNIPHIER_PINCTRL_GROUP_SINGLE(port183, port_range1, 6),
1102 	UNIPHIER_PINCTRL_GROUP_SINGLE(port184, port_range1, 7),
1103 	UNIPHIER_PINCTRL_GROUP_SINGLE(port185, port_range1, 8),
1104 	UNIPHIER_PINCTRL_GROUP_SINGLE(port186, port_range1, 9),
1105 	UNIPHIER_PINCTRL_GROUP_SINGLE(port187, port_range1, 10),
1106 	UNIPHIER_PINCTRL_GROUP_SINGLE(port190, port_range1, 11),
1107 	UNIPHIER_PINCTRL_GROUP_SINGLE(port191, port_range1, 12),
1108 	UNIPHIER_PINCTRL_GROUP_SINGLE(port192, port_range1, 13),
1109 	UNIPHIER_PINCTRL_GROUP_SINGLE(port193, port_range1, 14),
1110 	UNIPHIER_PINCTRL_GROUP_SINGLE(port194, port_range1, 15),
1111 	UNIPHIER_PINCTRL_GROUP_SINGLE(port195, port_range1, 16),
1112 	UNIPHIER_PINCTRL_GROUP_SINGLE(port196, port_range1, 17),
1113 	UNIPHIER_PINCTRL_GROUP_SINGLE(port197, port_range1, 18),
1114 	UNIPHIER_PINCTRL_GROUP_SINGLE(port200, port_range1, 19),
1115 	UNIPHIER_PINCTRL_GROUP_SINGLE(port201, port_range1, 20),
1116 	UNIPHIER_PINCTRL_GROUP_SINGLE(port202, port_range1, 21),
1117 	UNIPHIER_PINCTRL_GROUP_SINGLE(port203, port_range1, 22),
1118 	UNIPHIER_PINCTRL_GROUP_SINGLE(port204, port_range1, 23),
1119 	UNIPHIER_PINCTRL_GROUP_SINGLE(port205, port_range1, 24),
1120 	UNIPHIER_PINCTRL_GROUP_SINGLE(port206, port_range1, 25),
1121 	UNIPHIER_PINCTRL_GROUP_SINGLE(port207, port_range1, 26),
1122 	UNIPHIER_PINCTRL_GROUP_SINGLE(port210, port_range1, 27),
1123 	UNIPHIER_PINCTRL_GROUP_SINGLE(port211, port_range1, 28),
1124 	UNIPHIER_PINCTRL_GROUP_SINGLE(port212, port_range1, 29),
1125 	UNIPHIER_PINCTRL_GROUP_SINGLE(port213, port_range1, 30),
1126 	UNIPHIER_PINCTRL_GROUP_SINGLE(port214, port_range1, 31),
1127 	UNIPHIER_PINCTRL_GROUP_SINGLE(port215, port_range1, 32),
1128 	UNIPHIER_PINCTRL_GROUP_SINGLE(port216, port_range1, 33),
1129 	UNIPHIER_PINCTRL_GROUP_SINGLE(port217, port_range1, 34),
1130 	UNIPHIER_PINCTRL_GROUP_SINGLE(port220, port_range1, 35),
1131 	UNIPHIER_PINCTRL_GROUP_SINGLE(port221, port_range1, 36),
1132 	UNIPHIER_PINCTRL_GROUP_SINGLE(port222, port_range1, 37),
1133 	UNIPHIER_PINCTRL_GROUP_SINGLE(port223, port_range1, 38),
1134 	UNIPHIER_PINCTRL_GROUP_SINGLE(port224, port_range1, 39),
1135 	UNIPHIER_PINCTRL_GROUP_SINGLE(port225, port_range1, 40),
1136 	UNIPHIER_PINCTRL_GROUP_SINGLE(port226, port_range1, 41),
1137 	UNIPHIER_PINCTRL_GROUP_SINGLE(port227, port_range1, 42),
1138 	UNIPHIER_PINCTRL_GROUP_SINGLE(port230, port_range1, 43),
1139 	UNIPHIER_PINCTRL_GROUP_SINGLE(port231, port_range1, 44),
1140 	UNIPHIER_PINCTRL_GROUP_SINGLE(port232, port_range1, 45),
1141 	UNIPHIER_PINCTRL_GROUP_SINGLE(port233, port_range1, 46),
1142 	UNIPHIER_PINCTRL_GROUP_SINGLE(port234, port_range1, 47),
1143 	UNIPHIER_PINCTRL_GROUP_SINGLE(port235, port_range1, 48),
1144 	UNIPHIER_PINCTRL_GROUP_SINGLE(port236, port_range1, 49),
1145 	UNIPHIER_PINCTRL_GROUP_SINGLE(port237, port_range1, 50),
1146 	UNIPHIER_PINCTRL_GROUP_SINGLE(port240, port_range1, 51),
1147 	UNIPHIER_PINCTRL_GROUP_SINGLE(port241, port_range1, 52),
1148 	UNIPHIER_PINCTRL_GROUP_SINGLE(port242, port_range1, 53),
1149 	UNIPHIER_PINCTRL_GROUP_SINGLE(port243, port_range1, 54),
1150 	UNIPHIER_PINCTRL_GROUP_SINGLE(port244, port_range1, 55),
1151 	UNIPHIER_PINCTRL_GROUP_SINGLE(port245, port_range1, 56),
1152 	UNIPHIER_PINCTRL_GROUP_SINGLE(port246, port_range1, 57),
1153 	UNIPHIER_PINCTRL_GROUP_SINGLE(port247, port_range1, 58),
1154 	UNIPHIER_PINCTRL_GROUP_SINGLE(port250, port_range1, 59),
1155 	UNIPHIER_PINCTRL_GROUP_SINGLE(port251, port_range1, 60),
1156 	UNIPHIER_PINCTRL_GROUP_SINGLE(port252, port_range1, 61),
1157 	UNIPHIER_PINCTRL_GROUP_SINGLE(port253, port_range1, 62),
1158 	UNIPHIER_PINCTRL_GROUP_SINGLE(port254, port_range1, 63),
1159 	UNIPHIER_PINCTRL_GROUP_SINGLE(port255, port_range1, 64),
1160 	UNIPHIER_PINCTRL_GROUP_SINGLE(port256, port_range1, 65),
1161 	UNIPHIER_PINCTRL_GROUP_SINGLE(port257, port_range1, 66),
1162 	UNIPHIER_PINCTRL_GROUP_SINGLE(port260, port_range1, 67),
1163 	UNIPHIER_PINCTRL_GROUP_SINGLE(port261, port_range1, 68),
1164 	UNIPHIER_PINCTRL_GROUP_SINGLE(port262, port_range1, 69),
1165 	UNIPHIER_PINCTRL_GROUP_SINGLE(port263, port_range1, 70),
1166 	UNIPHIER_PINCTRL_GROUP_SINGLE(port264, port_range1, 71),
1167 	UNIPHIER_PINCTRL_GROUP_SINGLE(port265, port_range1, 72),
1168 	UNIPHIER_PINCTRL_GROUP_SINGLE(port266, port_range1, 73),
1169 	UNIPHIER_PINCTRL_GROUP_SINGLE(port267, port_range1, 74),
1170 	UNIPHIER_PINCTRL_GROUP_SINGLE(port270, port_range1, 75),
1171 	UNIPHIER_PINCTRL_GROUP_SINGLE(port271, port_range1, 76),
1172 	UNIPHIER_PINCTRL_GROUP_SINGLE(port272, port_range1, 77),
1173 	UNIPHIER_PINCTRL_GROUP_SINGLE(port273, port_range1, 78),
1174 	UNIPHIER_PINCTRL_GROUP_SINGLE(port274, port_range1, 79),
1175 	UNIPHIER_PINCTRL_GROUP_SINGLE(port275, port_range1, 80),
1176 	UNIPHIER_PINCTRL_GROUP_SINGLE(port276, port_range1, 81),
1177 	UNIPHIER_PINCTRL_GROUP_SINGLE(port277, port_range1, 82),
1178 	UNIPHIER_PINCTRL_GROUP_SINGLE(port280, port_range1, 83),
1179 	UNIPHIER_PINCTRL_GROUP_SINGLE(port281, port_range1, 84),
1180 	UNIPHIER_PINCTRL_GROUP_SINGLE(port282, port_range1, 85),
1181 	UNIPHIER_PINCTRL_GROUP_SINGLE(port283, port_range1, 86),
1182 	UNIPHIER_PINCTRL_GROUP_SINGLE(port284, port_range1, 87),
1183 	UNIPHIER_PINCTRL_GROUP_SINGLE(port285, port_range1, 88),
1184 	UNIPHIER_PINCTRL_GROUP_SINGLE(port286, port_range1, 89),
1185 	UNIPHIER_PINCTRL_GROUP_SINGLE(port287, port_range1, 90),
1186 	UNIPHIER_PINCTRL_GROUP_SINGLE(port290, port_range1, 91),
1187 	UNIPHIER_PINCTRL_GROUP_SINGLE(port291, port_range1, 92),
1188 	UNIPHIER_PINCTRL_GROUP_SINGLE(port292, port_range1, 93),
1189 	UNIPHIER_PINCTRL_GROUP_SINGLE(port293, port_range1, 94),
1190 	UNIPHIER_PINCTRL_GROUP_SINGLE(port294, port_range1, 95),
1191 	UNIPHIER_PINCTRL_GROUP_SINGLE(port295, port_range1, 96),
1192 	UNIPHIER_PINCTRL_GROUP_SINGLE(port296, port_range1, 97),
1193 	UNIPHIER_PINCTRL_GROUP_SINGLE(port297, port_range1, 98),
1194 	UNIPHIER_PINCTRL_GROUP_SINGLE(port300, port_range1, 99),
1195 	UNIPHIER_PINCTRL_GROUP_SINGLE(port301, port_range1, 100),
1196 	UNIPHIER_PINCTRL_GROUP_SINGLE(port302, port_range1, 101),
1197 	UNIPHIER_PINCTRL_GROUP_SINGLE(port303, port_range1, 102),
1198 	UNIPHIER_PINCTRL_GROUP_SINGLE(port304, port_range1, 103),
1199 	UNIPHIER_PINCTRL_GROUP_SINGLE(port305, port_range1, 104),
1200 	UNIPHIER_PINCTRL_GROUP_SINGLE(port306, port_range1, 105),
1201 	UNIPHIER_PINCTRL_GROUP_SINGLE(port307, port_range1, 106),
1202 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq0, xirq, 0),
1203 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq1, xirq, 1),
1204 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq2, xirq, 2),
1205 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq3, xirq, 3),
1206 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq4, xirq, 4),
1207 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq5, xirq, 5),
1208 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq6, xirq, 6),
1209 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq7, xirq, 7),
1210 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq8, xirq, 8),
1211 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq9, xirq, 9),
1212 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq10, xirq, 10),
1213 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq11, xirq, 11),
1214 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq12, xirq, 12),
1215 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq13, xirq, 13),
1216 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq14, xirq, 14),
1217 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq15, xirq, 15),
1218 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq16, xirq, 16),
1219 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq17, xirq, 17),
1220 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq18, xirq, 18),
1221 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq19, xirq, 19),
1222 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq20, xirq, 20),
1223 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq3b, xirq_alternatives, 0),
1224 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq4b, xirq_alternatives, 1),
1225 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq16b, xirq_alternatives, 2),
1226 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq17b, xirq_alternatives, 3),
1227 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq17c, xirq_alternatives, 4),
1228 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq18b, xirq_alternatives, 5),
1229 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq18c, xirq_alternatives, 6),
1230 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq19b, xirq_alternatives, 7),
1231 	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq20b, xirq_alternatives, 8),
1232 };
1233 
1234 static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
1235 static const char * const i2c0_groups[] = {"i2c0"};
1236 static const char * const i2c1_groups[] = {"i2c1"};
1237 static const char * const i2c2_groups[] = {"i2c2"};
1238 static const char * const i2c3_groups[] = {"i2c3"};
1239 static const char * const i2c5_groups[] = {"i2c5", "i2c5b", "i2c5c"};
1240 static const char * const i2c6_groups[] = {"i2c6"};
1241 static const char * const nand_groups[] = {"nand", "nand_cs1"};
1242 static const char * const sd_groups[] = {"sd"};
1243 static const char * const system_bus_groups[] = {"system_bus",
1244 						 "system_bus_cs0",
1245 						 "system_bus_cs1",
1246 						 "system_bus_cs2",
1247 						 "system_bus_cs3",
1248 						 "system_bus_cs4",
1249 						 "system_bus_cs5",
1250 						 "system_bus_cs6",
1251 						 "system_bus_cs7"};
1252 static const char * const uart0_groups[] = {"uart0", "uart0b"};
1253 static const char * const uart1_groups[] = {"uart1"};
1254 static const char * const uart2_groups[] = {"uart2"};
1255 static const char * const uart3_groups[] = {"uart3"};
1256 static const char * const usb0_groups[] = {"usb0"};
1257 static const char * const usb1_groups[] = {"usb1"};
1258 static const char * const usb2_groups[] = {"usb2"};
1259 static const char * const port_groups[] = {
1260 	"port00",  "port01",  "port02",  "port03",
1261 	"port04",  "port05",  "port06",  "port07",
1262 	"port10",  "port11",  "port12",  "port13",
1263 	"port14",  "port15",  "port16",  "port17",
1264 	"port20",  "port21",  "port22",  "port23",
1265 	"port24",  "port25",  "port26",  "port27",
1266 	"port30",  "port31",  "port32",  "port33",
1267 	"port34",  "port35",  "port36",  "port37",
1268 	"port40",  "port41",  "port42",  "port43",
1269 	"port44",  "port45",  "port46",  "port47",
1270 	"port50",  "port51",  "port52",  "port53",
1271 	"port54",  "port55",  "port56",  "port57",
1272 	"port60",  "port61",  "port62",  "port63",
1273 	"port64",  "port65",  "port66",  "port67",
1274 	"port70",  "port71",  "port72",  "port73",
1275 	"port74",  "port75",  "port76",  "port77",
1276 	"port80",  "port81",  "port82",  "port83",
1277 	"port84",  "port85",  "port86",  "port87",
1278 	"port90",  "port91",  "port92",  "port93",
1279 	"port94",  "port95",  "port96",  "port97",
1280 	"port100", "port101", "port102", "port103",
1281 	"port104", "port105", "port106", "port107",
1282 	"port110", "port111", "port112", "port113",
1283 	"port114", "port115", "port116", "port117",
1284 	"port120", "port121", "port122", "port123",
1285 	"port124", "port125", "port126", "port127",
1286 	"port130", "port131", "port132", "port133",
1287 	"port134", "port135", "port136", "port137",
1288 	"port140", "port141", "port142", "port143",
1289 	"port144", "port145", "port146", "port147",
1290 	/* port150-174 missing */
1291 	/* none */ "port175", "port176", "port177",
1292 	"port180", "port181", "port182", "port183",
1293 	"port184", "port185", "port186", "port187",
1294 	"port190", "port191", "port192", "port193",
1295 	"port194", "port195", "port196", "port197",
1296 	"port200", "port201", "port202", "port203",
1297 	"port204", "port205", "port206", "port207",
1298 	"port210", "port211", "port212", "port213",
1299 	"port214", "port215", "port216", "port217",
1300 	"port220", "port221", "port222", "port223",
1301 	"port224", "port225", "port226", "port227",
1302 	"port230", "port231", "port232", "port233",
1303 	"port234", "port235", "port236", "port237",
1304 	"port240", "port241", "port242", "port243",
1305 	"port244", "port245", "port246", "port247",
1306 	"port250", "port251", "port252", "port253",
1307 	"port254", "port255", "port256", "port257",
1308 	"port260", "port261", "port262", "port263",
1309 	"port264", "port265", "port266", "port267",
1310 	"port270", "port271", "port272", "port273",
1311 	"port274", "port275", "port276", "port277",
1312 	"port280", "port281", "port282", "port283",
1313 	"port284", "port285", "port286", "port287",
1314 	"port290", "port291", "port292", "port293",
1315 	"port294", "port295", "port296", "port297",
1316 	"port300", "port301", "port302", "port303",
1317 	"port304", "port305", "port306", "port307",
1318 };
1319 static const char * const xirq_groups[] = {
1320 	"xirq0",  "xirq1",  "xirq2",  "xirq3",
1321 	"xirq4",  "xirq5",  "xirq6",  "xirq7",
1322 	"xirq8",  "xirq9",  "xirq10", "xirq11",
1323 	"xirq12", "xirq13", "xirq14", "xirq15",
1324 	"xirq16", "xirq17", "xirq18", "xirq19",
1325 	"xirq20",
1326 	"xirq3b", "xirq4b", "xirq16b", "xirq17b", "xirq17c",
1327 	"xirq18b", "xirq18c", "xirq19b", "xirq20b",
1328 };
1329 
1330 static const struct uniphier_pinmux_function uniphier_pro5_functions[] = {
1331 	UNIPHIER_PINMUX_FUNCTION(emmc),
1332 	UNIPHIER_PINMUX_FUNCTION(i2c0),
1333 	UNIPHIER_PINMUX_FUNCTION(i2c1),
1334 	UNIPHIER_PINMUX_FUNCTION(i2c2),
1335 	UNIPHIER_PINMUX_FUNCTION(i2c3),
1336 	UNIPHIER_PINMUX_FUNCTION(i2c5),
1337 	UNIPHIER_PINMUX_FUNCTION(i2c6),
1338 	UNIPHIER_PINMUX_FUNCTION(nand),
1339 	UNIPHIER_PINMUX_FUNCTION(sd),
1340 	UNIPHIER_PINMUX_FUNCTION(system_bus),
1341 	UNIPHIER_PINMUX_FUNCTION(uart0),
1342 	UNIPHIER_PINMUX_FUNCTION(uart1),
1343 	UNIPHIER_PINMUX_FUNCTION(uart2),
1344 	UNIPHIER_PINMUX_FUNCTION(uart3),
1345 	UNIPHIER_PINMUX_FUNCTION(usb0),
1346 	UNIPHIER_PINMUX_FUNCTION(usb1),
1347 	UNIPHIER_PINMUX_FUNCTION(usb2),
1348 	UNIPHIER_PINMUX_FUNCTION(port),
1349 	UNIPHIER_PINMUX_FUNCTION(xirq),
1350 };
1351 
1352 static struct uniphier_pinctrl_socdata uniphier_pro5_pindata = {
1353 	.pins = uniphier_pro5_pins,
1354 	.npins = ARRAY_SIZE(uniphier_pro5_pins),
1355 	.groups = uniphier_pro5_groups,
1356 	.groups_count = ARRAY_SIZE(uniphier_pro5_groups),
1357 	.functions = uniphier_pro5_functions,
1358 	.functions_count = ARRAY_SIZE(uniphier_pro5_functions),
1359 	.caps = UNIPHIER_PINCTRL_CAPS_DBGMUX_SEPARATE,
1360 };
1361 
1362 static int uniphier_pro5_pinctrl_probe(struct platform_device *pdev)
1363 {
1364 	return uniphier_pinctrl_probe(pdev, &uniphier_pro5_pindata);
1365 }
1366 
1367 static const struct of_device_id uniphier_pro5_pinctrl_match[] = {
1368 	{ .compatible = "socionext,uniphier-pro5-pinctrl" },
1369 	{ /* sentinel */ }
1370 };
1371 
1372 static struct platform_driver uniphier_pro5_pinctrl_driver = {
1373 	.probe = uniphier_pro5_pinctrl_probe,
1374 	.driver = {
1375 		.name = "uniphier-pro5-pinctrl",
1376 		.of_match_table = uniphier_pro5_pinctrl_match,
1377 	},
1378 };
1379 builtin_platform_driver(uniphier_pro5_pinctrl_driver);
1380