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/pinctrl/pinctrl.h>
19 #include <linux/platform_device.h>
20 
21 #include "pinctrl-uniphier.h"
22 
23 static const struct pinctrl_pin_desc uniphier_ld6b_pins[] = {
24 	UNIPHIER_PINCTRL_PIN(0, "ED0", UNIPHIER_PIN_IECTRL_NONE,
25 			     0, UNIPHIER_PIN_DRV_1BIT,
26 			     0, UNIPHIER_PIN_PULL_DOWN),
27 	UNIPHIER_PINCTRL_PIN(1, "ED1", UNIPHIER_PIN_IECTRL_NONE,
28 			     1, UNIPHIER_PIN_DRV_1BIT,
29 			     1, UNIPHIER_PIN_PULL_DOWN),
30 	UNIPHIER_PINCTRL_PIN(2, "ED2", UNIPHIER_PIN_IECTRL_NONE,
31 			     2, UNIPHIER_PIN_DRV_1BIT,
32 			     2, UNIPHIER_PIN_PULL_DOWN),
33 	UNIPHIER_PINCTRL_PIN(3, "ED3", UNIPHIER_PIN_IECTRL_NONE,
34 			     3, UNIPHIER_PIN_DRV_1BIT,
35 			     3, UNIPHIER_PIN_PULL_DOWN),
36 	UNIPHIER_PINCTRL_PIN(4, "ED4", UNIPHIER_PIN_IECTRL_NONE,
37 			     4, UNIPHIER_PIN_DRV_1BIT,
38 			     4, UNIPHIER_PIN_PULL_DOWN),
39 	UNIPHIER_PINCTRL_PIN(5, "ED5", UNIPHIER_PIN_IECTRL_NONE,
40 			     5, UNIPHIER_PIN_DRV_1BIT,
41 			     5, UNIPHIER_PIN_PULL_DOWN),
42 	UNIPHIER_PINCTRL_PIN(6, "ED6", UNIPHIER_PIN_IECTRL_NONE,
43 			     6, UNIPHIER_PIN_DRV_1BIT,
44 			     6, UNIPHIER_PIN_PULL_DOWN),
45 	UNIPHIER_PINCTRL_PIN(7, "ED7", UNIPHIER_PIN_IECTRL_NONE,
46 			     7, UNIPHIER_PIN_DRV_1BIT,
47 			     7, UNIPHIER_PIN_PULL_DOWN),
48 	UNIPHIER_PINCTRL_PIN(8, "XERWE0", UNIPHIER_PIN_IECTRL_NONE,
49 			     8, UNIPHIER_PIN_DRV_1BIT,
50 			     8, UNIPHIER_PIN_PULL_DOWN),
51 	UNIPHIER_PINCTRL_PIN(9, "XERWE1", UNIPHIER_PIN_IECTRL_NONE,
52 			     9, UNIPHIER_PIN_DRV_1BIT,
53 			     9, UNIPHIER_PIN_PULL_DOWN),
54 	UNIPHIER_PINCTRL_PIN(10, "ERXW", UNIPHIER_PIN_IECTRL_NONE,
55 			     10, UNIPHIER_PIN_DRV_1BIT,
56 			     10, UNIPHIER_PIN_PULL_DOWN),
57 	UNIPHIER_PINCTRL_PIN(11, "ES0", UNIPHIER_PIN_IECTRL_NONE,
58 			     11, UNIPHIER_PIN_DRV_1BIT,
59 			     11, UNIPHIER_PIN_PULL_DOWN),
60 	UNIPHIER_PINCTRL_PIN(12, "ES1", UNIPHIER_PIN_IECTRL_NONE,
61 			     12, UNIPHIER_PIN_DRV_1BIT,
62 			     12, UNIPHIER_PIN_PULL_DOWN),
63 	UNIPHIER_PINCTRL_PIN(13, "ES2", UNIPHIER_PIN_IECTRL_NONE,
64 			     13, UNIPHIER_PIN_DRV_1BIT,
65 			     13, UNIPHIER_PIN_PULL_DOWN),
66 	UNIPHIER_PINCTRL_PIN(14, "XECS1", UNIPHIER_PIN_IECTRL_NONE,
67 			     14, UNIPHIER_PIN_DRV_1BIT,
68 			     14, UNIPHIER_PIN_PULL_DOWN),
69 	UNIPHIER_PINCTRL_PIN(15, "PCA00", UNIPHIER_PIN_IECTRL_NONE,
70 			     -1, UNIPHIER_PIN_DRV_FIXED8,
71 			     15, UNIPHIER_PIN_PULL_DOWN),
72 	UNIPHIER_PINCTRL_PIN(16, "PCA01", UNIPHIER_PIN_IECTRL_NONE,
73 			     -1, UNIPHIER_PIN_DRV_FIXED8,
74 			     16, UNIPHIER_PIN_PULL_DOWN),
75 	UNIPHIER_PINCTRL_PIN(17, "PCA02", UNIPHIER_PIN_IECTRL_NONE,
76 			     -1, UNIPHIER_PIN_DRV_FIXED8,
77 			     17, UNIPHIER_PIN_PULL_DOWN),
78 	UNIPHIER_PINCTRL_PIN(18, "PCA03", UNIPHIER_PIN_IECTRL_NONE,
79 			     -1, UNIPHIER_PIN_DRV_FIXED8,
80 			     18, UNIPHIER_PIN_PULL_DOWN),
81 	UNIPHIER_PINCTRL_PIN(19, "PCA04", UNIPHIER_PIN_IECTRL_NONE,
82 			     -1, UNIPHIER_PIN_DRV_FIXED8,
83 			     19, UNIPHIER_PIN_PULL_DOWN),
84 	UNIPHIER_PINCTRL_PIN(20, "PCA05", UNIPHIER_PIN_IECTRL_NONE,
85 			     -1, UNIPHIER_PIN_DRV_FIXED8,
86 			     20, UNIPHIER_PIN_PULL_DOWN),
87 	UNIPHIER_PINCTRL_PIN(21, "PCA06", UNIPHIER_PIN_IECTRL_NONE,
88 			     -1, UNIPHIER_PIN_DRV_FIXED8,
89 			     21, UNIPHIER_PIN_PULL_DOWN),
90 	UNIPHIER_PINCTRL_PIN(22, "PCA07", UNIPHIER_PIN_IECTRL_NONE,
91 			     -1, UNIPHIER_PIN_DRV_FIXED8,
92 			     22, UNIPHIER_PIN_PULL_DOWN),
93 	UNIPHIER_PINCTRL_PIN(23, "PCA08", UNIPHIER_PIN_IECTRL_NONE,
94 			     -1, UNIPHIER_PIN_DRV_FIXED8,
95 			     23, UNIPHIER_PIN_PULL_DOWN),
96 	UNIPHIER_PINCTRL_PIN(24, "PCA09", UNIPHIER_PIN_IECTRL_NONE,
97 			     -1, UNIPHIER_PIN_DRV_FIXED8,
98 			     24, UNIPHIER_PIN_PULL_DOWN),
99 	UNIPHIER_PINCTRL_PIN(25, "PCA10", UNIPHIER_PIN_IECTRL_NONE,
100 			     -1, UNIPHIER_PIN_DRV_FIXED8,
101 			     25, UNIPHIER_PIN_PULL_DOWN),
102 	UNIPHIER_PINCTRL_PIN(26, "PCA11", UNIPHIER_PIN_IECTRL_NONE,
103 			     -1, UNIPHIER_PIN_DRV_FIXED8,
104 			     26, UNIPHIER_PIN_PULL_DOWN),
105 	UNIPHIER_PINCTRL_PIN(27, "PCA12", UNIPHIER_PIN_IECTRL_NONE,
106 			     -1, UNIPHIER_PIN_DRV_FIXED8,
107 			     27, UNIPHIER_PIN_PULL_DOWN),
108 	UNIPHIER_PINCTRL_PIN(28, "PCA13", UNIPHIER_PIN_IECTRL_NONE,
109 			     -1, UNIPHIER_PIN_DRV_FIXED8,
110 			     28, UNIPHIER_PIN_PULL_DOWN),
111 	UNIPHIER_PINCTRL_PIN(29, "PCA14", UNIPHIER_PIN_IECTRL_NONE,
112 			     -1, UNIPHIER_PIN_DRV_FIXED8,
113 			     29, UNIPHIER_PIN_PULL_DOWN),
114 	UNIPHIER_PINCTRL_PIN(30, "XNFRE", UNIPHIER_PIN_IECTRL_NONE,
115 			     30, UNIPHIER_PIN_DRV_1BIT,
116 			     30, UNIPHIER_PIN_PULL_UP),
117 	UNIPHIER_PINCTRL_PIN(31, "XNFWE", UNIPHIER_PIN_IECTRL_NONE,
118 			     31, UNIPHIER_PIN_DRV_1BIT,
119 			     31, UNIPHIER_PIN_PULL_UP),
120 	UNIPHIER_PINCTRL_PIN(32, "NFALE", UNIPHIER_PIN_IECTRL_NONE,
121 			     32, UNIPHIER_PIN_DRV_1BIT,
122 			     32, UNIPHIER_PIN_PULL_DOWN),
123 	UNIPHIER_PINCTRL_PIN(33, "NFCLE", UNIPHIER_PIN_IECTRL_NONE,
124 			     33, UNIPHIER_PIN_DRV_1BIT,
125 			     33, UNIPHIER_PIN_PULL_DOWN),
126 	UNIPHIER_PINCTRL_PIN(34, "XNFWP", UNIPHIER_PIN_IECTRL_NONE,
127 			     34, UNIPHIER_PIN_DRV_1BIT,
128 			     34, UNIPHIER_PIN_PULL_DOWN),
129 	UNIPHIER_PINCTRL_PIN(35, "XNFCE0", UNIPHIER_PIN_IECTRL_NONE,
130 			     35, UNIPHIER_PIN_DRV_1BIT,
131 			     35, UNIPHIER_PIN_PULL_UP),
132 	UNIPHIER_PINCTRL_PIN(36, "NFRYBY0", UNIPHIER_PIN_IECTRL_NONE,
133 			     36, UNIPHIER_PIN_DRV_1BIT,
134 			     36, UNIPHIER_PIN_PULL_UP),
135 	UNIPHIER_PINCTRL_PIN(37, "XNFCE1", UNIPHIER_PIN_IECTRL_NONE,
136 			     37, UNIPHIER_PIN_DRV_1BIT,
137 			     37, UNIPHIER_PIN_PULL_UP),
138 	UNIPHIER_PINCTRL_PIN(38, "NFRYBY1", UNIPHIER_PIN_IECTRL_NONE,
139 			     38, UNIPHIER_PIN_DRV_1BIT,
140 			     38, UNIPHIER_PIN_PULL_UP),
141 	UNIPHIER_PINCTRL_PIN(39, "NFD0", UNIPHIER_PIN_IECTRL_NONE,
142 			     39, UNIPHIER_PIN_DRV_1BIT,
143 			     39, UNIPHIER_PIN_PULL_DOWN),
144 	UNIPHIER_PINCTRL_PIN(40, "NFD1", UNIPHIER_PIN_IECTRL_NONE,
145 			     40, UNIPHIER_PIN_DRV_1BIT,
146 			     40, UNIPHIER_PIN_PULL_DOWN),
147 	UNIPHIER_PINCTRL_PIN(41, "NFD2", UNIPHIER_PIN_IECTRL_NONE,
148 			     41, UNIPHIER_PIN_DRV_1BIT,
149 			     41, UNIPHIER_PIN_PULL_DOWN),
150 	UNIPHIER_PINCTRL_PIN(42, "NFD3", UNIPHIER_PIN_IECTRL_NONE,
151 			     42, UNIPHIER_PIN_DRV_1BIT,
152 			     42, UNIPHIER_PIN_PULL_DOWN),
153 	UNIPHIER_PINCTRL_PIN(43, "NFD4", UNIPHIER_PIN_IECTRL_NONE,
154 			     43, UNIPHIER_PIN_DRV_1BIT,
155 			     43, UNIPHIER_PIN_PULL_DOWN),
156 	UNIPHIER_PINCTRL_PIN(44, "NFD5", UNIPHIER_PIN_IECTRL_NONE,
157 			     44, UNIPHIER_PIN_DRV_1BIT,
158 			     44, UNIPHIER_PIN_PULL_DOWN),
159 	UNIPHIER_PINCTRL_PIN(45, "NFD6", UNIPHIER_PIN_IECTRL_NONE,
160 			     45, UNIPHIER_PIN_DRV_1BIT,
161 			     45, UNIPHIER_PIN_PULL_DOWN),
162 	UNIPHIER_PINCTRL_PIN(46, "NFD7", UNIPHIER_PIN_IECTRL_NONE,
163 			     46, UNIPHIER_PIN_DRV_1BIT,
164 			     46, UNIPHIER_PIN_PULL_DOWN),
165 	UNIPHIER_PINCTRL_PIN(47, "SDCLK", UNIPHIER_PIN_IECTRL_NONE,
166 			     0, UNIPHIER_PIN_DRV_2BIT,
167 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
168 	UNIPHIER_PINCTRL_PIN(48, "SDCMD", UNIPHIER_PIN_IECTRL_NONE,
169 			     1, UNIPHIER_PIN_DRV_2BIT,
170 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
171 	UNIPHIER_PINCTRL_PIN(49, "SDDAT0", UNIPHIER_PIN_IECTRL_NONE,
172 			     2, UNIPHIER_PIN_DRV_2BIT,
173 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
174 	UNIPHIER_PINCTRL_PIN(50, "SDDAT1", UNIPHIER_PIN_IECTRL_NONE,
175 			     3, UNIPHIER_PIN_DRV_2BIT,
176 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
177 	UNIPHIER_PINCTRL_PIN(51, "SDDAT2", UNIPHIER_PIN_IECTRL_NONE,
178 			     4, UNIPHIER_PIN_DRV_2BIT,
179 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
180 	UNIPHIER_PINCTRL_PIN(52, "SDDAT3", UNIPHIER_PIN_IECTRL_NONE,
181 			     5, UNIPHIER_PIN_DRV_2BIT,
182 			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
183 	UNIPHIER_PINCTRL_PIN(53, "SDCD", UNIPHIER_PIN_IECTRL_NONE,
184 			     -1, UNIPHIER_PIN_DRV_FIXED8,
185 			     53, UNIPHIER_PIN_PULL_DOWN),
186 	UNIPHIER_PINCTRL_PIN(54, "SDWP", UNIPHIER_PIN_IECTRL_NONE,
187 			     -1, UNIPHIER_PIN_DRV_FIXED8,
188 			     54, UNIPHIER_PIN_PULL_DOWN),
189 	UNIPHIER_PINCTRL_PIN(55, "SDVOLC", UNIPHIER_PIN_IECTRL_NONE,
190 			     -1, UNIPHIER_PIN_DRV_FIXED8,
191 			     55, UNIPHIER_PIN_PULL_DOWN),
192 	UNIPHIER_PINCTRL_PIN(56, "USB0VBUS", UNIPHIER_PIN_IECTRL_NONE,
193 			     -1, UNIPHIER_PIN_DRV_FIXED8,
194 			     56, UNIPHIER_PIN_PULL_DOWN),
195 	UNIPHIER_PINCTRL_PIN(57, "USB0OD", UNIPHIER_PIN_IECTRL_NONE,
196 			     -1, UNIPHIER_PIN_DRV_FIXED8,
197 			     57, UNIPHIER_PIN_PULL_DOWN),
198 	UNIPHIER_PINCTRL_PIN(58, "USB1VBUS", UNIPHIER_PIN_IECTRL_NONE,
199 			     -1, UNIPHIER_PIN_DRV_FIXED8,
200 			     58, UNIPHIER_PIN_PULL_DOWN),
201 	UNIPHIER_PINCTRL_PIN(59, "USB1OD", UNIPHIER_PIN_IECTRL_NONE,
202 			     -1, UNIPHIER_PIN_DRV_FIXED8,
203 			     59, UNIPHIER_PIN_PULL_DOWN),
204 	UNIPHIER_PINCTRL_PIN(60, "USB2VBUS", UNIPHIER_PIN_IECTRL_NONE,
205 			     -1, UNIPHIER_PIN_DRV_FIXED8,
206 			     60, UNIPHIER_PIN_PULL_DOWN),
207 	UNIPHIER_PINCTRL_PIN(61, "USB2OD", UNIPHIER_PIN_IECTRL_NONE,
208 			     -1, UNIPHIER_PIN_DRV_FIXED8,
209 			     61, UNIPHIER_PIN_PULL_DOWN),
210 	UNIPHIER_PINCTRL_PIN(62, "USB3VBUS", UNIPHIER_PIN_IECTRL_NONE,
211 			     -1, UNIPHIER_PIN_DRV_FIXED8,
212 			     62, UNIPHIER_PIN_PULL_DOWN),
213 	UNIPHIER_PINCTRL_PIN(63, "USB3OD", UNIPHIER_PIN_IECTRL_NONE,
214 			     -1, UNIPHIER_PIN_DRV_FIXED8,
215 			     63, UNIPHIER_PIN_PULL_DOWN),
216 	UNIPHIER_PINCTRL_PIN(64, "HS0BCLKOUT", UNIPHIER_PIN_IECTRL_NONE,
217 			     -1, UNIPHIER_PIN_DRV_FIXED8,
218 			     64, UNIPHIER_PIN_PULL_DOWN),
219 	UNIPHIER_PINCTRL_PIN(65, "HS0SYNCOUT", UNIPHIER_PIN_IECTRL_NONE,
220 			     -1, UNIPHIER_PIN_DRV_FIXED8,
221 			     65, UNIPHIER_PIN_PULL_DOWN),
222 	UNIPHIER_PINCTRL_PIN(66, "HS0VALOUT", UNIPHIER_PIN_IECTRL_NONE,
223 			     -1, UNIPHIER_PIN_DRV_FIXED8,
224 			     66, UNIPHIER_PIN_PULL_DOWN),
225 	UNIPHIER_PINCTRL_PIN(67, "HS0DOUT0", UNIPHIER_PIN_IECTRL_NONE,
226 			     -1, UNIPHIER_PIN_DRV_FIXED8,
227 			     67, UNIPHIER_PIN_PULL_DOWN),
228 	UNIPHIER_PINCTRL_PIN(68, "HS0DOUT1", UNIPHIER_PIN_IECTRL_NONE,
229 			     -1, UNIPHIER_PIN_DRV_FIXED8,
230 			     68, UNIPHIER_PIN_PULL_DOWN),
231 	UNIPHIER_PINCTRL_PIN(69, "HS0DOUT2", UNIPHIER_PIN_IECTRL_NONE,
232 			     -1, UNIPHIER_PIN_DRV_FIXED8,
233 			     69, UNIPHIER_PIN_PULL_DOWN),
234 	UNIPHIER_PINCTRL_PIN(70, "HS0DOUT3", UNIPHIER_PIN_IECTRL_NONE,
235 			     -1, UNIPHIER_PIN_DRV_FIXED8,
236 			     70, UNIPHIER_PIN_PULL_DOWN),
237 	UNIPHIER_PINCTRL_PIN(71, "HS0DOUT4", UNIPHIER_PIN_IECTRL_NONE,
238 			     -1, UNIPHIER_PIN_DRV_FIXED8,
239 			     71, UNIPHIER_PIN_PULL_DOWN),
240 	UNIPHIER_PINCTRL_PIN(72, "HS0DOUT5", UNIPHIER_PIN_IECTRL_NONE,
241 			     -1, UNIPHIER_PIN_DRV_FIXED8,
242 			     72, UNIPHIER_PIN_PULL_DOWN),
243 	UNIPHIER_PINCTRL_PIN(73, "HS0DOUT6", UNIPHIER_PIN_IECTRL_NONE,
244 			     -1, UNIPHIER_PIN_DRV_FIXED8,
245 			     73, UNIPHIER_PIN_PULL_DOWN),
246 	UNIPHIER_PINCTRL_PIN(74, "HS0DOUT7", UNIPHIER_PIN_IECTRL_NONE,
247 			     -1, UNIPHIER_PIN_DRV_FIXED8,
248 			     74, UNIPHIER_PIN_PULL_DOWN),
249 	UNIPHIER_PINCTRL_PIN(75, "HS1BCLKIN", UNIPHIER_PIN_IECTRL_NONE,
250 			     -1, UNIPHIER_PIN_DRV_FIXED8,
251 			     75, UNIPHIER_PIN_PULL_DOWN),
252 	UNIPHIER_PINCTRL_PIN(76, "HS1SYNCIN", UNIPHIER_PIN_IECTRL_NONE,
253 			     -1, UNIPHIER_PIN_DRV_FIXED8,
254 			     76, UNIPHIER_PIN_PULL_DOWN),
255 	UNIPHIER_PINCTRL_PIN(77, "HS1VALIN", UNIPHIER_PIN_IECTRL_NONE,
256 			     -1, UNIPHIER_PIN_DRV_FIXED8,
257 			     77, UNIPHIER_PIN_PULL_DOWN),
258 	UNIPHIER_PINCTRL_PIN(78, "HS1DIN0", UNIPHIER_PIN_IECTRL_NONE,
259 			     -1, UNIPHIER_PIN_DRV_FIXED8,
260 			     78, UNIPHIER_PIN_PULL_DOWN),
261 	UNIPHIER_PINCTRL_PIN(79, "HS1DIN1", UNIPHIER_PIN_IECTRL_NONE,
262 			     -1, UNIPHIER_PIN_DRV_FIXED8,
263 			     79, UNIPHIER_PIN_PULL_DOWN),
264 	UNIPHIER_PINCTRL_PIN(80, "HS1DIN2", UNIPHIER_PIN_IECTRL_NONE,
265 			     -1, UNIPHIER_PIN_DRV_FIXED8,
266 			     80, UNIPHIER_PIN_PULL_DOWN),
267 	UNIPHIER_PINCTRL_PIN(81, "HS1DIN3", UNIPHIER_PIN_IECTRL_NONE,
268 			     -1, UNIPHIER_PIN_DRV_FIXED8,
269 			     81, UNIPHIER_PIN_PULL_DOWN),
270 	UNIPHIER_PINCTRL_PIN(82, "HS1DIN4", UNIPHIER_PIN_IECTRL_NONE,
271 			     -1, UNIPHIER_PIN_DRV_FIXED8,
272 			     82, UNIPHIER_PIN_PULL_DOWN),
273 	UNIPHIER_PINCTRL_PIN(83, "HS1DIN5", UNIPHIER_PIN_IECTRL_NONE,
274 			     -1, UNIPHIER_PIN_DRV_FIXED8,
275 			     83, UNIPHIER_PIN_PULL_DOWN),
276 	UNIPHIER_PINCTRL_PIN(84, "HS1DIN6", UNIPHIER_PIN_IECTRL_NONE,
277 			     -1, UNIPHIER_PIN_DRV_FIXED8,
278 			     84, UNIPHIER_PIN_PULL_DOWN),
279 	UNIPHIER_PINCTRL_PIN(85, "HS1DIN7", UNIPHIER_PIN_IECTRL_NONE,
280 			     -1, UNIPHIER_PIN_DRV_FIXED8,
281 			     85, UNIPHIER_PIN_PULL_DOWN),
282 	UNIPHIER_PINCTRL_PIN(86, "HS2BCLKIN", UNIPHIER_PIN_IECTRL_NONE,
283 			     -1, UNIPHIER_PIN_DRV_FIXED8,
284 			     86, UNIPHIER_PIN_PULL_DOWN),
285 	UNIPHIER_PINCTRL_PIN(87, "HS2SYNCIN", UNIPHIER_PIN_IECTRL_NONE,
286 			     -1, UNIPHIER_PIN_DRV_FIXED8,
287 			     87, UNIPHIER_PIN_PULL_DOWN),
288 	UNIPHIER_PINCTRL_PIN(88, "HS2VALIN", UNIPHIER_PIN_IECTRL_NONE,
289 			     -1, UNIPHIER_PIN_DRV_FIXED8,
290 			     88, UNIPHIER_PIN_PULL_DOWN),
291 	UNIPHIER_PINCTRL_PIN(89, "HS2DIN0", UNIPHIER_PIN_IECTRL_NONE,
292 			     -1, UNIPHIER_PIN_DRV_FIXED8,
293 			     89, UNIPHIER_PIN_PULL_DOWN),
294 	UNIPHIER_PINCTRL_PIN(90, "HS2DIN1", UNIPHIER_PIN_IECTRL_NONE,
295 			     -1, UNIPHIER_PIN_DRV_FIXED8,
296 			     90, UNIPHIER_PIN_PULL_DOWN),
297 	UNIPHIER_PINCTRL_PIN(91, "HS2DIN2", UNIPHIER_PIN_IECTRL_NONE,
298 			     -1, UNIPHIER_PIN_DRV_FIXED8,
299 			     91, UNIPHIER_PIN_PULL_DOWN),
300 	UNIPHIER_PINCTRL_PIN(92, "HS2DIN3", UNIPHIER_PIN_IECTRL_NONE,
301 			     -1, UNIPHIER_PIN_DRV_FIXED8,
302 			     92, UNIPHIER_PIN_PULL_DOWN),
303 	UNIPHIER_PINCTRL_PIN(93, "HS2DIN4", UNIPHIER_PIN_IECTRL_NONE,
304 			     -1, UNIPHIER_PIN_DRV_FIXED8,
305 			     93, UNIPHIER_PIN_PULL_DOWN),
306 	UNIPHIER_PINCTRL_PIN(94, "HS2DIN5", UNIPHIER_PIN_IECTRL_NONE,
307 			     -1, UNIPHIER_PIN_DRV_FIXED8,
308 			     94, UNIPHIER_PIN_PULL_DOWN),
309 	UNIPHIER_PINCTRL_PIN(95, "HS2DIN6", UNIPHIER_PIN_IECTRL_NONE,
310 			     -1, UNIPHIER_PIN_DRV_FIXED8,
311 			     95, UNIPHIER_PIN_PULL_DOWN),
312 	UNIPHIER_PINCTRL_PIN(96, "HS2DIN7", UNIPHIER_PIN_IECTRL_NONE,
313 			     -1, UNIPHIER_PIN_DRV_FIXED8,
314 			     96, UNIPHIER_PIN_PULL_DOWN),
315 	UNIPHIER_PINCTRL_PIN(97, "AO1IEC", UNIPHIER_PIN_IECTRL_NONE,
316 			     -1, UNIPHIER_PIN_DRV_FIXED8,
317 			     97, UNIPHIER_PIN_PULL_DOWN),
318 	UNIPHIER_PINCTRL_PIN(98, "AO1DACCK", UNIPHIER_PIN_IECTRL_NONE,
319 			     -1, UNIPHIER_PIN_DRV_FIXED8,
320 			     98, UNIPHIER_PIN_PULL_DOWN),
321 	UNIPHIER_PINCTRL_PIN(99, "AO1BCK", UNIPHIER_PIN_IECTRL_NONE,
322 			     -1, UNIPHIER_PIN_DRV_FIXED8,
323 			     99, UNIPHIER_PIN_PULL_DOWN),
324 	UNIPHIER_PINCTRL_PIN(100, "AO1LRCK", UNIPHIER_PIN_IECTRL_NONE,
325 			     -1, UNIPHIER_PIN_DRV_FIXED8,
326 			     100, UNIPHIER_PIN_PULL_DOWN),
327 	UNIPHIER_PINCTRL_PIN(101, "AO1D0", UNIPHIER_PIN_IECTRL_NONE,
328 			     -1, UNIPHIER_PIN_DRV_FIXED8,
329 			     101, UNIPHIER_PIN_PULL_DOWN),
330 	UNIPHIER_PINCTRL_PIN(102, "AO1D1", UNIPHIER_PIN_IECTRL_NONE,
331 			     -1, UNIPHIER_PIN_DRV_FIXED8,
332 			     102, UNIPHIER_PIN_PULL_DOWN),
333 	UNIPHIER_PINCTRL_PIN(103, "AO1D2", UNIPHIER_PIN_IECTRL_NONE,
334 			     -1, UNIPHIER_PIN_DRV_FIXED8,
335 			     103, UNIPHIER_PIN_PULL_DOWN),
336 	UNIPHIER_PINCTRL_PIN(104, "AO1D3", UNIPHIER_PIN_IECTRL_NONE,
337 			     -1, UNIPHIER_PIN_DRV_FIXED8,
338 			     104, UNIPHIER_PIN_PULL_DOWN),
339 	UNIPHIER_PINCTRL_PIN(105, "AO2DACCK", UNIPHIER_PIN_IECTRL_NONE,
340 			     -1, UNIPHIER_PIN_DRV_FIXED8,
341 			     105, UNIPHIER_PIN_PULL_DOWN),
342 	UNIPHIER_PINCTRL_PIN(106, "AO2BCK", UNIPHIER_PIN_IECTRL_NONE,
343 			     -1, UNIPHIER_PIN_DRV_FIXED8,
344 			     106, UNIPHIER_PIN_PULL_DOWN),
345 	UNIPHIER_PINCTRL_PIN(107, "AO2LRCK", UNIPHIER_PIN_IECTRL_NONE,
346 			     -1, UNIPHIER_PIN_DRV_FIXED8,
347 			     107, UNIPHIER_PIN_PULL_DOWN),
348 	UNIPHIER_PINCTRL_PIN(108, "AO2D0", UNIPHIER_PIN_IECTRL_NONE,
349 			     -1, UNIPHIER_PIN_DRV_FIXED8,
350 			     108, UNIPHIER_PIN_PULL_DOWN),
351 	UNIPHIER_PINCTRL_PIN(109, "SDA0", UNIPHIER_PIN_IECTRL_NONE,
352 			     -1, UNIPHIER_PIN_DRV_FIXED8,
353 			     109, UNIPHIER_PIN_PULL_DOWN),
354 	UNIPHIER_PINCTRL_PIN(110, "SCL0", UNIPHIER_PIN_IECTRL_NONE,
355 			     -1, UNIPHIER_PIN_DRV_FIXED8,
356 			     110, UNIPHIER_PIN_PULL_DOWN),
357 	UNIPHIER_PINCTRL_PIN(111, "SDA1", UNIPHIER_PIN_IECTRL_NONE,
358 			     -1, UNIPHIER_PIN_DRV_FIXED8,
359 			     111, UNIPHIER_PIN_PULL_DOWN),
360 	UNIPHIER_PINCTRL_PIN(112, "SCL1", UNIPHIER_PIN_IECTRL_NONE,
361 			     -1, UNIPHIER_PIN_DRV_FIXED8,
362 			     112, UNIPHIER_PIN_PULL_DOWN),
363 	UNIPHIER_PINCTRL_PIN(113, "SBO0", 0,
364 			     113, UNIPHIER_PIN_DRV_1BIT,
365 			     113, UNIPHIER_PIN_PULL_UP),
366 	UNIPHIER_PINCTRL_PIN(114, "SBI0", 0,
367 			     114, UNIPHIER_PIN_DRV_1BIT,
368 			     114, UNIPHIER_PIN_PULL_UP),
369 	UNIPHIER_PINCTRL_PIN(115, "TXD1", 0,
370 			     115, UNIPHIER_PIN_DRV_1BIT,
371 			     115, UNIPHIER_PIN_PULL_UP),
372 	UNIPHIER_PINCTRL_PIN(116, "RXD1", 0,
373 			     116, UNIPHIER_PIN_DRV_1BIT,
374 			     116, UNIPHIER_PIN_PULL_UP),
375 	UNIPHIER_PINCTRL_PIN(117, "PWSRA", UNIPHIER_PIN_IECTRL_NONE,
376 			     -1, UNIPHIER_PIN_DRV_FIXED8,
377 			     117, UNIPHIER_PIN_PULL_DOWN),
378 	UNIPHIER_PINCTRL_PIN(118, "XIRQ0", UNIPHIER_PIN_IECTRL_NONE,
379 			     -1, UNIPHIER_PIN_DRV_FIXED8,
380 			     118, UNIPHIER_PIN_PULL_DOWN),
381 	UNIPHIER_PINCTRL_PIN(119, "XIRQ1", UNIPHIER_PIN_IECTRL_NONE,
382 			     -1, UNIPHIER_PIN_DRV_FIXED8,
383 			     119, UNIPHIER_PIN_PULL_DOWN),
384 	UNIPHIER_PINCTRL_PIN(120, "XIRQ2", UNIPHIER_PIN_IECTRL_NONE,
385 			     -1, UNIPHIER_PIN_DRV_FIXED8,
386 			     120, UNIPHIER_PIN_PULL_DOWN),
387 	UNIPHIER_PINCTRL_PIN(121, "XIRQ3", UNIPHIER_PIN_IECTRL_NONE,
388 			     -1, UNIPHIER_PIN_DRV_FIXED8,
389 			     121, UNIPHIER_PIN_PULL_DOWN),
390 	UNIPHIER_PINCTRL_PIN(122, "XIRQ4", UNIPHIER_PIN_IECTRL_NONE,
391 			     -1, UNIPHIER_PIN_DRV_FIXED8,
392 			     122, UNIPHIER_PIN_PULL_DOWN),
393 	UNIPHIER_PINCTRL_PIN(123, "XIRQ5", UNIPHIER_PIN_IECTRL_NONE,
394 			     -1, UNIPHIER_PIN_DRV_FIXED8,
395 			     123, UNIPHIER_PIN_PULL_DOWN),
396 	UNIPHIER_PINCTRL_PIN(124, "XIRQ6", UNIPHIER_PIN_IECTRL_NONE,
397 			     -1, UNIPHIER_PIN_DRV_FIXED8,
398 			     124, UNIPHIER_PIN_PULL_DOWN),
399 	UNIPHIER_PINCTRL_PIN(125, "XIRQ7", UNIPHIER_PIN_IECTRL_NONE,
400 			     -1, UNIPHIER_PIN_DRV_FIXED8,
401 			     125, UNIPHIER_PIN_PULL_DOWN),
402 	UNIPHIER_PINCTRL_PIN(126, "XIRQ8", UNIPHIER_PIN_IECTRL_NONE,
403 			     -1, UNIPHIER_PIN_DRV_FIXED8,
404 			     126, UNIPHIER_PIN_PULL_DOWN),
405 	UNIPHIER_PINCTRL_PIN(127, "PORT00", UNIPHIER_PIN_IECTRL_NONE,
406 			     -1, UNIPHIER_PIN_DRV_FIXED8,
407 			     127, UNIPHIER_PIN_PULL_DOWN),
408 	UNIPHIER_PINCTRL_PIN(128, "PORT01", UNIPHIER_PIN_IECTRL_NONE,
409 			     -1, UNIPHIER_PIN_DRV_FIXED8,
410 			     128, UNIPHIER_PIN_PULL_DOWN),
411 	UNIPHIER_PINCTRL_PIN(129, "PORT02", UNIPHIER_PIN_IECTRL_NONE,
412 			     -1, UNIPHIER_PIN_DRV_FIXED8,
413 			     129, UNIPHIER_PIN_PULL_DOWN),
414 	UNIPHIER_PINCTRL_PIN(130, "PORT03", UNIPHIER_PIN_IECTRL_NONE,
415 			     -1, UNIPHIER_PIN_DRV_FIXED8,
416 			     130, UNIPHIER_PIN_PULL_DOWN),
417 	UNIPHIER_PINCTRL_PIN(131, "PORT04", UNIPHIER_PIN_IECTRL_NONE,
418 			     -1, UNIPHIER_PIN_DRV_FIXED8,
419 			     131, UNIPHIER_PIN_PULL_DOWN),
420 	UNIPHIER_PINCTRL_PIN(132, "PORT05", UNIPHIER_PIN_IECTRL_NONE,
421 			     -1, UNIPHIER_PIN_DRV_FIXED8,
422 			     132, UNIPHIER_PIN_PULL_DOWN),
423 	UNIPHIER_PINCTRL_PIN(133, "PORT06", UNIPHIER_PIN_IECTRL_NONE,
424 			     -1, UNIPHIER_PIN_DRV_FIXED8,
425 			     133, UNIPHIER_PIN_PULL_DOWN),
426 	UNIPHIER_PINCTRL_PIN(134, "PORT07", UNIPHIER_PIN_IECTRL_NONE,
427 			     -1, UNIPHIER_PIN_DRV_FIXED8,
428 			     134, UNIPHIER_PIN_PULL_DOWN),
429 	UNIPHIER_PINCTRL_PIN(135, "PORT10", UNIPHIER_PIN_IECTRL_NONE,
430 			     -1, UNIPHIER_PIN_DRV_FIXED8,
431 			     135, UNIPHIER_PIN_PULL_DOWN),
432 	UNIPHIER_PINCTRL_PIN(136, "PORT11", UNIPHIER_PIN_IECTRL_NONE,
433 			     -1, UNIPHIER_PIN_DRV_FIXED8,
434 			     136, UNIPHIER_PIN_PULL_DOWN),
435 	UNIPHIER_PINCTRL_PIN(137, "PORT12", UNIPHIER_PIN_IECTRL_NONE,
436 			     -1, UNIPHIER_PIN_DRV_FIXED8,
437 			     137, UNIPHIER_PIN_PULL_DOWN),
438 	UNIPHIER_PINCTRL_PIN(138, "PORT13", UNIPHIER_PIN_IECTRL_NONE,
439 			     -1, UNIPHIER_PIN_DRV_FIXED8,
440 			     138, UNIPHIER_PIN_PULL_DOWN),
441 	UNIPHIER_PINCTRL_PIN(139, "PORT14", UNIPHIER_PIN_IECTRL_NONE,
442 			     -1, UNIPHIER_PIN_DRV_FIXED8,
443 			     139, UNIPHIER_PIN_PULL_DOWN),
444 	UNIPHIER_PINCTRL_PIN(140, "PORT15", UNIPHIER_PIN_IECTRL_NONE,
445 			     -1, UNIPHIER_PIN_DRV_FIXED8,
446 			     140, UNIPHIER_PIN_PULL_DOWN),
447 	UNIPHIER_PINCTRL_PIN(141, "PORT16", UNIPHIER_PIN_IECTRL_NONE,
448 			     -1, UNIPHIER_PIN_DRV_FIXED8,
449 			     141, UNIPHIER_PIN_PULL_DOWN),
450 	UNIPHIER_PINCTRL_PIN(142, "LPST", UNIPHIER_PIN_IECTRL_NONE,
451 			     142, UNIPHIER_PIN_DRV_1BIT,
452 			     142, UNIPHIER_PIN_PULL_DOWN),
453 	UNIPHIER_PINCTRL_PIN(143, "MDC", 0,
454 			     143, UNIPHIER_PIN_DRV_1BIT,
455 			     143, UNIPHIER_PIN_PULL_DOWN),
456 	UNIPHIER_PINCTRL_PIN(144, "MDIO", 0,
457 			     144, UNIPHIER_PIN_DRV_1BIT,
458 			     144, UNIPHIER_PIN_PULL_DOWN),
459 	UNIPHIER_PINCTRL_PIN(145, "MDIO_INTL", 0,
460 			     145, UNIPHIER_PIN_DRV_1BIT,
461 			     145, UNIPHIER_PIN_PULL_DOWN),
462 	UNIPHIER_PINCTRL_PIN(146, "PHYRSTL", 0,
463 			     146, UNIPHIER_PIN_DRV_1BIT,
464 			     146, UNIPHIER_PIN_PULL_DOWN),
465 	UNIPHIER_PINCTRL_PIN(147, "RGMII_RXCLK", 0,
466 			     147, UNIPHIER_PIN_DRV_1BIT,
467 			     147, UNIPHIER_PIN_PULL_DOWN),
468 	UNIPHIER_PINCTRL_PIN(148, "RGMII_RXD0", 0,
469 			     148, UNIPHIER_PIN_DRV_1BIT,
470 			     148, UNIPHIER_PIN_PULL_DOWN),
471 	UNIPHIER_PINCTRL_PIN(149, "RGMII_RXD1", 0,
472 			     149, UNIPHIER_PIN_DRV_1BIT,
473 			     149, UNIPHIER_PIN_PULL_DOWN),
474 	UNIPHIER_PINCTRL_PIN(150, "RGMII_RXD2", 0,
475 			     150, UNIPHIER_PIN_DRV_1BIT,
476 			     150, UNIPHIER_PIN_PULL_DOWN),
477 	UNIPHIER_PINCTRL_PIN(151, "RGMII_RXD3", 0,
478 			     151, UNIPHIER_PIN_DRV_1BIT,
479 			     151, UNIPHIER_PIN_PULL_DOWN),
480 	UNIPHIER_PINCTRL_PIN(152, "RGMII_RXCTL", 0,
481 			     152, UNIPHIER_PIN_DRV_1BIT,
482 			     152, UNIPHIER_PIN_PULL_DOWN),
483 	UNIPHIER_PINCTRL_PIN(153, "RGMII_TXCLK", 0,
484 			     153, UNIPHIER_PIN_DRV_1BIT,
485 			     153, UNIPHIER_PIN_PULL_DOWN),
486 	UNIPHIER_PINCTRL_PIN(154, "RGMII_TXD0", 0,
487 			     154, UNIPHIER_PIN_DRV_1BIT,
488 			     154, UNIPHIER_PIN_PULL_DOWN),
489 	UNIPHIER_PINCTRL_PIN(155, "RGMII_TXD1", 0,
490 			     155, UNIPHIER_PIN_DRV_1BIT,
491 			     155, UNIPHIER_PIN_PULL_DOWN),
492 	UNIPHIER_PINCTRL_PIN(156, "RGMII_TXD2", 0,
493 			     156, UNIPHIER_PIN_DRV_1BIT,
494 			     156, UNIPHIER_PIN_PULL_DOWN),
495 	UNIPHIER_PINCTRL_PIN(157, "RGMII_TXD3", 0,
496 			     157, UNIPHIER_PIN_DRV_1BIT,
497 			     157, UNIPHIER_PIN_PULL_DOWN),
498 	UNIPHIER_PINCTRL_PIN(158, "RGMII_TXCTL", 0,
499 			     158, UNIPHIER_PIN_DRV_1BIT,
500 			     158, UNIPHIER_PIN_PULL_DOWN),
501 	UNIPHIER_PINCTRL_PIN(159, "A_D_PCD00OUT", UNIPHIER_PIN_IECTRL_NONE,
502 			     -1, UNIPHIER_PIN_DRV_FIXED8,
503 			     159, UNIPHIER_PIN_PULL_DOWN),
504 	UNIPHIER_PINCTRL_PIN(160, "A_D_PCD01OUT", UNIPHIER_PIN_IECTRL_NONE,
505 			     -1, UNIPHIER_PIN_DRV_FIXED8,
506 			     160, UNIPHIER_PIN_PULL_DOWN),
507 	UNIPHIER_PINCTRL_PIN(161, "A_D_PCD02OUT", UNIPHIER_PIN_IECTRL_NONE,
508 			     -1, UNIPHIER_PIN_DRV_FIXED8,
509 			     161, UNIPHIER_PIN_PULL_DOWN),
510 	UNIPHIER_PINCTRL_PIN(162, "A_D_PCD03OUT", UNIPHIER_PIN_IECTRL_NONE,
511 			     -1, UNIPHIER_PIN_DRV_FIXED8,
512 			     162, UNIPHIER_PIN_PULL_DOWN),
513 	UNIPHIER_PINCTRL_PIN(163, "A_D_PCD04OUT", UNIPHIER_PIN_IECTRL_NONE,
514 			     -1, UNIPHIER_PIN_DRV_FIXED8,
515 			     163, UNIPHIER_PIN_PULL_DOWN),
516 	UNIPHIER_PINCTRL_PIN(164, "A_D_PCD05OUT", UNIPHIER_PIN_IECTRL_NONE,
517 			     -1, UNIPHIER_PIN_DRV_FIXED8,
518 			     164, UNIPHIER_PIN_PULL_DOWN),
519 	UNIPHIER_PINCTRL_PIN(165, "A_D_PCD06OUT", UNIPHIER_PIN_IECTRL_NONE,
520 			     -1, UNIPHIER_PIN_DRV_FIXED8,
521 			     165, UNIPHIER_PIN_PULL_DOWN),
522 	UNIPHIER_PINCTRL_PIN(166, "A_D_PCD07OUT", UNIPHIER_PIN_IECTRL_NONE,
523 			     -1, UNIPHIER_PIN_DRV_FIXED8,
524 			     166, UNIPHIER_PIN_PULL_DOWN),
525 	UNIPHIER_PINCTRL_PIN(167, "A_D_PCD00IN", UNIPHIER_PIN_IECTRL_NONE,
526 			     -1, UNIPHIER_PIN_DRV_FIXED8,
527 			     167, UNIPHIER_PIN_PULL_DOWN),
528 	UNIPHIER_PINCTRL_PIN(168, "A_D_PCD01IN", UNIPHIER_PIN_IECTRL_NONE,
529 			     -1, UNIPHIER_PIN_DRV_FIXED8,
530 			     168, UNIPHIER_PIN_PULL_DOWN),
531 	UNIPHIER_PINCTRL_PIN(169, "A_D_PCD02IN", UNIPHIER_PIN_IECTRL_NONE,
532 			     -1, UNIPHIER_PIN_DRV_FIXED8,
533 			     169, UNIPHIER_PIN_PULL_DOWN),
534 	UNIPHIER_PINCTRL_PIN(170, "A_D_PCD03IN", UNIPHIER_PIN_IECTRL_NONE,
535 			     -1, UNIPHIER_PIN_DRV_FIXED8,
536 			     170, UNIPHIER_PIN_PULL_DOWN),
537 	UNIPHIER_PINCTRL_PIN(171, "A_D_PCD04IN", UNIPHIER_PIN_IECTRL_NONE,
538 			     -1, UNIPHIER_PIN_DRV_FIXED8,
539 			     171, UNIPHIER_PIN_PULL_DOWN),
540 	UNIPHIER_PINCTRL_PIN(172, "A_D_PCD05IN", UNIPHIER_PIN_IECTRL_NONE,
541 			     -1, UNIPHIER_PIN_DRV_FIXED8,
542 			     172, UNIPHIER_PIN_PULL_DOWN),
543 	UNIPHIER_PINCTRL_PIN(173, "A_D_PCD06IN", UNIPHIER_PIN_IECTRL_NONE,
544 			     -1, UNIPHIER_PIN_DRV_FIXED8,
545 			     173, UNIPHIER_PIN_PULL_DOWN),
546 	UNIPHIER_PINCTRL_PIN(174, "A_D_PCD07IN", UNIPHIER_PIN_IECTRL_NONE,
547 			     -1, UNIPHIER_PIN_DRV_FIXED8,
548 			     174, UNIPHIER_PIN_PULL_DOWN),
549 	UNIPHIER_PINCTRL_PIN(175, "A_D_PCDNOE", UNIPHIER_PIN_IECTRL_NONE,
550 			     -1, UNIPHIER_PIN_DRV_FIXED8,
551 			     175, UNIPHIER_PIN_PULL_DOWN),
552 	UNIPHIER_PINCTRL_PIN(176, "A_D_PC0READY", UNIPHIER_PIN_IECTRL_NONE,
553 			     -1, UNIPHIER_PIN_DRV_FIXED8,
554 			     176, UNIPHIER_PIN_PULL_DOWN),
555 	UNIPHIER_PINCTRL_PIN(177, "A_D_PC0CD1", UNIPHIER_PIN_IECTRL_NONE,
556 			     -1, UNIPHIER_PIN_DRV_FIXED8,
557 			     177, UNIPHIER_PIN_PULL_DOWN),
558 	UNIPHIER_PINCTRL_PIN(178, "A_D_PC0CD2", UNIPHIER_PIN_IECTRL_NONE,
559 			     -1, UNIPHIER_PIN_DRV_FIXED8,
560 			     178, UNIPHIER_PIN_PULL_DOWN),
561 	UNIPHIER_PINCTRL_PIN(179, "A_D_PC0WAIT", UNIPHIER_PIN_IECTRL_NONE,
562 			     -1, UNIPHIER_PIN_DRV_FIXED8,
563 			     179, UNIPHIER_PIN_PULL_DOWN),
564 	UNIPHIER_PINCTRL_PIN(180, "A_D_PC0RESET", UNIPHIER_PIN_IECTRL_NONE,
565 			     -1, UNIPHIER_PIN_DRV_FIXED8,
566 			     180, UNIPHIER_PIN_PULL_DOWN),
567 	UNIPHIER_PINCTRL_PIN(181, "A_D_PC0CE1", UNIPHIER_PIN_IECTRL_NONE,
568 			     -1, UNIPHIER_PIN_DRV_FIXED8,
569 			     181, UNIPHIER_PIN_PULL_DOWN),
570 	UNIPHIER_PINCTRL_PIN(182, "A_D_PC0WE", UNIPHIER_PIN_IECTRL_NONE,
571 			     -1, UNIPHIER_PIN_DRV_FIXED8,
572 			     182, UNIPHIER_PIN_PULL_DOWN),
573 	UNIPHIER_PINCTRL_PIN(183, "A_D_PC0OE", UNIPHIER_PIN_IECTRL_NONE,
574 			     -1, UNIPHIER_PIN_DRV_FIXED8,
575 			     183, UNIPHIER_PIN_PULL_DOWN),
576 	UNIPHIER_PINCTRL_PIN(184, "A_D_PC0IOWR", UNIPHIER_PIN_IECTRL_NONE,
577 			     -1, UNIPHIER_PIN_DRV_FIXED8,
578 			     184, UNIPHIER_PIN_PULL_DOWN),
579 	UNIPHIER_PINCTRL_PIN(185, "A_D_PC0IORD", UNIPHIER_PIN_IECTRL_NONE,
580 			     -1, UNIPHIER_PIN_DRV_FIXED8,
581 			     185, UNIPHIER_PIN_PULL_DOWN),
582 	UNIPHIER_PINCTRL_PIN(186, "A_D_PC0NOE", UNIPHIER_PIN_IECTRL_NONE,
583 			     -1, UNIPHIER_PIN_DRV_FIXED8,
584 			     186, UNIPHIER_PIN_PULL_DOWN),
585 	UNIPHIER_PINCTRL_PIN(187, "A_D_HS0BCLKIN", 0,
586 			     187, UNIPHIER_PIN_DRV_1BIT,
587 			     187, UNIPHIER_PIN_PULL_DOWN),
588 	UNIPHIER_PINCTRL_PIN(188, "A_D_HS0SYNCIN", 0,
589 			     188, UNIPHIER_PIN_DRV_1BIT,
590 			     188, UNIPHIER_PIN_PULL_DOWN),
591 	UNIPHIER_PINCTRL_PIN(189, "A_D_HS0VALIN", 0,
592 			     189, UNIPHIER_PIN_DRV_1BIT,
593 			     189, UNIPHIER_PIN_PULL_DOWN),
594 	UNIPHIER_PINCTRL_PIN(190, "A_D_HS0DIN0", 0,
595 			     190, UNIPHIER_PIN_DRV_1BIT,
596 			     190, UNIPHIER_PIN_PULL_DOWN),
597 	UNIPHIER_PINCTRL_PIN(191, "A_D_HS0DIN1", 0,
598 			     191, UNIPHIER_PIN_DRV_1BIT,
599 			     191, UNIPHIER_PIN_PULL_DOWN),
600 	UNIPHIER_PINCTRL_PIN(192, "A_D_HS0DIN2", 0,
601 			     192, UNIPHIER_PIN_DRV_1BIT,
602 			     192, UNIPHIER_PIN_PULL_DOWN),
603 	UNIPHIER_PINCTRL_PIN(193, "A_D_HS0DIN3", 0,
604 			     193, UNIPHIER_PIN_DRV_1BIT,
605 			     193, UNIPHIER_PIN_PULL_DOWN),
606 	UNIPHIER_PINCTRL_PIN(194, "A_D_HS0DIN4", 0,
607 			     194, UNIPHIER_PIN_DRV_1BIT,
608 			     194, UNIPHIER_PIN_PULL_DOWN),
609 	UNIPHIER_PINCTRL_PIN(195, "A_D_HS0DIN5", 0,
610 			     195, UNIPHIER_PIN_DRV_1BIT,
611 			     195, UNIPHIER_PIN_PULL_DOWN),
612 	UNIPHIER_PINCTRL_PIN(196, "A_D_HS0DIN6", 0,
613 			     196, UNIPHIER_PIN_DRV_1BIT,
614 			     196, UNIPHIER_PIN_PULL_DOWN),
615 	UNIPHIER_PINCTRL_PIN(197, "A_D_HS0DIN7", 0,
616 			     197, UNIPHIER_PIN_DRV_1BIT,
617 			     197, UNIPHIER_PIN_PULL_DOWN),
618 	UNIPHIER_PINCTRL_PIN(198, "A_D_AO1ARC", 0,
619 			     198, UNIPHIER_PIN_DRV_1BIT,
620 			     198, UNIPHIER_PIN_PULL_DOWN),
621 	UNIPHIER_PINCTRL_PIN(199, "A_D_SPIXRST", UNIPHIER_PIN_IECTRL_NONE,
622 			     199, UNIPHIER_PIN_DRV_1BIT,
623 			     199, UNIPHIER_PIN_PULL_DOWN),
624 	UNIPHIER_PINCTRL_PIN(200, "A_D_SPISCLK0", UNIPHIER_PIN_IECTRL_NONE,
625 			     200, UNIPHIER_PIN_DRV_1BIT,
626 			     200, UNIPHIER_PIN_PULL_DOWN),
627 	UNIPHIER_PINCTRL_PIN(201, "A_D_SPITXD0", UNIPHIER_PIN_IECTRL_NONE,
628 			     201, UNIPHIER_PIN_DRV_1BIT,
629 			     201, UNIPHIER_PIN_PULL_DOWN),
630 	UNIPHIER_PINCTRL_PIN(202, "A_D_SPIRXD0", UNIPHIER_PIN_IECTRL_NONE,
631 			     202, UNIPHIER_PIN_DRV_1BIT,
632 			     202, UNIPHIER_PIN_PULL_DOWN),
633 	UNIPHIER_PINCTRL_PIN(203, "A_D_DMDCLK", UNIPHIER_PIN_IECTRL_NONE,
634 			     -1, UNIPHIER_PIN_DRV_FIXED8,
635 			     203, UNIPHIER_PIN_PULL_DOWN),
636 	UNIPHIER_PINCTRL_PIN(204, "A_D_DMDPSYNC", UNIPHIER_PIN_IECTRL_NONE,
637 			     -1, UNIPHIER_PIN_DRV_FIXED8,
638 			     204, UNIPHIER_PIN_PULL_DOWN),
639 	UNIPHIER_PINCTRL_PIN(205, "A_D_DMDVAL", UNIPHIER_PIN_IECTRL_NONE,
640 			     -1, UNIPHIER_PIN_DRV_FIXED8,
641 			     205, UNIPHIER_PIN_PULL_DOWN),
642 	UNIPHIER_PINCTRL_PIN(206, "A_D_DMDDATA", UNIPHIER_PIN_IECTRL_NONE,
643 			     -1, UNIPHIER_PIN_DRV_FIXED8,
644 			     206, UNIPHIER_PIN_PULL_DOWN),
645 	UNIPHIER_PINCTRL_PIN(207, "A_D_HDMIRXXIRQ", 0,
646 			     207, UNIPHIER_PIN_DRV_1BIT,
647 			     207, UNIPHIER_PIN_PULL_DOWN),
648 	UNIPHIER_PINCTRL_PIN(208, "A_D_VBIXIRQ", 0,
649 			     208, UNIPHIER_PIN_DRV_1BIT,
650 			     208, UNIPHIER_PIN_PULL_DOWN),
651 	UNIPHIER_PINCTRL_PIN(209, "A_D_HDMITXXIRQ", 0,
652 			     209, UNIPHIER_PIN_DRV_1BIT,
653 			     209, UNIPHIER_PIN_PULL_DOWN),
654 	UNIPHIER_PINCTRL_PIN(210, "A_D_DMDIRQ", UNIPHIER_PIN_IECTRL_NONE,
655 			     210, UNIPHIER_PIN_DRV_1BIT,
656 			     210, UNIPHIER_PIN_PULL_DOWN),
657 	UNIPHIER_PINCTRL_PIN(211, "A_D_SPICIRQ", UNIPHIER_PIN_IECTRL_NONE,
658 			     211, UNIPHIER_PIN_DRV_1BIT,
659 			     211, UNIPHIER_PIN_PULL_DOWN),
660 	UNIPHIER_PINCTRL_PIN(212, "A_D_SPIBIRQ", UNIPHIER_PIN_IECTRL_NONE,
661 			     212, UNIPHIER_PIN_DRV_1BIT,
662 			     212, UNIPHIER_PIN_PULL_DOWN),
663 	UNIPHIER_PINCTRL_PIN(213, "A_D_BESDAOUT", UNIPHIER_PIN_IECTRL_NONE,
664 			     -1, UNIPHIER_PIN_DRV_FIXED4,
665 			     213, UNIPHIER_PIN_PULL_DOWN),
666 	UNIPHIER_PINCTRL_PIN(214, "A_D_BESDAIN", UNIPHIER_PIN_IECTRL_NONE,
667 			     -1, UNIPHIER_PIN_DRV_FIXED4,
668 			     214, UNIPHIER_PIN_PULL_DOWN),
669 	UNIPHIER_PINCTRL_PIN(215, "A_D_BESCLOUT", UNIPHIER_PIN_IECTRL_NONE,
670 			     215, UNIPHIER_PIN_DRV_1BIT,
671 			     215, UNIPHIER_PIN_PULL_DOWN),
672 	UNIPHIER_PINCTRL_PIN(216, "A_D_VDACCLKOUT", 0,
673 			     216, UNIPHIER_PIN_DRV_1BIT,
674 			     216, UNIPHIER_PIN_PULL_DOWN),
675 	UNIPHIER_PINCTRL_PIN(217, "A_D_VDACDOUT5", 0,
676 			     217, UNIPHIER_PIN_DRV_1BIT,
677 			     217, UNIPHIER_PIN_PULL_DOWN),
678 	UNIPHIER_PINCTRL_PIN(218, "A_D_VDACDOUT6", 0,
679 			     218, UNIPHIER_PIN_DRV_1BIT,
680 			     218, UNIPHIER_PIN_PULL_DOWN),
681 	UNIPHIER_PINCTRL_PIN(219, "A_D_VDACDOUT7", 0,
682 			     219, UNIPHIER_PIN_DRV_1BIT,
683 			     219, UNIPHIER_PIN_PULL_DOWN),
684 	UNIPHIER_PINCTRL_PIN(220, "A_D_VDACDOUT8", 0,
685 			     220, UNIPHIER_PIN_DRV_1BIT,
686 			     220, UNIPHIER_PIN_PULL_DOWN),
687 	UNIPHIER_PINCTRL_PIN(221, "A_D_VDACDOUT9", 0,
688 			     221, UNIPHIER_PIN_DRV_1BIT,
689 			     221, UNIPHIER_PIN_PULL_DOWN),
690 	UNIPHIER_PINCTRL_PIN(222, "A_D_SIFBCKIN", 0,
691 			     222, UNIPHIER_PIN_DRV_1BIT,
692 			     222, UNIPHIER_PIN_PULL_DOWN),
693 	UNIPHIER_PINCTRL_PIN(223, "A_D_SIFLRCKIN", 0,
694 			     223, UNIPHIER_PIN_DRV_1BIT,
695 			     223, UNIPHIER_PIN_PULL_DOWN),
696 	UNIPHIER_PINCTRL_PIN(224, "A_D_SIFDIN", 0,
697 			     224, UNIPHIER_PIN_DRV_1BIT,
698 			     224, UNIPHIER_PIN_PULL_DOWN),
699 	UNIPHIER_PINCTRL_PIN(225, "A_D_LIBCKOUT", 0,
700 			     225, UNIPHIER_PIN_DRV_1BIT,
701 			     225, UNIPHIER_PIN_PULL_DOWN),
702 	UNIPHIER_PINCTRL_PIN(226, "A_D_LILRCKOUT", 0,
703 			     226, UNIPHIER_PIN_DRV_1BIT,
704 			     226, UNIPHIER_PIN_PULL_DOWN),
705 	UNIPHIER_PINCTRL_PIN(227, "A_D_LIDIN", 0,
706 			     227, UNIPHIER_PIN_DRV_1BIT,
707 			     227, UNIPHIER_PIN_PULL_DOWN),
708 	UNIPHIER_PINCTRL_PIN(228, "A_D_LODOUT", 0,
709 			     228, UNIPHIER_PIN_DRV_1BIT,
710 			     228, UNIPHIER_PIN_PULL_DOWN),
711 	UNIPHIER_PINCTRL_PIN(229, "A_D_HPDOUT", 0,
712 			     229, UNIPHIER_PIN_DRV_1BIT,
713 			     229, UNIPHIER_PIN_PULL_DOWN),
714 	UNIPHIER_PINCTRL_PIN(230, "A_D_MCLK", 0,
715 			     230, UNIPHIER_PIN_DRV_1BIT,
716 			     230, UNIPHIER_PIN_PULL_DOWN),
717 	UNIPHIER_PINCTRL_PIN(231, "A_D_A2PLLREFOUT", 0,
718 			     231, UNIPHIER_PIN_DRV_1BIT,
719 			     231, UNIPHIER_PIN_PULL_DOWN),
720 	UNIPHIER_PINCTRL_PIN(232, "A_D_HDMI3DSDAOUT", 0,
721 			     232, UNIPHIER_PIN_DRV_1BIT,
722 			     232, UNIPHIER_PIN_PULL_DOWN),
723 	UNIPHIER_PINCTRL_PIN(233, "A_D_HDMI3DSDAIN", 0,
724 			     233, UNIPHIER_PIN_DRV_1BIT,
725 			     233, UNIPHIER_PIN_PULL_DOWN),
726 	UNIPHIER_PINCTRL_PIN(234, "A_D_HDMI3DSCLIN", 0,
727 			     234, UNIPHIER_PIN_DRV_1BIT,
728 			     234, UNIPHIER_PIN_PULL_DOWN),
729 };
730 
731 static const unsigned adinter_pins[] = {
732 	159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
733 	173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
734 	187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
735 	201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
736 	215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
737 	229, 230, 231, 232, 233, 234,
738 };
739 static const int adinter_muxvals[] = {
740 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
741 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
742 	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
743 	0, 0, 0, 0,
744 };
745 static const unsigned emmc_pins[] = {36, 37, 38, 39, 40, 41, 42};
746 static const int emmc_muxvals[] = {1, 1, 1, 1, 1, 1, 1};
747 static const unsigned emmc_dat8_pins[] = {43, 44, 45, 46};
748 static const int emmc_dat8_muxvals[] = {1, 1, 1, 1};
749 static const unsigned ether_rgmii_pins[] = {143, 144, 145, 146, 147, 148, 149,
750 					    150, 151, 152, 153, 154, 155, 156,
751 					    157, 158};
752 static const int ether_rgmii_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
753 					  0, 0, 0, 0};
754 static const unsigned ether_rmii_pins[] = {143, 144, 145, 146, 147, 148, 149,
755 					   150, 152, 154, 155, 158};
756 static const int ether_rmii_muxvals[] = {0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1};
757 static const unsigned i2c0_pins[] = {109, 110};
758 static const int i2c0_muxvals[] = {0, 0};
759 static const unsigned i2c1_pins[] = {111, 112};
760 static const int i2c1_muxvals[] = {0, 0};
761 static const unsigned i2c2_pins[] = {115, 116};
762 static const int i2c2_muxvals[] = {1, 1};
763 static const unsigned i2c3_pins[] = {118, 119};
764 static const int i2c3_muxvals[] = {1, 1};
765 static const unsigned nand_pins[] = {30, 31, 32, 33, 34, 35, 36, 39, 40, 41,
766 				     42, 43, 44, 45, 46};
767 static const int nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
768 static const unsigned nand_cs1_pins[] = {37, 38};
769 static const int nand_cs1_muxvals[] = {0, 0};
770 static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55};
771 static const int sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0};
772 static const unsigned system_bus_pins[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
773 					   11, 12, 13};
774 static const int system_bus_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
775 					 0};
776 static const unsigned system_bus_cs1_pins[] = {14};
777 static const int system_bus_cs1_muxvals[] = {0};
778 static const unsigned system_bus_cs2_pins[] = {37};
779 static const int system_bus_cs2_muxvals[] = {6};
780 static const unsigned system_bus_cs3_pins[] = {38};
781 static const int system_bus_cs3_muxvals[] = {6};
782 static const unsigned system_bus_cs4_pins[] = {115};
783 static const int system_bus_cs4_muxvals[] = {6};
784 static const unsigned system_bus_cs5_pins[] = {55};
785 static const int system_bus_cs5_muxvals[] = {6};
786 static const unsigned uart0_pins[] = {135, 136};
787 static const int uart0_muxvals[] = {3, 3};
788 static const unsigned uart0b_pins[] = {11, 12};
789 static const int uart0b_muxvals[] = {2, 2};
790 static const unsigned uart1_pins[] = {115, 116};
791 static const int uart1_muxvals[] = {0, 0};
792 static const unsigned uart1b_pins[] = {113, 114};
793 static const int uart1b_muxvals[] = {1, 1};
794 static const unsigned uart2_pins[] = {113, 114};
795 static const int uart2_muxvals[] = {2, 2};
796 static const unsigned uart2b_pins[] = {86, 87};
797 static const int uart2b_muxvals[] = {1, 1};
798 static const unsigned usb0_pins[] = {56, 57};
799 static const int usb0_muxvals[] = {0, 0};
800 static const unsigned usb1_pins[] = {58, 59};
801 static const int usb1_muxvals[] = {0, 0};
802 static const unsigned usb2_pins[] = {60, 61};
803 static const int usb2_muxvals[] = {0, 0};
804 static const unsigned usb3_pins[] = {62, 63};
805 static const int usb3_muxvals[] = {0, 0};
806 static const unsigned int gpio_range0_pins[] = {
807 	127, 128, 129, 130, 131, 132, 133, 134,		/* PORT0x */
808 	135, 136, 137, 138, 139, 140, 141, 142,		/* PORT1x */
809 	0, 1, 2, 3, 4, 5, 6, 7,				/* PORT2x */
810 	8, 9, 10, 11, 12, 13, 14, 15,			/* PORT3x */
811 	16, 17, 18, 19, 21, 22, 23, 24,			/* PORT4x */
812 	25, 30, 31, 32, 33, 34, 35, 36,			/* PORT5x */
813 	37, 38, 39, 40, 41, 42, 43, 44,			/* PORT6x */
814 	45, 46, 47, 48, 49, 50, 51, 52,			/* PORT7x */
815 	53, 54, 55, 56, 57, 58, 59, 60,			/* PORT8x */
816 	61, 62, 63, 64, 65, 66, 67, 68,			/* PORT9x */
817 	69, 70, 71, 76, 77, 78, 79, 80,			/* PORT10x */
818 };
819 static const unsigned int gpio_range1_pins[] = {
820 	81, 82, 83, 84, 85, 86, 87, 88,			/* PORT12x */
821 	89, 90, 95, 96, 97, 98, 99, 100,		/* PORT13x */
822 	101, 102, 103, 104, 105, 106, 107, 108,		/* PORT14x */
823 	118, 119, 120, 121, 122, 123, 124, 125,		/* XIRQ0-7 */
824 	126, 72, 73, 92, 177, 93, 94, 176,		/* XIRQ8-15 */
825 	74, 91, 27, 28, 29, 75, 20, 26,			/* XIRQ16-23 */
826 	109, 110, 111, 112, 113, 114, 115, 116,		/* PORT18x */
827 	117, 143, 144, 145, 146, 147, 148, 149,		/* PORT19x */
828 	150, 151, 152, 153, 154, 155, 156, 157,		/* PORT20x */
829 	158, 159, 160, 161, 162, 163, 164, 165,		/* PORT21x */
830 	166, 178, 179, 180, 181, 182, 183, 184,		/* PORT22x */
831 	185, 187, 188, 189, 190, 191, 192, 193,		/* PORT23x */
832 	194, 195, 196, 197, 198, 199, 200, 201,		/* PORT24x */
833 	202, 203, 204, 205, 206, 207, 208, 209,		/* PORT25x */
834 	210, 211, 212, 213, 214, 215, 216, 217,		/* PORT26x */
835 	218, 219, 220, 221, 223, 224, 225, 226,		/* PORT27x */
836 	227, 228, 229, 230, 231, 232, 233, 234,		/* PORT28x */
837 };
838 
839 static const struct uniphier_pinctrl_group uniphier_ld6b_groups[] = {
840 	UNIPHIER_PINCTRL_GROUP(adinter),
841 	UNIPHIER_PINCTRL_GROUP(emmc),
842 	UNIPHIER_PINCTRL_GROUP(emmc_dat8),
843 	UNIPHIER_PINCTRL_GROUP(ether_rgmii),
844 	UNIPHIER_PINCTRL_GROUP(ether_rmii),
845 	UNIPHIER_PINCTRL_GROUP(i2c0),
846 	UNIPHIER_PINCTRL_GROUP(i2c1),
847 	UNIPHIER_PINCTRL_GROUP(i2c2),
848 	UNIPHIER_PINCTRL_GROUP(i2c3),
849 	UNIPHIER_PINCTRL_GROUP(nand),
850 	UNIPHIER_PINCTRL_GROUP(nand_cs1),
851 	UNIPHIER_PINCTRL_GROUP(sd),
852 	UNIPHIER_PINCTRL_GROUP(system_bus),
853 	UNIPHIER_PINCTRL_GROUP(system_bus_cs1),
854 	UNIPHIER_PINCTRL_GROUP(system_bus_cs2),
855 	UNIPHIER_PINCTRL_GROUP(system_bus_cs3),
856 	UNIPHIER_PINCTRL_GROUP(system_bus_cs4),
857 	UNIPHIER_PINCTRL_GROUP(system_bus_cs5),
858 	UNIPHIER_PINCTRL_GROUP(uart0),
859 	UNIPHIER_PINCTRL_GROUP(uart0b),
860 	UNIPHIER_PINCTRL_GROUP(uart1),
861 	UNIPHIER_PINCTRL_GROUP(uart1b),
862 	UNIPHIER_PINCTRL_GROUP(uart2),
863 	UNIPHIER_PINCTRL_GROUP(uart2b),
864 	UNIPHIER_PINCTRL_GROUP(usb0),
865 	UNIPHIER_PINCTRL_GROUP(usb1),
866 	UNIPHIER_PINCTRL_GROUP(usb2),
867 	UNIPHIER_PINCTRL_GROUP(usb3),
868 	UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range0),
869 	UNIPHIER_PINCTRL_GROUP_GPIO(gpio_range1),
870 };
871 
872 static const char * const adinter_groups[] = {"adinter"};
873 static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
874 static const char * const ether_rgmii_groups[] = {"ether_rgmii"};
875 static const char * const ether_rmii_groups[] = {"ether_rmii"};
876 static const char * const i2c0_groups[] = {"i2c0"};
877 static const char * const i2c1_groups[] = {"i2c1"};
878 static const char * const i2c2_groups[] = {"i2c2"};
879 static const char * const i2c3_groups[] = {"i2c3"};
880 static const char * const nand_groups[] = {"nand", "nand_cs1"};
881 static const char * const sd_groups[] = {"sd"};
882 static const char * const system_bus_groups[] = {"system_bus",
883 						 "system_bus_cs1",
884 						 "system_bus_cs2",
885 						 "system_bus_cs3",
886 						 "system_bus_cs4",
887 						 "system_bus_cs5"};
888 static const char * const uart0_groups[] = {"uart0", "uart0b"};
889 static const char * const uart1_groups[] = {"uart1", "uart1b"};
890 static const char * const uart2_groups[] = {"uart2", "uart2b"};
891 static const char * const usb0_groups[] = {"usb0"};
892 static const char * const usb1_groups[] = {"usb1"};
893 static const char * const usb2_groups[] = {"usb2"};
894 static const char * const usb3_groups[] = {"usb3"};
895 
896 static const struct uniphier_pinmux_function uniphier_ld6b_functions[] = {
897 	UNIPHIER_PINMUX_FUNCTION(adinter), /* Achip-Dchip interconnect */
898 	UNIPHIER_PINMUX_FUNCTION(emmc),
899 	UNIPHIER_PINMUX_FUNCTION(ether_rgmii),
900 	UNIPHIER_PINMUX_FUNCTION(ether_rmii),
901 	UNIPHIER_PINMUX_FUNCTION(i2c0),
902 	UNIPHIER_PINMUX_FUNCTION(i2c1),
903 	UNIPHIER_PINMUX_FUNCTION(i2c2),
904 	UNIPHIER_PINMUX_FUNCTION(i2c3),
905 	UNIPHIER_PINMUX_FUNCTION(nand),
906 	UNIPHIER_PINMUX_FUNCTION(sd),
907 	UNIPHIER_PINMUX_FUNCTION(system_bus),
908 	UNIPHIER_PINMUX_FUNCTION(uart0),
909 	UNIPHIER_PINMUX_FUNCTION(uart1),
910 	UNIPHIER_PINMUX_FUNCTION(uart2),
911 	UNIPHIER_PINMUX_FUNCTION(usb0),
912 	UNIPHIER_PINMUX_FUNCTION(usb1),
913 	UNIPHIER_PINMUX_FUNCTION(usb2),
914 	UNIPHIER_PINMUX_FUNCTION(usb3),
915 };
916 
917 static int uniphier_ld6b_get_gpio_muxval(unsigned int pin,
918 					 unsigned int gpio_offset)
919 {
920 	if (gpio_offset >= 120 && gpio_offset <= 143)	/* XIRQx */
921 		/* 15 will do because XIRQ0-23 are aliases of PORT150-177. */
922 		return 14;
923 
924 	return 15;
925 }
926 
927 static struct uniphier_pinctrl_socdata uniphier_ld6b_pindata = {
928 	.pins = uniphier_ld6b_pins,
929 	.npins = ARRAY_SIZE(uniphier_ld6b_pins),
930 	.groups = uniphier_ld6b_groups,
931 	.groups_count = ARRAY_SIZE(uniphier_ld6b_groups),
932 	.functions = uniphier_ld6b_functions,
933 	.functions_count = ARRAY_SIZE(uniphier_ld6b_functions),
934 	.get_gpio_muxval = uniphier_ld6b_get_gpio_muxval,
935 	.caps = 0,
936 };
937 
938 static int uniphier_ld6b_pinctrl_probe(struct platform_device *pdev)
939 {
940 	return uniphier_pinctrl_probe(pdev, &uniphier_ld6b_pindata);
941 }
942 
943 static const struct of_device_id uniphier_ld6b_pinctrl_match[] = {
944 	{ .compatible = "socionext,uniphier-ld6b-pinctrl" },
945 	{ /* sentinel */ }
946 };
947 
948 static struct platform_driver uniphier_ld6b_pinctrl_driver = {
949 	.probe = uniphier_ld6b_pinctrl_probe,
950 	.driver = {
951 		.name = "uniphier-ld6b-pinctrl",
952 		.of_match_table = uniphier_ld6b_pinctrl_match,
953 		.pm = &uniphier_pinctrl_pm_ops,
954 	},
955 };
956 builtin_platform_driver(uniphier_ld6b_pinctrl_driver);
957