GNU Linux-libre 4.19.286-gnu1
[releases.git] / drivers / pinctrl / uniphier / pinctrl-uniphier-pxs2.c
1 /*
2  * Copyright (C) 2015-2017 Socionext Inc.
3  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  */
15
16 #include <linux/kernel.h>
17 #include <linux/init.h>
18 #include <linux/mod_devicetable.h>
19 #include <linux/pinctrl/pinctrl.h>
20 #include <linux/platform_device.h>
21
22 #include "pinctrl-uniphier.h"
23
24 static const struct pinctrl_pin_desc uniphier_pxs2_pins[] = {
25         UNIPHIER_PINCTRL_PIN(0, "ED0", UNIPHIER_PIN_IECTRL_NONE,
26                              0, UNIPHIER_PIN_DRV_1BIT,
27                              0, UNIPHIER_PIN_PULL_DOWN),
28         UNIPHIER_PINCTRL_PIN(1, "ED1", UNIPHIER_PIN_IECTRL_NONE,
29                              1, UNIPHIER_PIN_DRV_1BIT,
30                              1, UNIPHIER_PIN_PULL_DOWN),
31         UNIPHIER_PINCTRL_PIN(2, "ED2", UNIPHIER_PIN_IECTRL_NONE,
32                              2, UNIPHIER_PIN_DRV_1BIT,
33                              2, UNIPHIER_PIN_PULL_DOWN),
34         UNIPHIER_PINCTRL_PIN(3, "ED3", UNIPHIER_PIN_IECTRL_NONE,
35                              3, UNIPHIER_PIN_DRV_1BIT,
36                              3, UNIPHIER_PIN_PULL_DOWN),
37         UNIPHIER_PINCTRL_PIN(4, "ED4", UNIPHIER_PIN_IECTRL_NONE,
38                              4, UNIPHIER_PIN_DRV_1BIT,
39                              4, UNIPHIER_PIN_PULL_DOWN),
40         UNIPHIER_PINCTRL_PIN(5, "ED5", UNIPHIER_PIN_IECTRL_NONE,
41                              5, UNIPHIER_PIN_DRV_1BIT,
42                              5, UNIPHIER_PIN_PULL_DOWN),
43         UNIPHIER_PINCTRL_PIN(6, "ED6", UNIPHIER_PIN_IECTRL_NONE,
44                              6, UNIPHIER_PIN_DRV_1BIT,
45                              6, UNIPHIER_PIN_PULL_DOWN),
46         UNIPHIER_PINCTRL_PIN(7, "ED7", UNIPHIER_PIN_IECTRL_NONE,
47                              7, UNIPHIER_PIN_DRV_1BIT,
48                              7, UNIPHIER_PIN_PULL_DOWN),
49         UNIPHIER_PINCTRL_PIN(8, "XERWE0", UNIPHIER_PIN_IECTRL_NONE,
50                              8, UNIPHIER_PIN_DRV_1BIT,
51                              8, UNIPHIER_PIN_PULL_DOWN),
52         UNIPHIER_PINCTRL_PIN(9, "XERWE1", UNIPHIER_PIN_IECTRL_NONE,
53                              9, UNIPHIER_PIN_DRV_1BIT,
54                              9, UNIPHIER_PIN_PULL_DOWN),
55         UNIPHIER_PINCTRL_PIN(10, "ERXW", UNIPHIER_PIN_IECTRL_NONE,
56                              10, UNIPHIER_PIN_DRV_1BIT,
57                              10, UNIPHIER_PIN_PULL_DOWN),
58         UNIPHIER_PINCTRL_PIN(11, "ES0", UNIPHIER_PIN_IECTRL_NONE,
59                              11, UNIPHIER_PIN_DRV_1BIT,
60                              11, UNIPHIER_PIN_PULL_DOWN),
61         UNIPHIER_PINCTRL_PIN(12, "ES1", UNIPHIER_PIN_IECTRL_NONE,
62                              12, UNIPHIER_PIN_DRV_1BIT,
63                              12, UNIPHIER_PIN_PULL_DOWN),
64         UNIPHIER_PINCTRL_PIN(13, "ES2", UNIPHIER_PIN_IECTRL_NONE,
65                              13, UNIPHIER_PIN_DRV_1BIT,
66                              13, UNIPHIER_PIN_PULL_DOWN),
67         UNIPHIER_PINCTRL_PIN(14, "XECS1", UNIPHIER_PIN_IECTRL_NONE,
68                              14, UNIPHIER_PIN_DRV_1BIT,
69                              14, UNIPHIER_PIN_PULL_DOWN),
70         UNIPHIER_PINCTRL_PIN(15, "SMTRST0", UNIPHIER_PIN_IECTRL_NONE,
71                              -1, UNIPHIER_PIN_DRV_FIXED8,
72                              15, UNIPHIER_PIN_PULL_DOWN),
73         UNIPHIER_PINCTRL_PIN(16, "SMTCMD0", UNIPHIER_PIN_IECTRL_NONE,
74                              -1, UNIPHIER_PIN_DRV_FIXED8,
75                              16, UNIPHIER_PIN_PULL_DOWN),
76         UNIPHIER_PINCTRL_PIN(17, "SMTD0", UNIPHIER_PIN_IECTRL_NONE,
77                              -1, UNIPHIER_PIN_DRV_FIXED8,
78                              17, UNIPHIER_PIN_PULL_DOWN),
79         UNIPHIER_PINCTRL_PIN(18, "SMTSEL0", UNIPHIER_PIN_IECTRL_NONE,
80                              -1, UNIPHIER_PIN_DRV_FIXED8,
81                              18, UNIPHIER_PIN_PULL_DOWN),
82         UNIPHIER_PINCTRL_PIN(19, "SMTCLK0CG", UNIPHIER_PIN_IECTRL_NONE,
83                              -1, UNIPHIER_PIN_DRV_FIXED8,
84                              19, UNIPHIER_PIN_PULL_DOWN),
85         UNIPHIER_PINCTRL_PIN(20, "SMTDET0", UNIPHIER_PIN_IECTRL_NONE,
86                              -1, UNIPHIER_PIN_DRV_FIXED8,
87                              20, UNIPHIER_PIN_PULL_DOWN),
88         UNIPHIER_PINCTRL_PIN(21, "SMTRST1", UNIPHIER_PIN_IECTRL_NONE,
89                              -1, UNIPHIER_PIN_DRV_FIXED8,
90                              21, UNIPHIER_PIN_PULL_DOWN),
91         UNIPHIER_PINCTRL_PIN(22, "SMTCMD1", UNIPHIER_PIN_IECTRL_NONE,
92                              -1, UNIPHIER_PIN_DRV_FIXED8,
93                              22, UNIPHIER_PIN_PULL_DOWN),
94         UNIPHIER_PINCTRL_PIN(23, "SMTD1", UNIPHIER_PIN_IECTRL_NONE,
95                              -1, UNIPHIER_PIN_DRV_FIXED8,
96                              23, UNIPHIER_PIN_PULL_DOWN),
97         UNIPHIER_PINCTRL_PIN(24, "SMTSEL1", UNIPHIER_PIN_IECTRL_NONE,
98                              -1, UNIPHIER_PIN_DRV_FIXED8,
99                              24, UNIPHIER_PIN_PULL_DOWN),
100         UNIPHIER_PINCTRL_PIN(25, "SMTCLK1CG", UNIPHIER_PIN_IECTRL_NONE,
101                              -1, UNIPHIER_PIN_DRV_FIXED8,
102                              25, UNIPHIER_PIN_PULL_DOWN),
103         UNIPHIER_PINCTRL_PIN(26, "SMTDET1", UNIPHIER_PIN_IECTRL_NONE,
104                              -1, UNIPHIER_PIN_DRV_FIXED8,
105                              26, UNIPHIER_PIN_PULL_DOWN),
106         UNIPHIER_PINCTRL_PIN(27, "XIRQ18", UNIPHIER_PIN_IECTRL_NONE,
107                              -1, UNIPHIER_PIN_DRV_FIXED8,
108                              27, UNIPHIER_PIN_PULL_DOWN),
109         UNIPHIER_PINCTRL_PIN(28, "XIRQ19", UNIPHIER_PIN_IECTRL_NONE,
110                              -1, UNIPHIER_PIN_DRV_FIXED8,
111                              28, UNIPHIER_PIN_PULL_DOWN),
112         UNIPHIER_PINCTRL_PIN(29, "XIRQ20", UNIPHIER_PIN_IECTRL_NONE,
113                              -1, UNIPHIER_PIN_DRV_FIXED8,
114                              29, UNIPHIER_PIN_PULL_DOWN),
115         UNIPHIER_PINCTRL_PIN(30, "XNFRE", UNIPHIER_PIN_IECTRL_NONE,
116                              30, UNIPHIER_PIN_DRV_1BIT,
117                              30, UNIPHIER_PIN_PULL_UP),
118         UNIPHIER_PINCTRL_PIN(31, "XNFWE", UNIPHIER_PIN_IECTRL_NONE,
119                              31, UNIPHIER_PIN_DRV_1BIT,
120                              31, UNIPHIER_PIN_PULL_UP),
121         UNIPHIER_PINCTRL_PIN(32, "NFALE", UNIPHIER_PIN_IECTRL_NONE,
122                              32, UNIPHIER_PIN_DRV_1BIT,
123                              32, UNIPHIER_PIN_PULL_DOWN),
124         UNIPHIER_PINCTRL_PIN(33, "NFCLE", UNIPHIER_PIN_IECTRL_NONE,
125                              33, UNIPHIER_PIN_DRV_1BIT,
126                              33, UNIPHIER_PIN_PULL_DOWN),
127         UNIPHIER_PINCTRL_PIN(34, "XNFWP", UNIPHIER_PIN_IECTRL_NONE,
128                              34, UNIPHIER_PIN_DRV_1BIT,
129                              34, UNIPHIER_PIN_PULL_DOWN),
130         UNIPHIER_PINCTRL_PIN(35, "XNFCE0", UNIPHIER_PIN_IECTRL_NONE,
131                              35, UNIPHIER_PIN_DRV_1BIT,
132                              35, UNIPHIER_PIN_PULL_UP),
133         UNIPHIER_PINCTRL_PIN(36, "NFRYBY0", UNIPHIER_PIN_IECTRL_NONE,
134                              36, UNIPHIER_PIN_DRV_1BIT,
135                              36, UNIPHIER_PIN_PULL_UP),
136         UNIPHIER_PINCTRL_PIN(37, "XNFCE1", UNIPHIER_PIN_IECTRL_NONE,
137                              37, UNIPHIER_PIN_DRV_1BIT,
138                              37, UNIPHIER_PIN_PULL_UP),
139         UNIPHIER_PINCTRL_PIN(38, "NFRYBY1", UNIPHIER_PIN_IECTRL_NONE,
140                              38, UNIPHIER_PIN_DRV_1BIT,
141                              38, UNIPHIER_PIN_PULL_UP),
142         UNIPHIER_PINCTRL_PIN(39, "NFD0", UNIPHIER_PIN_IECTRL_NONE,
143                              39, UNIPHIER_PIN_DRV_1BIT,
144                              39, UNIPHIER_PIN_PULL_DOWN),
145         UNIPHIER_PINCTRL_PIN(40, "NFD1", UNIPHIER_PIN_IECTRL_NONE,
146                              40, UNIPHIER_PIN_DRV_1BIT,
147                              40, UNIPHIER_PIN_PULL_DOWN),
148         UNIPHIER_PINCTRL_PIN(41, "NFD2", UNIPHIER_PIN_IECTRL_NONE,
149                              41, UNIPHIER_PIN_DRV_1BIT,
150                              41, UNIPHIER_PIN_PULL_DOWN),
151         UNIPHIER_PINCTRL_PIN(42, "NFD3", UNIPHIER_PIN_IECTRL_NONE,
152                              42, UNIPHIER_PIN_DRV_1BIT,
153                              42, UNIPHIER_PIN_PULL_DOWN),
154         UNIPHIER_PINCTRL_PIN(43, "NFD4", UNIPHIER_PIN_IECTRL_NONE,
155                              43, UNIPHIER_PIN_DRV_1BIT,
156                              43, UNIPHIER_PIN_PULL_DOWN),
157         UNIPHIER_PINCTRL_PIN(44, "NFD5", UNIPHIER_PIN_IECTRL_NONE,
158                              44, UNIPHIER_PIN_DRV_1BIT,
159                              44, UNIPHIER_PIN_PULL_DOWN),
160         UNIPHIER_PINCTRL_PIN(45, "NFD6", UNIPHIER_PIN_IECTRL_NONE,
161                              45, UNIPHIER_PIN_DRV_1BIT,
162                              45, UNIPHIER_PIN_PULL_DOWN),
163         UNIPHIER_PINCTRL_PIN(46, "NFD7", UNIPHIER_PIN_IECTRL_NONE,
164                              46, UNIPHIER_PIN_DRV_1BIT,
165                              46, UNIPHIER_PIN_PULL_DOWN),
166         UNIPHIER_PINCTRL_PIN(47, "SDCLK", UNIPHIER_PIN_IECTRL_NONE,
167                              0, UNIPHIER_PIN_DRV_2BIT,
168                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
169         UNIPHIER_PINCTRL_PIN(48, "SDCMD", UNIPHIER_PIN_IECTRL_NONE,
170                              1, UNIPHIER_PIN_DRV_2BIT,
171                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
172         UNIPHIER_PINCTRL_PIN(49, "SDDAT0", UNIPHIER_PIN_IECTRL_NONE,
173                              2, UNIPHIER_PIN_DRV_2BIT,
174                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
175         UNIPHIER_PINCTRL_PIN(50, "SDDAT1", UNIPHIER_PIN_IECTRL_NONE,
176                              3, UNIPHIER_PIN_DRV_2BIT,
177                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
178         UNIPHIER_PINCTRL_PIN(51, "SDDAT2", UNIPHIER_PIN_IECTRL_NONE,
179                              4, UNIPHIER_PIN_DRV_2BIT,
180                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
181         UNIPHIER_PINCTRL_PIN(52, "SDDAT3", UNIPHIER_PIN_IECTRL_NONE,
182                              5, UNIPHIER_PIN_DRV_2BIT,
183                              -1, UNIPHIER_PIN_PULL_UP_FIXED),
184         UNIPHIER_PINCTRL_PIN(53, "SDCD", UNIPHIER_PIN_IECTRL_NONE,
185                              -1, UNIPHIER_PIN_DRV_FIXED8,
186                              53, UNIPHIER_PIN_PULL_DOWN),
187         UNIPHIER_PINCTRL_PIN(54, "SDWP", UNIPHIER_PIN_IECTRL_NONE,
188                              -1, UNIPHIER_PIN_DRV_FIXED8,
189                              54, UNIPHIER_PIN_PULL_DOWN),
190         UNIPHIER_PINCTRL_PIN(55, "SDVOLC", UNIPHIER_PIN_IECTRL_NONE,
191                              -1, UNIPHIER_PIN_DRV_FIXED8,
192                              55, UNIPHIER_PIN_PULL_DOWN),
193         UNIPHIER_PINCTRL_PIN(56, "USB0VBUS", UNIPHIER_PIN_IECTRL_NONE,
194                              -1, UNIPHIER_PIN_DRV_FIXED8,
195                              56, UNIPHIER_PIN_PULL_DOWN),
196         UNIPHIER_PINCTRL_PIN(57, "USB0OD", UNIPHIER_PIN_IECTRL_NONE,
197                              -1, UNIPHIER_PIN_DRV_FIXED8,
198                              57, UNIPHIER_PIN_PULL_DOWN),
199         UNIPHIER_PINCTRL_PIN(58, "USB1VBUS", UNIPHIER_PIN_IECTRL_NONE,
200                              -1, UNIPHIER_PIN_DRV_FIXED8,
201                              58, UNIPHIER_PIN_PULL_DOWN),
202         UNIPHIER_PINCTRL_PIN(59, "USB1OD", UNIPHIER_PIN_IECTRL_NONE,
203                              -1, UNIPHIER_PIN_DRV_FIXED8,
204                              59, UNIPHIER_PIN_PULL_DOWN),
205         UNIPHIER_PINCTRL_PIN(60, "USB2VBUS", UNIPHIER_PIN_IECTRL_NONE,
206                              -1, UNIPHIER_PIN_DRV_FIXED8,
207                              60, UNIPHIER_PIN_PULL_DOWN),
208         UNIPHIER_PINCTRL_PIN(61, "USB2OD", UNIPHIER_PIN_IECTRL_NONE,
209                              -1, UNIPHIER_PIN_DRV_FIXED8,
210                              61, UNIPHIER_PIN_PULL_DOWN),
211         UNIPHIER_PINCTRL_PIN(62, "USB3VBUS", UNIPHIER_PIN_IECTRL_NONE,
212                              -1, UNIPHIER_PIN_DRV_FIXED8,
213                              62, UNIPHIER_PIN_PULL_DOWN),
214         UNIPHIER_PINCTRL_PIN(63, "USB3OD", UNIPHIER_PIN_IECTRL_NONE,
215                              -1, UNIPHIER_PIN_DRV_FIXED8,
216                              63, UNIPHIER_PIN_PULL_DOWN),
217         UNIPHIER_PINCTRL_PIN(64, "CH0CLK", UNIPHIER_PIN_IECTRL_NONE,
218                              -1, UNIPHIER_PIN_DRV_FIXED8,
219                              64, UNIPHIER_PIN_PULL_DOWN),
220         UNIPHIER_PINCTRL_PIN(65, "CH0PSYNC", UNIPHIER_PIN_IECTRL_NONE,
221                              -1, UNIPHIER_PIN_DRV_FIXED8,
222                              65, UNIPHIER_PIN_PULL_DOWN),
223         UNIPHIER_PINCTRL_PIN(66, "CH0VAL", UNIPHIER_PIN_IECTRL_NONE,
224                              -1, UNIPHIER_PIN_DRV_FIXED8,
225                              66, UNIPHIER_PIN_PULL_DOWN),
226         UNIPHIER_PINCTRL_PIN(67, "CH0DATA", UNIPHIER_PIN_IECTRL_NONE,
227                              -1, UNIPHIER_PIN_DRV_FIXED8,
228                              67, UNIPHIER_PIN_PULL_DOWN),
229         UNIPHIER_PINCTRL_PIN(68, "CH1CLK", UNIPHIER_PIN_IECTRL_NONE,
230                              -1, UNIPHIER_PIN_DRV_FIXED8,
231                              68, UNIPHIER_PIN_PULL_DOWN),
232         UNIPHIER_PINCTRL_PIN(69, "CH1PSYNC", UNIPHIER_PIN_IECTRL_NONE,
233                              -1, UNIPHIER_PIN_DRV_FIXED8,
234                              69, UNIPHIER_PIN_PULL_DOWN),
235         UNIPHIER_PINCTRL_PIN(70, "CH1VAL", UNIPHIER_PIN_IECTRL_NONE,
236                              -1, UNIPHIER_PIN_DRV_FIXED8,
237                              70, UNIPHIER_PIN_PULL_DOWN),
238         UNIPHIER_PINCTRL_PIN(71, "CH1DATA", UNIPHIER_PIN_IECTRL_NONE,
239                              -1, UNIPHIER_PIN_DRV_FIXED8,
240                              71, UNIPHIER_PIN_PULL_DOWN),
241         UNIPHIER_PINCTRL_PIN(72, "XIRQ9", UNIPHIER_PIN_IECTRL_NONE,
242                              -1, UNIPHIER_PIN_DRV_FIXED8,
243                              72, UNIPHIER_PIN_PULL_DOWN),
244         UNIPHIER_PINCTRL_PIN(73, "XIRQ10", UNIPHIER_PIN_IECTRL_NONE,
245                              -1, UNIPHIER_PIN_DRV_FIXED8,
246                              73, UNIPHIER_PIN_PULL_DOWN),
247         UNIPHIER_PINCTRL_PIN(74, "XIRQ16", UNIPHIER_PIN_IECTRL_NONE,
248                              -1, UNIPHIER_PIN_DRV_FIXED8,
249                              74, UNIPHIER_PIN_PULL_DOWN),
250         UNIPHIER_PINCTRL_PIN(75, "CH4CLK", UNIPHIER_PIN_IECTRL_NONE,
251                              -1, UNIPHIER_PIN_DRV_FIXED8,
252                              75, UNIPHIER_PIN_PULL_DOWN),
253         UNIPHIER_PINCTRL_PIN(76, "CH4PSYNC", UNIPHIER_PIN_IECTRL_NONE,
254                              -1, UNIPHIER_PIN_DRV_FIXED8,
255                              76, UNIPHIER_PIN_PULL_DOWN),
256         UNIPHIER_PINCTRL_PIN(77, "CH4VAL", UNIPHIER_PIN_IECTRL_NONE,
257                              -1, UNIPHIER_PIN_DRV_FIXED8,
258                              77, UNIPHIER_PIN_PULL_DOWN),
259         UNIPHIER_PINCTRL_PIN(78, "CH4DATA", UNIPHIER_PIN_IECTRL_NONE,
260                              -1, UNIPHIER_PIN_DRV_FIXED8,
261                              78, UNIPHIER_PIN_PULL_DOWN),
262         UNIPHIER_PINCTRL_PIN(79, "CH5CLK", UNIPHIER_PIN_IECTRL_NONE,
263                              -1, UNIPHIER_PIN_DRV_FIXED8,
264                              79, UNIPHIER_PIN_PULL_DOWN),
265         UNIPHIER_PINCTRL_PIN(80, "CH5PSYNC", UNIPHIER_PIN_IECTRL_NONE,
266                              -1, UNIPHIER_PIN_DRV_FIXED8,
267                              80, UNIPHIER_PIN_PULL_DOWN),
268         UNIPHIER_PINCTRL_PIN(81, "CH5VAL", UNIPHIER_PIN_IECTRL_NONE,
269                              -1, UNIPHIER_PIN_DRV_FIXED8,
270                              81, UNIPHIER_PIN_PULL_DOWN),
271         UNIPHIER_PINCTRL_PIN(82, "CH5DATA", UNIPHIER_PIN_IECTRL_NONE,
272                              -1, UNIPHIER_PIN_DRV_FIXED8,
273                              82, UNIPHIER_PIN_PULL_DOWN),
274         UNIPHIER_PINCTRL_PIN(83, "CH6CLK", UNIPHIER_PIN_IECTRL_NONE,
275                              -1, UNIPHIER_PIN_DRV_FIXED8,
276                              83, UNIPHIER_PIN_PULL_DOWN),
277         UNIPHIER_PINCTRL_PIN(84, "CH6PSYNC", UNIPHIER_PIN_IECTRL_NONE,
278                              -1, UNIPHIER_PIN_DRV_FIXED8,
279                              84, UNIPHIER_PIN_PULL_DOWN),
280         UNIPHIER_PINCTRL_PIN(85, "CH6VAL", UNIPHIER_PIN_IECTRL_NONE,
281                              -1, UNIPHIER_PIN_DRV_FIXED8,
282                              85, UNIPHIER_PIN_PULL_DOWN),
283         UNIPHIER_PINCTRL_PIN(86, "CH6DATA", UNIPHIER_PIN_IECTRL_NONE,
284                              -1, UNIPHIER_PIN_DRV_FIXED8,
285                              86, UNIPHIER_PIN_PULL_DOWN),
286         UNIPHIER_PINCTRL_PIN(87, "STS0CLKO", UNIPHIER_PIN_IECTRL_NONE,
287                              -1, UNIPHIER_PIN_DRV_FIXED8,
288                              87, UNIPHIER_PIN_PULL_DOWN),
289         UNIPHIER_PINCTRL_PIN(88, "STS0SYNCO", UNIPHIER_PIN_IECTRL_NONE,
290                              -1, UNIPHIER_PIN_DRV_FIXED8,
291                              88, UNIPHIER_PIN_PULL_DOWN),
292         UNIPHIER_PINCTRL_PIN(89, "STS0VALO", UNIPHIER_PIN_IECTRL_NONE,
293                              -1, UNIPHIER_PIN_DRV_FIXED8,
294                              89, UNIPHIER_PIN_PULL_DOWN),
295         UNIPHIER_PINCTRL_PIN(90, "STS0DATAO", UNIPHIER_PIN_IECTRL_NONE,
296                              -1, UNIPHIER_PIN_DRV_FIXED8,
297                              90, UNIPHIER_PIN_PULL_DOWN),
298         UNIPHIER_PINCTRL_PIN(91, "XIRQ17", UNIPHIER_PIN_IECTRL_NONE,
299                              -1, UNIPHIER_PIN_DRV_FIXED8,
300                              91, UNIPHIER_PIN_PULL_DOWN),
301         UNIPHIER_PINCTRL_PIN(92, "PORT163", UNIPHIER_PIN_IECTRL_NONE,
302                              -1, UNIPHIER_PIN_DRV_FIXED8,
303                              92, UNIPHIER_PIN_PULL_DOWN),
304         UNIPHIER_PINCTRL_PIN(93, "PORT165", UNIPHIER_PIN_IECTRL_NONE,
305                              -1, UNIPHIER_PIN_DRV_FIXED8,
306                              93, UNIPHIER_PIN_PULL_DOWN),
307         UNIPHIER_PINCTRL_PIN(94, "PORT166", UNIPHIER_PIN_IECTRL_NONE,
308                              -1, UNIPHIER_PIN_DRV_FIXED8,
309                              94, UNIPHIER_PIN_PULL_DOWN),
310         UNIPHIER_PINCTRL_PIN(95, "PORT132", UNIPHIER_PIN_IECTRL_NONE,
311                              -1, UNIPHIER_PIN_DRV_FIXED8,
312                              95, UNIPHIER_PIN_PULL_DOWN),
313         UNIPHIER_PINCTRL_PIN(96, "PORT133", UNIPHIER_PIN_IECTRL_NONE,
314                              -1, UNIPHIER_PIN_DRV_FIXED8,
315                              96, UNIPHIER_PIN_PULL_DOWN),
316         UNIPHIER_PINCTRL_PIN(97, "AO2IEC", UNIPHIER_PIN_IECTRL_NONE,
317                              -1, UNIPHIER_PIN_DRV_FIXED8,
318                              97, UNIPHIER_PIN_PULL_DOWN),
319         UNIPHIER_PINCTRL_PIN(98, "AI2ADCCK", UNIPHIER_PIN_IECTRL_NONE,
320                              -1, UNIPHIER_PIN_DRV_FIXED8,
321                              98, UNIPHIER_PIN_PULL_DOWN),
322         UNIPHIER_PINCTRL_PIN(99, "AI2BCK", UNIPHIER_PIN_IECTRL_NONE,
323                              -1, UNIPHIER_PIN_DRV_FIXED8,
324                              99, UNIPHIER_PIN_PULL_DOWN),
325         UNIPHIER_PINCTRL_PIN(100, "AI2LRCK", UNIPHIER_PIN_IECTRL_NONE,
326                              -1, UNIPHIER_PIN_DRV_FIXED8,
327                              100, UNIPHIER_PIN_PULL_DOWN),
328         UNIPHIER_PINCTRL_PIN(101, "AI2D0", UNIPHIER_PIN_IECTRL_NONE,
329                              -1, UNIPHIER_PIN_DRV_FIXED8,
330                              101, UNIPHIER_PIN_PULL_DOWN),
331         UNIPHIER_PINCTRL_PIN(102, "AI2D1", UNIPHIER_PIN_IECTRL_NONE,
332                              -1, UNIPHIER_PIN_DRV_FIXED8,
333                              102, UNIPHIER_PIN_PULL_DOWN),
334         UNIPHIER_PINCTRL_PIN(103, "AI2D2", UNIPHIER_PIN_IECTRL_NONE,
335                              -1, UNIPHIER_PIN_DRV_FIXED8,
336                              103, UNIPHIER_PIN_PULL_DOWN),
337         UNIPHIER_PINCTRL_PIN(104, "AI2D3", UNIPHIER_PIN_IECTRL_NONE,
338                              -1, UNIPHIER_PIN_DRV_FIXED8,
339                              104, UNIPHIER_PIN_PULL_DOWN),
340         UNIPHIER_PINCTRL_PIN(105, "AO3DACCK", UNIPHIER_PIN_IECTRL_NONE,
341                              -1, UNIPHIER_PIN_DRV_FIXED8,
342                              105, UNIPHIER_PIN_PULL_DOWN),
343         UNIPHIER_PINCTRL_PIN(106, "AO3BCK", UNIPHIER_PIN_IECTRL_NONE,
344                              -1, UNIPHIER_PIN_DRV_FIXED8,
345                              106, UNIPHIER_PIN_PULL_DOWN),
346         UNIPHIER_PINCTRL_PIN(107, "AO3LRCK", UNIPHIER_PIN_IECTRL_NONE,
347                              -1, UNIPHIER_PIN_DRV_FIXED8,
348                              107, UNIPHIER_PIN_PULL_DOWN),
349         UNIPHIER_PINCTRL_PIN(108, "AO3DMIX", UNIPHIER_PIN_IECTRL_NONE,
350                              -1, UNIPHIER_PIN_DRV_FIXED8,
351                              108, UNIPHIER_PIN_PULL_DOWN),
352         UNIPHIER_PINCTRL_PIN(109, "SDA0", UNIPHIER_PIN_IECTRL_NONE,
353                              -1, UNIPHIER_PIN_DRV_FIXED8,
354                              109, UNIPHIER_PIN_PULL_DOWN),
355         UNIPHIER_PINCTRL_PIN(110, "SCL0", UNIPHIER_PIN_IECTRL_NONE,
356                              -1, UNIPHIER_PIN_DRV_FIXED8,
357                              110, UNIPHIER_PIN_PULL_DOWN),
358         UNIPHIER_PINCTRL_PIN(111, "SDA1", UNIPHIER_PIN_IECTRL_NONE,
359                              -1, UNIPHIER_PIN_DRV_FIXED8,
360                              111, UNIPHIER_PIN_PULL_DOWN),
361         UNIPHIER_PINCTRL_PIN(112, "SCL1", UNIPHIER_PIN_IECTRL_NONE,
362                              -1, UNIPHIER_PIN_DRV_FIXED8,
363                              112, UNIPHIER_PIN_PULL_DOWN),
364         UNIPHIER_PINCTRL_PIN(113, "TXD2", 0,
365                              113, UNIPHIER_PIN_DRV_1BIT,
366                              113, UNIPHIER_PIN_PULL_UP),
367         UNIPHIER_PINCTRL_PIN(114, "RXD2", 0,
368                              114, UNIPHIER_PIN_DRV_1BIT,
369                              114, UNIPHIER_PIN_PULL_UP),
370         UNIPHIER_PINCTRL_PIN(115, "TXD1", 0,
371                              115, UNIPHIER_PIN_DRV_1BIT,
372                              115, UNIPHIER_PIN_PULL_UP),
373         UNIPHIER_PINCTRL_PIN(116, "RXD1", 0,
374                              116, UNIPHIER_PIN_DRV_1BIT,
375                              116, UNIPHIER_PIN_PULL_UP),
376         UNIPHIER_PINCTRL_PIN(117, "PORT190", UNIPHIER_PIN_IECTRL_NONE,
377                              -1, UNIPHIER_PIN_DRV_FIXED8,
378                              117, UNIPHIER_PIN_PULL_DOWN),
379         UNIPHIER_PINCTRL_PIN(118, "VI1HSYNC", UNIPHIER_PIN_IECTRL_NONE,
380                              -1, UNIPHIER_PIN_DRV_FIXED8,
381                              118, UNIPHIER_PIN_PULL_DOWN),
382         UNIPHIER_PINCTRL_PIN(119, "VI1VSYNC", UNIPHIER_PIN_IECTRL_NONE,
383                              -1, UNIPHIER_PIN_DRV_FIXED8,
384                              119, UNIPHIER_PIN_PULL_DOWN),
385         UNIPHIER_PINCTRL_PIN(120, "VI1DE", UNIPHIER_PIN_IECTRL_NONE,
386                              -1, UNIPHIER_PIN_DRV_FIXED8,
387                              120, UNIPHIER_PIN_PULL_DOWN),
388         UNIPHIER_PINCTRL_PIN(121, "XIRQ3", UNIPHIER_PIN_IECTRL_NONE,
389                              -1, UNIPHIER_PIN_DRV_FIXED8,
390                              121, UNIPHIER_PIN_PULL_DOWN),
391         UNIPHIER_PINCTRL_PIN(122, "XIRQ4", UNIPHIER_PIN_IECTRL_NONE,
392                              -1, UNIPHIER_PIN_DRV_FIXED8,
393                              122, UNIPHIER_PIN_PULL_DOWN),
394         UNIPHIER_PINCTRL_PIN(123, "VI1G2", UNIPHIER_PIN_IECTRL_NONE,
395                              -1, UNIPHIER_PIN_DRV_FIXED8,
396                              123, UNIPHIER_PIN_PULL_DOWN),
397         UNIPHIER_PINCTRL_PIN(124, "VI1G3", UNIPHIER_PIN_IECTRL_NONE,
398                              -1, UNIPHIER_PIN_DRV_FIXED8,
399                              124, UNIPHIER_PIN_PULL_DOWN),
400         UNIPHIER_PINCTRL_PIN(125, "VI1G4", UNIPHIER_PIN_IECTRL_NONE,
401                              -1, UNIPHIER_PIN_DRV_FIXED8,
402                              125, UNIPHIER_PIN_PULL_DOWN),
403         UNIPHIER_PINCTRL_PIN(126, "VI1G5", UNIPHIER_PIN_IECTRL_NONE,
404                              -1, UNIPHIER_PIN_DRV_FIXED8,
405                              126, UNIPHIER_PIN_PULL_DOWN),
406         UNIPHIER_PINCTRL_PIN(127, "VI1G6", UNIPHIER_PIN_IECTRL_NONE,
407                              -1, UNIPHIER_PIN_DRV_FIXED8,
408                              127, UNIPHIER_PIN_PULL_DOWN),
409         UNIPHIER_PINCTRL_PIN(128, "VI1G7", UNIPHIER_PIN_IECTRL_NONE,
410                              -1, UNIPHIER_PIN_DRV_FIXED8,
411                              128, UNIPHIER_PIN_PULL_DOWN),
412         UNIPHIER_PINCTRL_PIN(129, "VI1G8", UNIPHIER_PIN_IECTRL_NONE,
413                              -1, UNIPHIER_PIN_DRV_FIXED8,
414                              129, UNIPHIER_PIN_PULL_DOWN),
415         UNIPHIER_PINCTRL_PIN(130, "VI1G9", UNIPHIER_PIN_IECTRL_NONE,
416                              -1, UNIPHIER_PIN_DRV_FIXED8,
417                              130, UNIPHIER_PIN_PULL_DOWN),
418         UNIPHIER_PINCTRL_PIN(131, "VI1CLK", UNIPHIER_PIN_IECTRL_NONE,
419                              -1, UNIPHIER_PIN_DRV_FIXED8,
420                              131, UNIPHIER_PIN_PULL_DOWN),
421         UNIPHIER_PINCTRL_PIN(132, "PORT05", UNIPHIER_PIN_IECTRL_NONE,
422                              -1, UNIPHIER_PIN_DRV_FIXED8,
423                              132, UNIPHIER_PIN_PULL_DOWN),
424         UNIPHIER_PINCTRL_PIN(133, "PORT06", UNIPHIER_PIN_IECTRL_NONE,
425                              -1, UNIPHIER_PIN_DRV_FIXED8,
426                              133, UNIPHIER_PIN_PULL_DOWN),
427         UNIPHIER_PINCTRL_PIN(134, "VI1R2", UNIPHIER_PIN_IECTRL_NONE,
428                              -1, UNIPHIER_PIN_DRV_FIXED8,
429                              134, UNIPHIER_PIN_PULL_DOWN),
430         UNIPHIER_PINCTRL_PIN(135, "VI1R3", UNIPHIER_PIN_IECTRL_NONE,
431                              -1, UNIPHIER_PIN_DRV_FIXED8,
432                              135, UNIPHIER_PIN_PULL_DOWN),
433         UNIPHIER_PINCTRL_PIN(136, "VI1R4", UNIPHIER_PIN_IECTRL_NONE,
434                              -1, UNIPHIER_PIN_DRV_FIXED8,
435                              136, UNIPHIER_PIN_PULL_DOWN),
436         UNIPHIER_PINCTRL_PIN(137, "VI1R5", UNIPHIER_PIN_IECTRL_NONE,
437                              -1, UNIPHIER_PIN_DRV_FIXED8,
438                              137, UNIPHIER_PIN_PULL_DOWN),
439         UNIPHIER_PINCTRL_PIN(138, "VI1R6", UNIPHIER_PIN_IECTRL_NONE,
440                              -1, UNIPHIER_PIN_DRV_FIXED8,
441                              138, UNIPHIER_PIN_PULL_DOWN),
442         UNIPHIER_PINCTRL_PIN(139, "VI1R7", UNIPHIER_PIN_IECTRL_NONE,
443                              -1, UNIPHIER_PIN_DRV_FIXED8,
444                              139, UNIPHIER_PIN_PULL_DOWN),
445         UNIPHIER_PINCTRL_PIN(140, "VI1R8", UNIPHIER_PIN_IECTRL_NONE,
446                              -1, UNIPHIER_PIN_DRV_FIXED8,
447                              140, UNIPHIER_PIN_PULL_DOWN),
448         UNIPHIER_PINCTRL_PIN(141, "VI1R9", UNIPHIER_PIN_IECTRL_NONE,
449                              -1, UNIPHIER_PIN_DRV_FIXED8,
450                              141, UNIPHIER_PIN_PULL_DOWN),
451         UNIPHIER_PINCTRL_PIN(142, "LPST", UNIPHIER_PIN_IECTRL_NONE,
452                              142, UNIPHIER_PIN_DRV_1BIT,
453                              142, UNIPHIER_PIN_PULL_DOWN),
454         UNIPHIER_PINCTRL_PIN(143, "MDC", 0,
455                              143, UNIPHIER_PIN_DRV_1BIT,
456                              143, UNIPHIER_PIN_PULL_DOWN),
457         UNIPHIER_PINCTRL_PIN(144, "MDIO", 0,
458                              144, UNIPHIER_PIN_DRV_1BIT,
459                              144, UNIPHIER_PIN_PULL_DOWN),
460         UNIPHIER_PINCTRL_PIN(145, "MDIO_INTL", 0,
461                              145, UNIPHIER_PIN_DRV_1BIT,
462                              145, UNIPHIER_PIN_PULL_DOWN),
463         UNIPHIER_PINCTRL_PIN(146, "PHYRSTL", 0,
464                              146, UNIPHIER_PIN_DRV_1BIT,
465                              146, UNIPHIER_PIN_PULL_DOWN),
466         UNIPHIER_PINCTRL_PIN(147, "RGMII_RXCLK", 0,
467                              147, UNIPHIER_PIN_DRV_1BIT,
468                              147, UNIPHIER_PIN_PULL_DOWN),
469         UNIPHIER_PINCTRL_PIN(148, "RGMII_RXD0", 0,
470                              148, UNIPHIER_PIN_DRV_1BIT,
471                              148, UNIPHIER_PIN_PULL_DOWN),
472         UNIPHIER_PINCTRL_PIN(149, "RGMII_RXD1", 0,
473                              149, UNIPHIER_PIN_DRV_1BIT,
474                              149, UNIPHIER_PIN_PULL_DOWN),
475         UNIPHIER_PINCTRL_PIN(150, "RGMII_RXD2", 0,
476                              150, UNIPHIER_PIN_DRV_1BIT,
477                              150, UNIPHIER_PIN_PULL_DOWN),
478         UNIPHIER_PINCTRL_PIN(151, "RGMII_RXD3", 0,
479                              151, UNIPHIER_PIN_DRV_1BIT,
480                              151, UNIPHIER_PIN_PULL_DOWN),
481         UNIPHIER_PINCTRL_PIN(152, "RGMII_RXCTL", 0,
482                              152, UNIPHIER_PIN_DRV_1BIT,
483                              152, UNIPHIER_PIN_PULL_DOWN),
484         UNIPHIER_PINCTRL_PIN(153, "RGMII_TXCLK", 0,
485                              153, UNIPHIER_PIN_DRV_1BIT,
486                              153, UNIPHIER_PIN_PULL_DOWN),
487         UNIPHIER_PINCTRL_PIN(154, "RGMII_TXD0", 0,
488                              154, UNIPHIER_PIN_DRV_1BIT,
489                              154, UNIPHIER_PIN_PULL_DOWN),
490         UNIPHIER_PINCTRL_PIN(155, "RGMII_TXD1", 0,
491                              155, UNIPHIER_PIN_DRV_1BIT,
492                              155, UNIPHIER_PIN_PULL_DOWN),
493         UNIPHIER_PINCTRL_PIN(156, "RGMII_TXD2", 0,
494                              156, UNIPHIER_PIN_DRV_1BIT,
495                              156, UNIPHIER_PIN_PULL_DOWN),
496         UNIPHIER_PINCTRL_PIN(157, "RGMII_TXD3", 0,
497                              157, UNIPHIER_PIN_DRV_1BIT,
498                              157, UNIPHIER_PIN_PULL_DOWN),
499         UNIPHIER_PINCTRL_PIN(158, "RGMII_TXCTL", 0,
500                              158, UNIPHIER_PIN_DRV_1BIT,
501                              158, UNIPHIER_PIN_PULL_DOWN),
502         UNIPHIER_PINCTRL_PIN(159, "SDA3", UNIPHIER_PIN_IECTRL_NONE,
503                              -1, UNIPHIER_PIN_DRV_FIXED8,
504                              159, UNIPHIER_PIN_PULL_DOWN),
505         UNIPHIER_PINCTRL_PIN(160, "SCL3", UNIPHIER_PIN_IECTRL_NONE,
506                              -1, UNIPHIER_PIN_DRV_FIXED8,
507                              160, UNIPHIER_PIN_PULL_DOWN),
508         UNIPHIER_PINCTRL_PIN(161, "AI1ADCCK", UNIPHIER_PIN_IECTRL_NONE,
509                              -1, UNIPHIER_PIN_DRV_FIXED8,
510                              161, UNIPHIER_PIN_PULL_DOWN),
511         UNIPHIER_PINCTRL_PIN(162, "AI1BCK", UNIPHIER_PIN_IECTRL_NONE,
512                              -1, UNIPHIER_PIN_DRV_FIXED8,
513                              162, UNIPHIER_PIN_PULL_DOWN),
514         UNIPHIER_PINCTRL_PIN(163, "CH2CLK", UNIPHIER_PIN_IECTRL_NONE,
515                              -1, UNIPHIER_PIN_DRV_FIXED8,
516                              163, UNIPHIER_PIN_PULL_DOWN),
517         UNIPHIER_PINCTRL_PIN(164, "CH2PSYNC", UNIPHIER_PIN_IECTRL_NONE,
518                              -1, UNIPHIER_PIN_DRV_FIXED8,
519                              164, UNIPHIER_PIN_PULL_DOWN),
520         UNIPHIER_PINCTRL_PIN(165, "CH2VAL", UNIPHIER_PIN_IECTRL_NONE,
521                              -1, UNIPHIER_PIN_DRV_FIXED8,
522                              165, UNIPHIER_PIN_PULL_DOWN),
523         UNIPHIER_PINCTRL_PIN(166, "CH2DATA", UNIPHIER_PIN_IECTRL_NONE,
524                              -1, UNIPHIER_PIN_DRV_FIXED8,
525                              166, UNIPHIER_PIN_PULL_DOWN),
526         UNIPHIER_PINCTRL_PIN(167, "CH3CLK", UNIPHIER_PIN_IECTRL_NONE,
527                              -1, UNIPHIER_PIN_DRV_FIXED8,
528                              167, UNIPHIER_PIN_PULL_DOWN),
529         UNIPHIER_PINCTRL_PIN(168, "CH3PSYNC", UNIPHIER_PIN_IECTRL_NONE,
530                              -1, UNIPHIER_PIN_DRV_FIXED8,
531                              168, UNIPHIER_PIN_PULL_DOWN),
532         UNIPHIER_PINCTRL_PIN(169, "CH3VAL", UNIPHIER_PIN_IECTRL_NONE,
533                              -1, UNIPHIER_PIN_DRV_FIXED8,
534                              169, UNIPHIER_PIN_PULL_DOWN),
535         UNIPHIER_PINCTRL_PIN(170, "CH3DATA", UNIPHIER_PIN_IECTRL_NONE,
536                              -1, UNIPHIER_PIN_DRV_FIXED8,
537                              170, UNIPHIER_PIN_PULL_DOWN),
538         UNIPHIER_PINCTRL_PIN(171, "SDA2", UNIPHIER_PIN_IECTRL_NONE,
539                              -1, UNIPHIER_PIN_DRV_FIXED8,
540                              171, UNIPHIER_PIN_PULL_DOWN),
541         UNIPHIER_PINCTRL_PIN(172, "SCL2", UNIPHIER_PIN_IECTRL_NONE,
542                              -1, UNIPHIER_PIN_DRV_FIXED8,
543                              172, UNIPHIER_PIN_PULL_DOWN),
544         UNIPHIER_PINCTRL_PIN(173, "AI1LRCK", UNIPHIER_PIN_IECTRL_NONE,
545                              -1, UNIPHIER_PIN_DRV_FIXED8,
546                              173, UNIPHIER_PIN_PULL_DOWN),
547         UNIPHIER_PINCTRL_PIN(174, "AI1D0", UNIPHIER_PIN_IECTRL_NONE,
548                              -1, UNIPHIER_PIN_DRV_FIXED8,
549                              174, UNIPHIER_PIN_PULL_DOWN),
550         UNIPHIER_PINCTRL_PIN(175, "AO2LRCK", UNIPHIER_PIN_IECTRL_NONE,
551                              -1, UNIPHIER_PIN_DRV_FIXED8,
552                              175, UNIPHIER_PIN_PULL_DOWN),
553         UNIPHIER_PINCTRL_PIN(176, "AO2D0", UNIPHIER_PIN_IECTRL_NONE,
554                              -1, UNIPHIER_PIN_DRV_FIXED8,
555                              176, UNIPHIER_PIN_PULL_DOWN),
556         UNIPHIER_PINCTRL_PIN(177, "AO2DACCK", UNIPHIER_PIN_IECTRL_NONE,
557                              -1, UNIPHIER_PIN_DRV_FIXED8,
558                              177, UNIPHIER_PIN_PULL_DOWN),
559         UNIPHIER_PINCTRL_PIN(178, "AO2BCK", UNIPHIER_PIN_IECTRL_NONE,
560                              -1, UNIPHIER_PIN_DRV_FIXED8,
561                              178, UNIPHIER_PIN_PULL_DOWN),
562         UNIPHIER_PINCTRL_PIN(179, "PORT222", UNIPHIER_PIN_IECTRL_NONE,
563                              -1, UNIPHIER_PIN_DRV_FIXED8,
564                              179, UNIPHIER_PIN_PULL_DOWN),
565         UNIPHIER_PINCTRL_PIN(180, "PORT223", UNIPHIER_PIN_IECTRL_NONE,
566                              -1, UNIPHIER_PIN_DRV_FIXED8,
567                              180, UNIPHIER_PIN_PULL_DOWN),
568         UNIPHIER_PINCTRL_PIN(181, "PORT224", UNIPHIER_PIN_IECTRL_NONE,
569                              -1, UNIPHIER_PIN_DRV_FIXED8,
570                              181, UNIPHIER_PIN_PULL_DOWN),
571         UNIPHIER_PINCTRL_PIN(182, "PORT225", UNIPHIER_PIN_IECTRL_NONE,
572                              -1, UNIPHIER_PIN_DRV_FIXED8,
573                              182, UNIPHIER_PIN_PULL_DOWN),
574         UNIPHIER_PINCTRL_PIN(183, "PORT226", UNIPHIER_PIN_IECTRL_NONE,
575                              -1, UNIPHIER_PIN_DRV_FIXED8,
576                              183, UNIPHIER_PIN_PULL_DOWN),
577         UNIPHIER_PINCTRL_PIN(184, "PORT227", UNIPHIER_PIN_IECTRL_NONE,
578                              -1, UNIPHIER_PIN_DRV_FIXED8,
579                              184, UNIPHIER_PIN_PULL_DOWN),
580         UNIPHIER_PINCTRL_PIN(185, "PORT230", UNIPHIER_PIN_IECTRL_NONE,
581                              -1, UNIPHIER_PIN_DRV_FIXED8,
582                              185, UNIPHIER_PIN_PULL_DOWN),
583         UNIPHIER_PINCTRL_PIN(186, "FANPWM", UNIPHIER_PIN_IECTRL_NONE,
584                              -1, UNIPHIER_PIN_DRV_FIXED8,
585                              186, UNIPHIER_PIN_PULL_DOWN),
586         UNIPHIER_PINCTRL_PIN(187, "HRDDCSDA0", 0,
587                              187, UNIPHIER_PIN_DRV_1BIT,
588                              187, UNIPHIER_PIN_PULL_DOWN),
589         UNIPHIER_PINCTRL_PIN(188, "HRDDCSCL0", 0,
590                              188, UNIPHIER_PIN_DRV_1BIT,
591                              188, UNIPHIER_PIN_PULL_DOWN),
592         UNIPHIER_PINCTRL_PIN(189, "HRDDCSDA1", 0,
593                              189, UNIPHIER_PIN_DRV_1BIT,
594                              189, UNIPHIER_PIN_PULL_DOWN),
595         UNIPHIER_PINCTRL_PIN(190, "HRDDCSCL1", 0,
596                              190, UNIPHIER_PIN_DRV_1BIT,
597                              190, UNIPHIER_PIN_PULL_DOWN),
598         UNIPHIER_PINCTRL_PIN(191, "HTDDCSDA0", 0,
599                              191, UNIPHIER_PIN_DRV_1BIT,
600                              191, UNIPHIER_PIN_PULL_DOWN),
601         UNIPHIER_PINCTRL_PIN(192, "HTDDCSCL0", 0,
602                              192, UNIPHIER_PIN_DRV_1BIT,
603                              192, UNIPHIER_PIN_PULL_DOWN),
604         UNIPHIER_PINCTRL_PIN(193, "HTDDCSDA1", 0,
605                              193, UNIPHIER_PIN_DRV_1BIT,
606                              193, UNIPHIER_PIN_PULL_DOWN),
607         UNIPHIER_PINCTRL_PIN(194, "HTDDCSCL1", 0,
608                              194, UNIPHIER_PIN_DRV_1BIT,
609                              194, UNIPHIER_PIN_PULL_DOWN),
610         UNIPHIER_PINCTRL_PIN(195, "PORT241", 0,
611                              195, UNIPHIER_PIN_DRV_1BIT,
612                              195, UNIPHIER_PIN_PULL_DOWN),
613         UNIPHIER_PINCTRL_PIN(196, "PORT242", 0,
614                              196, UNIPHIER_PIN_DRV_1BIT,
615                              196, UNIPHIER_PIN_PULL_DOWN),
616         UNIPHIER_PINCTRL_PIN(197, "PORT243", 0,
617                              197, UNIPHIER_PIN_DRV_1BIT,
618                              197, UNIPHIER_PIN_PULL_DOWN),
619         UNIPHIER_PINCTRL_PIN(198, "MVSYNC", 0,
620                              198, UNIPHIER_PIN_DRV_1BIT,
621                              198, UNIPHIER_PIN_PULL_DOWN),
622         UNIPHIER_PINCTRL_PIN(199, "SPISYNC0", UNIPHIER_PIN_IECTRL_NONE,
623                              199, UNIPHIER_PIN_DRV_1BIT,
624                              199, UNIPHIER_PIN_PULL_DOWN),
625         UNIPHIER_PINCTRL_PIN(200, "SPISCLK0", UNIPHIER_PIN_IECTRL_NONE,
626                              200, UNIPHIER_PIN_DRV_1BIT,
627                              200, UNIPHIER_PIN_PULL_DOWN),
628         UNIPHIER_PINCTRL_PIN(201, "SPITXD0", UNIPHIER_PIN_IECTRL_NONE,
629                              201, UNIPHIER_PIN_DRV_1BIT,
630                              201, UNIPHIER_PIN_PULL_DOWN),
631         UNIPHIER_PINCTRL_PIN(202, "SPIRXD0", UNIPHIER_PIN_IECTRL_NONE,
632                              202, UNIPHIER_PIN_DRV_1BIT,
633                              202, UNIPHIER_PIN_PULL_DOWN),
634         UNIPHIER_PINCTRL_PIN(203, "CK54EXI", UNIPHIER_PIN_IECTRL_NONE,
635                              -1, UNIPHIER_PIN_DRV_FIXED8,
636                              203, UNIPHIER_PIN_PULL_DOWN),
637         UNIPHIER_PINCTRL_PIN(204, "AEXCKA1", UNIPHIER_PIN_IECTRL_NONE,
638                              -1, UNIPHIER_PIN_DRV_FIXED8,
639                              204, UNIPHIER_PIN_PULL_DOWN),
640         UNIPHIER_PINCTRL_PIN(205, "AEXCKA2", UNIPHIER_PIN_IECTRL_NONE,
641                              -1, UNIPHIER_PIN_DRV_FIXED8,
642                              205, UNIPHIER_PIN_PULL_DOWN),
643         UNIPHIER_PINCTRL_PIN(206, "CK27EXI", UNIPHIER_PIN_IECTRL_NONE,
644                              -1, UNIPHIER_PIN_DRV_FIXED8,
645                              206, UNIPHIER_PIN_PULL_DOWN),
646         UNIPHIER_PINCTRL_PIN(207, "STCDIN", 0,
647                              207, UNIPHIER_PIN_DRV_1BIT,
648                              207, UNIPHIER_PIN_PULL_DOWN),
649         UNIPHIER_PINCTRL_PIN(208, "PHSYNI", 0,
650                              208, UNIPHIER_PIN_DRV_1BIT,
651                              208, UNIPHIER_PIN_PULL_DOWN),
652         UNIPHIER_PINCTRL_PIN(209, "PVSYNI", 0,
653                              209, UNIPHIER_PIN_DRV_1BIT,
654                              209, UNIPHIER_PIN_PULL_DOWN),
655         UNIPHIER_PINCTRL_PIN(210, "MVSYN", UNIPHIER_PIN_IECTRL_NONE,
656                              210, UNIPHIER_PIN_DRV_1BIT,
657                              210, UNIPHIER_PIN_PULL_DOWN),
658         UNIPHIER_PINCTRL_PIN(211, "STCV", UNIPHIER_PIN_IECTRL_NONE,
659                              211, UNIPHIER_PIN_DRV_1BIT,
660                              211, UNIPHIER_PIN_PULL_DOWN),
661         UNIPHIER_PINCTRL_PIN(212, "PORT262", UNIPHIER_PIN_IECTRL_NONE,
662                              212, UNIPHIER_PIN_DRV_1BIT,
663                              212, UNIPHIER_PIN_PULL_DOWN),
664         UNIPHIER_PINCTRL_PIN(213, "USB0VBUS_IRQ", UNIPHIER_PIN_IECTRL_NONE,
665                              -1, UNIPHIER_PIN_DRV_FIXED4,
666                              213, UNIPHIER_PIN_PULL_DOWN),
667         UNIPHIER_PINCTRL_PIN(214, "USB1VBUS_IRQ", UNIPHIER_PIN_IECTRL_NONE,
668                              -1, UNIPHIER_PIN_DRV_FIXED4,
669                              214, UNIPHIER_PIN_PULL_DOWN),
670         UNIPHIER_PINCTRL_PIN(215, "PORT265", UNIPHIER_PIN_IECTRL_NONE,
671                              215, UNIPHIER_PIN_DRV_1BIT,
672                              215, UNIPHIER_PIN_PULL_DOWN),
673         UNIPHIER_PINCTRL_PIN(216, "CK25O", 0,
674                              216, UNIPHIER_PIN_DRV_1BIT,
675                              216, UNIPHIER_PIN_PULL_DOWN),
676         UNIPHIER_PINCTRL_PIN(217, "TXD0", 0,
677                              217, UNIPHIER_PIN_DRV_1BIT,
678                              217, UNIPHIER_PIN_PULL_DOWN),
679         UNIPHIER_PINCTRL_PIN(218, "RXD0", 0,
680                              218, UNIPHIER_PIN_DRV_1BIT,
681                              218, UNIPHIER_PIN_PULL_DOWN),
682         UNIPHIER_PINCTRL_PIN(219, "TXD3", 0,
683                              219, UNIPHIER_PIN_DRV_1BIT,
684                              219, UNIPHIER_PIN_PULL_DOWN),
685         UNIPHIER_PINCTRL_PIN(220, "RXD3", 0,
686                              220, UNIPHIER_PIN_DRV_1BIT,
687                              220, UNIPHIER_PIN_PULL_DOWN),
688         UNIPHIER_PINCTRL_PIN(221, "PORT273", 0,
689                              221, UNIPHIER_PIN_DRV_1BIT,
690                              221, UNIPHIER_PIN_PULL_DOWN),
691         UNIPHIER_PINCTRL_PIN(222, "STCDOUTC", 0,
692                              222, UNIPHIER_PIN_DRV_1BIT,
693                              222, UNIPHIER_PIN_PULL_DOWN),
694         UNIPHIER_PINCTRL_PIN(223, "PORT274", 0,
695                              223, UNIPHIER_PIN_DRV_1BIT,
696                              223, UNIPHIER_PIN_PULL_DOWN),
697         UNIPHIER_PINCTRL_PIN(224, "PORT275", 0,
698                              224, UNIPHIER_PIN_DRV_1BIT,
699                              224, UNIPHIER_PIN_PULL_DOWN),
700         UNIPHIER_PINCTRL_PIN(225, "PORT276", 0,
701                              225, UNIPHIER_PIN_DRV_1BIT,
702                              225, UNIPHIER_PIN_PULL_DOWN),
703         UNIPHIER_PINCTRL_PIN(226, "PORT277", 0,
704                              226, UNIPHIER_PIN_DRV_1BIT,
705                              226, UNIPHIER_PIN_PULL_DOWN),
706         UNIPHIER_PINCTRL_PIN(227, "PORT280", 0,
707                              227, UNIPHIER_PIN_DRV_1BIT,
708                              227, UNIPHIER_PIN_PULL_DOWN),
709         UNIPHIER_PINCTRL_PIN(228, "PORT281", 0,
710                              228, UNIPHIER_PIN_DRV_1BIT,
711                              228, UNIPHIER_PIN_PULL_DOWN),
712         UNIPHIER_PINCTRL_PIN(229, "PORT282", 0,
713                              229, UNIPHIER_PIN_DRV_1BIT,
714                              229, UNIPHIER_PIN_PULL_DOWN),
715         UNIPHIER_PINCTRL_PIN(230, "PORT283", 0,
716                              230, UNIPHIER_PIN_DRV_1BIT,
717                              230, UNIPHIER_PIN_PULL_DOWN),
718         UNIPHIER_PINCTRL_PIN(231, "PORT284", 0,
719                              231, UNIPHIER_PIN_DRV_1BIT,
720                              231, UNIPHIER_PIN_PULL_DOWN),
721         UNIPHIER_PINCTRL_PIN(232, "PORT285", 0,
722                              232, UNIPHIER_PIN_DRV_1BIT,
723                              232, UNIPHIER_PIN_PULL_DOWN),
724         UNIPHIER_PINCTRL_PIN(233, "T0HPD", 0,
725                              233, UNIPHIER_PIN_DRV_1BIT,
726                              233, UNIPHIER_PIN_PULL_DOWN),
727         UNIPHIER_PINCTRL_PIN(234, "T1HPD", 0,
728                              234, UNIPHIER_PIN_DRV_1BIT,
729                              234, UNIPHIER_PIN_PULL_DOWN),
730 };
731
732 static const unsigned ain1_pins[] = {161, 162, 173, 174};
733 static const int ain1_muxvals[] = {8, 8, 8, 8};
734 static const unsigned ain2_pins[] = {98, 99, 100, 101, 102, 103, 104};
735 static const int ain2_muxvals[] = {8, 8, 8, 8, 8, 8, 8};
736 static const unsigned ainiec1_pins[] = {91};
737 static const int ainiec1_muxvals[] = {11};
738 static const unsigned aout2_pins[] = {175, 176, 177, 178, 183, 184, 185};
739 static const int aout2_muxvals[] = {8, 8, 8, 8, 9, 9, 9};
740 static const unsigned aout3_pins[] = {105, 106, 107, 108};
741 static const int aout3_muxvals[] = {8, 8, 8, 8};
742 static const unsigned aoutiec1_pins[] = {95};
743 static const int aoutiec1_muxvals[] = {11};
744 static const unsigned aoutiec2_pins[] = {97};
745 static const int aoutiec2_muxvals[] = {8};
746 static const unsigned emmc_pins[] = {36, 37, 38, 39, 40, 41, 42};
747 static const int emmc_muxvals[] = {9, 9, 9, 9, 9, 9, 9};
748 static const unsigned emmc_dat8_pins[] = {43, 44, 45, 46};
749 static const int emmc_dat8_muxvals[] = {9, 9, 9, 9};
750 static const unsigned ether_mii_pins[] = {143, 144, 145, 146, 147, 148, 149,
751                                           150, 151, 152, 153, 154, 155, 156,
752                                           158, 159, 199, 200, 201, 202};
753 static const int ether_mii_muxvals[] = {8, 8, 8, 8, 10, 10, 10, 10, 10, 10, 10,
754                                         10, 10, 10, 10, 10, 12, 12, 12, 12};
755 static const unsigned ether_rgmii_pins[] = {143, 144, 145, 146, 147, 148, 149,
756                                             150, 151, 152, 153, 154, 155, 156,
757                                             157, 158};
758 static const int ether_rgmii_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
759                                           8, 8, 8, 8};
760 static const unsigned ether_rmii_pins[] = {143, 144, 145, 146, 147, 148, 149,
761                                            150, 152, 154, 155, 158};
762 static const int ether_rmii_muxvals[] = {8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9};
763 static const unsigned i2c0_pins[] = {109, 110};
764 static const int i2c0_muxvals[] = {8, 8};
765 static const unsigned i2c1_pins[] = {111, 112};
766 static const int i2c1_muxvals[] = {8, 8};
767 static const unsigned i2c2_pins[] = {171, 172};
768 static const int i2c2_muxvals[] = {8, 8};
769 static const unsigned i2c3_pins[] = {159, 160};
770 static const int i2c3_muxvals[] = {8, 8};
771 static const unsigned i2c5_pins[] = {183, 184};
772 static const int i2c5_muxvals[] = {11, 11};
773 static const unsigned i2c6_pins[] = {185, 186};
774 static const int i2c6_muxvals[] = {11, 11};
775 static const unsigned nand_pins[] = {30, 31, 32, 33, 34, 35, 36, 39, 40, 41,
776                                      42, 43, 44, 45, 46};
777 static const int nand_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8};
778 static const unsigned nand_cs1_pins[] = {37, 38};
779 static const int nand_cs1_muxvals[] = {8, 8};
780 static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55};
781 static const int sd_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8};
782 static const unsigned spi0_pins[] = {199, 200, 201, 202};
783 static const int spi0_muxvals[] = {8, 8, 8, 8};
784 static const unsigned spi1_pins[] = {93, 94, 95, 96};
785 static const int spi1_muxvals[] = {1, 1, 1, 1};
786 static const unsigned system_bus_pins[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
787                                            11, 12, 13};
788 static const int system_bus_muxvals[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
789                                          8};
790 static const unsigned system_bus_cs1_pins[] = {14};
791 static const int system_bus_cs1_muxvals[] = {8};
792 static const unsigned uart0_pins[] = {217, 218};
793 static const int uart0_muxvals[] = {8, 8};
794 static const unsigned uart0b_pins[] = {179, 180};
795 static const int uart0b_muxvals[] = {10, 10};
796 static const unsigned uart0b_ctsrts_pins[] = {176, 177, 178, 183, 184, 185};
797 static const int uart0b_ctsrts_muxvals[] = {10, 10, 10, 10, 10, 10};
798 static const unsigned uart1_pins[] = {115, 116};
799 static const int uart1_muxvals[] = {8, 8};
800 static const unsigned uart2_pins[] = {113, 114};
801 static const int uart2_muxvals[] = {8, 8};
802 static const unsigned uart3_pins[] = {219, 220};
803 static const int uart3_muxvals[] = {8, 8};
804 static const unsigned uart3b_pins[] = {181, 182};
805 static const int uart3b_muxvals[] = {10, 10};
806 static const unsigned usb0_pins[] = {56, 57};
807 static const int usb0_muxvals[] = {8, 8};
808 static const unsigned usb1_pins[] = {58, 59};
809 static const int usb1_muxvals[] = {8, 8};
810 static const unsigned usb2_pins[] = {60, 61};
811 static const int usb2_muxvals[] = {8, 8};
812 static const unsigned usb3_pins[] = {62, 63};
813 static const int usb3_muxvals[] = {8, 8};
814 static const unsigned int gpio_range0_pins[] = {
815         127, 128, 129, 130, 131, 132, 133, 134,         /* PORT0x */
816         135, 136, 137, 138, 139, 140, 141, 142,         /* PORT1x */
817         0, 1, 2, 3, 4, 5, 6, 7,                         /* PORT2x */
818         8, 9, 10, 11, 12, 13, 14, 15,                   /* PORT3x */
819         16, 17, 18, 19, 21, 22, 23, 24,                 /* PORT4x */
820         25, 30, 31, 32, 33, 34, 35, 36,                 /* PORT5x */
821         37, 38, 39, 40, 41, 42, 43, 44,                 /* PORT6x */
822         45, 46, 47, 48, 49, 50, 51, 52,                 /* PORT7x */
823         53, 54, 55, 56, 57, 58, 59, 60,                 /* PORT8x */
824         61, 62, 63, 64, 65, 66, 67, 68,                 /* PORT9x */
825         69, 70, 71, 76, 77, 78, 79, 80,                 /* PORT10x */
826 };
827 static const unsigned int gpio_range1_pins[] = {
828         81, 82, 83, 84, 85, 86, 87, 88,                 /* PORT12x */
829         89, 90, 95, 96, 97, 98, 99, 100,                /* PORT13x */
830         101, 102, 103, 104, 105, 106, 107, 108,         /* PORT14x */
831         118, 119, 120, 121, 122, 123, 124, 125,         /* XIRQ0-7 */
832         126, 72, 73, 92, 177, 93, 94, 176,              /* XIRQ8-15 */
833         74, 91, 27, 28, 29, 75, 20, 26,                 /* XIRQ16-23 */
834         109, 110, 111, 112, 113, 114, 115, 116,         /* PORT18x */
835         117, 143, 144, 145, 146, 147, 148, 149,         /* PORT19x */
836         150, 151, 152, 153, 154, 155, 156, 157,         /* PORT20x */
837         158, 159, 160, 161, 162, 163, 164, 165,         /* PORT21x */
838         166, 178, 179, 180, 181, 182, 183, 184,         /* PORT22x */
839         185, 187, 188, 189, 190, 191, 192, 193,         /* PORT23x */
840         194, 195, 196, 197, 198, 199, 200, 201,         /* PORT24x */
841         202, 203, 204, 205, 206, 207, 208, 209,         /* PORT25x */
842         210, 211, 212, 213, 214, 215, 216, 217,         /* PORT26x */
843         218, 219, 220, 221, 223, 224, 225, 226,         /* PORT27x */
844         227, 228, 229, 230, 231, 232, 233, 234,         /* PORT28x */
845 };
846
847 static const struct uniphier_pinctrl_group uniphier_pxs2_groups[] = {
848         UNIPHIER_PINCTRL_GROUP(ain1),
849         UNIPHIER_PINCTRL_GROUP(ain2),
850         UNIPHIER_PINCTRL_GROUP(ainiec1),
851         UNIPHIER_PINCTRL_GROUP(aout2),
852         UNIPHIER_PINCTRL_GROUP(aout3),
853         UNIPHIER_PINCTRL_GROUP(aoutiec1),
854         UNIPHIER_PINCTRL_GROUP(aoutiec2),
855         UNIPHIER_PINCTRL_GROUP(emmc),
856         UNIPHIER_PINCTRL_GROUP(emmc_dat8),
857         UNIPHIER_PINCTRL_GROUP(ether_mii),
858         UNIPHIER_PINCTRL_GROUP(ether_rgmii),
859         UNIPHIER_PINCTRL_GROUP(ether_rmii),
860         UNIPHIER_PINCTRL_GROUP(i2c0),
861         UNIPHIER_PINCTRL_GROUP(i2c1),
862         UNIPHIER_PINCTRL_GROUP(i2c2),
863         UNIPHIER_PINCTRL_GROUP(i2c3),
864         UNIPHIER_PINCTRL_GROUP(i2c5),
865         UNIPHIER_PINCTRL_GROUP(i2c6),
866         UNIPHIER_PINCTRL_GROUP(nand),
867         UNIPHIER_PINCTRL_GROUP(nand_cs1),
868         UNIPHIER_PINCTRL_GROUP(sd),
869         UNIPHIER_PINCTRL_GROUP(spi0),
870         UNIPHIER_PINCTRL_GROUP(spi1),
871         UNIPHIER_PINCTRL_GROUP(system_bus),
872         UNIPHIER_PINCTRL_GROUP(system_bus_cs1),
873         UNIPHIER_PINCTRL_GROUP(uart0),
874         UNIPHIER_PINCTRL_GROUP(uart0b),
875         UNIPHIER_PINCTRL_GROUP(uart0b_ctsrts),
876         UNIPHIER_PINCTRL_GROUP(uart1),
877         UNIPHIER_PINCTRL_GROUP(uart2),
878         UNIPHIER_PINCTRL_GROUP(uart3),
879         UNIPHIER_PINCTRL_GROUP(uart3b),
880         UNIPHIER_PINCTRL_GROUP(usb0),
881         UNIPHIER_PINCTRL_GROUP(usb1),
882         UNIPHIER_PINCTRL_GROUP(usb2),
883         UNIPHIER_PINCTRL_GROUP(usb3),
884         UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range0),
885         UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range1),
886 };
887
888 static const char * const ain1_groups[] = {"ain1"};
889 static const char * const ain2_groups[] = {"ain2"};
890 static const char * const ainiec1_groups[] = {"ainiec1"};
891 static const char * const aout2_groups[] = {"aout2"};
892 static const char * const aout3_groups[] = {"aout3"};
893 static const char * const aoutiec1_groups[] = {"aoutiec1"};
894 static const char * const aoutiec2_groups[] = {"aoutiec2"};
895 static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
896 static const char * const ether_mii_groups[] = {"ether_mii"};
897 static const char * const ether_rgmii_groups[] = {"ether_rgmii"};
898 static const char * const ether_rmii_groups[] = {"ether_rmii"};
899 static const char * const i2c0_groups[] = {"i2c0"};
900 static const char * const i2c1_groups[] = {"i2c1"};
901 static const char * const i2c2_groups[] = {"i2c2"};
902 static const char * const i2c3_groups[] = {"i2c3"};
903 static const char * const i2c5_groups[] = {"i2c5"};
904 static const char * const i2c6_groups[] = {"i2c6"};
905 static const char * const nand_groups[] = {"nand", "nand_cs1"};
906 static const char * const sd_groups[] = {"sd"};
907 static const char * const spi0_groups[] = {"spi0"};
908 static const char * const spi1_groups[] = {"spi1"};
909 static const char * const system_bus_groups[] = {"system_bus",
910                                                  "system_bus_cs1"};
911 static const char * const uart0_groups[] = {"uart0", "uart0b", "uart0b_ctsrts"};
912 static const char * const uart1_groups[] = {"uart1"};
913 static const char * const uart2_groups[] = {"uart2"};
914 static const char * const uart3_groups[] = {"uart3", "uart3b"};
915 static const char * const usb0_groups[] = {"usb0"};
916 static const char * const usb1_groups[] = {"usb1"};
917 static const char * const usb2_groups[] = {"usb2"};
918 static const char * const usb3_groups[] = {"usb3"};
919
920 static const struct uniphier_pinmux_function uniphier_pxs2_functions[] = {
921         UNIPHIER_PINMUX_FUNCTION(ain1),
922         UNIPHIER_PINMUX_FUNCTION(ain2),
923         UNIPHIER_PINMUX_FUNCTION(ainiec1),
924         UNIPHIER_PINMUX_FUNCTION(aout2),
925         UNIPHIER_PINMUX_FUNCTION(aout3),
926         UNIPHIER_PINMUX_FUNCTION(aoutiec1),
927         UNIPHIER_PINMUX_FUNCTION(aoutiec2),
928         UNIPHIER_PINMUX_FUNCTION(emmc),
929         UNIPHIER_PINMUX_FUNCTION(ether_mii),
930         UNIPHIER_PINMUX_FUNCTION(ether_rgmii),
931         UNIPHIER_PINMUX_FUNCTION(ether_rmii),
932         UNIPHIER_PINMUX_FUNCTION(i2c0),
933         UNIPHIER_PINMUX_FUNCTION(i2c1),
934         UNIPHIER_PINMUX_FUNCTION(i2c2),
935         UNIPHIER_PINMUX_FUNCTION(i2c3),
936         UNIPHIER_PINMUX_FUNCTION(i2c5),
937         UNIPHIER_PINMUX_FUNCTION(i2c6),
938         UNIPHIER_PINMUX_FUNCTION(nand),
939         UNIPHIER_PINMUX_FUNCTION(sd),
940         UNIPHIER_PINMUX_FUNCTION(spi0),
941         UNIPHIER_PINMUX_FUNCTION(spi1),
942         UNIPHIER_PINMUX_FUNCTION(system_bus),
943         UNIPHIER_PINMUX_FUNCTION(uart0),
944         UNIPHIER_PINMUX_FUNCTION(uart1),
945         UNIPHIER_PINMUX_FUNCTION(uart2),
946         UNIPHIER_PINMUX_FUNCTION(uart3),
947         UNIPHIER_PINMUX_FUNCTION(usb0),
948         UNIPHIER_PINMUX_FUNCTION(usb1),
949         UNIPHIER_PINMUX_FUNCTION(usb2),
950         UNIPHIER_PINMUX_FUNCTION(usb3),
951 };
952
953 static int uniphier_pxs2_get_gpio_muxval(unsigned int pin,
954                                          unsigned int gpio_offset)
955 {
956         if (gpio_offset >= 120 && gpio_offset <= 143)   /* XIRQx */
957                 /* 15 will do because XIRQ0-23 are aliases of PORT150-177. */
958                 return 14;
959
960         return 15;
961 }
962
963 static struct uniphier_pinctrl_socdata uniphier_pxs2_pindata = {
964         .pins = uniphier_pxs2_pins,
965         .npins = ARRAY_SIZE(uniphier_pxs2_pins),
966         .groups = uniphier_pxs2_groups,
967         .groups_count = ARRAY_SIZE(uniphier_pxs2_groups),
968         .functions = uniphier_pxs2_functions,
969         .functions_count = ARRAY_SIZE(uniphier_pxs2_functions),
970         .get_gpio_muxval = uniphier_pxs2_get_gpio_muxval,
971         .caps = 0,
972 };
973
974 static int uniphier_pxs2_pinctrl_probe(struct platform_device *pdev)
975 {
976         return uniphier_pinctrl_probe(pdev, &uniphier_pxs2_pindata);
977 }
978
979 static const struct of_device_id uniphier_pxs2_pinctrl_match[] = {
980         { .compatible = "socionext,uniphier-pxs2-pinctrl" },
981         { /* sentinel */ }
982 };
983
984 static struct platform_driver uniphier_pxs2_pinctrl_driver = {
985         .probe = uniphier_pxs2_pinctrl_probe,
986         .driver = {
987                 .name = "uniphier-pxs2-pinctrl",
988                 .of_match_table = uniphier_pxs2_pinctrl_match,
989                 .pm = &uniphier_pinctrl_pm_ops,
990         },
991 };
992 builtin_platform_driver(uniphier_pxs2_pinctrl_driver);