pinctrl: uniphier: introduce capability flag
[cascardo/linux.git] / drivers / pinctrl / uniphier / pinctrl-uniphier-pxs2.c
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 program 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_pxs2_pins[] = {
23         UNIPHIER_PINCTRL_PIN(0, "ED0", UNIPHIER_PIN_IECTRL_NONE,
24                              0, UNIPHIER_PIN_DRV_1BIT,
25                              0, UNIPHIER_PIN_PULL_DOWN),
26         UNIPHIER_PINCTRL_PIN(1, "ED1", UNIPHIER_PIN_IECTRL_NONE,
27                              1, UNIPHIER_PIN_DRV_1BIT,
28                              1, UNIPHIER_PIN_PULL_DOWN),
29         UNIPHIER_PINCTRL_PIN(2, "ED2", UNIPHIER_PIN_IECTRL_NONE,
30                              2, UNIPHIER_PIN_DRV_1BIT,
31                              2, UNIPHIER_PIN_PULL_DOWN),
32         UNIPHIER_PINCTRL_PIN(3, "ED3", UNIPHIER_PIN_IECTRL_NONE,
33                              3, UNIPHIER_PIN_DRV_1BIT,
34                              3, UNIPHIER_PIN_PULL_DOWN),
35         UNIPHIER_PINCTRL_PIN(4, "ED4", UNIPHIER_PIN_IECTRL_NONE,
36                              4, UNIPHIER_PIN_DRV_1BIT,
37                              4, UNIPHIER_PIN_PULL_DOWN),
38         UNIPHIER_PINCTRL_PIN(5, "ED5", UNIPHIER_PIN_IECTRL_NONE,
39                              5, UNIPHIER_PIN_DRV_1BIT,
40                              5, UNIPHIER_PIN_PULL_DOWN),
41         UNIPHIER_PINCTRL_PIN(6, "ED6", UNIPHIER_PIN_IECTRL_NONE,
42                              6, UNIPHIER_PIN_DRV_1BIT,
43                              6, UNIPHIER_PIN_PULL_DOWN),
44         UNIPHIER_PINCTRL_PIN(7, "ED7", UNIPHIER_PIN_IECTRL_NONE,
45                              7, UNIPHIER_PIN_DRV_1BIT,
46                              7, UNIPHIER_PIN_PULL_DOWN),
47         UNIPHIER_PINCTRL_PIN(8, "XERWE0", UNIPHIER_PIN_IECTRL_NONE,
48                              8, UNIPHIER_PIN_DRV_1BIT,
49                              8, UNIPHIER_PIN_PULL_DOWN),
50         UNIPHIER_PINCTRL_PIN(9, "XERWE1", UNIPHIER_PIN_IECTRL_NONE,
51                              9, UNIPHIER_PIN_DRV_1BIT,
52                              9, UNIPHIER_PIN_PULL_DOWN),
53         UNIPHIER_PINCTRL_PIN(10, "ERXW", UNIPHIER_PIN_IECTRL_NONE,
54                              10, UNIPHIER_PIN_DRV_1BIT,
55                              10, UNIPHIER_PIN_PULL_DOWN),
56         UNIPHIER_PINCTRL_PIN(11, "ES0", UNIPHIER_PIN_IECTRL_NONE,
57                              11, UNIPHIER_PIN_DRV_1BIT,
58                              11, UNIPHIER_PIN_PULL_DOWN),
59         UNIPHIER_PINCTRL_PIN(12, "ES1", UNIPHIER_PIN_IECTRL_NONE,
60                              12, UNIPHIER_PIN_DRV_1BIT,
61                              12, UNIPHIER_PIN_PULL_DOWN),
62         UNIPHIER_PINCTRL_PIN(13, "ES2", UNIPHIER_PIN_IECTRL_NONE,
63                              13, UNIPHIER_PIN_DRV_1BIT,
64                              13, UNIPHIER_PIN_PULL_DOWN),
65         UNIPHIER_PINCTRL_PIN(14, "XECS1", UNIPHIER_PIN_IECTRL_NONE,
66                              14, UNIPHIER_PIN_DRV_1BIT,
67                              14, UNIPHIER_PIN_PULL_DOWN),
68         UNIPHIER_PINCTRL_PIN(15, "SMTRST0", UNIPHIER_PIN_IECTRL_NONE,
69                              -1, UNIPHIER_PIN_DRV_FIXED8,
70                              15, UNIPHIER_PIN_PULL_DOWN),
71         UNIPHIER_PINCTRL_PIN(16, "SMTCMD0", UNIPHIER_PIN_IECTRL_NONE,
72                              -1, UNIPHIER_PIN_DRV_FIXED8,
73                              16, UNIPHIER_PIN_PULL_DOWN),
74         UNIPHIER_PINCTRL_PIN(17, "SMTD0", UNIPHIER_PIN_IECTRL_NONE,
75                              -1, UNIPHIER_PIN_DRV_FIXED8,
76                              17, UNIPHIER_PIN_PULL_DOWN),
77         UNIPHIER_PINCTRL_PIN(18, "SMTSEL0", UNIPHIER_PIN_IECTRL_NONE,
78                              -1, UNIPHIER_PIN_DRV_FIXED8,
79                              18, UNIPHIER_PIN_PULL_DOWN),
80         UNIPHIER_PINCTRL_PIN(19, "SMTCLK0CG", UNIPHIER_PIN_IECTRL_NONE,
81                              -1, UNIPHIER_PIN_DRV_FIXED8,
82                              19, UNIPHIER_PIN_PULL_DOWN),
83         UNIPHIER_PINCTRL_PIN(20, "SMTDET0", UNIPHIER_PIN_IECTRL_NONE,
84                              -1, UNIPHIER_PIN_DRV_FIXED8,
85                              20, UNIPHIER_PIN_PULL_DOWN),
86         UNIPHIER_PINCTRL_PIN(21, "SMTRST1", UNIPHIER_PIN_IECTRL_NONE,
87                              -1, UNIPHIER_PIN_DRV_FIXED8,
88                              21, UNIPHIER_PIN_PULL_DOWN),
89         UNIPHIER_PINCTRL_PIN(22, "SMTCMD1", UNIPHIER_PIN_IECTRL_NONE,
90                              -1, UNIPHIER_PIN_DRV_FIXED8,
91                              22, UNIPHIER_PIN_PULL_DOWN),
92         UNIPHIER_PINCTRL_PIN(23, "SMTD1", UNIPHIER_PIN_IECTRL_NONE,
93                              -1, UNIPHIER_PIN_DRV_FIXED8,
94                              23, UNIPHIER_PIN_PULL_DOWN),
95         UNIPHIER_PINCTRL_PIN(24, "SMTSEL1", UNIPHIER_PIN_IECTRL_NONE,
96                              -1, UNIPHIER_PIN_DRV_FIXED8,
97                              24, UNIPHIER_PIN_PULL_DOWN),
98         UNIPHIER_PINCTRL_PIN(25, "SMTCLK1CG", UNIPHIER_PIN_IECTRL_NONE,
99                              -1, UNIPHIER_PIN_DRV_FIXED8,
100                              25, UNIPHIER_PIN_PULL_DOWN),
101         UNIPHIER_PINCTRL_PIN(26, "SMTDET1", UNIPHIER_PIN_IECTRL_NONE,
102                              -1, UNIPHIER_PIN_DRV_FIXED8,
103                              26, UNIPHIER_PIN_PULL_DOWN),
104         UNIPHIER_PINCTRL_PIN(27, "XIRQ18", UNIPHIER_PIN_IECTRL_NONE,
105                              -1, UNIPHIER_PIN_DRV_FIXED8,
106                              27, UNIPHIER_PIN_PULL_DOWN),
107         UNIPHIER_PINCTRL_PIN(28, "XIRQ19", UNIPHIER_PIN_IECTRL_NONE,
108                              -1, UNIPHIER_PIN_DRV_FIXED8,
109                              28, UNIPHIER_PIN_PULL_DOWN),
110         UNIPHIER_PINCTRL_PIN(29, "XIRQ20", UNIPHIER_PIN_IECTRL_NONE,
111                              -1, UNIPHIER_PIN_DRV_FIXED8,
112                              29, UNIPHIER_PIN_PULL_DOWN),
113         UNIPHIER_PINCTRL_PIN(30, "XNFRE", UNIPHIER_PIN_IECTRL_NONE,
114                              30, UNIPHIER_PIN_DRV_1BIT,
115                              30, UNIPHIER_PIN_PULL_UP),
116         UNIPHIER_PINCTRL_PIN(31, "XNFWE", UNIPHIER_PIN_IECTRL_NONE,
117                              31, UNIPHIER_PIN_DRV_1BIT,
118                              31, UNIPHIER_PIN_PULL_UP),
119         UNIPHIER_PINCTRL_PIN(32, "NFALE", UNIPHIER_PIN_IECTRL_NONE,
120                              32, UNIPHIER_PIN_DRV_1BIT,
121                              32, UNIPHIER_PIN_PULL_DOWN),
122         UNIPHIER_PINCTRL_PIN(33, "NFCLE", UNIPHIER_PIN_IECTRL_NONE,
123                              33, UNIPHIER_PIN_DRV_1BIT,
124                              33, UNIPHIER_PIN_PULL_DOWN),
125         UNIPHIER_PINCTRL_PIN(34, "XNFWP", UNIPHIER_PIN_IECTRL_NONE,
126                              34, UNIPHIER_PIN_DRV_1BIT,
127                              34, UNIPHIER_PIN_PULL_DOWN),
128         UNIPHIER_PINCTRL_PIN(35, "XNFCE0", UNIPHIER_PIN_IECTRL_NONE,
129                              35, UNIPHIER_PIN_DRV_1BIT,
130                              35, UNIPHIER_PIN_PULL_UP),
131         UNIPHIER_PINCTRL_PIN(36, "NFRYBY0", UNIPHIER_PIN_IECTRL_NONE,
132                              36, UNIPHIER_PIN_DRV_1BIT,
133                              36, UNIPHIER_PIN_PULL_UP),
134         UNIPHIER_PINCTRL_PIN(37, "XNFCE1", UNIPHIER_PIN_IECTRL_NONE,
135                              37, UNIPHIER_PIN_DRV_1BIT,
136                              37, UNIPHIER_PIN_PULL_UP),
137         UNIPHIER_PINCTRL_PIN(38, "NFRYBY1", UNIPHIER_PIN_IECTRL_NONE,
138                              38, UNIPHIER_PIN_DRV_1BIT,
139                              38, UNIPHIER_PIN_PULL_UP),
140         UNIPHIER_PINCTRL_PIN(39, "NFD0", UNIPHIER_PIN_IECTRL_NONE,
141                              39, UNIPHIER_PIN_DRV_1BIT,
142                              39, UNIPHIER_PIN_PULL_DOWN),
143         UNIPHIER_PINCTRL_PIN(40, "NFD1", UNIPHIER_PIN_IECTRL_NONE,
144                              40, UNIPHIER_PIN_DRV_1BIT,
145                              40, UNIPHIER_PIN_PULL_DOWN),
146         UNIPHIER_PINCTRL_PIN(41, "NFD2", UNIPHIER_PIN_IECTRL_NONE,
147                              41, UNIPHIER_PIN_DRV_1BIT,
148                              41, UNIPHIER_PIN_PULL_DOWN),
149         UNIPHIER_PINCTRL_PIN(42, "NFD3", UNIPHIER_PIN_IECTRL_NONE,
150                              42, UNIPHIER_PIN_DRV_1BIT,
151                              42, UNIPHIER_PIN_PULL_DOWN),
152         UNIPHIER_PINCTRL_PIN(43, "NFD4", UNIPHIER_PIN_IECTRL_NONE,
153                              43, UNIPHIER_PIN_DRV_1BIT,
154                              43, UNIPHIER_PIN_PULL_DOWN),
155         UNIPHIER_PINCTRL_PIN(44, "NFD5", UNIPHIER_PIN_IECTRL_NONE,
156                              44, UNIPHIER_PIN_DRV_1BIT,
157                              44, UNIPHIER_PIN_PULL_DOWN),
158         UNIPHIER_PINCTRL_PIN(45, "NFD6", UNIPHIER_PIN_IECTRL_NONE,
159                              45, UNIPHIER_PIN_DRV_1BIT,
160                              45, UNIPHIER_PIN_PULL_DOWN),
161         UNIPHIER_PINCTRL_PIN(46, "NFD7", UNIPHIER_PIN_IECTRL_NONE,
162                              46, UNIPHIER_PIN_DRV_1BIT,
163                              46, UNIPHIER_PIN_PULL_DOWN),
164         UNIPHIER_PINCTRL_PIN(47, "SDCLK", UNIPHIER_PIN_IECTRL_NONE,
165                              0, UNIPHIER_PIN_DRV_2BIT,
166                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
167         UNIPHIER_PINCTRL_PIN(48, "SDCMD", UNIPHIER_PIN_IECTRL_NONE,
168                              1, UNIPHIER_PIN_DRV_2BIT,
169                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
170         UNIPHIER_PINCTRL_PIN(49, "SDDAT0", UNIPHIER_PIN_IECTRL_NONE,
171                              2, UNIPHIER_PIN_DRV_2BIT,
172                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
173         UNIPHIER_PINCTRL_PIN(50, "SDDAT1", UNIPHIER_PIN_IECTRL_NONE,
174                              3, UNIPHIER_PIN_DRV_2BIT,
175                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
176         UNIPHIER_PINCTRL_PIN(51, "SDDAT2", UNIPHIER_PIN_IECTRL_NONE,
177                              4, UNIPHIER_PIN_DRV_2BIT,
178                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
179         UNIPHIER_PINCTRL_PIN(52, "SDDAT3", UNIPHIER_PIN_IECTRL_NONE,
180                              5, UNIPHIER_PIN_DRV_2BIT,
181                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
182         UNIPHIER_PINCTRL_PIN(53, "SDCD", UNIPHIER_PIN_IECTRL_NONE,
183                              -1, UNIPHIER_PIN_DRV_FIXED8,
184                              53, UNIPHIER_PIN_PULL_DOWN),
185         UNIPHIER_PINCTRL_PIN(54, "SDWP", UNIPHIER_PIN_IECTRL_NONE,
186                              -1, UNIPHIER_PIN_DRV_FIXED8,
187                              54, UNIPHIER_PIN_PULL_DOWN),
188         UNIPHIER_PINCTRL_PIN(55, "SDVOLC", UNIPHIER_PIN_IECTRL_NONE,
189                              -1, UNIPHIER_PIN_DRV_FIXED8,
190                              55, UNIPHIER_PIN_PULL_DOWN),
191         UNIPHIER_PINCTRL_PIN(56, "USB0VBUS", UNIPHIER_PIN_IECTRL_NONE,
192                              -1, UNIPHIER_PIN_DRV_FIXED8,
193                              56, UNIPHIER_PIN_PULL_DOWN),
194         UNIPHIER_PINCTRL_PIN(57, "USB0OD", UNIPHIER_PIN_IECTRL_NONE,
195                              -1, UNIPHIER_PIN_DRV_FIXED8,
196                              57, UNIPHIER_PIN_PULL_DOWN),
197         UNIPHIER_PINCTRL_PIN(58, "USB1VBUS", UNIPHIER_PIN_IECTRL_NONE,
198                              -1, UNIPHIER_PIN_DRV_FIXED8,
199                              58, UNIPHIER_PIN_PULL_DOWN),
200         UNIPHIER_PINCTRL_PIN(59, "USB1OD", UNIPHIER_PIN_IECTRL_NONE,
201                              -1, UNIPHIER_PIN_DRV_FIXED8,
202                              59, UNIPHIER_PIN_PULL_DOWN),
203         UNIPHIER_PINCTRL_PIN(60, "USB2VBUS", UNIPHIER_PIN_IECTRL_NONE,
204                              -1, UNIPHIER_PIN_DRV_FIXED8,
205                              60, UNIPHIER_PIN_PULL_DOWN),
206         UNIPHIER_PINCTRL_PIN(61, "USB2OD", UNIPHIER_PIN_IECTRL_NONE,
207                              -1, UNIPHIER_PIN_DRV_FIXED8,
208                              61, UNIPHIER_PIN_PULL_DOWN),
209         UNIPHIER_PINCTRL_PIN(62, "USB3VBUS", UNIPHIER_PIN_IECTRL_NONE,
210                              -1, UNIPHIER_PIN_DRV_FIXED8,
211                              62, UNIPHIER_PIN_PULL_DOWN),
212         UNIPHIER_PINCTRL_PIN(63, "USB3OD", UNIPHIER_PIN_IECTRL_NONE,
213                              -1, UNIPHIER_PIN_DRV_FIXED8,
214                              63, UNIPHIER_PIN_PULL_DOWN),
215         UNIPHIER_PINCTRL_PIN(64, "CH0CLK", UNIPHIER_PIN_IECTRL_NONE,
216                              -1, UNIPHIER_PIN_DRV_FIXED8,
217                              64, UNIPHIER_PIN_PULL_DOWN),
218         UNIPHIER_PINCTRL_PIN(65, "CH0PSYNC", UNIPHIER_PIN_IECTRL_NONE,
219                              -1, UNIPHIER_PIN_DRV_FIXED8,
220                              65, UNIPHIER_PIN_PULL_DOWN),
221         UNIPHIER_PINCTRL_PIN(66, "CH0VAL", UNIPHIER_PIN_IECTRL_NONE,
222                              -1, UNIPHIER_PIN_DRV_FIXED8,
223                              66, UNIPHIER_PIN_PULL_DOWN),
224         UNIPHIER_PINCTRL_PIN(67, "CH0DATA", UNIPHIER_PIN_IECTRL_NONE,
225                              -1, UNIPHIER_PIN_DRV_FIXED8,
226                              67, UNIPHIER_PIN_PULL_DOWN),
227         UNIPHIER_PINCTRL_PIN(68, "CH1CLK", UNIPHIER_PIN_IECTRL_NONE,
228                              -1, UNIPHIER_PIN_DRV_FIXED8,
229                              68, UNIPHIER_PIN_PULL_DOWN),
230         UNIPHIER_PINCTRL_PIN(69, "CH1PSYNC", UNIPHIER_PIN_IECTRL_NONE,
231                              -1, UNIPHIER_PIN_DRV_FIXED8,
232                              69, UNIPHIER_PIN_PULL_DOWN),
233         UNIPHIER_PINCTRL_PIN(70, "CH1VAL", UNIPHIER_PIN_IECTRL_NONE,
234                              -1, UNIPHIER_PIN_DRV_FIXED8,
235                              70, UNIPHIER_PIN_PULL_DOWN),
236         UNIPHIER_PINCTRL_PIN(71, "CH1DATA", UNIPHIER_PIN_IECTRL_NONE,
237                              -1, UNIPHIER_PIN_DRV_FIXED8,
238                              71, UNIPHIER_PIN_PULL_DOWN),
239         UNIPHIER_PINCTRL_PIN(72, "XIRQ9", UNIPHIER_PIN_IECTRL_NONE,
240                              -1, UNIPHIER_PIN_DRV_FIXED8,
241                              72, UNIPHIER_PIN_PULL_DOWN),
242         UNIPHIER_PINCTRL_PIN(73, "XIRQ10", UNIPHIER_PIN_IECTRL_NONE,
243                              -1, UNIPHIER_PIN_DRV_FIXED8,
244                              73, UNIPHIER_PIN_PULL_DOWN),
245         UNIPHIER_PINCTRL_PIN(74, "XIRQ16", UNIPHIER_PIN_IECTRL_NONE,
246                              -1, UNIPHIER_PIN_DRV_FIXED8,
247                              74, UNIPHIER_PIN_PULL_DOWN),
248         UNIPHIER_PINCTRL_PIN(75, "CH4CLK", UNIPHIER_PIN_IECTRL_NONE,
249                              -1, UNIPHIER_PIN_DRV_FIXED8,
250                              75, UNIPHIER_PIN_PULL_DOWN),
251         UNIPHIER_PINCTRL_PIN(76, "CH4PSYNC", UNIPHIER_PIN_IECTRL_NONE,
252                              -1, UNIPHIER_PIN_DRV_FIXED8,
253                              76, UNIPHIER_PIN_PULL_DOWN),
254         UNIPHIER_PINCTRL_PIN(77, "CH4VAL", UNIPHIER_PIN_IECTRL_NONE,
255                              -1, UNIPHIER_PIN_DRV_FIXED8,
256                              77, UNIPHIER_PIN_PULL_DOWN),
257         UNIPHIER_PINCTRL_PIN(78, "CH4DATA", UNIPHIER_PIN_IECTRL_NONE,
258                              -1, UNIPHIER_PIN_DRV_FIXED8,
259                              78, UNIPHIER_PIN_PULL_DOWN),
260         UNIPHIER_PINCTRL_PIN(79, "CH5CLK", UNIPHIER_PIN_IECTRL_NONE,
261                              -1, UNIPHIER_PIN_DRV_FIXED8,
262                              79, UNIPHIER_PIN_PULL_DOWN),
263         UNIPHIER_PINCTRL_PIN(80, "CH5PSYNC", UNIPHIER_PIN_IECTRL_NONE,
264                              -1, UNIPHIER_PIN_DRV_FIXED8,
265                              80, UNIPHIER_PIN_PULL_DOWN),
266         UNIPHIER_PINCTRL_PIN(81, "CH5VAL", UNIPHIER_PIN_IECTRL_NONE,
267                              -1, UNIPHIER_PIN_DRV_FIXED8,
268                              81, UNIPHIER_PIN_PULL_DOWN),
269         UNIPHIER_PINCTRL_PIN(82, "CH5DATA", UNIPHIER_PIN_IECTRL_NONE,
270                              -1, UNIPHIER_PIN_DRV_FIXED8,
271                              82, UNIPHIER_PIN_PULL_DOWN),
272         UNIPHIER_PINCTRL_PIN(83, "CH6CLK", UNIPHIER_PIN_IECTRL_NONE,
273                              -1, UNIPHIER_PIN_DRV_FIXED8,
274                              83, UNIPHIER_PIN_PULL_DOWN),
275         UNIPHIER_PINCTRL_PIN(84, "CH6PSYNC", UNIPHIER_PIN_IECTRL_NONE,
276                              -1, UNIPHIER_PIN_DRV_FIXED8,
277                              84, UNIPHIER_PIN_PULL_DOWN),
278         UNIPHIER_PINCTRL_PIN(85, "CH6VAL", UNIPHIER_PIN_IECTRL_NONE,
279                              -1, UNIPHIER_PIN_DRV_FIXED8,
280                              85, UNIPHIER_PIN_PULL_DOWN),
281         UNIPHIER_PINCTRL_PIN(86, "CH6DATA", UNIPHIER_PIN_IECTRL_NONE,
282                              -1, UNIPHIER_PIN_DRV_FIXED8,
283                              86, UNIPHIER_PIN_PULL_DOWN),
284         UNIPHIER_PINCTRL_PIN(87, "STS0CLKO", UNIPHIER_PIN_IECTRL_NONE,
285                              -1, UNIPHIER_PIN_DRV_FIXED8,
286                              87, UNIPHIER_PIN_PULL_DOWN),
287         UNIPHIER_PINCTRL_PIN(88, "STS0SYNCO", UNIPHIER_PIN_IECTRL_NONE,
288                              -1, UNIPHIER_PIN_DRV_FIXED8,
289                              88, UNIPHIER_PIN_PULL_DOWN),
290         UNIPHIER_PINCTRL_PIN(89, "STS0VALO", UNIPHIER_PIN_IECTRL_NONE,
291                              -1, UNIPHIER_PIN_DRV_FIXED8,
292                              89, UNIPHIER_PIN_PULL_DOWN),
293         UNIPHIER_PINCTRL_PIN(90, "STS0DATAO", UNIPHIER_PIN_IECTRL_NONE,
294                              -1, UNIPHIER_PIN_DRV_FIXED8,
295                              90, UNIPHIER_PIN_PULL_DOWN),
296         UNIPHIER_PINCTRL_PIN(91, "XIRQ17", UNIPHIER_PIN_IECTRL_NONE,
297                              -1, UNIPHIER_PIN_DRV_FIXED8,
298                              91, UNIPHIER_PIN_PULL_DOWN),
299         UNIPHIER_PINCTRL_PIN(92, "PORT163", UNIPHIER_PIN_IECTRL_NONE,
300                              -1, UNIPHIER_PIN_DRV_FIXED8,
301                              92, UNIPHIER_PIN_PULL_DOWN),
302         UNIPHIER_PINCTRL_PIN(93, "PORT165", UNIPHIER_PIN_IECTRL_NONE,
303                              -1, UNIPHIER_PIN_DRV_FIXED8,
304                              93, UNIPHIER_PIN_PULL_DOWN),
305         UNIPHIER_PINCTRL_PIN(94, "PORT166", UNIPHIER_PIN_IECTRL_NONE,
306                              -1, UNIPHIER_PIN_DRV_FIXED8,
307                              94, UNIPHIER_PIN_PULL_DOWN),
308         UNIPHIER_PINCTRL_PIN(95, "PORT132", UNIPHIER_PIN_IECTRL_NONE,
309                              -1, UNIPHIER_PIN_DRV_FIXED8,
310                              95, UNIPHIER_PIN_PULL_DOWN),
311         UNIPHIER_PINCTRL_PIN(96, "PORT133", UNIPHIER_PIN_IECTRL_NONE,
312                              -1, UNIPHIER_PIN_DRV_FIXED8,
313                              96, UNIPHIER_PIN_PULL_DOWN),
314         UNIPHIER_PINCTRL_PIN(97, "AO2IEC", UNIPHIER_PIN_IECTRL_NONE,
315                              -1, UNIPHIER_PIN_DRV_FIXED8,
316                              97, UNIPHIER_PIN_PULL_DOWN),
317         UNIPHIER_PINCTRL_PIN(98, "AI2ADCCK", UNIPHIER_PIN_IECTRL_NONE,
318                              -1, UNIPHIER_PIN_DRV_FIXED8,
319                              98, UNIPHIER_PIN_PULL_DOWN),
320         UNIPHIER_PINCTRL_PIN(99, "AI2BCK", UNIPHIER_PIN_IECTRL_NONE,
321                              -1, UNIPHIER_PIN_DRV_FIXED8,
322                              99, UNIPHIER_PIN_PULL_DOWN),
323         UNIPHIER_PINCTRL_PIN(100, "AI2LRCK", UNIPHIER_PIN_IECTRL_NONE,
324                              -1, UNIPHIER_PIN_DRV_FIXED8,
325                              100, UNIPHIER_PIN_PULL_DOWN),
326         UNIPHIER_PINCTRL_PIN(101, "AI2D0", UNIPHIER_PIN_IECTRL_NONE,
327                              -1, UNIPHIER_PIN_DRV_FIXED8,
328                              101, UNIPHIER_PIN_PULL_DOWN),
329         UNIPHIER_PINCTRL_PIN(102, "AI2D1", UNIPHIER_PIN_IECTRL_NONE,
330                              -1, UNIPHIER_PIN_DRV_FIXED8,
331                              102, UNIPHIER_PIN_PULL_DOWN),
332         UNIPHIER_PINCTRL_PIN(103, "AI2D2", UNIPHIER_PIN_IECTRL_NONE,
333                              -1, UNIPHIER_PIN_DRV_FIXED8,
334                              103, UNIPHIER_PIN_PULL_DOWN),
335         UNIPHIER_PINCTRL_PIN(104, "AI2D3", UNIPHIER_PIN_IECTRL_NONE,
336                              -1, UNIPHIER_PIN_DRV_FIXED8,
337                              104, UNIPHIER_PIN_PULL_DOWN),
338         UNIPHIER_PINCTRL_PIN(105, "AO3DACCK", UNIPHIER_PIN_IECTRL_NONE,
339                              -1, UNIPHIER_PIN_DRV_FIXED8,
340                              105, UNIPHIER_PIN_PULL_DOWN),
341         UNIPHIER_PINCTRL_PIN(106, "AO3BCK", UNIPHIER_PIN_IECTRL_NONE,
342                              -1, UNIPHIER_PIN_DRV_FIXED8,
343                              106, UNIPHIER_PIN_PULL_DOWN),
344         UNIPHIER_PINCTRL_PIN(107, "AO3LRCK", UNIPHIER_PIN_IECTRL_NONE,
345                              -1, UNIPHIER_PIN_DRV_FIXED8,
346                              107, UNIPHIER_PIN_PULL_DOWN),
347         UNIPHIER_PINCTRL_PIN(108, "AO3DMIX", UNIPHIER_PIN_IECTRL_NONE,
348                              -1, UNIPHIER_PIN_DRV_FIXED8,
349                              108, UNIPHIER_PIN_PULL_DOWN),
350         UNIPHIER_PINCTRL_PIN(109, "SDA0", UNIPHIER_PIN_IECTRL_NONE,
351                              -1, UNIPHIER_PIN_DRV_FIXED8,
352                              109, UNIPHIER_PIN_PULL_DOWN),
353         UNIPHIER_PINCTRL_PIN(110, "SCL0", UNIPHIER_PIN_IECTRL_NONE,
354                              -1, UNIPHIER_PIN_DRV_FIXED8,
355                              110, UNIPHIER_PIN_PULL_DOWN),
356         UNIPHIER_PINCTRL_PIN(111, "SDA1", UNIPHIER_PIN_IECTRL_NONE,
357                              -1, UNIPHIER_PIN_DRV_FIXED8,
358                              111, UNIPHIER_PIN_PULL_DOWN),
359         UNIPHIER_PINCTRL_PIN(112, "SCL1", UNIPHIER_PIN_IECTRL_NONE,
360                              -1, UNIPHIER_PIN_DRV_FIXED8,
361                              112, UNIPHIER_PIN_PULL_DOWN),
362         UNIPHIER_PINCTRL_PIN(113, "TXD2", 0,
363                              113, UNIPHIER_PIN_DRV_1BIT,
364                              113, UNIPHIER_PIN_PULL_UP),
365         UNIPHIER_PINCTRL_PIN(114, "RXD2", 0,
366                              114, UNIPHIER_PIN_DRV_1BIT,
367                              114, UNIPHIER_PIN_PULL_UP),
368         UNIPHIER_PINCTRL_PIN(115, "TXD1", 0,
369                              115, UNIPHIER_PIN_DRV_1BIT,
370                              115, UNIPHIER_PIN_PULL_UP),
371         UNIPHIER_PINCTRL_PIN(116, "RXD1", 0,
372                              116, UNIPHIER_PIN_DRV_1BIT,
373                              116, UNIPHIER_PIN_PULL_UP),
374         UNIPHIER_PINCTRL_PIN(117, "PORT190", UNIPHIER_PIN_IECTRL_NONE,
375                              -1, UNIPHIER_PIN_DRV_FIXED8,
376                              117, UNIPHIER_PIN_PULL_DOWN),
377         UNIPHIER_PINCTRL_PIN(118, "VI1HSYNC", UNIPHIER_PIN_IECTRL_NONE,
378                              -1, UNIPHIER_PIN_DRV_FIXED8,
379                              118, UNIPHIER_PIN_PULL_DOWN),
380         UNIPHIER_PINCTRL_PIN(119, "VI1VSYNC", UNIPHIER_PIN_IECTRL_NONE,
381                              -1, UNIPHIER_PIN_DRV_FIXED8,
382                              119, UNIPHIER_PIN_PULL_DOWN),
383         UNIPHIER_PINCTRL_PIN(120, "VI1DE", UNIPHIER_PIN_IECTRL_NONE,
384                              -1, UNIPHIER_PIN_DRV_FIXED8,
385                              120, UNIPHIER_PIN_PULL_DOWN),
386         UNIPHIER_PINCTRL_PIN(121, "XIRQ3", UNIPHIER_PIN_IECTRL_NONE,
387                              -1, UNIPHIER_PIN_DRV_FIXED8,
388                              121, UNIPHIER_PIN_PULL_DOWN),
389         UNIPHIER_PINCTRL_PIN(122, "XIRQ4", UNIPHIER_PIN_IECTRL_NONE,
390                              -1, UNIPHIER_PIN_DRV_FIXED8,
391                              122, UNIPHIER_PIN_PULL_DOWN),
392         UNIPHIER_PINCTRL_PIN(123, "VI1G2", UNIPHIER_PIN_IECTRL_NONE,
393                              -1, UNIPHIER_PIN_DRV_FIXED8,
394                              123, UNIPHIER_PIN_PULL_DOWN),
395         UNIPHIER_PINCTRL_PIN(124, "VI1G3", UNIPHIER_PIN_IECTRL_NONE,
396                              -1, UNIPHIER_PIN_DRV_FIXED8,
397                              124, UNIPHIER_PIN_PULL_DOWN),
398         UNIPHIER_PINCTRL_PIN(125, "VI1G4", UNIPHIER_PIN_IECTRL_NONE,
399                              -1, UNIPHIER_PIN_DRV_FIXED8,
400                              125, UNIPHIER_PIN_PULL_DOWN),
401         UNIPHIER_PINCTRL_PIN(126, "VI1G5", UNIPHIER_PIN_IECTRL_NONE,
402                              -1, UNIPHIER_PIN_DRV_FIXED8,
403                              126, UNIPHIER_PIN_PULL_DOWN),
404         UNIPHIER_PINCTRL_PIN(127, "VI1G6", UNIPHIER_PIN_IECTRL_NONE,
405                              -1, UNIPHIER_PIN_DRV_FIXED8,
406                              127, UNIPHIER_PIN_PULL_DOWN),
407         UNIPHIER_PINCTRL_PIN(128, "VI1G7", UNIPHIER_PIN_IECTRL_NONE,
408                              -1, UNIPHIER_PIN_DRV_FIXED8,
409                              128, UNIPHIER_PIN_PULL_DOWN),
410         UNIPHIER_PINCTRL_PIN(129, "VI1G8", UNIPHIER_PIN_IECTRL_NONE,
411                              -1, UNIPHIER_PIN_DRV_FIXED8,
412                              129, UNIPHIER_PIN_PULL_DOWN),
413         UNIPHIER_PINCTRL_PIN(130, "VI1G9", UNIPHIER_PIN_IECTRL_NONE,
414                              -1, UNIPHIER_PIN_DRV_FIXED8,
415                              130, UNIPHIER_PIN_PULL_DOWN),
416         UNIPHIER_PINCTRL_PIN(131, "VI1CLK", UNIPHIER_PIN_IECTRL_NONE,
417                              -1, UNIPHIER_PIN_DRV_FIXED8,
418                              131, UNIPHIER_PIN_PULL_DOWN),
419         UNIPHIER_PINCTRL_PIN(132, "PORT05", UNIPHIER_PIN_IECTRL_NONE,
420                              -1, UNIPHIER_PIN_DRV_FIXED8,
421                              132, UNIPHIER_PIN_PULL_DOWN),
422         UNIPHIER_PINCTRL_PIN(133, "PORT06", UNIPHIER_PIN_IECTRL_NONE,
423                              -1, UNIPHIER_PIN_DRV_FIXED8,
424                              133, UNIPHIER_PIN_PULL_DOWN),
425         UNIPHIER_PINCTRL_PIN(134, "VI1R2", UNIPHIER_PIN_IECTRL_NONE,
426                              -1, UNIPHIER_PIN_DRV_FIXED8,
427                              134, UNIPHIER_PIN_PULL_DOWN),
428         UNIPHIER_PINCTRL_PIN(135, "VI1R3", UNIPHIER_PIN_IECTRL_NONE,
429                              -1, UNIPHIER_PIN_DRV_FIXED8,
430                              135, UNIPHIER_PIN_PULL_DOWN),
431         UNIPHIER_PINCTRL_PIN(136, "VI1R4", UNIPHIER_PIN_IECTRL_NONE,
432                              -1, UNIPHIER_PIN_DRV_FIXED8,
433                              136, UNIPHIER_PIN_PULL_DOWN),
434         UNIPHIER_PINCTRL_PIN(137, "VI1R5", UNIPHIER_PIN_IECTRL_NONE,
435                              -1, UNIPHIER_PIN_DRV_FIXED8,
436                              137, UNIPHIER_PIN_PULL_DOWN),
437         UNIPHIER_PINCTRL_PIN(138, "VI1R6", UNIPHIER_PIN_IECTRL_NONE,
438                              -1, UNIPHIER_PIN_DRV_FIXED8,
439                              138, UNIPHIER_PIN_PULL_DOWN),
440         UNIPHIER_PINCTRL_PIN(139, "VI1R7", UNIPHIER_PIN_IECTRL_NONE,
441                              -1, UNIPHIER_PIN_DRV_FIXED8,
442                              139, UNIPHIER_PIN_PULL_DOWN),
443         UNIPHIER_PINCTRL_PIN(140, "VI1R8", UNIPHIER_PIN_IECTRL_NONE,
444                              -1, UNIPHIER_PIN_DRV_FIXED8,
445                              140, UNIPHIER_PIN_PULL_DOWN),
446         UNIPHIER_PINCTRL_PIN(141, "VI1R9", UNIPHIER_PIN_IECTRL_NONE,
447                              -1, UNIPHIER_PIN_DRV_FIXED8,
448                              141, UNIPHIER_PIN_PULL_DOWN),
449         UNIPHIER_PINCTRL_PIN(142, "LPST", UNIPHIER_PIN_IECTRL_NONE,
450                              142, UNIPHIER_PIN_DRV_1BIT,
451                              142, UNIPHIER_PIN_PULL_DOWN),
452         UNIPHIER_PINCTRL_PIN(143, "MDC", 0,
453                              143, UNIPHIER_PIN_DRV_1BIT,
454                              143, UNIPHIER_PIN_PULL_DOWN),
455         UNIPHIER_PINCTRL_PIN(144, "MDIO", 0,
456                              144, UNIPHIER_PIN_DRV_1BIT,
457                              144, UNIPHIER_PIN_PULL_DOWN),
458         UNIPHIER_PINCTRL_PIN(145, "MDIO_INTL", 0,
459                              145, UNIPHIER_PIN_DRV_1BIT,
460                              145, UNIPHIER_PIN_PULL_DOWN),
461         UNIPHIER_PINCTRL_PIN(146, "PHYRSTL", 0,
462                              146, UNIPHIER_PIN_DRV_1BIT,
463                              146, UNIPHIER_PIN_PULL_DOWN),
464         UNIPHIER_PINCTRL_PIN(147, "RGMII_RXCLK", 0,
465                              147, UNIPHIER_PIN_DRV_1BIT,
466                              147, UNIPHIER_PIN_PULL_DOWN),
467         UNIPHIER_PINCTRL_PIN(148, "RGMII_RXD0", 0,
468                              148, UNIPHIER_PIN_DRV_1BIT,
469                              148, UNIPHIER_PIN_PULL_DOWN),
470         UNIPHIER_PINCTRL_PIN(149, "RGMII_RXD1", 0,
471                              149, UNIPHIER_PIN_DRV_1BIT,
472                              149, UNIPHIER_PIN_PULL_DOWN),
473         UNIPHIER_PINCTRL_PIN(150, "RGMII_RXD2", 0,
474                              150, UNIPHIER_PIN_DRV_1BIT,
475                              150, UNIPHIER_PIN_PULL_DOWN),
476         UNIPHIER_PINCTRL_PIN(151, "RGMII_RXD3", 0,
477                              151, UNIPHIER_PIN_DRV_1BIT,
478                              151, UNIPHIER_PIN_PULL_DOWN),
479         UNIPHIER_PINCTRL_PIN(152, "RGMII_RXCTL", 0,
480                              152, UNIPHIER_PIN_DRV_1BIT,
481                              152, UNIPHIER_PIN_PULL_DOWN),
482         UNIPHIER_PINCTRL_PIN(153, "RGMII_TXCLK", 0,
483                              153, UNIPHIER_PIN_DRV_1BIT,
484                              153, UNIPHIER_PIN_PULL_DOWN),
485         UNIPHIER_PINCTRL_PIN(154, "RGMII_TXD0", 0,
486                              154, UNIPHIER_PIN_DRV_1BIT,
487                              154, UNIPHIER_PIN_PULL_DOWN),
488         UNIPHIER_PINCTRL_PIN(155, "RGMII_TXD1", 0,
489                              155, UNIPHIER_PIN_DRV_1BIT,
490                              155, UNIPHIER_PIN_PULL_DOWN),
491         UNIPHIER_PINCTRL_PIN(156, "RGMII_TXD2", 0,
492                              156, UNIPHIER_PIN_DRV_1BIT,
493                              156, UNIPHIER_PIN_PULL_DOWN),
494         UNIPHIER_PINCTRL_PIN(157, "RGMII_TXD3", 0,
495                              157, UNIPHIER_PIN_DRV_1BIT,
496                              157, UNIPHIER_PIN_PULL_DOWN),
497         UNIPHIER_PINCTRL_PIN(158, "RGMII_TXCTL", 0,
498                              158, UNIPHIER_PIN_DRV_1BIT,
499                              158, UNIPHIER_PIN_PULL_DOWN),
500         UNIPHIER_PINCTRL_PIN(159, "SDA3", UNIPHIER_PIN_IECTRL_NONE,
501                              -1, UNIPHIER_PIN_DRV_FIXED8,
502                              159, UNIPHIER_PIN_PULL_DOWN),
503         UNIPHIER_PINCTRL_PIN(160, "SCL3", UNIPHIER_PIN_IECTRL_NONE,
504                              -1, UNIPHIER_PIN_DRV_FIXED8,
505                              160, UNIPHIER_PIN_PULL_DOWN),
506         UNIPHIER_PINCTRL_PIN(161, "AI1ADCCK", UNIPHIER_PIN_IECTRL_NONE,
507                              -1, UNIPHIER_PIN_DRV_FIXED8,
508                              161, UNIPHIER_PIN_PULL_DOWN),
509         UNIPHIER_PINCTRL_PIN(162, "AI1BCK", UNIPHIER_PIN_IECTRL_NONE,
510                              -1, UNIPHIER_PIN_DRV_FIXED8,
511                              162, UNIPHIER_PIN_PULL_DOWN),
512         UNIPHIER_PINCTRL_PIN(163, "CH2CLK", UNIPHIER_PIN_IECTRL_NONE,
513                              -1, UNIPHIER_PIN_DRV_FIXED8,
514                              163, UNIPHIER_PIN_PULL_DOWN),
515         UNIPHIER_PINCTRL_PIN(164, "CH2PSYNC", UNIPHIER_PIN_IECTRL_NONE,
516                              -1, UNIPHIER_PIN_DRV_FIXED8,
517                              164, UNIPHIER_PIN_PULL_DOWN),
518         UNIPHIER_PINCTRL_PIN(165, "CH2VAL", UNIPHIER_PIN_IECTRL_NONE,
519                              -1, UNIPHIER_PIN_DRV_FIXED8,
520                              165, UNIPHIER_PIN_PULL_DOWN),
521         UNIPHIER_PINCTRL_PIN(166, "CH2DATA", UNIPHIER_PIN_IECTRL_NONE,
522                              -1, UNIPHIER_PIN_DRV_FIXED8,
523                              166, UNIPHIER_PIN_PULL_DOWN),
524         UNIPHIER_PINCTRL_PIN(167, "CH3CLK", UNIPHIER_PIN_IECTRL_NONE,
525                              -1, UNIPHIER_PIN_DRV_FIXED8,
526                              167, UNIPHIER_PIN_PULL_DOWN),
527         UNIPHIER_PINCTRL_PIN(168, "CH3PSYNC", UNIPHIER_PIN_IECTRL_NONE,
528                              -1, UNIPHIER_PIN_DRV_FIXED8,
529                              168, UNIPHIER_PIN_PULL_DOWN),
530         UNIPHIER_PINCTRL_PIN(169, "CH3VAL", UNIPHIER_PIN_IECTRL_NONE,
531                              -1, UNIPHIER_PIN_DRV_FIXED8,
532                              169, UNIPHIER_PIN_PULL_DOWN),
533         UNIPHIER_PINCTRL_PIN(170, "CH3DATA", UNIPHIER_PIN_IECTRL_NONE,
534                              -1, UNIPHIER_PIN_DRV_FIXED8,
535                              170, UNIPHIER_PIN_PULL_DOWN),
536         UNIPHIER_PINCTRL_PIN(171, "SDA2", UNIPHIER_PIN_IECTRL_NONE,
537                              -1, UNIPHIER_PIN_DRV_FIXED8,
538                              171, UNIPHIER_PIN_PULL_DOWN),
539         UNIPHIER_PINCTRL_PIN(172, "SCL2", UNIPHIER_PIN_IECTRL_NONE,
540                              -1, UNIPHIER_PIN_DRV_FIXED8,
541                              172, UNIPHIER_PIN_PULL_DOWN),
542         UNIPHIER_PINCTRL_PIN(173, "AI1LRCK", UNIPHIER_PIN_IECTRL_NONE,
543                              -1, UNIPHIER_PIN_DRV_FIXED8,
544                              173, UNIPHIER_PIN_PULL_DOWN),
545         UNIPHIER_PINCTRL_PIN(174, "AI1D0", UNIPHIER_PIN_IECTRL_NONE,
546                              -1, UNIPHIER_PIN_DRV_FIXED8,
547                              174, UNIPHIER_PIN_PULL_DOWN),
548         UNIPHIER_PINCTRL_PIN(175, "AO2LRCK", UNIPHIER_PIN_IECTRL_NONE,
549                              -1, UNIPHIER_PIN_DRV_FIXED8,
550                              175, UNIPHIER_PIN_PULL_DOWN),
551         UNIPHIER_PINCTRL_PIN(176, "AO2D0", UNIPHIER_PIN_IECTRL_NONE,
552                              -1, UNIPHIER_PIN_DRV_FIXED8,
553                              176, UNIPHIER_PIN_PULL_DOWN),
554         UNIPHIER_PINCTRL_PIN(177, "AO2DACCK", UNIPHIER_PIN_IECTRL_NONE,
555                              -1, UNIPHIER_PIN_DRV_FIXED8,
556                              177, UNIPHIER_PIN_PULL_DOWN),
557         UNIPHIER_PINCTRL_PIN(178, "AO2BCK", UNIPHIER_PIN_IECTRL_NONE,
558                              -1, UNIPHIER_PIN_DRV_FIXED8,
559                              178, UNIPHIER_PIN_PULL_DOWN),
560         UNIPHIER_PINCTRL_PIN(179, "PORT222", UNIPHIER_PIN_IECTRL_NONE,
561                              -1, UNIPHIER_PIN_DRV_FIXED8,
562                              179, UNIPHIER_PIN_PULL_DOWN),
563         UNIPHIER_PINCTRL_PIN(180, "PORT223", UNIPHIER_PIN_IECTRL_NONE,
564                              -1, UNIPHIER_PIN_DRV_FIXED8,
565                              180, UNIPHIER_PIN_PULL_DOWN),
566         UNIPHIER_PINCTRL_PIN(181, "PORT224", UNIPHIER_PIN_IECTRL_NONE,
567                              -1, UNIPHIER_PIN_DRV_FIXED8,
568                              181, UNIPHIER_PIN_PULL_DOWN),
569         UNIPHIER_PINCTRL_PIN(182, "PORT225", UNIPHIER_PIN_IECTRL_NONE,
570                              -1, UNIPHIER_PIN_DRV_FIXED8,
571                              182, UNIPHIER_PIN_PULL_DOWN),
572         UNIPHIER_PINCTRL_PIN(183, "PORT226", UNIPHIER_PIN_IECTRL_NONE,
573                              -1, UNIPHIER_PIN_DRV_FIXED8,
574                              183, UNIPHIER_PIN_PULL_DOWN),
575         UNIPHIER_PINCTRL_PIN(184, "PORT227", UNIPHIER_PIN_IECTRL_NONE,
576                              -1, UNIPHIER_PIN_DRV_FIXED8,
577                              184, UNIPHIER_PIN_PULL_DOWN),
578         UNIPHIER_PINCTRL_PIN(185, "PORT230", UNIPHIER_PIN_IECTRL_NONE,
579                              -1, UNIPHIER_PIN_DRV_FIXED8,
580                              185, UNIPHIER_PIN_PULL_DOWN),
581         UNIPHIER_PINCTRL_PIN(186, "FANPWM", UNIPHIER_PIN_IECTRL_NONE,
582                              -1, UNIPHIER_PIN_DRV_FIXED8,
583                              186, UNIPHIER_PIN_PULL_DOWN),
584         UNIPHIER_PINCTRL_PIN(187, "HRDDCSDA0", 0,
585                              187, UNIPHIER_PIN_DRV_1BIT,
586                              187, UNIPHIER_PIN_PULL_DOWN),
587         UNIPHIER_PINCTRL_PIN(188, "HRDDCSCL0", 0,
588                              188, UNIPHIER_PIN_DRV_1BIT,
589                              188, UNIPHIER_PIN_PULL_DOWN),
590         UNIPHIER_PINCTRL_PIN(189, "HRDDCSDA1", 0,
591                              189, UNIPHIER_PIN_DRV_1BIT,
592                              189, UNIPHIER_PIN_PULL_DOWN),
593         UNIPHIER_PINCTRL_PIN(190, "HRDDCSCL1", 0,
594                              190, UNIPHIER_PIN_DRV_1BIT,
595                              190, UNIPHIER_PIN_PULL_DOWN),
596         UNIPHIER_PINCTRL_PIN(191, "HTDDCSDA0", 0,
597                              191, UNIPHIER_PIN_DRV_1BIT,
598                              191, UNIPHIER_PIN_PULL_DOWN),
599         UNIPHIER_PINCTRL_PIN(192, "HTDDCSCL0", 0,
600                              192, UNIPHIER_PIN_DRV_1BIT,
601                              192, UNIPHIER_PIN_PULL_DOWN),
602         UNIPHIER_PINCTRL_PIN(193, "HTDDCSDA1", 0,
603                              193, UNIPHIER_PIN_DRV_1BIT,
604                              193, UNIPHIER_PIN_PULL_DOWN),
605         UNIPHIER_PINCTRL_PIN(194, "HTDDCSCL1", 0,
606                              194, UNIPHIER_PIN_DRV_1BIT,
607                              194, UNIPHIER_PIN_PULL_DOWN),
608         UNIPHIER_PINCTRL_PIN(195, "PORT241", 0,
609                              195, UNIPHIER_PIN_DRV_1BIT,
610                              195, UNIPHIER_PIN_PULL_DOWN),
611         UNIPHIER_PINCTRL_PIN(196, "PORT242", 0,
612                              196, UNIPHIER_PIN_DRV_1BIT,
613                              196, UNIPHIER_PIN_PULL_DOWN),
614         UNIPHIER_PINCTRL_PIN(197, "PORT243", 0,
615                              197, UNIPHIER_PIN_DRV_1BIT,
616                              197, UNIPHIER_PIN_PULL_DOWN),
617         UNIPHIER_PINCTRL_PIN(198, "MVSYNC", 0,
618                              198, UNIPHIER_PIN_DRV_1BIT,
619                              198, UNIPHIER_PIN_PULL_DOWN),
620         UNIPHIER_PINCTRL_PIN(199, "SPISYNC0", UNIPHIER_PIN_IECTRL_NONE,
621                              199, UNIPHIER_PIN_DRV_1BIT,
622                              199, UNIPHIER_PIN_PULL_DOWN),
623         UNIPHIER_PINCTRL_PIN(200, "SPISCLK0", UNIPHIER_PIN_IECTRL_NONE,
624                              200, UNIPHIER_PIN_DRV_1BIT,
625                              200, UNIPHIER_PIN_PULL_DOWN),
626         UNIPHIER_PINCTRL_PIN(201, "SPITXD0", UNIPHIER_PIN_IECTRL_NONE,
627                              201, UNIPHIER_PIN_DRV_1BIT,
628                              201, UNIPHIER_PIN_PULL_DOWN),
629         UNIPHIER_PINCTRL_PIN(202, "SPIRXD0", UNIPHIER_PIN_IECTRL_NONE,
630                              202, UNIPHIER_PIN_DRV_1BIT,
631                              202, UNIPHIER_PIN_PULL_DOWN),
632         UNIPHIER_PINCTRL_PIN(203, "CK54EXI", UNIPHIER_PIN_IECTRL_NONE,
633                              -1, UNIPHIER_PIN_DRV_FIXED8,
634                              203, UNIPHIER_PIN_PULL_DOWN),
635         UNIPHIER_PINCTRL_PIN(204, "AEXCKA1", UNIPHIER_PIN_IECTRL_NONE,
636                              -1, UNIPHIER_PIN_DRV_FIXED8,
637                              204, UNIPHIER_PIN_PULL_DOWN),
638         UNIPHIER_PINCTRL_PIN(205, "AEXCKA2", UNIPHIER_PIN_IECTRL_NONE,
639                              -1, UNIPHIER_PIN_DRV_FIXED8,
640                              205, UNIPHIER_PIN_PULL_DOWN),
641         UNIPHIER_PINCTRL_PIN(206, "CK27EXI", UNIPHIER_PIN_IECTRL_NONE,
642                              -1, UNIPHIER_PIN_DRV_FIXED8,
643                              206, UNIPHIER_PIN_PULL_DOWN),
644         UNIPHIER_PINCTRL_PIN(207, "STCDIN", 0,
645                              207, UNIPHIER_PIN_DRV_1BIT,
646                              207, UNIPHIER_PIN_PULL_DOWN),
647         UNIPHIER_PINCTRL_PIN(208, "PHSYNI", 0,
648                              208, UNIPHIER_PIN_DRV_1BIT,
649                              208, UNIPHIER_PIN_PULL_DOWN),
650         UNIPHIER_PINCTRL_PIN(209, "PVSYNI", 0,
651                              209, UNIPHIER_PIN_DRV_1BIT,
652                              209, UNIPHIER_PIN_PULL_DOWN),
653         UNIPHIER_PINCTRL_PIN(210, "MVSYN", UNIPHIER_PIN_IECTRL_NONE,
654                              210, UNIPHIER_PIN_DRV_1BIT,
655                              210, UNIPHIER_PIN_PULL_DOWN),
656         UNIPHIER_PINCTRL_PIN(211, "STCV", UNIPHIER_PIN_IECTRL_NONE,
657                              211, UNIPHIER_PIN_DRV_1BIT,
658                              211, UNIPHIER_PIN_PULL_DOWN),
659         UNIPHIER_PINCTRL_PIN(212, "PORT262", UNIPHIER_PIN_IECTRL_NONE,
660                              212, UNIPHIER_PIN_DRV_1BIT,
661                              212, UNIPHIER_PIN_PULL_DOWN),
662         UNIPHIER_PINCTRL_PIN(213, "USB0VBUS_IRQ", UNIPHIER_PIN_IECTRL_NONE,
663                              -1, UNIPHIER_PIN_DRV_FIXED4,
664                              213, UNIPHIER_PIN_PULL_DOWN),
665         UNIPHIER_PINCTRL_PIN(214, "USB1VBUS_IRQ", UNIPHIER_PIN_IECTRL_NONE,
666                              -1, UNIPHIER_PIN_DRV_FIXED4,
667                              214, UNIPHIER_PIN_PULL_DOWN),
668         UNIPHIER_PINCTRL_PIN(215, "PORT265", UNIPHIER_PIN_IECTRL_NONE,
669                              215, UNIPHIER_PIN_DRV_1BIT,
670                              215, UNIPHIER_PIN_PULL_DOWN),
671         UNIPHIER_PINCTRL_PIN(216, "CK25O", 0,
672                              216, UNIPHIER_PIN_DRV_1BIT,
673                              216, UNIPHIER_PIN_PULL_DOWN),
674         UNIPHIER_PINCTRL_PIN(217, "TXD0", 0,
675                              217, UNIPHIER_PIN_DRV_1BIT,
676                              217, UNIPHIER_PIN_PULL_DOWN),
677         UNIPHIER_PINCTRL_PIN(218, "RXD0", 0,
678                              218, UNIPHIER_PIN_DRV_1BIT,
679                              218, UNIPHIER_PIN_PULL_DOWN),
680         UNIPHIER_PINCTRL_PIN(219, "TXD3", 0,
681                              219, UNIPHIER_PIN_DRV_1BIT,
682                              219, UNIPHIER_PIN_PULL_DOWN),
683         UNIPHIER_PINCTRL_PIN(220, "RXD3", 0,
684                              220, UNIPHIER_PIN_DRV_1BIT,
685                              220, UNIPHIER_PIN_PULL_DOWN),
686         UNIPHIER_PINCTRL_PIN(221, "PORT273", 0,
687                              221, UNIPHIER_PIN_DRV_1BIT,
688                              221, UNIPHIER_PIN_PULL_DOWN),
689         UNIPHIER_PINCTRL_PIN(222, "STCDOUTC", 0,
690                              222, UNIPHIER_PIN_DRV_1BIT,
691                              222, UNIPHIER_PIN_PULL_DOWN),
692         UNIPHIER_PINCTRL_PIN(223, "PORT274", 0,
693                              223, UNIPHIER_PIN_DRV_1BIT,
694                              223, UNIPHIER_PIN_PULL_DOWN),
695         UNIPHIER_PINCTRL_PIN(224, "PORT275", 0,
696                              224, UNIPHIER_PIN_DRV_1BIT,
697                              224, UNIPHIER_PIN_PULL_DOWN),
698         UNIPHIER_PINCTRL_PIN(225, "PORT276", 0,
699                              225, UNIPHIER_PIN_DRV_1BIT,
700                              225, UNIPHIER_PIN_PULL_DOWN),
701         UNIPHIER_PINCTRL_PIN(226, "PORT277", 0,
702                              226, UNIPHIER_PIN_DRV_1BIT,
703                              226, UNIPHIER_PIN_PULL_DOWN),
704         UNIPHIER_PINCTRL_PIN(227, "PORT280", 0,
705                              227, UNIPHIER_PIN_DRV_1BIT,
706                              227, UNIPHIER_PIN_PULL_DOWN),
707         UNIPHIER_PINCTRL_PIN(228, "PORT281", 0,
708                              228, UNIPHIER_PIN_DRV_1BIT,
709                              228, UNIPHIER_PIN_PULL_DOWN),
710         UNIPHIER_PINCTRL_PIN(229, "PORT282", 0,
711                              229, UNIPHIER_PIN_DRV_1BIT,
712                              229, UNIPHIER_PIN_PULL_DOWN),
713         UNIPHIER_PINCTRL_PIN(230, "PORT283", 0,
714                              230, UNIPHIER_PIN_DRV_1BIT,
715                              230, UNIPHIER_PIN_PULL_DOWN),
716         UNIPHIER_PINCTRL_PIN(231, "PORT284", 0,
717                              231, UNIPHIER_PIN_DRV_1BIT,
718                              231, UNIPHIER_PIN_PULL_DOWN),
719         UNIPHIER_PINCTRL_PIN(232, "PORT285", 0,
720                              232, UNIPHIER_PIN_DRV_1BIT,
721                              232, UNIPHIER_PIN_PULL_DOWN),
722         UNIPHIER_PINCTRL_PIN(233, "T0HPD", 0,
723                              233, UNIPHIER_PIN_DRV_1BIT,
724                              233, UNIPHIER_PIN_PULL_DOWN),
725         UNIPHIER_PINCTRL_PIN(234, "T1HPD", 0,
726                              234, UNIPHIER_PIN_DRV_1BIT,
727                              234, UNIPHIER_PIN_PULL_DOWN),
728 };
729
730 static const unsigned emmc_pins[] = {36, 37, 38, 39, 40, 41, 42};
731 static const unsigned emmc_muxvals[] = {9, 9, 9, 9, 9, 9, 9};
732 static const unsigned emmc_dat8_pins[] = {43, 44, 45, 46};
733 static const unsigned emmc_dat8_muxvals[] = {9, 9, 9, 9};
734 static const unsigned i2c0_pins[] = {109, 110};
735 static const unsigned i2c0_muxvals[] = {8, 8};
736 static const unsigned i2c1_pins[] = {111, 112};
737 static const unsigned i2c1_muxvals[] = {8, 8};
738 static const unsigned i2c2_pins[] = {171, 172};
739 static const unsigned i2c2_muxvals[] = {8, 8};
740 static const unsigned i2c3_pins[] = {159, 160};
741 static const unsigned i2c3_muxvals[] = {8, 8};
742 static const unsigned i2c5_pins[] = {183, 184};
743 static const unsigned i2c5_muxvals[] = {11, 11};
744 static const unsigned i2c6_pins[] = {185, 186};
745 static const unsigned i2c6_muxvals[] = {11, 11};
746 static const unsigned nand_pins[] = {30, 31, 32, 33, 34, 35, 36, 39, 40, 41,
747                                      42, 43, 44, 45, 46};
748 static const unsigned nand_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
749                                         8, 8};
750 static const unsigned nand_cs1_pins[] = {37, 38};
751 static const unsigned nand_cs1_muxvals[] = {8, 8};
752 static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55};
753 static const unsigned sd_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8};
754 static const unsigned uart0_pins[] = {217, 218};
755 static const unsigned uart0_muxvals[] = {8, 8};
756 static const unsigned uart0b_pins[] = {179, 180};
757 static const unsigned uart0b_muxvals[] = {10, 10};
758 static const unsigned uart1_pins[] = {115, 116};
759 static const unsigned uart1_muxvals[] = {8, 8};
760 static const unsigned uart2_pins[] = {113, 114};
761 static const unsigned uart2_muxvals[] = {8, 8};
762 static const unsigned uart3_pins[] = {219, 220};
763 static const unsigned uart3_muxvals[] = {8, 8};
764 static const unsigned uart3b_pins[] = {181, 182};
765 static const unsigned uart3b_muxvals[] = {10, 10};
766 static const unsigned usb0_pins[] = {56, 57};
767 static const unsigned usb0_muxvals[] = {8, 8};
768 static const unsigned usb1_pins[] = {58, 59};
769 static const unsigned usb1_muxvals[] = {8, 8};
770 static const unsigned usb2_pins[] = {60, 61};
771 static const unsigned usb2_muxvals[] = {8, 8};
772 static const unsigned usb3_pins[] = {62, 63};
773 static const unsigned usb3_muxvals[] = {8, 8};
774 static const unsigned port_range0_pins[] = {
775         127, 128, 129, 130, 131, 132, 133, 134,         /* PORT0x */
776         135, 136, 137, 138, 139, 140, 141, 142,         /* PORT1x */
777         0, 1, 2, 3, 4, 5, 6, 7,                         /* PORT2x */
778         8, 9, 10, 11, 12, 13, 14, 15,                   /* PORT3x */
779         16, 17, 18, 19, 21, 22, 23, 24,                 /* PORT4x */
780         25, 30, 31, 32, 33, 34, 35, 36,                 /* PORT5x */
781         37, 38, 39, 40, 41, 42, 43, 44,                 /* PORT6x */
782         45, 46, 47, 48, 49, 50, 51, 52,                 /* PORT7x */
783         53, 54, 55, 56, 57, 58, 59, 60,                 /* PORT8x */
784         61, 62, 63, 64, 65, 66, 67, 68,                 /* PORT9x */
785         69, 70, 71, 76, 77, 78, 79, 80,                 /* PORT10x */
786 };
787 static const unsigned port_range0_muxvals[] = {
788         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT0x */
789         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT1x */
790         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT2x */
791         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT3x */
792         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT4x */
793         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT5x */
794         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT6x */
795         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT7x */
796         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT8x */
797         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT9x */
798         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT10x */
799 };
800 static const unsigned port_range1_pins[] = {
801         81, 82, 83, 84, 85, 86, 87, 88,                 /* PORT12x */
802         89, 90, 95, 96, 97, 98, 99, 100,                /* PORT13x */
803         101, 102, 103, 104, 105, 106, 107, 108,         /* PORT14x */
804         118, 119, 120, 121, 122, 123, 124, 125,         /* PORT15x */
805         126, 72, 73, 92, 177, 93, 94, 176,              /* PORT16x */
806         74, 91, 27, 28, 29, 75, 20, 26,                 /* PORT17x */
807         109, 110, 111, 112, 113, 114, 115, 116,         /* PORT18x */
808         117, 143, 144, 145, 146, 147, 148, 149,         /* PORT19x */
809         150, 151, 152, 153, 154, 155, 156, 157,         /* PORT20x */
810         158, 159, 160, 161, 162, 163, 164, 165,         /* PORT21x */
811         166, 178, 179, 180, 181, 182, 183, 184,         /* PORT22x */
812         185, 187, 188, 189, 190, 191, 192, 193,         /* PORT23x */
813         194, 195, 196, 197, 198, 199, 200, 201,         /* PORT24x */
814         202, 203, 204, 205, 206, 207, 208, 209,         /* PORT25x */
815         210, 211, 212, 213, 214, 215, 216, 217,         /* PORT26x */
816         218, 219, 220, 221, 223, 224, 225, 226,         /* PORT27x */
817         227, 228, 229, 230, 231, 232, 233, 234,         /* PORT28x */
818 };
819 static const unsigned port_range1_muxvals[] = {
820         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT12x */
821         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT13x */
822         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT14x */
823         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT15x */
824         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT16x */
825         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT17x */
826         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT18x */
827         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT19x */
828         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT20x */
829         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT21x */
830         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT22x */
831         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT23x */
832         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT24x */
833         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT25x */
834         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT26x */
835         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT27x */
836         15, 15, 15, 15, 15, 15, 15, 15,                 /* PORT28x */
837 };
838 static const unsigned xirq_pins[] = {
839         118, 119, 120, 121, 122, 123, 124, 125,         /* XIRQ0-7 */
840         126, 72, 73, 92, 177, 93, 94, 176,              /* XIRQ8-15 */
841         74, 91, 27, 28, 29, 75, 20, 26,                 /* XIRQ16-23 */
842 };
843 static const unsigned xirq_muxvals[] = {
844         14, 14, 14, 14, 14, 14, 14, 14,                 /* XIRQ0-7 */
845         14, 14, 14, 14, 14, 14, 14, 14,                 /* XIRQ8-15 */
846         14, 14, 14, 14, 14, 14, 14, 14,                 /* XIRQ16-23 */
847 };
848
849 static const struct uniphier_pinctrl_group uniphier_pxs2_groups[] = {
850         UNIPHIER_PINCTRL_GROUP(emmc),
851         UNIPHIER_PINCTRL_GROUP(emmc_dat8),
852         UNIPHIER_PINCTRL_GROUP(i2c0),
853         UNIPHIER_PINCTRL_GROUP(i2c1),
854         UNIPHIER_PINCTRL_GROUP(i2c2),
855         UNIPHIER_PINCTRL_GROUP(i2c3),
856         UNIPHIER_PINCTRL_GROUP(i2c5),
857         UNIPHIER_PINCTRL_GROUP(i2c6),
858         UNIPHIER_PINCTRL_GROUP(nand),
859         UNIPHIER_PINCTRL_GROUP(nand_cs1),
860         UNIPHIER_PINCTRL_GROUP(sd),
861         UNIPHIER_PINCTRL_GROUP(uart0),
862         UNIPHIER_PINCTRL_GROUP(uart0b),
863         UNIPHIER_PINCTRL_GROUP(uart1),
864         UNIPHIER_PINCTRL_GROUP(uart2),
865         UNIPHIER_PINCTRL_GROUP(uart3),
866         UNIPHIER_PINCTRL_GROUP(uart3b),
867         UNIPHIER_PINCTRL_GROUP(usb0),
868         UNIPHIER_PINCTRL_GROUP(usb1),
869         UNIPHIER_PINCTRL_GROUP(usb2),
870         UNIPHIER_PINCTRL_GROUP(usb3),
871         UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range0),
872         UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range1),
873         UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq),
874         UNIPHIER_PINCTRL_GROUP_SINGLE(port00, port_range0, 0),
875         UNIPHIER_PINCTRL_GROUP_SINGLE(port01, port_range0, 1),
876         UNIPHIER_PINCTRL_GROUP_SINGLE(port02, port_range0, 2),
877         UNIPHIER_PINCTRL_GROUP_SINGLE(port03, port_range0, 3),
878         UNIPHIER_PINCTRL_GROUP_SINGLE(port04, port_range0, 4),
879         UNIPHIER_PINCTRL_GROUP_SINGLE(port05, port_range0, 5),
880         UNIPHIER_PINCTRL_GROUP_SINGLE(port06, port_range0, 6),
881         UNIPHIER_PINCTRL_GROUP_SINGLE(port07, port_range0, 7),
882         UNIPHIER_PINCTRL_GROUP_SINGLE(port10, port_range0, 8),
883         UNIPHIER_PINCTRL_GROUP_SINGLE(port11, port_range0, 9),
884         UNIPHIER_PINCTRL_GROUP_SINGLE(port12, port_range0, 10),
885         UNIPHIER_PINCTRL_GROUP_SINGLE(port13, port_range0, 11),
886         UNIPHIER_PINCTRL_GROUP_SINGLE(port14, port_range0, 12),
887         UNIPHIER_PINCTRL_GROUP_SINGLE(port15, port_range0, 13),
888         UNIPHIER_PINCTRL_GROUP_SINGLE(port16, port_range0, 14),
889         UNIPHIER_PINCTRL_GROUP_SINGLE(port17, port_range0, 15),
890         UNIPHIER_PINCTRL_GROUP_SINGLE(port20, port_range0, 16),
891         UNIPHIER_PINCTRL_GROUP_SINGLE(port21, port_range0, 17),
892         UNIPHIER_PINCTRL_GROUP_SINGLE(port22, port_range0, 18),
893         UNIPHIER_PINCTRL_GROUP_SINGLE(port23, port_range0, 19),
894         UNIPHIER_PINCTRL_GROUP_SINGLE(port24, port_range0, 20),
895         UNIPHIER_PINCTRL_GROUP_SINGLE(port25, port_range0, 21),
896         UNIPHIER_PINCTRL_GROUP_SINGLE(port26, port_range0, 22),
897         UNIPHIER_PINCTRL_GROUP_SINGLE(port27, port_range0, 23),
898         UNIPHIER_PINCTRL_GROUP_SINGLE(port30, port_range0, 24),
899         UNIPHIER_PINCTRL_GROUP_SINGLE(port31, port_range0, 25),
900         UNIPHIER_PINCTRL_GROUP_SINGLE(port32, port_range0, 26),
901         UNIPHIER_PINCTRL_GROUP_SINGLE(port33, port_range0, 27),
902         UNIPHIER_PINCTRL_GROUP_SINGLE(port34, port_range0, 28),
903         UNIPHIER_PINCTRL_GROUP_SINGLE(port35, port_range0, 29),
904         UNIPHIER_PINCTRL_GROUP_SINGLE(port36, port_range0, 30),
905         UNIPHIER_PINCTRL_GROUP_SINGLE(port37, port_range0, 31),
906         UNIPHIER_PINCTRL_GROUP_SINGLE(port40, port_range0, 32),
907         UNIPHIER_PINCTRL_GROUP_SINGLE(port41, port_range0, 33),
908         UNIPHIER_PINCTRL_GROUP_SINGLE(port42, port_range0, 34),
909         UNIPHIER_PINCTRL_GROUP_SINGLE(port43, port_range0, 35),
910         UNIPHIER_PINCTRL_GROUP_SINGLE(port44, port_range0, 36),
911         UNIPHIER_PINCTRL_GROUP_SINGLE(port45, port_range0, 37),
912         UNIPHIER_PINCTRL_GROUP_SINGLE(port46, port_range0, 38),
913         UNIPHIER_PINCTRL_GROUP_SINGLE(port47, port_range0, 39),
914         UNIPHIER_PINCTRL_GROUP_SINGLE(port50, port_range0, 40),
915         UNIPHIER_PINCTRL_GROUP_SINGLE(port51, port_range0, 41),
916         UNIPHIER_PINCTRL_GROUP_SINGLE(port52, port_range0, 42),
917         UNIPHIER_PINCTRL_GROUP_SINGLE(port53, port_range0, 43),
918         UNIPHIER_PINCTRL_GROUP_SINGLE(port54, port_range0, 44),
919         UNIPHIER_PINCTRL_GROUP_SINGLE(port55, port_range0, 45),
920         UNIPHIER_PINCTRL_GROUP_SINGLE(port56, port_range0, 46),
921         UNIPHIER_PINCTRL_GROUP_SINGLE(port57, port_range0, 47),
922         UNIPHIER_PINCTRL_GROUP_SINGLE(port60, port_range0, 48),
923         UNIPHIER_PINCTRL_GROUP_SINGLE(port61, port_range0, 49),
924         UNIPHIER_PINCTRL_GROUP_SINGLE(port62, port_range0, 50),
925         UNIPHIER_PINCTRL_GROUP_SINGLE(port63, port_range0, 51),
926         UNIPHIER_PINCTRL_GROUP_SINGLE(port64, port_range0, 52),
927         UNIPHIER_PINCTRL_GROUP_SINGLE(port65, port_range0, 53),
928         UNIPHIER_PINCTRL_GROUP_SINGLE(port66, port_range0, 54),
929         UNIPHIER_PINCTRL_GROUP_SINGLE(port67, port_range0, 55),
930         UNIPHIER_PINCTRL_GROUP_SINGLE(port70, port_range0, 56),
931         UNIPHIER_PINCTRL_GROUP_SINGLE(port71, port_range0, 57),
932         UNIPHIER_PINCTRL_GROUP_SINGLE(port72, port_range0, 58),
933         UNIPHIER_PINCTRL_GROUP_SINGLE(port73, port_range0, 59),
934         UNIPHIER_PINCTRL_GROUP_SINGLE(port74, port_range0, 60),
935         UNIPHIER_PINCTRL_GROUP_SINGLE(port75, port_range0, 61),
936         UNIPHIER_PINCTRL_GROUP_SINGLE(port76, port_range0, 62),
937         UNIPHIER_PINCTRL_GROUP_SINGLE(port77, port_range0, 63),
938         UNIPHIER_PINCTRL_GROUP_SINGLE(port80, port_range0, 64),
939         UNIPHIER_PINCTRL_GROUP_SINGLE(port81, port_range0, 65),
940         UNIPHIER_PINCTRL_GROUP_SINGLE(port82, port_range0, 66),
941         UNIPHIER_PINCTRL_GROUP_SINGLE(port83, port_range0, 67),
942         UNIPHIER_PINCTRL_GROUP_SINGLE(port84, port_range0, 68),
943         UNIPHIER_PINCTRL_GROUP_SINGLE(port85, port_range0, 69),
944         UNIPHIER_PINCTRL_GROUP_SINGLE(port86, port_range0, 70),
945         UNIPHIER_PINCTRL_GROUP_SINGLE(port87, port_range0, 71),
946         UNIPHIER_PINCTRL_GROUP_SINGLE(port90, port_range0, 72),
947         UNIPHIER_PINCTRL_GROUP_SINGLE(port91, port_range0, 73),
948         UNIPHIER_PINCTRL_GROUP_SINGLE(port92, port_range0, 74),
949         UNIPHIER_PINCTRL_GROUP_SINGLE(port93, port_range0, 75),
950         UNIPHIER_PINCTRL_GROUP_SINGLE(port94, port_range0, 76),
951         UNIPHIER_PINCTRL_GROUP_SINGLE(port95, port_range0, 77),
952         UNIPHIER_PINCTRL_GROUP_SINGLE(port96, port_range0, 78),
953         UNIPHIER_PINCTRL_GROUP_SINGLE(port97, port_range0, 79),
954         UNIPHIER_PINCTRL_GROUP_SINGLE(port100, port_range0, 80),
955         UNIPHIER_PINCTRL_GROUP_SINGLE(port101, port_range0, 81),
956         UNIPHIER_PINCTRL_GROUP_SINGLE(port102, port_range0, 82),
957         UNIPHIER_PINCTRL_GROUP_SINGLE(port103, port_range0, 83),
958         UNIPHIER_PINCTRL_GROUP_SINGLE(port104, port_range0, 84),
959         UNIPHIER_PINCTRL_GROUP_SINGLE(port105, port_range0, 85),
960         UNIPHIER_PINCTRL_GROUP_SINGLE(port106, port_range0, 86),
961         UNIPHIER_PINCTRL_GROUP_SINGLE(port107, port_range0, 87),
962         UNIPHIER_PINCTRL_GROUP_SINGLE(port120, port_range1, 0),
963         UNIPHIER_PINCTRL_GROUP_SINGLE(port121, port_range1, 1),
964         UNIPHIER_PINCTRL_GROUP_SINGLE(port122, port_range1, 2),
965         UNIPHIER_PINCTRL_GROUP_SINGLE(port123, port_range1, 3),
966         UNIPHIER_PINCTRL_GROUP_SINGLE(port124, port_range1, 4),
967         UNIPHIER_PINCTRL_GROUP_SINGLE(port125, port_range1, 5),
968         UNIPHIER_PINCTRL_GROUP_SINGLE(port126, port_range1, 6),
969         UNIPHIER_PINCTRL_GROUP_SINGLE(port127, port_range1, 7),
970         UNIPHIER_PINCTRL_GROUP_SINGLE(port130, port_range1, 8),
971         UNIPHIER_PINCTRL_GROUP_SINGLE(port131, port_range1, 9),
972         UNIPHIER_PINCTRL_GROUP_SINGLE(port132, port_range1, 10),
973         UNIPHIER_PINCTRL_GROUP_SINGLE(port133, port_range1, 11),
974         UNIPHIER_PINCTRL_GROUP_SINGLE(port134, port_range1, 12),
975         UNIPHIER_PINCTRL_GROUP_SINGLE(port135, port_range1, 13),
976         UNIPHIER_PINCTRL_GROUP_SINGLE(port136, port_range1, 14),
977         UNIPHIER_PINCTRL_GROUP_SINGLE(port137, port_range1, 15),
978         UNIPHIER_PINCTRL_GROUP_SINGLE(port140, port_range1, 16),
979         UNIPHIER_PINCTRL_GROUP_SINGLE(port141, port_range1, 17),
980         UNIPHIER_PINCTRL_GROUP_SINGLE(port142, port_range1, 18),
981         UNIPHIER_PINCTRL_GROUP_SINGLE(port143, port_range1, 19),
982         UNIPHIER_PINCTRL_GROUP_SINGLE(port144, port_range1, 20),
983         UNIPHIER_PINCTRL_GROUP_SINGLE(port145, port_range1, 21),
984         UNIPHIER_PINCTRL_GROUP_SINGLE(port146, port_range1, 22),
985         UNIPHIER_PINCTRL_GROUP_SINGLE(port147, port_range1, 23),
986         UNIPHIER_PINCTRL_GROUP_SINGLE(port150, port_range1, 24),
987         UNIPHIER_PINCTRL_GROUP_SINGLE(port151, port_range1, 25),
988         UNIPHIER_PINCTRL_GROUP_SINGLE(port152, port_range1, 26),
989         UNIPHIER_PINCTRL_GROUP_SINGLE(port153, port_range1, 27),
990         UNIPHIER_PINCTRL_GROUP_SINGLE(port154, port_range1, 28),
991         UNIPHIER_PINCTRL_GROUP_SINGLE(port155, port_range1, 29),
992         UNIPHIER_PINCTRL_GROUP_SINGLE(port156, port_range1, 30),
993         UNIPHIER_PINCTRL_GROUP_SINGLE(port157, port_range1, 31),
994         UNIPHIER_PINCTRL_GROUP_SINGLE(port160, port_range1, 32),
995         UNIPHIER_PINCTRL_GROUP_SINGLE(port161, port_range1, 33),
996         UNIPHIER_PINCTRL_GROUP_SINGLE(port162, port_range1, 34),
997         UNIPHIER_PINCTRL_GROUP_SINGLE(port163, port_range1, 35),
998         UNIPHIER_PINCTRL_GROUP_SINGLE(port164, port_range1, 36),
999         UNIPHIER_PINCTRL_GROUP_SINGLE(port165, port_range1, 37),
1000         UNIPHIER_PINCTRL_GROUP_SINGLE(port166, port_range1, 38),
1001         UNIPHIER_PINCTRL_GROUP_SINGLE(port167, port_range1, 39),
1002         UNIPHIER_PINCTRL_GROUP_SINGLE(port170, port_range1, 40),
1003         UNIPHIER_PINCTRL_GROUP_SINGLE(port171, port_range1, 41),
1004         UNIPHIER_PINCTRL_GROUP_SINGLE(port172, port_range1, 42),
1005         UNIPHIER_PINCTRL_GROUP_SINGLE(port173, port_range1, 43),
1006         UNIPHIER_PINCTRL_GROUP_SINGLE(port174, port_range1, 44),
1007         UNIPHIER_PINCTRL_GROUP_SINGLE(port175, port_range1, 45),
1008         UNIPHIER_PINCTRL_GROUP_SINGLE(port176, port_range1, 46),
1009         UNIPHIER_PINCTRL_GROUP_SINGLE(port177, port_range1, 47),
1010         UNIPHIER_PINCTRL_GROUP_SINGLE(port180, port_range1, 48),
1011         UNIPHIER_PINCTRL_GROUP_SINGLE(port181, port_range1, 49),
1012         UNIPHIER_PINCTRL_GROUP_SINGLE(port182, port_range1, 50),
1013         UNIPHIER_PINCTRL_GROUP_SINGLE(port183, port_range1, 51),
1014         UNIPHIER_PINCTRL_GROUP_SINGLE(port184, port_range1, 52),
1015         UNIPHIER_PINCTRL_GROUP_SINGLE(port185, port_range1, 53),
1016         UNIPHIER_PINCTRL_GROUP_SINGLE(port186, port_range1, 54),
1017         UNIPHIER_PINCTRL_GROUP_SINGLE(port187, port_range1, 55),
1018         UNIPHIER_PINCTRL_GROUP_SINGLE(port190, port_range1, 56),
1019         UNIPHIER_PINCTRL_GROUP_SINGLE(port191, port_range1, 57),
1020         UNIPHIER_PINCTRL_GROUP_SINGLE(port192, port_range1, 58),
1021         UNIPHIER_PINCTRL_GROUP_SINGLE(port193, port_range1, 59),
1022         UNIPHIER_PINCTRL_GROUP_SINGLE(port194, port_range1, 60),
1023         UNIPHIER_PINCTRL_GROUP_SINGLE(port195, port_range1, 61),
1024         UNIPHIER_PINCTRL_GROUP_SINGLE(port196, port_range1, 62),
1025         UNIPHIER_PINCTRL_GROUP_SINGLE(port197, port_range1, 63),
1026         UNIPHIER_PINCTRL_GROUP_SINGLE(port200, port_range1, 64),
1027         UNIPHIER_PINCTRL_GROUP_SINGLE(port201, port_range1, 65),
1028         UNIPHIER_PINCTRL_GROUP_SINGLE(port202, port_range1, 66),
1029         UNIPHIER_PINCTRL_GROUP_SINGLE(port203, port_range1, 67),
1030         UNIPHIER_PINCTRL_GROUP_SINGLE(port204, port_range1, 68),
1031         UNIPHIER_PINCTRL_GROUP_SINGLE(port205, port_range1, 69),
1032         UNIPHIER_PINCTRL_GROUP_SINGLE(port206, port_range1, 70),
1033         UNIPHIER_PINCTRL_GROUP_SINGLE(port207, port_range1, 71),
1034         UNIPHIER_PINCTRL_GROUP_SINGLE(port210, port_range1, 72),
1035         UNIPHIER_PINCTRL_GROUP_SINGLE(port211, port_range1, 73),
1036         UNIPHIER_PINCTRL_GROUP_SINGLE(port212, port_range1, 74),
1037         UNIPHIER_PINCTRL_GROUP_SINGLE(port213, port_range1, 75),
1038         UNIPHIER_PINCTRL_GROUP_SINGLE(port214, port_range1, 76),
1039         UNIPHIER_PINCTRL_GROUP_SINGLE(port215, port_range1, 77),
1040         UNIPHIER_PINCTRL_GROUP_SINGLE(port216, port_range1, 78),
1041         UNIPHIER_PINCTRL_GROUP_SINGLE(port217, port_range1, 79),
1042         UNIPHIER_PINCTRL_GROUP_SINGLE(port220, port_range1, 80),
1043         UNIPHIER_PINCTRL_GROUP_SINGLE(port221, port_range1, 81),
1044         UNIPHIER_PINCTRL_GROUP_SINGLE(port222, port_range1, 82),
1045         UNIPHIER_PINCTRL_GROUP_SINGLE(port223, port_range1, 83),
1046         UNIPHIER_PINCTRL_GROUP_SINGLE(port224, port_range1, 84),
1047         UNIPHIER_PINCTRL_GROUP_SINGLE(port225, port_range1, 85),
1048         UNIPHIER_PINCTRL_GROUP_SINGLE(port226, port_range1, 86),
1049         UNIPHIER_PINCTRL_GROUP_SINGLE(port227, port_range1, 87),
1050         UNIPHIER_PINCTRL_GROUP_SINGLE(port230, port_range1, 88),
1051         UNIPHIER_PINCTRL_GROUP_SINGLE(port231, port_range1, 89),
1052         UNIPHIER_PINCTRL_GROUP_SINGLE(port232, port_range1, 90),
1053         UNIPHIER_PINCTRL_GROUP_SINGLE(port233, port_range1, 91),
1054         UNIPHIER_PINCTRL_GROUP_SINGLE(port234, port_range1, 92),
1055         UNIPHIER_PINCTRL_GROUP_SINGLE(port235, port_range1, 93),
1056         UNIPHIER_PINCTRL_GROUP_SINGLE(port236, port_range1, 94),
1057         UNIPHIER_PINCTRL_GROUP_SINGLE(port237, port_range1, 95),
1058         UNIPHIER_PINCTRL_GROUP_SINGLE(port240, port_range1, 96),
1059         UNIPHIER_PINCTRL_GROUP_SINGLE(port241, port_range1, 97),
1060         UNIPHIER_PINCTRL_GROUP_SINGLE(port242, port_range1, 98),
1061         UNIPHIER_PINCTRL_GROUP_SINGLE(port243, port_range1, 99),
1062         UNIPHIER_PINCTRL_GROUP_SINGLE(port244, port_range1, 100),
1063         UNIPHIER_PINCTRL_GROUP_SINGLE(port245, port_range1, 101),
1064         UNIPHIER_PINCTRL_GROUP_SINGLE(port246, port_range1, 102),
1065         UNIPHIER_PINCTRL_GROUP_SINGLE(port247, port_range1, 103),
1066         UNIPHIER_PINCTRL_GROUP_SINGLE(port250, port_range1, 104),
1067         UNIPHIER_PINCTRL_GROUP_SINGLE(port251, port_range1, 105),
1068         UNIPHIER_PINCTRL_GROUP_SINGLE(port252, port_range1, 106),
1069         UNIPHIER_PINCTRL_GROUP_SINGLE(port253, port_range1, 107),
1070         UNIPHIER_PINCTRL_GROUP_SINGLE(port254, port_range1, 108),
1071         UNIPHIER_PINCTRL_GROUP_SINGLE(port255, port_range1, 109),
1072         UNIPHIER_PINCTRL_GROUP_SINGLE(port256, port_range1, 110),
1073         UNIPHIER_PINCTRL_GROUP_SINGLE(port257, port_range1, 111),
1074         UNIPHIER_PINCTRL_GROUP_SINGLE(port260, port_range1, 112),
1075         UNIPHIER_PINCTRL_GROUP_SINGLE(port261, port_range1, 113),
1076         UNIPHIER_PINCTRL_GROUP_SINGLE(port262, port_range1, 114),
1077         UNIPHIER_PINCTRL_GROUP_SINGLE(port263, port_range1, 115),
1078         UNIPHIER_PINCTRL_GROUP_SINGLE(port264, port_range1, 116),
1079         UNIPHIER_PINCTRL_GROUP_SINGLE(port265, port_range1, 117),
1080         UNIPHIER_PINCTRL_GROUP_SINGLE(port266, port_range1, 118),
1081         UNIPHIER_PINCTRL_GROUP_SINGLE(port267, port_range1, 119),
1082         UNIPHIER_PINCTRL_GROUP_SINGLE(port270, port_range1, 120),
1083         UNIPHIER_PINCTRL_GROUP_SINGLE(port271, port_range1, 121),
1084         UNIPHIER_PINCTRL_GROUP_SINGLE(port272, port_range1, 122),
1085         UNIPHIER_PINCTRL_GROUP_SINGLE(port273, port_range1, 123),
1086         UNIPHIER_PINCTRL_GROUP_SINGLE(port274, port_range1, 124),
1087         UNIPHIER_PINCTRL_GROUP_SINGLE(port275, port_range1, 125),
1088         UNIPHIER_PINCTRL_GROUP_SINGLE(port276, port_range1, 126),
1089         UNIPHIER_PINCTRL_GROUP_SINGLE(port277, port_range1, 127),
1090         UNIPHIER_PINCTRL_GROUP_SINGLE(port280, port_range1, 128),
1091         UNIPHIER_PINCTRL_GROUP_SINGLE(port281, port_range1, 129),
1092         UNIPHIER_PINCTRL_GROUP_SINGLE(port282, port_range1, 130),
1093         UNIPHIER_PINCTRL_GROUP_SINGLE(port283, port_range1, 131),
1094         UNIPHIER_PINCTRL_GROUP_SINGLE(port284, port_range1, 132),
1095         UNIPHIER_PINCTRL_GROUP_SINGLE(port285, port_range1, 133),
1096         UNIPHIER_PINCTRL_GROUP_SINGLE(port286, port_range1, 134),
1097         UNIPHIER_PINCTRL_GROUP_SINGLE(port287, port_range1, 135),
1098         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq0, xirq, 0),
1099         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq1, xirq, 1),
1100         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq2, xirq, 2),
1101         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq3, xirq, 3),
1102         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq4, xirq, 4),
1103         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq5, xirq, 5),
1104         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq6, xirq, 6),
1105         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq7, xirq, 7),
1106         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq8, xirq, 8),
1107         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq9, xirq, 9),
1108         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq10, xirq, 10),
1109         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq11, xirq, 11),
1110         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq12, xirq, 12),
1111         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq13, xirq, 13),
1112         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq14, xirq, 14),
1113         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq15, xirq, 15),
1114         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq16, xirq, 16),
1115         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq17, xirq, 17),
1116         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq18, xirq, 18),
1117         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq19, xirq, 19),
1118         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq20, xirq, 20),
1119         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq21, xirq, 21),
1120         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq22, xirq, 22),
1121         UNIPHIER_PINCTRL_GROUP_SINGLE(xirq23, xirq, 23),
1122 };
1123
1124 static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
1125 static const char * const i2c0_groups[] = {"i2c0"};
1126 static const char * const i2c1_groups[] = {"i2c1"};
1127 static const char * const i2c2_groups[] = {"i2c2"};
1128 static const char * const i2c3_groups[] = {"i2c3"};
1129 static const char * const i2c5_groups[] = {"i2c5"};
1130 static const char * const i2c6_groups[] = {"i2c6"};
1131 static const char * const nand_groups[] = {"nand", "nand_cs1"};
1132 static const char * const sd_groups[] = {"sd"};
1133 static const char * const uart0_groups[] = {"uart0", "uart0b"};
1134 static const char * const uart1_groups[] = {"uart1"};
1135 static const char * const uart2_groups[] = {"uart2"};
1136 static const char * const uart3_groups[] = {"uart3", "uart3b"};
1137 static const char * const usb0_groups[] = {"usb0"};
1138 static const char * const usb1_groups[] = {"usb1"};
1139 static const char * const usb2_groups[] = {"usb2"};
1140 static const char * const usb3_groups[] = {"usb3"};
1141 static const char * const port_groups[] = {
1142         "port00",  "port01",  "port02",  "port03",
1143         "port04",  "port05",  "port06",  "port07",
1144         "port10",  "port11",  "port12",  "port13",
1145         "port14",  "port15",  "port16",  "port17",
1146         "port20",  "port21",  "port22",  "port23",
1147         "port24",  "port25",  "port26",  "port27",
1148         "port30",  "port31",  "port32",  "port33",
1149         "port34",  "port35",  "port36",  "port37",
1150         "port40",  "port41",  "port42",  "port43",
1151         "port44",  "port45",  "port46",  "port47",
1152         "port50",  "port51",  "port52",  "port53",
1153         "port54",  "port55",  "port56",  "port57",
1154         "port60",  "port61",  "port62",  "port63",
1155         "port64",  "port65",  "port66",  "port67",
1156         "port70",  "port71",  "port72",  "port73",
1157         "port74",  "port75",  "port76",  "port77",
1158         "port80",  "port81",  "port82",  "port83",
1159         "port84",  "port85",  "port86",  "port87",
1160         "port90",  "port91",  "port92",  "port93",
1161         "port94",  "port95",  "port96",  "port97",
1162         "port100", "port101", "port102", "port103",
1163         "port104", "port105", "port106", "port107",
1164         /* port110-117 missing */
1165         "port120", "port121", "port122", "port123",
1166         "port124", "port125", "port126", "port127",
1167         "port130", "port131", "port132", "port133",
1168         "port134", "port135", "port136", "port137",
1169         "port140", "port141", "port142", "port143",
1170         "port144", "port145", "port146", "port147",
1171         "port150", "port151", "port152", "port153",
1172         "port154", "port155", "port156", "port157",
1173         "port160", "port161", "port162", "port163",
1174         "port164", "port165", "port166", "port167",
1175         "port170", "port171", "port172", "port173",
1176         "port174", "port175", "port176", "port177",
1177         "port180", "port181", "port182", "port183",
1178         "port184", "port185", "port186", "port187",
1179         "port190", "port191", "port192", "port193",
1180         "port194", "port195", "port196", "port197",
1181         "port200", "port201", "port202", "port203",
1182         "port204", "port205", "port206", "port207",
1183         "port210", "port211", "port212", "port213",
1184         "port214", "port215", "port216", "port217",
1185         "port220", "port221", "port222", "port223",
1186         "port224", "port225", "port226", "port227",
1187         "port230", "port231", "port232", "port233",
1188         "port234", "port235", "port236", "port237",
1189         "port240", "port241", "port242", "port243",
1190         "port244", "port245", "port246", "port247",
1191         "port250", "port251", "port252", "port253",
1192         "port254", "port255", "port256", "port257",
1193         "port260", "port261", "port262", "port263",
1194         "port264", "port265", "port266", "port267",
1195         "port270", "port271", "port272", "port273",
1196         "port274", "port275", "port276", "port277",
1197         "port280", "port281", "port282", "port283",
1198         "port284", "port285", "port286", "port287",
1199 };
1200 static const char * const xirq_groups[] = {
1201         "xirq0",  "xirq1",  "xirq2",  "xirq3",
1202         "xirq4",  "xirq5",  "xirq6",  "xirq7",
1203         "xirq8",  "xirq9",  "xirq10", "xirq11",
1204         "xirq12", "xirq13", "xirq14", "xirq15",
1205         "xirq16", "xirq17", "xirq18", "xirq19",
1206         "xirq20", "xirq21", "xirq22", "xirq23",
1207 };
1208
1209 static const struct uniphier_pinmux_function uniphier_pxs2_functions[] = {
1210         UNIPHIER_PINMUX_FUNCTION(emmc),
1211         UNIPHIER_PINMUX_FUNCTION(i2c0),
1212         UNIPHIER_PINMUX_FUNCTION(i2c1),
1213         UNIPHIER_PINMUX_FUNCTION(i2c2),
1214         UNIPHIER_PINMUX_FUNCTION(i2c3),
1215         UNIPHIER_PINMUX_FUNCTION(i2c5),
1216         UNIPHIER_PINMUX_FUNCTION(i2c6),
1217         UNIPHIER_PINMUX_FUNCTION(nand),
1218         UNIPHIER_PINMUX_FUNCTION(sd),
1219         UNIPHIER_PINMUX_FUNCTION(uart0),
1220         UNIPHIER_PINMUX_FUNCTION(uart1),
1221         UNIPHIER_PINMUX_FUNCTION(uart2),
1222         UNIPHIER_PINMUX_FUNCTION(uart3),
1223         UNIPHIER_PINMUX_FUNCTION(usb0),
1224         UNIPHIER_PINMUX_FUNCTION(usb1),
1225         UNIPHIER_PINMUX_FUNCTION(usb2),
1226         UNIPHIER_PINMUX_FUNCTION(usb3),
1227         UNIPHIER_PINMUX_FUNCTION(port),
1228         UNIPHIER_PINMUX_FUNCTION(xirq),
1229 };
1230
1231 static struct uniphier_pinctrl_socdata uniphier_pxs2_pindata = {
1232         .pins = uniphier_pxs2_pins,
1233         .npins = ARRAY_SIZE(uniphier_pxs2_pins),
1234         .groups = uniphier_pxs2_groups,
1235         .groups_count = ARRAY_SIZE(uniphier_pxs2_groups),
1236         .functions = uniphier_pxs2_functions,
1237         .functions_count = ARRAY_SIZE(uniphier_pxs2_functions),
1238         .caps = 0,
1239 };
1240
1241 static int uniphier_pxs2_pinctrl_probe(struct platform_device *pdev)
1242 {
1243         return uniphier_pinctrl_probe(pdev, &uniphier_pxs2_pindata);
1244 }
1245
1246 static const struct of_device_id uniphier_pxs2_pinctrl_match[] = {
1247         { .compatible = "socionext,proxstream2-pinctrl" },
1248         { /* sentinel */ }
1249 };
1250 MODULE_DEVICE_TABLE(of, uniphier_pxs2_pinctrl_match);
1251
1252 static struct platform_driver uniphier_pxs2_pinctrl_driver = {
1253         .probe = uniphier_pxs2_pinctrl_probe,
1254         .driver = {
1255                 .name = "uniphier-pxs2-pinctrl",
1256                 .of_match_table = uniphier_pxs2_pinctrl_match,
1257         },
1258 };
1259 module_platform_driver(uniphier_pxs2_pinctrl_driver);
1260
1261 MODULE_AUTHOR("Masahiro Yamada <yamada.masahiro@socionext.com>");
1262 MODULE_DESCRIPTION("UniPhier ProXstream2 pinctrl driver");
1263 MODULE_LICENSE("GPL");