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