1/*
2 * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 */
14
15#include <linux/kernel.h>
16#include <linux/module.h>
17#include <linux/pinctrl/pinctrl.h>
18#include <linux/platform_device.h>
19
20#include "pinctrl-uniphier.h"
21
22#define DRIVER_NAME "ph1-ld6b-pinctrl"
23
24static const struct pinctrl_pin_desc ph1_ld6b_pins[] = {
25	UNIPHIER_PINCTRL_PIN(0, "ED0", UNIPHIER_PIN_IECTRL_NONE,
26			     0, UNIPHIER_PIN_DRV_4_8,
27			     0, UNIPHIER_PIN_PULL_DOWN),
28	UNIPHIER_PINCTRL_PIN(1, "ED1", UNIPHIER_PIN_IECTRL_NONE,
29			     1, UNIPHIER_PIN_DRV_4_8,
30			     1, UNIPHIER_PIN_PULL_DOWN),
31	UNIPHIER_PINCTRL_PIN(2, "ED2", UNIPHIER_PIN_IECTRL_NONE,
32			     2, UNIPHIER_PIN_DRV_4_8,
33			     2, UNIPHIER_PIN_PULL_DOWN),
34	UNIPHIER_PINCTRL_PIN(3, "ED3", UNIPHIER_PIN_IECTRL_NONE,
35			     3, UNIPHIER_PIN_DRV_4_8,
36			     3, UNIPHIER_PIN_PULL_DOWN),
37	UNIPHIER_PINCTRL_PIN(4, "ED4", UNIPHIER_PIN_IECTRL_NONE,
38			     4, UNIPHIER_PIN_DRV_4_8,
39			     4, UNIPHIER_PIN_PULL_DOWN),
40	UNIPHIER_PINCTRL_PIN(5, "ED5", UNIPHIER_PIN_IECTRL_NONE,
41			     5, UNIPHIER_PIN_DRV_4_8,
42			     5, UNIPHIER_PIN_PULL_DOWN),
43	UNIPHIER_PINCTRL_PIN(6, "ED6", UNIPHIER_PIN_IECTRL_NONE,
44			     6, UNIPHIER_PIN_DRV_4_8,
45			     6, UNIPHIER_PIN_PULL_DOWN),
46	UNIPHIER_PINCTRL_PIN(7, "ED7", UNIPHIER_PIN_IECTRL_NONE,
47			     7, UNIPHIER_PIN_DRV_4_8,
48			     7, UNIPHIER_PIN_PULL_DOWN),
49	UNIPHIER_PINCTRL_PIN(8, "XERWE0", UNIPHIER_PIN_IECTRL_NONE,
50			     8, UNIPHIER_PIN_DRV_4_8,
51			     8, UNIPHIER_PIN_PULL_DOWN),
52	UNIPHIER_PINCTRL_PIN(9, "XERWE1", UNIPHIER_PIN_IECTRL_NONE,
53			     9, UNIPHIER_PIN_DRV_4_8,
54			     9, UNIPHIER_PIN_PULL_DOWN),
55	UNIPHIER_PINCTRL_PIN(10, "ERXW", UNIPHIER_PIN_IECTRL_NONE,
56			     10, UNIPHIER_PIN_DRV_4_8,
57			     10, UNIPHIER_PIN_PULL_DOWN),
58	UNIPHIER_PINCTRL_PIN(11, "ES0", UNIPHIER_PIN_IECTRL_NONE,
59			     11, UNIPHIER_PIN_DRV_4_8,
60			     11, UNIPHIER_PIN_PULL_DOWN),
61	UNIPHIER_PINCTRL_PIN(12, "ES1", UNIPHIER_PIN_IECTRL_NONE,
62			     12, UNIPHIER_PIN_DRV_4_8,
63			     12, UNIPHIER_PIN_PULL_DOWN),
64	UNIPHIER_PINCTRL_PIN(13, "ES2", UNIPHIER_PIN_IECTRL_NONE,
65			     13, UNIPHIER_PIN_DRV_4_8,
66			     13, UNIPHIER_PIN_PULL_DOWN),
67	UNIPHIER_PINCTRL_PIN(14, "XECS1", UNIPHIER_PIN_IECTRL_NONE,
68			     14, UNIPHIER_PIN_DRV_4_8,
69			     14, UNIPHIER_PIN_PULL_DOWN),
70	UNIPHIER_PINCTRL_PIN(15, "PCA00", UNIPHIER_PIN_IECTRL_NONE,
71			     -1, UNIPHIER_PIN_DRV_FIXED_8,
72			     15, UNIPHIER_PIN_PULL_DOWN),
73	UNIPHIER_PINCTRL_PIN(16, "PCA01", UNIPHIER_PIN_IECTRL_NONE,
74			     -1, UNIPHIER_PIN_DRV_FIXED_8,
75			     16, UNIPHIER_PIN_PULL_DOWN),
76	UNIPHIER_PINCTRL_PIN(17, "PCA02", UNIPHIER_PIN_IECTRL_NONE,
77			     -1, UNIPHIER_PIN_DRV_FIXED_8,
78			     17, UNIPHIER_PIN_PULL_DOWN),
79	UNIPHIER_PINCTRL_PIN(18, "PCA03", UNIPHIER_PIN_IECTRL_NONE,
80			     -1, UNIPHIER_PIN_DRV_FIXED_8,
81			     18, UNIPHIER_PIN_PULL_DOWN),
82	UNIPHIER_PINCTRL_PIN(19, "PCA04", UNIPHIER_PIN_IECTRL_NONE,
83			     -1, UNIPHIER_PIN_DRV_FIXED_8,
84			     19, UNIPHIER_PIN_PULL_DOWN),
85	UNIPHIER_PINCTRL_PIN(20, "PCA05", UNIPHIER_PIN_IECTRL_NONE,
86			     -1, UNIPHIER_PIN_DRV_FIXED_8,
87			     20, UNIPHIER_PIN_PULL_DOWN),
88	UNIPHIER_PINCTRL_PIN(21, "PCA06", UNIPHIER_PIN_IECTRL_NONE,
89			     -1, UNIPHIER_PIN_DRV_FIXED_8,
90			     21, UNIPHIER_PIN_PULL_DOWN),
91	UNIPHIER_PINCTRL_PIN(22, "PCA07", UNIPHIER_PIN_IECTRL_NONE,
92			     -1, UNIPHIER_PIN_DRV_FIXED_8,
93			     22, UNIPHIER_PIN_PULL_DOWN),
94	UNIPHIER_PINCTRL_PIN(23, "PCA08", UNIPHIER_PIN_IECTRL_NONE,
95			     -1, UNIPHIER_PIN_DRV_FIXED_8,
96			     23, UNIPHIER_PIN_PULL_DOWN),
97	UNIPHIER_PINCTRL_PIN(24, "PCA09", UNIPHIER_PIN_IECTRL_NONE,
98			     -1, UNIPHIER_PIN_DRV_FIXED_8,
99			     24, UNIPHIER_PIN_PULL_DOWN),
100	UNIPHIER_PINCTRL_PIN(25, "PCA10", UNIPHIER_PIN_IECTRL_NONE,
101			     -1, UNIPHIER_PIN_DRV_FIXED_8,
102			     25, UNIPHIER_PIN_PULL_DOWN),
103	UNIPHIER_PINCTRL_PIN(26, "PCA11", UNIPHIER_PIN_IECTRL_NONE,
104			     -1, UNIPHIER_PIN_DRV_FIXED_8,
105			     26, UNIPHIER_PIN_PULL_DOWN),
106	UNIPHIER_PINCTRL_PIN(27, "PCA12", UNIPHIER_PIN_IECTRL_NONE,
107			     -1, UNIPHIER_PIN_DRV_FIXED_8,
108			     27, UNIPHIER_PIN_PULL_DOWN),
109	UNIPHIER_PINCTRL_PIN(28, "PCA13", UNIPHIER_PIN_IECTRL_NONE,
110			     -1, UNIPHIER_PIN_DRV_FIXED_8,
111			     28, UNIPHIER_PIN_PULL_DOWN),
112	UNIPHIER_PINCTRL_PIN(29, "PCA14", UNIPHIER_PIN_IECTRL_NONE,
113			     -1, UNIPHIER_PIN_DRV_FIXED_8,
114			     29, UNIPHIER_PIN_PULL_DOWN),
115	UNIPHIER_PINCTRL_PIN(30, "XNFRE", UNIPHIER_PIN_IECTRL_NONE,
116			     30, UNIPHIER_PIN_DRV_4_8,
117			     30, UNIPHIER_PIN_PULL_UP),
118	UNIPHIER_PINCTRL_PIN(31, "XNFWE", UNIPHIER_PIN_IECTRL_NONE,
119			     31, UNIPHIER_PIN_DRV_4_8,
120			     31, UNIPHIER_PIN_PULL_UP),
121	UNIPHIER_PINCTRL_PIN(32, "NFALE", UNIPHIER_PIN_IECTRL_NONE,
122			     32, UNIPHIER_PIN_DRV_4_8,
123			     32, UNIPHIER_PIN_PULL_DOWN),
124	UNIPHIER_PINCTRL_PIN(33, "NFCLE", UNIPHIER_PIN_IECTRL_NONE,
125			     33, UNIPHIER_PIN_DRV_4_8,
126			     33, UNIPHIER_PIN_PULL_DOWN),
127	UNIPHIER_PINCTRL_PIN(34, "XNFWP", UNIPHIER_PIN_IECTRL_NONE,
128			     34, UNIPHIER_PIN_DRV_4_8,
129			     34, UNIPHIER_PIN_PULL_DOWN),
130	UNIPHIER_PINCTRL_PIN(35, "XNFCE0", UNIPHIER_PIN_IECTRL_NONE,
131			     35, UNIPHIER_PIN_DRV_4_8,
132			     35, UNIPHIER_PIN_PULL_UP),
133	UNIPHIER_PINCTRL_PIN(36, "NFRYBY0", UNIPHIER_PIN_IECTRL_NONE,
134			     36, UNIPHIER_PIN_DRV_4_8,
135			     36, UNIPHIER_PIN_PULL_UP),
136	UNIPHIER_PINCTRL_PIN(37, "XNFCE1", UNIPHIER_PIN_IECTRL_NONE,
137			     37, UNIPHIER_PIN_DRV_4_8,
138			     37, UNIPHIER_PIN_PULL_UP),
139	UNIPHIER_PINCTRL_PIN(38, "NFRYBY1", UNIPHIER_PIN_IECTRL_NONE,
140			     38, UNIPHIER_PIN_DRV_4_8,
141			     38, UNIPHIER_PIN_PULL_UP),
142	UNIPHIER_PINCTRL_PIN(39, "NFD0", UNIPHIER_PIN_IECTRL_NONE,
143			     39, UNIPHIER_PIN_DRV_4_8,
144			     39, UNIPHIER_PIN_PULL_DOWN),
145	UNIPHIER_PINCTRL_PIN(40, "NFD1", UNIPHIER_PIN_IECTRL_NONE,
146			     40, UNIPHIER_PIN_DRV_4_8,
147			     40, UNIPHIER_PIN_PULL_DOWN),
148	UNIPHIER_PINCTRL_PIN(41, "NFD2", UNIPHIER_PIN_IECTRL_NONE,
149			     41, UNIPHIER_PIN_DRV_4_8,
150			     41, UNIPHIER_PIN_PULL_DOWN),
151	UNIPHIER_PINCTRL_PIN(42, "NFD3", UNIPHIER_PIN_IECTRL_NONE,
152			     42, UNIPHIER_PIN_DRV_4_8,
153			     42, UNIPHIER_PIN_PULL_DOWN),
154	UNIPHIER_PINCTRL_PIN(43, "NFD4", UNIPHIER_PIN_IECTRL_NONE,
155			     43, UNIPHIER_PIN_DRV_4_8,
156			     43, UNIPHIER_PIN_PULL_DOWN),
157	UNIPHIER_PINCTRL_PIN(44, "NFD5", UNIPHIER_PIN_IECTRL_NONE,
158			     44, UNIPHIER_PIN_DRV_4_8,
159			     44, UNIPHIER_PIN_PULL_DOWN),
160	UNIPHIER_PINCTRL_PIN(45, "NFD6", UNIPHIER_PIN_IECTRL_NONE,
161			     45, UNIPHIER_PIN_DRV_4_8,
162			     45, UNIPHIER_PIN_PULL_DOWN),
163	UNIPHIER_PINCTRL_PIN(46, "NFD7", UNIPHIER_PIN_IECTRL_NONE,
164			     46, UNIPHIER_PIN_DRV_4_8,
165			     46, UNIPHIER_PIN_PULL_DOWN),
166	UNIPHIER_PINCTRL_PIN(47, "SDCLK", UNIPHIER_PIN_IECTRL_NONE,
167			     0, UNIPHIER_PIN_DRV_8_12_16_20,
168			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
169	UNIPHIER_PINCTRL_PIN(48, "SDCMD", UNIPHIER_PIN_IECTRL_NONE,
170			     4, UNIPHIER_PIN_DRV_8_12_16_20,
171			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
172	UNIPHIER_PINCTRL_PIN(49, "SDDAT0", UNIPHIER_PIN_IECTRL_NONE,
173			     8, UNIPHIER_PIN_DRV_8_12_16_20,
174			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
175	UNIPHIER_PINCTRL_PIN(50, "SDDAT1", UNIPHIER_PIN_IECTRL_NONE,
176			     12, UNIPHIER_PIN_DRV_8_12_16_20,
177			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
178	UNIPHIER_PINCTRL_PIN(51, "SDDAT2", UNIPHIER_PIN_IECTRL_NONE,
179			     16, UNIPHIER_PIN_DRV_8_12_16_20,
180			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
181	UNIPHIER_PINCTRL_PIN(52, "SDDAT3", UNIPHIER_PIN_IECTRL_NONE,
182			     20, UNIPHIER_PIN_DRV_8_12_16_20,
183			     -1, UNIPHIER_PIN_PULL_UP_FIXED),
184	UNIPHIER_PINCTRL_PIN(53, "SDCD", UNIPHIER_PIN_IECTRL_NONE,
185			     -1, UNIPHIER_PIN_DRV_FIXED_8,
186			     53, UNIPHIER_PIN_PULL_DOWN),
187	UNIPHIER_PINCTRL_PIN(54, "SDWP", UNIPHIER_PIN_IECTRL_NONE,
188			     -1, UNIPHIER_PIN_DRV_FIXED_8,
189			     54, UNIPHIER_PIN_PULL_DOWN),
190	UNIPHIER_PINCTRL_PIN(55, "SDVOLC", UNIPHIER_PIN_IECTRL_NONE,
191			     -1, UNIPHIER_PIN_DRV_FIXED_8,
192			     55, UNIPHIER_PIN_PULL_DOWN),
193	UNIPHIER_PINCTRL_PIN(56, "USB0VBUS", UNIPHIER_PIN_IECTRL_NONE,
194			     -1, UNIPHIER_PIN_DRV_FIXED_8,
195			     56, UNIPHIER_PIN_PULL_DOWN),
196	UNIPHIER_PINCTRL_PIN(57, "USB0OD", UNIPHIER_PIN_IECTRL_NONE,
197			     -1, UNIPHIER_PIN_DRV_FIXED_8,
198			     57, UNIPHIER_PIN_PULL_DOWN),
199	UNIPHIER_PINCTRL_PIN(58, "USB1VBUS", UNIPHIER_PIN_IECTRL_NONE,
200			     -1, UNIPHIER_PIN_DRV_FIXED_8,
201			     58, UNIPHIER_PIN_PULL_DOWN),
202	UNIPHIER_PINCTRL_PIN(59, "USB1OD", UNIPHIER_PIN_IECTRL_NONE,
203			     -1, UNIPHIER_PIN_DRV_FIXED_8,
204			     59, UNIPHIER_PIN_PULL_DOWN),
205	UNIPHIER_PINCTRL_PIN(60, "USB2VBUS", UNIPHIER_PIN_IECTRL_NONE,
206			     -1, UNIPHIER_PIN_DRV_FIXED_8,
207			     60, UNIPHIER_PIN_PULL_DOWN),
208	UNIPHIER_PINCTRL_PIN(61, "USB2OD", UNIPHIER_PIN_IECTRL_NONE,
209			     -1, UNIPHIER_PIN_DRV_FIXED_8,
210			     61, UNIPHIER_PIN_PULL_DOWN),
211	UNIPHIER_PINCTRL_PIN(62, "USB3VBUS", UNIPHIER_PIN_IECTRL_NONE,
212			     -1, UNIPHIER_PIN_DRV_FIXED_8,
213			     62, UNIPHIER_PIN_PULL_DOWN),
214	UNIPHIER_PINCTRL_PIN(63, "USB3OD", UNIPHIER_PIN_IECTRL_NONE,
215			     -1, UNIPHIER_PIN_DRV_FIXED_8,
216			     63, UNIPHIER_PIN_PULL_DOWN),
217	UNIPHIER_PINCTRL_PIN(64, "HS0BCLKOUT", UNIPHIER_PIN_IECTRL_NONE,
218			     -1, UNIPHIER_PIN_DRV_FIXED_8,
219			     64, UNIPHIER_PIN_PULL_DOWN),
220	UNIPHIER_PINCTRL_PIN(65, "HS0SYNCOUT", UNIPHIER_PIN_IECTRL_NONE,
221			     -1, UNIPHIER_PIN_DRV_FIXED_8,
222			     65, UNIPHIER_PIN_PULL_DOWN),
223	UNIPHIER_PINCTRL_PIN(66, "HS0VALOUT", UNIPHIER_PIN_IECTRL_NONE,
224			     -1, UNIPHIER_PIN_DRV_FIXED_8,
225			     66, UNIPHIER_PIN_PULL_DOWN),
226	UNIPHIER_PINCTRL_PIN(67, "HS0DOUT0", UNIPHIER_PIN_IECTRL_NONE,
227			     -1, UNIPHIER_PIN_DRV_FIXED_8,
228			     67, UNIPHIER_PIN_PULL_DOWN),
229	UNIPHIER_PINCTRL_PIN(68, "HS0DOUT1", UNIPHIER_PIN_IECTRL_NONE,
230			     -1, UNIPHIER_PIN_DRV_FIXED_8,
231			     68, UNIPHIER_PIN_PULL_DOWN),
232	UNIPHIER_PINCTRL_PIN(69, "HS0DOUT2", UNIPHIER_PIN_IECTRL_NONE,
233			     -1, UNIPHIER_PIN_DRV_FIXED_8,
234			     69, UNIPHIER_PIN_PULL_DOWN),
235	UNIPHIER_PINCTRL_PIN(70, "HS0DOUT3", UNIPHIER_PIN_IECTRL_NONE,
236			     -1, UNIPHIER_PIN_DRV_FIXED_8,
237			     70, UNIPHIER_PIN_PULL_DOWN),
238	UNIPHIER_PINCTRL_PIN(71, "HS0DOUT4", UNIPHIER_PIN_IECTRL_NONE,
239			     -1, UNIPHIER_PIN_DRV_FIXED_8,
240			     71, UNIPHIER_PIN_PULL_DOWN),
241	UNIPHIER_PINCTRL_PIN(72, "HS0DOUT5", UNIPHIER_PIN_IECTRL_NONE,
242			     -1, UNIPHIER_PIN_DRV_FIXED_8,
243			     72, UNIPHIER_PIN_PULL_DOWN),
244	UNIPHIER_PINCTRL_PIN(73, "HS0DOUT6", UNIPHIER_PIN_IECTRL_NONE,
245			     -1, UNIPHIER_PIN_DRV_FIXED_8,
246			     73, UNIPHIER_PIN_PULL_DOWN),
247	UNIPHIER_PINCTRL_PIN(74, "HS0DOUT7", UNIPHIER_PIN_IECTRL_NONE,
248			     -1, UNIPHIER_PIN_DRV_FIXED_8,
249			     74, UNIPHIER_PIN_PULL_DOWN),
250	UNIPHIER_PINCTRL_PIN(75, "HS1BCLKIN", UNIPHIER_PIN_IECTRL_NONE,
251			     -1, UNIPHIER_PIN_DRV_FIXED_8,
252			     75, UNIPHIER_PIN_PULL_DOWN),
253	UNIPHIER_PINCTRL_PIN(76, "HS1SYNCIN", UNIPHIER_PIN_IECTRL_NONE,
254			     -1, UNIPHIER_PIN_DRV_FIXED_8,
255			     76, UNIPHIER_PIN_PULL_DOWN),
256	UNIPHIER_PINCTRL_PIN(77, "HS1VALIN", UNIPHIER_PIN_IECTRL_NONE,
257			     -1, UNIPHIER_PIN_DRV_FIXED_8,
258			     77, UNIPHIER_PIN_PULL_DOWN),
259	UNIPHIER_PINCTRL_PIN(78, "HS1DIN0", UNIPHIER_PIN_IECTRL_NONE,
260			     -1, UNIPHIER_PIN_DRV_FIXED_8,
261			     78, UNIPHIER_PIN_PULL_DOWN),
262	UNIPHIER_PINCTRL_PIN(79, "HS1DIN1", UNIPHIER_PIN_IECTRL_NONE,
263			     -1, UNIPHIER_PIN_DRV_FIXED_8,
264			     79, UNIPHIER_PIN_PULL_DOWN),
265	UNIPHIER_PINCTRL_PIN(80, "HS1DIN2", UNIPHIER_PIN_IECTRL_NONE,
266			     -1, UNIPHIER_PIN_DRV_FIXED_8,
267			     80, UNIPHIER_PIN_PULL_DOWN),
268	UNIPHIER_PINCTRL_PIN(81, "HS1DIN3", UNIPHIER_PIN_IECTRL_NONE,
269			     -1, UNIPHIER_PIN_DRV_FIXED_8,
270			     81, UNIPHIER_PIN_PULL_DOWN),
271	UNIPHIER_PINCTRL_PIN(82, "HS1DIN4", UNIPHIER_PIN_IECTRL_NONE,
272			     -1, UNIPHIER_PIN_DRV_FIXED_8,
273			     82, UNIPHIER_PIN_PULL_DOWN),
274	UNIPHIER_PINCTRL_PIN(83, "HS1DIN5", UNIPHIER_PIN_IECTRL_NONE,
275			     -1, UNIPHIER_PIN_DRV_FIXED_8,
276			     83, UNIPHIER_PIN_PULL_DOWN),
277	UNIPHIER_PINCTRL_PIN(84, "HS1DIN6", UNIPHIER_PIN_IECTRL_NONE,
278			     -1, UNIPHIER_PIN_DRV_FIXED_8,
279			     84, UNIPHIER_PIN_PULL_DOWN),
280	UNIPHIER_PINCTRL_PIN(85, "HS1DIN7", UNIPHIER_PIN_IECTRL_NONE,
281			     -1, UNIPHIER_PIN_DRV_FIXED_8,
282			     85, UNIPHIER_PIN_PULL_DOWN),
283	UNIPHIER_PINCTRL_PIN(86, "HS2BCLKIN", UNIPHIER_PIN_IECTRL_NONE,
284			     -1, UNIPHIER_PIN_DRV_FIXED_8,
285			     86, UNIPHIER_PIN_PULL_DOWN),
286	UNIPHIER_PINCTRL_PIN(87, "HS2SYNCIN", UNIPHIER_PIN_IECTRL_NONE,
287			     -1, UNIPHIER_PIN_DRV_FIXED_8,
288			     87, UNIPHIER_PIN_PULL_DOWN),
289	UNIPHIER_PINCTRL_PIN(88, "HS2VALIN", UNIPHIER_PIN_IECTRL_NONE,
290			     -1, UNIPHIER_PIN_DRV_FIXED_8,
291			     88, UNIPHIER_PIN_PULL_DOWN),
292	UNIPHIER_PINCTRL_PIN(89, "HS2DIN0", UNIPHIER_PIN_IECTRL_NONE,
293			     -1, UNIPHIER_PIN_DRV_FIXED_8,
294			     89, UNIPHIER_PIN_PULL_DOWN),
295	UNIPHIER_PINCTRL_PIN(90, "HS2DIN1", UNIPHIER_PIN_IECTRL_NONE,
296			     -1, UNIPHIER_PIN_DRV_FIXED_8,
297			     90, UNIPHIER_PIN_PULL_DOWN),
298	UNIPHIER_PINCTRL_PIN(91, "HS2DIN2", UNIPHIER_PIN_IECTRL_NONE,
299			     -1, UNIPHIER_PIN_DRV_FIXED_8,
300			     91, UNIPHIER_PIN_PULL_DOWN),
301	UNIPHIER_PINCTRL_PIN(92, "HS2DIN3", UNIPHIER_PIN_IECTRL_NONE,
302			     -1, UNIPHIER_PIN_DRV_FIXED_8,
303			     92, UNIPHIER_PIN_PULL_DOWN),
304	UNIPHIER_PINCTRL_PIN(93, "HS2DIN4", UNIPHIER_PIN_IECTRL_NONE,
305			     -1, UNIPHIER_PIN_DRV_FIXED_8,
306			     93, UNIPHIER_PIN_PULL_DOWN),
307	UNIPHIER_PINCTRL_PIN(94, "HS2DIN5", UNIPHIER_PIN_IECTRL_NONE,
308			     -1, UNIPHIER_PIN_DRV_FIXED_8,
309			     94, UNIPHIER_PIN_PULL_DOWN),
310	UNIPHIER_PINCTRL_PIN(95, "HS2DIN6", UNIPHIER_PIN_IECTRL_NONE,
311			     -1, UNIPHIER_PIN_DRV_FIXED_8,
312			     95, UNIPHIER_PIN_PULL_DOWN),
313	UNIPHIER_PINCTRL_PIN(96, "HS2DIN7", UNIPHIER_PIN_IECTRL_NONE,
314			     -1, UNIPHIER_PIN_DRV_FIXED_8,
315			     96, UNIPHIER_PIN_PULL_DOWN),
316	UNIPHIER_PINCTRL_PIN(97, "AO1IEC", UNIPHIER_PIN_IECTRL_NONE,
317			     -1, UNIPHIER_PIN_DRV_FIXED_8,
318			     97, UNIPHIER_PIN_PULL_DOWN),
319	UNIPHIER_PINCTRL_PIN(98, "AO1DACCK", UNIPHIER_PIN_IECTRL_NONE,
320			     -1, UNIPHIER_PIN_DRV_FIXED_8,
321			     98, UNIPHIER_PIN_PULL_DOWN),
322	UNIPHIER_PINCTRL_PIN(99, "AO1BCK", UNIPHIER_PIN_IECTRL_NONE,
323			     -1, UNIPHIER_PIN_DRV_FIXED_8,
324			     99, UNIPHIER_PIN_PULL_DOWN),
325	UNIPHIER_PINCTRL_PIN(100, "AO1LRCK", UNIPHIER_PIN_IECTRL_NONE,
326			     -1, UNIPHIER_PIN_DRV_FIXED_8,
327			     100, UNIPHIER_PIN_PULL_DOWN),
328	UNIPHIER_PINCTRL_PIN(101, "AO1D0", UNIPHIER_PIN_IECTRL_NONE,
329			     -1, UNIPHIER_PIN_DRV_FIXED_8,
330			     101, UNIPHIER_PIN_PULL_DOWN),
331	UNIPHIER_PINCTRL_PIN(102, "AO1D1", UNIPHIER_PIN_IECTRL_NONE,
332			     -1, UNIPHIER_PIN_DRV_FIXED_8,
333			     102, UNIPHIER_PIN_PULL_DOWN),
334	UNIPHIER_PINCTRL_PIN(103, "AO1D2", UNIPHIER_PIN_IECTRL_NONE,
335			     -1, UNIPHIER_PIN_DRV_FIXED_8,
336			     103, UNIPHIER_PIN_PULL_DOWN),
337	UNIPHIER_PINCTRL_PIN(104, "AO1D3", UNIPHIER_PIN_IECTRL_NONE,
338			     -1, UNIPHIER_PIN_DRV_FIXED_8,
339			     104, UNIPHIER_PIN_PULL_DOWN),
340	UNIPHIER_PINCTRL_PIN(105, "AO2DACCK", UNIPHIER_PIN_IECTRL_NONE,
341			     -1, UNIPHIER_PIN_DRV_FIXED_8,
342			     105, UNIPHIER_PIN_PULL_DOWN),
343	UNIPHIER_PINCTRL_PIN(106, "AO2BCK", UNIPHIER_PIN_IECTRL_NONE,
344			     -1, UNIPHIER_PIN_DRV_FIXED_8,
345			     106, UNIPHIER_PIN_PULL_DOWN),
346	UNIPHIER_PINCTRL_PIN(107, "AO2LRCK", UNIPHIER_PIN_IECTRL_NONE,
347			     -1, UNIPHIER_PIN_DRV_FIXED_8,
348			     107, UNIPHIER_PIN_PULL_DOWN),
349	UNIPHIER_PINCTRL_PIN(108, "AO2D0", UNIPHIER_PIN_IECTRL_NONE,
350			     -1, UNIPHIER_PIN_DRV_FIXED_8,
351			     108, UNIPHIER_PIN_PULL_DOWN),
352	UNIPHIER_PINCTRL_PIN(109, "SDA0", UNIPHIER_PIN_IECTRL_NONE,
353			     -1, UNIPHIER_PIN_DRV_FIXED_8,
354			     109, UNIPHIER_PIN_PULL_DOWN),
355	UNIPHIER_PINCTRL_PIN(110, "SCL0", UNIPHIER_PIN_IECTRL_NONE,
356			     -1, UNIPHIER_PIN_DRV_FIXED_8,
357			     110, UNIPHIER_PIN_PULL_DOWN),
358	UNIPHIER_PINCTRL_PIN(111, "SDA1", UNIPHIER_PIN_IECTRL_NONE,
359			     -1, UNIPHIER_PIN_DRV_FIXED_8,
360			     111, UNIPHIER_PIN_PULL_DOWN),
361	UNIPHIER_PINCTRL_PIN(112, "SCL1", UNIPHIER_PIN_IECTRL_NONE,
362			     -1, UNIPHIER_PIN_DRV_FIXED_8,
363			     112, UNIPHIER_PIN_PULL_DOWN),
364	UNIPHIER_PINCTRL_PIN(113, "SBO0", 0,
365			     113, UNIPHIER_PIN_DRV_4_8,
366			     113, UNIPHIER_PIN_PULL_UP),
367	UNIPHIER_PINCTRL_PIN(114, "SBI0", 0,
368			     114, UNIPHIER_PIN_DRV_4_8,
369			     114, UNIPHIER_PIN_PULL_UP),
370	UNIPHIER_PINCTRL_PIN(115, "TXD1", 0,
371			     115, UNIPHIER_PIN_DRV_4_8,
372			     115, UNIPHIER_PIN_PULL_UP),
373	UNIPHIER_PINCTRL_PIN(116, "RXD1", 0,
374			     116, UNIPHIER_PIN_DRV_4_8,
375			     116, UNIPHIER_PIN_PULL_UP),
376	UNIPHIER_PINCTRL_PIN(117, "PWSRA", UNIPHIER_PIN_IECTRL_NONE,
377			     -1, UNIPHIER_PIN_DRV_FIXED_8,
378			     117, UNIPHIER_PIN_PULL_DOWN),
379	UNIPHIER_PINCTRL_PIN(118, "XIRQ0", UNIPHIER_PIN_IECTRL_NONE,
380			     -1, UNIPHIER_PIN_DRV_FIXED_8,
381			     118, UNIPHIER_PIN_PULL_DOWN),
382	UNIPHIER_PINCTRL_PIN(119, "XIRQ1", UNIPHIER_PIN_IECTRL_NONE,
383			     -1, UNIPHIER_PIN_DRV_FIXED_8,
384			     119, UNIPHIER_PIN_PULL_DOWN),
385	UNIPHIER_PINCTRL_PIN(120, "XIRQ2", UNIPHIER_PIN_IECTRL_NONE,
386			     -1, UNIPHIER_PIN_DRV_FIXED_8,
387			     120, UNIPHIER_PIN_PULL_DOWN),
388	UNIPHIER_PINCTRL_PIN(121, "XIRQ3", UNIPHIER_PIN_IECTRL_NONE,
389			     -1, UNIPHIER_PIN_DRV_FIXED_8,
390			     121, UNIPHIER_PIN_PULL_DOWN),
391	UNIPHIER_PINCTRL_PIN(122, "XIRQ4", UNIPHIER_PIN_IECTRL_NONE,
392			     -1, UNIPHIER_PIN_DRV_FIXED_8,
393			     122, UNIPHIER_PIN_PULL_DOWN),
394	UNIPHIER_PINCTRL_PIN(123, "XIRQ5", UNIPHIER_PIN_IECTRL_NONE,
395			     -1, UNIPHIER_PIN_DRV_FIXED_8,
396			     123, UNIPHIER_PIN_PULL_DOWN),
397	UNIPHIER_PINCTRL_PIN(124, "XIRQ6", UNIPHIER_PIN_IECTRL_NONE,
398			     -1, UNIPHIER_PIN_DRV_FIXED_8,
399			     124, UNIPHIER_PIN_PULL_DOWN),
400	UNIPHIER_PINCTRL_PIN(125, "XIRQ7", UNIPHIER_PIN_IECTRL_NONE,
401			     -1, UNIPHIER_PIN_DRV_FIXED_8,
402			     125, UNIPHIER_PIN_PULL_DOWN),
403	UNIPHIER_PINCTRL_PIN(126, "XIRQ8", UNIPHIER_PIN_IECTRL_NONE,
404			     -1, UNIPHIER_PIN_DRV_FIXED_8,
405			     126, UNIPHIER_PIN_PULL_DOWN),
406	UNIPHIER_PINCTRL_PIN(127, "PORT00", UNIPHIER_PIN_IECTRL_NONE,
407			     -1, UNIPHIER_PIN_DRV_FIXED_8,
408			     127, UNIPHIER_PIN_PULL_DOWN),
409	UNIPHIER_PINCTRL_PIN(128, "PORT01", UNIPHIER_PIN_IECTRL_NONE,
410			     -1, UNIPHIER_PIN_DRV_FIXED_8,
411			     128, UNIPHIER_PIN_PULL_DOWN),
412	UNIPHIER_PINCTRL_PIN(129, "PORT02", UNIPHIER_PIN_IECTRL_NONE,
413			     -1, UNIPHIER_PIN_DRV_FIXED_8,
414			     129, UNIPHIER_PIN_PULL_DOWN),
415	UNIPHIER_PINCTRL_PIN(130, "PORT03", UNIPHIER_PIN_IECTRL_NONE,
416			     -1, UNIPHIER_PIN_DRV_FIXED_8,
417			     130, UNIPHIER_PIN_PULL_DOWN),
418	UNIPHIER_PINCTRL_PIN(131, "PORT04", UNIPHIER_PIN_IECTRL_NONE,
419			     -1, UNIPHIER_PIN_DRV_FIXED_8,
420			     131, UNIPHIER_PIN_PULL_DOWN),
421	UNIPHIER_PINCTRL_PIN(132, "PORT05", UNIPHIER_PIN_IECTRL_NONE,
422			     -1, UNIPHIER_PIN_DRV_FIXED_8,
423			     132, UNIPHIER_PIN_PULL_DOWN),
424	UNIPHIER_PINCTRL_PIN(133, "PORT06", UNIPHIER_PIN_IECTRL_NONE,
425			     -1, UNIPHIER_PIN_DRV_FIXED_8,
426			     133, UNIPHIER_PIN_PULL_DOWN),
427	UNIPHIER_PINCTRL_PIN(134, "PORT07", UNIPHIER_PIN_IECTRL_NONE,
428			     -1, UNIPHIER_PIN_DRV_FIXED_8,
429			     134, UNIPHIER_PIN_PULL_DOWN),
430	UNIPHIER_PINCTRL_PIN(135, "PORT10", UNIPHIER_PIN_IECTRL_NONE,
431			     -1, UNIPHIER_PIN_DRV_FIXED_8,
432			     135, UNIPHIER_PIN_PULL_DOWN),
433	UNIPHIER_PINCTRL_PIN(136, "PORT11", UNIPHIER_PIN_IECTRL_NONE,
434			     -1, UNIPHIER_PIN_DRV_FIXED_8,
435			     136, UNIPHIER_PIN_PULL_DOWN),
436	UNIPHIER_PINCTRL_PIN(137, "PORT12", UNIPHIER_PIN_IECTRL_NONE,
437			     -1, UNIPHIER_PIN_DRV_FIXED_8,
438			     137, UNIPHIER_PIN_PULL_DOWN),
439	UNIPHIER_PINCTRL_PIN(138, "PORT13", UNIPHIER_PIN_IECTRL_NONE,
440			     -1, UNIPHIER_PIN_DRV_FIXED_8,
441			     138, UNIPHIER_PIN_PULL_DOWN),
442	UNIPHIER_PINCTRL_PIN(139, "PORT14", UNIPHIER_PIN_IECTRL_NONE,
443			     -1, UNIPHIER_PIN_DRV_FIXED_8,
444			     139, UNIPHIER_PIN_PULL_DOWN),
445	UNIPHIER_PINCTRL_PIN(140, "PORT15", UNIPHIER_PIN_IECTRL_NONE,
446			     -1, UNIPHIER_PIN_DRV_FIXED_8,
447			     140, UNIPHIER_PIN_PULL_DOWN),
448	UNIPHIER_PINCTRL_PIN(141, "PORT16", UNIPHIER_PIN_IECTRL_NONE,
449			     -1, UNIPHIER_PIN_DRV_FIXED_8,
450			     141, UNIPHIER_PIN_PULL_DOWN),
451	UNIPHIER_PINCTRL_PIN(142, "LPST", UNIPHIER_PIN_IECTRL_NONE,
452			     142, UNIPHIER_PIN_DRV_4_8,
453			     142, UNIPHIER_PIN_PULL_DOWN),
454	UNIPHIER_PINCTRL_PIN(143, "MDC", 0,
455			     143, UNIPHIER_PIN_DRV_4_8,
456			     143, UNIPHIER_PIN_PULL_DOWN),
457	UNIPHIER_PINCTRL_PIN(144, "MDIO", 0,
458			     144, UNIPHIER_PIN_DRV_4_8,
459			     144, UNIPHIER_PIN_PULL_DOWN),
460	UNIPHIER_PINCTRL_PIN(145, "MDIO_INTL", 0,
461			     145, UNIPHIER_PIN_DRV_4_8,
462			     145, UNIPHIER_PIN_PULL_DOWN),
463	UNIPHIER_PINCTRL_PIN(146, "PHYRSTL", 0,
464			     146, UNIPHIER_PIN_DRV_4_8,
465			     146, UNIPHIER_PIN_PULL_DOWN),
466	UNIPHIER_PINCTRL_PIN(147, "RGMII_RXCLK", 0,
467			     147, UNIPHIER_PIN_DRV_4_8,
468			     147, UNIPHIER_PIN_PULL_DOWN),
469	UNIPHIER_PINCTRL_PIN(148, "RGMII_RXD0", 0,
470			     148, UNIPHIER_PIN_DRV_4_8,
471			     148, UNIPHIER_PIN_PULL_DOWN),
472	UNIPHIER_PINCTRL_PIN(149, "RGMII_RXD1", 0,
473			     149, UNIPHIER_PIN_DRV_4_8,
474			     149, UNIPHIER_PIN_PULL_DOWN),
475	UNIPHIER_PINCTRL_PIN(150, "RGMII_RXD2", 0,
476			     150, UNIPHIER_PIN_DRV_4_8,
477			     150, UNIPHIER_PIN_PULL_DOWN),
478	UNIPHIER_PINCTRL_PIN(151, "RGMII_RXD3", 0,
479			     151, UNIPHIER_PIN_DRV_4_8,
480			     151, UNIPHIER_PIN_PULL_DOWN),
481	UNIPHIER_PINCTRL_PIN(152, "RGMII_RXCTL", 0,
482			     152, UNIPHIER_PIN_DRV_4_8,
483			     152, UNIPHIER_PIN_PULL_DOWN),
484	UNIPHIER_PINCTRL_PIN(153, "RGMII_TXCLK", 0,
485			     153, UNIPHIER_PIN_DRV_4_8,
486			     153, UNIPHIER_PIN_PULL_DOWN),
487	UNIPHIER_PINCTRL_PIN(154, "RGMII_TXD0", 0,
488			     154, UNIPHIER_PIN_DRV_4_8,
489			     154, UNIPHIER_PIN_PULL_DOWN),
490	UNIPHIER_PINCTRL_PIN(155, "RGMII_TXD1", 0,
491			     155, UNIPHIER_PIN_DRV_4_8,
492			     155, UNIPHIER_PIN_PULL_DOWN),
493	UNIPHIER_PINCTRL_PIN(156, "RGMII_TXD2", 0,
494			     156, UNIPHIER_PIN_DRV_4_8,
495			     156, UNIPHIER_PIN_PULL_DOWN),
496	UNIPHIER_PINCTRL_PIN(157, "RGMII_TXD3", 0,
497			     157, UNIPHIER_PIN_DRV_4_8,
498			     157, UNIPHIER_PIN_PULL_DOWN),
499	UNIPHIER_PINCTRL_PIN(158, "RGMII_TXCTL", 0,
500			     158, UNIPHIER_PIN_DRV_4_8,
501			     158, UNIPHIER_PIN_PULL_DOWN),
502	UNIPHIER_PINCTRL_PIN(159, "A_D_PCD00OUT", UNIPHIER_PIN_IECTRL_NONE,
503			     -1, UNIPHIER_PIN_DRV_FIXED_8,
504			     159, UNIPHIER_PIN_PULL_DOWN),
505	UNIPHIER_PINCTRL_PIN(160, "A_D_PCD01OUT", UNIPHIER_PIN_IECTRL_NONE,
506			     -1, UNIPHIER_PIN_DRV_FIXED_8,
507			     160, UNIPHIER_PIN_PULL_DOWN),
508	UNIPHIER_PINCTRL_PIN(161, "A_D_PCD02OUT", UNIPHIER_PIN_IECTRL_NONE,
509			     -1, UNIPHIER_PIN_DRV_FIXED_8,
510			     161, UNIPHIER_PIN_PULL_DOWN),
511	UNIPHIER_PINCTRL_PIN(162, "A_D_PCD03OUT", UNIPHIER_PIN_IECTRL_NONE,
512			     -1, UNIPHIER_PIN_DRV_FIXED_8,
513			     162, UNIPHIER_PIN_PULL_DOWN),
514	UNIPHIER_PINCTRL_PIN(163, "A_D_PCD04OUT", UNIPHIER_PIN_IECTRL_NONE,
515			     -1, UNIPHIER_PIN_DRV_FIXED_8,
516			     163, UNIPHIER_PIN_PULL_DOWN),
517	UNIPHIER_PINCTRL_PIN(164, "A_D_PCD05OUT", UNIPHIER_PIN_IECTRL_NONE,
518			     -1, UNIPHIER_PIN_DRV_FIXED_8,
519			     164, UNIPHIER_PIN_PULL_DOWN),
520	UNIPHIER_PINCTRL_PIN(165, "A_D_PCD06OUT", UNIPHIER_PIN_IECTRL_NONE,
521			     -1, UNIPHIER_PIN_DRV_FIXED_8,
522			     165, UNIPHIER_PIN_PULL_DOWN),
523	UNIPHIER_PINCTRL_PIN(166, "A_D_PCD07OUT", UNIPHIER_PIN_IECTRL_NONE,
524			     -1, UNIPHIER_PIN_DRV_FIXED_8,
525			     166, UNIPHIER_PIN_PULL_DOWN),
526	UNIPHIER_PINCTRL_PIN(167, "A_D_PCD00IN", UNIPHIER_PIN_IECTRL_NONE,
527			     -1, UNIPHIER_PIN_DRV_FIXED_8,
528			     167, UNIPHIER_PIN_PULL_DOWN),
529	UNIPHIER_PINCTRL_PIN(168, "A_D_PCD01IN", UNIPHIER_PIN_IECTRL_NONE,
530			     -1, UNIPHIER_PIN_DRV_FIXED_8,
531			     168, UNIPHIER_PIN_PULL_DOWN),
532	UNIPHIER_PINCTRL_PIN(169, "A_D_PCD02IN", UNIPHIER_PIN_IECTRL_NONE,
533			     -1, UNIPHIER_PIN_DRV_FIXED_8,
534			     169, UNIPHIER_PIN_PULL_DOWN),
535	UNIPHIER_PINCTRL_PIN(170, "A_D_PCD03IN", UNIPHIER_PIN_IECTRL_NONE,
536			     -1, UNIPHIER_PIN_DRV_FIXED_8,
537			     170, UNIPHIER_PIN_PULL_DOWN),
538	UNIPHIER_PINCTRL_PIN(171, "A_D_PCD04IN", UNIPHIER_PIN_IECTRL_NONE,
539			     -1, UNIPHIER_PIN_DRV_FIXED_8,
540			     171, UNIPHIER_PIN_PULL_DOWN),
541	UNIPHIER_PINCTRL_PIN(172, "A_D_PCD05IN", UNIPHIER_PIN_IECTRL_NONE,
542			     -1, UNIPHIER_PIN_DRV_FIXED_8,
543			     172, UNIPHIER_PIN_PULL_DOWN),
544	UNIPHIER_PINCTRL_PIN(173, "A_D_PCD06IN", UNIPHIER_PIN_IECTRL_NONE,
545			     -1, UNIPHIER_PIN_DRV_FIXED_8,
546			     173, UNIPHIER_PIN_PULL_DOWN),
547	UNIPHIER_PINCTRL_PIN(174, "A_D_PCD07IN", UNIPHIER_PIN_IECTRL_NONE,
548			     -1, UNIPHIER_PIN_DRV_FIXED_8,
549			     174, UNIPHIER_PIN_PULL_DOWN),
550	UNIPHIER_PINCTRL_PIN(175, "A_D_PCDNOE", UNIPHIER_PIN_IECTRL_NONE,
551			     -1, UNIPHIER_PIN_DRV_FIXED_8,
552			     175, UNIPHIER_PIN_PULL_DOWN),
553	UNIPHIER_PINCTRL_PIN(176, "A_D_PC0READY", UNIPHIER_PIN_IECTRL_NONE,
554			     -1, UNIPHIER_PIN_DRV_FIXED_8,
555			     176, UNIPHIER_PIN_PULL_DOWN),
556	UNIPHIER_PINCTRL_PIN(177, "A_D_PC0CD1", UNIPHIER_PIN_IECTRL_NONE,
557			     -1, UNIPHIER_PIN_DRV_FIXED_8,
558			     177, UNIPHIER_PIN_PULL_DOWN),
559	UNIPHIER_PINCTRL_PIN(178, "A_D_PC0CD2", UNIPHIER_PIN_IECTRL_NONE,
560			     -1, UNIPHIER_PIN_DRV_FIXED_8,
561			     178, UNIPHIER_PIN_PULL_DOWN),
562	UNIPHIER_PINCTRL_PIN(179, "A_D_PC0WAIT", UNIPHIER_PIN_IECTRL_NONE,
563			     -1, UNIPHIER_PIN_DRV_FIXED_8,
564			     179, UNIPHIER_PIN_PULL_DOWN),
565	UNIPHIER_PINCTRL_PIN(180, "A_D_PC0RESET", UNIPHIER_PIN_IECTRL_NONE,
566			     -1, UNIPHIER_PIN_DRV_FIXED_8,
567			     180, UNIPHIER_PIN_PULL_DOWN),
568	UNIPHIER_PINCTRL_PIN(181, "A_D_PC0CE1", UNIPHIER_PIN_IECTRL_NONE,
569			     -1, UNIPHIER_PIN_DRV_FIXED_8,
570			     181, UNIPHIER_PIN_PULL_DOWN),
571	UNIPHIER_PINCTRL_PIN(182, "A_D_PC0WE", UNIPHIER_PIN_IECTRL_NONE,
572			     -1, UNIPHIER_PIN_DRV_FIXED_8,
573			     182, UNIPHIER_PIN_PULL_DOWN),
574	UNIPHIER_PINCTRL_PIN(183, "A_D_PC0OE", UNIPHIER_PIN_IECTRL_NONE,
575			     -1, UNIPHIER_PIN_DRV_FIXED_8,
576			     183, UNIPHIER_PIN_PULL_DOWN),
577	UNIPHIER_PINCTRL_PIN(184, "A_D_PC0IOWR", UNIPHIER_PIN_IECTRL_NONE,
578			     -1, UNIPHIER_PIN_DRV_FIXED_8,
579			     184, UNIPHIER_PIN_PULL_DOWN),
580	UNIPHIER_PINCTRL_PIN(185, "A_D_PC0IORD", UNIPHIER_PIN_IECTRL_NONE,
581			     -1, UNIPHIER_PIN_DRV_FIXED_8,
582			     185, UNIPHIER_PIN_PULL_DOWN),
583	UNIPHIER_PINCTRL_PIN(186, "A_D_PC0NOE", UNIPHIER_PIN_IECTRL_NONE,
584			     -1, UNIPHIER_PIN_DRV_FIXED_8,
585			     186, UNIPHIER_PIN_PULL_DOWN),
586	UNIPHIER_PINCTRL_PIN(187, "A_D_HS0BCLKIN", 0,
587			     187, UNIPHIER_PIN_DRV_4_8,
588			     187, UNIPHIER_PIN_PULL_DOWN),
589	UNIPHIER_PINCTRL_PIN(188, "A_D_HS0SYNCIN", 0,
590			     188, UNIPHIER_PIN_DRV_4_8,
591			     188, UNIPHIER_PIN_PULL_DOWN),
592	UNIPHIER_PINCTRL_PIN(189, "A_D_HS0VALIN", 0,
593			     189, UNIPHIER_PIN_DRV_4_8,
594			     189, UNIPHIER_PIN_PULL_DOWN),
595	UNIPHIER_PINCTRL_PIN(190, "A_D_HS0DIN0", 0,
596			     190, UNIPHIER_PIN_DRV_4_8,
597			     190, UNIPHIER_PIN_PULL_DOWN),
598	UNIPHIER_PINCTRL_PIN(191, "A_D_HS0DIN1", 0,
599			     191, UNIPHIER_PIN_DRV_4_8,
600			     191, UNIPHIER_PIN_PULL_DOWN),
601	UNIPHIER_PINCTRL_PIN(192, "A_D_HS0DIN2", 0,
602			     192, UNIPHIER_PIN_DRV_4_8,
603			     192, UNIPHIER_PIN_PULL_DOWN),
604	UNIPHIER_PINCTRL_PIN(193, "A_D_HS0DIN3", 0,
605			     193, UNIPHIER_PIN_DRV_4_8,
606			     193, UNIPHIER_PIN_PULL_DOWN),
607	UNIPHIER_PINCTRL_PIN(194, "A_D_HS0DIN4", 0,
608			     194, UNIPHIER_PIN_DRV_4_8,
609			     194, UNIPHIER_PIN_PULL_DOWN),
610	UNIPHIER_PINCTRL_PIN(195, "A_D_HS0DIN5", 0,
611			     195, UNIPHIER_PIN_DRV_4_8,
612			     195, UNIPHIER_PIN_PULL_DOWN),
613	UNIPHIER_PINCTRL_PIN(196, "A_D_HS0DIN6", 0,
614			     196, UNIPHIER_PIN_DRV_4_8,
615			     196, UNIPHIER_PIN_PULL_DOWN),
616	UNIPHIER_PINCTRL_PIN(197, "A_D_HS0DIN7", 0,
617			     197, UNIPHIER_PIN_DRV_4_8,
618			     197, UNIPHIER_PIN_PULL_DOWN),
619	UNIPHIER_PINCTRL_PIN(198, "A_D_AO1ARC", 0,
620			     198, UNIPHIER_PIN_DRV_4_8,
621			     198, UNIPHIER_PIN_PULL_DOWN),
622	UNIPHIER_PINCTRL_PIN(199, "A_D_SPIXRST", UNIPHIER_PIN_IECTRL_NONE,
623			     199, UNIPHIER_PIN_DRV_4_8,
624			     199, UNIPHIER_PIN_PULL_DOWN),
625	UNIPHIER_PINCTRL_PIN(200, "A_D_SPISCLK0", UNIPHIER_PIN_IECTRL_NONE,
626			     200, UNIPHIER_PIN_DRV_4_8,
627			     200, UNIPHIER_PIN_PULL_DOWN),
628	UNIPHIER_PINCTRL_PIN(201, "A_D_SPITXD0", UNIPHIER_PIN_IECTRL_NONE,
629			     201, UNIPHIER_PIN_DRV_4_8,
630			     201, UNIPHIER_PIN_PULL_DOWN),
631	UNIPHIER_PINCTRL_PIN(202, "A_D_SPIRXD0", UNIPHIER_PIN_IECTRL_NONE,
632			     202, UNIPHIER_PIN_DRV_4_8,
633			     202, UNIPHIER_PIN_PULL_DOWN),
634	UNIPHIER_PINCTRL_PIN(203, "A_D_DMDCLK", UNIPHIER_PIN_IECTRL_NONE,
635			     -1, UNIPHIER_PIN_DRV_FIXED_8,
636			     203, UNIPHIER_PIN_PULL_DOWN),
637	UNIPHIER_PINCTRL_PIN(204, "A_D_DMDPSYNC", UNIPHIER_PIN_IECTRL_NONE,
638			     -1, UNIPHIER_PIN_DRV_FIXED_8,
639			     204, UNIPHIER_PIN_PULL_DOWN),
640	UNIPHIER_PINCTRL_PIN(205, "A_D_DMDVAL", UNIPHIER_PIN_IECTRL_NONE,
641			     -1, UNIPHIER_PIN_DRV_FIXED_8,
642			     205, UNIPHIER_PIN_PULL_DOWN),
643	UNIPHIER_PINCTRL_PIN(206, "A_D_DMDDATA", UNIPHIER_PIN_IECTRL_NONE,
644			     -1, UNIPHIER_PIN_DRV_FIXED_8,
645			     206, UNIPHIER_PIN_PULL_DOWN),
646	UNIPHIER_PINCTRL_PIN(207, "A_D_HDMIRXXIRQ", 0,
647			     207, UNIPHIER_PIN_DRV_4_8,
648			     207, UNIPHIER_PIN_PULL_DOWN),
649	UNIPHIER_PINCTRL_PIN(208, "A_D_VBIXIRQ", 0,
650			     208, UNIPHIER_PIN_DRV_4_8,
651			     208, UNIPHIER_PIN_PULL_DOWN),
652	UNIPHIER_PINCTRL_PIN(209, "A_D_HDMITXXIRQ", 0,
653			     209, UNIPHIER_PIN_DRV_4_8,
654			     209, UNIPHIER_PIN_PULL_DOWN),
655	UNIPHIER_PINCTRL_PIN(210, "A_D_DMDIRQ", UNIPHIER_PIN_IECTRL_NONE,
656			     210, UNIPHIER_PIN_DRV_4_8,
657			     210, UNIPHIER_PIN_PULL_DOWN),
658	UNIPHIER_PINCTRL_PIN(211, "A_D_SPICIRQ", UNIPHIER_PIN_IECTRL_NONE,
659			     211, UNIPHIER_PIN_DRV_4_8,
660			     211, UNIPHIER_PIN_PULL_DOWN),
661	UNIPHIER_PINCTRL_PIN(212, "A_D_SPIBIRQ", UNIPHIER_PIN_IECTRL_NONE,
662			     212, UNIPHIER_PIN_DRV_4_8,
663			     212, UNIPHIER_PIN_PULL_DOWN),
664	UNIPHIER_PINCTRL_PIN(213, "A_D_BESDAOUT", UNIPHIER_PIN_IECTRL_NONE,
665			     -1, UNIPHIER_PIN_DRV_FIXED_4,
666			     213, UNIPHIER_PIN_PULL_DOWN),
667	UNIPHIER_PINCTRL_PIN(214, "A_D_BESDAIN", UNIPHIER_PIN_IECTRL_NONE,
668			     -1, UNIPHIER_PIN_DRV_FIXED_4,
669			     214, UNIPHIER_PIN_PULL_DOWN),
670	UNIPHIER_PINCTRL_PIN(215, "A_D_BESCLOUT", UNIPHIER_PIN_IECTRL_NONE,
671			     215, UNIPHIER_PIN_DRV_4_8,
672			     215, UNIPHIER_PIN_PULL_DOWN),
673	UNIPHIER_PINCTRL_PIN(216, "A_D_VDACCLKOUT", 0,
674			     216, UNIPHIER_PIN_DRV_4_8,
675			     216, UNIPHIER_PIN_PULL_DOWN),
676	UNIPHIER_PINCTRL_PIN(217, "A_D_VDACDOUT5", 0,
677			     217, UNIPHIER_PIN_DRV_4_8,
678			     217, UNIPHIER_PIN_PULL_DOWN),
679	UNIPHIER_PINCTRL_PIN(218, "A_D_VDACDOUT6", 0,
680			     218, UNIPHIER_PIN_DRV_4_8,
681			     218, UNIPHIER_PIN_PULL_DOWN),
682	UNIPHIER_PINCTRL_PIN(219, "A_D_VDACDOUT7", 0,
683			     219, UNIPHIER_PIN_DRV_4_8,
684			     219, UNIPHIER_PIN_PULL_DOWN),
685	UNIPHIER_PINCTRL_PIN(220, "A_D_VDACDOUT8", 0,
686			     220, UNIPHIER_PIN_DRV_4_8,
687			     220, UNIPHIER_PIN_PULL_DOWN),
688	UNIPHIER_PINCTRL_PIN(221, "A_D_VDACDOUT9", 0,
689			     221, UNIPHIER_PIN_DRV_4_8,
690			     221, UNIPHIER_PIN_PULL_DOWN),
691	UNIPHIER_PINCTRL_PIN(222, "A_D_SIFBCKIN", 0,
692			     222, UNIPHIER_PIN_DRV_4_8,
693			     222, UNIPHIER_PIN_PULL_DOWN),
694	UNIPHIER_PINCTRL_PIN(223, "A_D_SIFLRCKIN", 0,
695			     223, UNIPHIER_PIN_DRV_4_8,
696			     223, UNIPHIER_PIN_PULL_DOWN),
697	UNIPHIER_PINCTRL_PIN(224, "A_D_SIFDIN", 0,
698			     224, UNIPHIER_PIN_DRV_4_8,
699			     224, UNIPHIER_PIN_PULL_DOWN),
700	UNIPHIER_PINCTRL_PIN(225, "A_D_LIBCKOUT", 0,
701			     225, UNIPHIER_PIN_DRV_4_8,
702			     225, UNIPHIER_PIN_PULL_DOWN),
703	UNIPHIER_PINCTRL_PIN(226, "A_D_LILRCKOUT", 0,
704			     226, UNIPHIER_PIN_DRV_4_8,
705			     226, UNIPHIER_PIN_PULL_DOWN),
706	UNIPHIER_PINCTRL_PIN(227, "A_D_LIDIN", 0,
707			     227, UNIPHIER_PIN_DRV_4_8,
708			     227, UNIPHIER_PIN_PULL_DOWN),
709	UNIPHIER_PINCTRL_PIN(228, "A_D_LODOUT", 0,
710			     228, UNIPHIER_PIN_DRV_4_8,
711			     228, UNIPHIER_PIN_PULL_DOWN),
712	UNIPHIER_PINCTRL_PIN(229, "A_D_HPDOUT", 0,
713			     229, UNIPHIER_PIN_DRV_4_8,
714			     229, UNIPHIER_PIN_PULL_DOWN),
715	UNIPHIER_PINCTRL_PIN(230, "A_D_MCLK", 0,
716			     230, UNIPHIER_PIN_DRV_4_8,
717			     230, UNIPHIER_PIN_PULL_DOWN),
718	UNIPHIER_PINCTRL_PIN(231, "A_D_A2PLLREFOUT", 0,
719			     231, UNIPHIER_PIN_DRV_4_8,
720			     231, UNIPHIER_PIN_PULL_DOWN),
721	UNIPHIER_PINCTRL_PIN(232, "A_D_HDMI3DSDAOUT", 0,
722			     232, UNIPHIER_PIN_DRV_4_8,
723			     232, UNIPHIER_PIN_PULL_DOWN),
724	UNIPHIER_PINCTRL_PIN(233, "A_D_HDMI3DSDAIN", 0,
725			     233, UNIPHIER_PIN_DRV_4_8,
726			     233, UNIPHIER_PIN_PULL_DOWN),
727	UNIPHIER_PINCTRL_PIN(234, "A_D_HDMI3DSCLIN", 0,
728			     234, UNIPHIER_PIN_DRV_4_8,
729			     234, UNIPHIER_PIN_PULL_DOWN),
730};
731
732static const unsigned adinter_pins[] = {
733	159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
734	173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
735	187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
736	201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
737	215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
738	229, 230, 231, 232, 233, 234,
739};
740static const unsigned adinter_muxvals[] = {
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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
744	0, 0, 0, 0,
745};
746static const unsigned emmc_pins[] = {36, 37, 38, 39, 40, 41, 42};
747static const unsigned emmc_muxvals[] = {1, 1, 1, 1, 1, 1, 1};
748static const unsigned emmc_dat8_pins[] = {43, 44, 45, 46};
749static const unsigned emmc_dat8_muxvals[] = {1, 1, 1, 1};
750static const unsigned i2c0_pins[] = {109, 110};
751static const unsigned i2c0_muxvals[] = {0, 0};
752static const unsigned i2c1_pins[] = {111, 112};
753static const unsigned i2c1_muxvals[] = {0, 0};
754static const unsigned i2c2_pins[] = {115, 116};
755static const unsigned i2c2_muxvals[] = {1, 1};
756static const unsigned i2c3_pins[] = {118, 119};
757static const unsigned i2c3_muxvals[] = {1, 1};
758static const unsigned nand_pins[] = {30, 31, 32, 33, 34, 35, 36, 39, 40, 41,
759				     42, 43, 44, 45, 46};
760static const unsigned nand_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
761					0, 0};
762static const unsigned nand_cs1_pins[] = {37, 38};
763static const unsigned nand_cs1_muxvals[] = {0, 0};
764static const unsigned sd_pins[] = {47, 48, 49, 50, 51, 52, 53, 54, 55};
765static const unsigned sd_muxvals[] = {0, 0, 0, 0, 0, 0, 0, 0, 0};
766static const unsigned uart0_pins[] = {135, 136};
767static const unsigned uart0_muxvals[] = {3, 3};
768static const unsigned uart0b_pins[] = {11, 12};
769static const unsigned uart0b_muxvals[] = {2, 2};
770static const unsigned uart1_pins[] = {115, 116};
771static const unsigned uart1_muxvals[] = {0, 0};
772static const unsigned uart1b_pins[] = {113, 114};
773static const unsigned uart1b_muxvals[] = {1, 1};
774static const unsigned uart2_pins[] = {113, 114};
775static const unsigned uart2_muxvals[] = {2, 2};
776static const unsigned uart2b_pins[] = {86, 87};
777static const unsigned uart2b_muxvals[] = {1, 1};
778static const unsigned usb0_pins[] = {56, 57};
779static const unsigned usb0_muxvals[] = {0, 0};
780static const unsigned usb1_pins[] = {58, 59};
781static const unsigned usb1_muxvals[] = {0, 0};
782static const unsigned usb2_pins[] = {60, 61};
783static const unsigned usb2_muxvals[] = {0, 0};
784static const unsigned usb3_pins[] = {62, 63};
785static const unsigned usb3_muxvals[] = {0, 0};
786static const unsigned port_range0_pins[] = {
787	127, 128, 129, 130, 131, 132, 133, 134,		/* PORT0x */
788	135, 136, 137, 138, 139, 140, 141, 142,		/* PORT1x */
789	0, 1, 2, 3, 4, 5, 6, 7,				/* PORT2x */
790	8, 9, 10, 11, 12, 13, 14, 15,			/* PORT3x */
791	16, 17, 18, 19, 21, 22, 23, 24,			/* PORT4x */
792	25, 30, 31, 32, 33, 34, 35, 36,			/* PORT5x */
793	37, 38, 39, 40, 41, 42, 43, 44,			/* PORT6x */
794	45, 46, 47, 48, 49, 50, 51, 52,			/* PORT7x */
795	53, 54, 55, 56, 57, 58, 59, 60,			/* PORT8x */
796	61, 62, 63, 64, 65, 66, 67, 68,			/* PORT9x */
797	69, 70, 71, 76, 77, 78, 79, 80,			/* PORT10x */
798};
799static const unsigned port_range0_muxvals[] = {
800	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT0x */
801	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT1x */
802	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT2x */
803	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT3x */
804	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT4x */
805	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT5x */
806	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT6x */
807	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT7x */
808	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT8x */
809	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT9x */
810	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT10x */
811};
812static const unsigned port_range1_pins[] = {
813	81, 82, 83, 84, 85, 86, 87, 88,			/* PORT12x */
814	89, 90, 95, 96, 97, 98, 99, 100,		/* PORT13x */
815	101, 102, 103, 104, 105, 106, 107, 108,		/* PORT14x */
816	118, 119, 120, 121, 122, 123, 124, 125,		/* PORT15x */
817	126, 72, 73, 92, 177, 93, 94, 176,		/* PORT16x */
818	74, 91, 27, 28, 29, 75, 20, 26,			/* PORT17x */
819	109, 110, 111, 112, 113, 114, 115, 116,		/* PORT18x */
820	117, 143, 144, 145, 146, 147, 148, 149,		/* PORT19x */
821	150, 151, 152, 153, 154, 155, 156, 157,		/* PORT20x */
822	158, 159, 160, 161, 162, 163, 164, 165,		/* PORT21x */
823	166, 178, 179, 180, 181, 182, 183, 184,		/* PORT22x */
824	185, 187, 188, 189, 190, 191, 192, 193,		/* PORT23x */
825	194, 195, 196, 197, 198, 199, 200, 201,		/* PORT24x */
826	202, 203, 204, 205, 206, 207, 208, 209,		/* PORT25x */
827	210, 211, 212, 213, 214, 215, 216, 217,		/* PORT26x */
828	218, 219, 220, 221, 223, 224, 225, 226,		/* PORT27x */
829	227, 228, 229, 230, 231, 232, 233, 234,		/* PORT28x */
830};
831static const unsigned port_range1_muxvals[] = {
832	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT12x */
833	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT13x */
834	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT14x */
835	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT15x */
836	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT16x */
837	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT17x */
838	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT18x */
839	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT19x */
840	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT20x */
841	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT21x */
842	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT22x */
843	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT23x */
844	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT24x */
845	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT25x */
846	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT26x */
847	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT27x */
848	15, 15, 15, 15, 15, 15, 15, 15,			/* PORT28x */
849};
850static const unsigned xirq_pins[] = {
851	118, 119, 120, 121, 122, 123, 124, 125,		/* XIRQ0-7 */
852	126, 72, 73, 92, 177, 93, 94, 176,		/* XIRQ8-15 */
853	74, 91, 27, 28, 29, 75, 20, 26,			/* XIRQ16-23 */
854};
855static const unsigned xirq_muxvals[] = {
856	14, 14, 14, 14, 14, 14, 14, 14,			/* XIRQ0-7 */
857	14, 14, 14, 14, 14, 14, 14, 14,			/* XIRQ8-15 */
858	14, 14, 14, 14, 14, 14, 14, 14,			/* XIRQ16-23 */
859};
860
861static const struct uniphier_pinctrl_group ph1_ld6b_groups[] = {
862	UNIPHIER_PINCTRL_GROUP(adinter),
863	UNIPHIER_PINCTRL_GROUP(emmc),
864	UNIPHIER_PINCTRL_GROUP(emmc_dat8),
865	UNIPHIER_PINCTRL_GROUP(i2c0),
866	UNIPHIER_PINCTRL_GROUP(i2c1),
867	UNIPHIER_PINCTRL_GROUP(i2c2),
868	UNIPHIER_PINCTRL_GROUP(i2c3),
869	UNIPHIER_PINCTRL_GROUP(nand),
870	UNIPHIER_PINCTRL_GROUP(nand_cs1),
871	UNIPHIER_PINCTRL_GROUP(sd),
872	UNIPHIER_PINCTRL_GROUP(uart0),
873	UNIPHIER_PINCTRL_GROUP(uart0b),
874	UNIPHIER_PINCTRL_GROUP(uart1),
875	UNIPHIER_PINCTRL_GROUP(uart1b),
876	UNIPHIER_PINCTRL_GROUP(uart2),
877	UNIPHIER_PINCTRL_GROUP(uart2b),
878	UNIPHIER_PINCTRL_GROUP(usb0),
879	UNIPHIER_PINCTRL_GROUP(usb1),
880	UNIPHIER_PINCTRL_GROUP(usb2),
881	UNIPHIER_PINCTRL_GROUP(usb3),
882	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range0),
883	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_PORT(port_range1),
884	UNIPHIER_PINCTRL_GROUP_GPIO_RANGE_IRQ(xirq),
885	UNIPHIER_PINCTRL_GROUP_SINGLE(port00, port_range0, 0),
886	UNIPHIER_PINCTRL_GROUP_SINGLE(port01, port_range0, 1),
887	UNIPHIER_PINCTRL_GROUP_SINGLE(port02, port_range0, 2),
888	UNIPHIER_PINCTRL_GROUP_SINGLE(port03, port_range0, 3),
889	UNIPHIER_PINCTRL_GROUP_SINGLE(port04, port_range0, 4),
890	UNIPHIER_PINCTRL_GROUP_SINGLE(port05, port_range0, 5),
891	UNIPHIER_PINCTRL_GROUP_SINGLE(port06, port_range0, 6),
892	UNIPHIER_PINCTRL_GROUP_SINGLE(port07, port_range0, 7),
893	UNIPHIER_PINCTRL_GROUP_SINGLE(port10, port_range0, 8),
894	UNIPHIER_PINCTRL_GROUP_SINGLE(port11, port_range0, 9),
895	UNIPHIER_PINCTRL_GROUP_SINGLE(port12, port_range0, 10),
896	UNIPHIER_PINCTRL_GROUP_SINGLE(port13, port_range0, 11),
897	UNIPHIER_PINCTRL_GROUP_SINGLE(port14, port_range0, 12),
898	UNIPHIER_PINCTRL_GROUP_SINGLE(port15, port_range0, 13),
899	UNIPHIER_PINCTRL_GROUP_SINGLE(port16, port_range0, 14),
900	UNIPHIER_PINCTRL_GROUP_SINGLE(port17, port_range0, 15),
901	UNIPHIER_PINCTRL_GROUP_SINGLE(port20, port_range0, 16),
902	UNIPHIER_PINCTRL_GROUP_SINGLE(port21, port_range0, 17),
903	UNIPHIER_PINCTRL_GROUP_SINGLE(port22, port_range0, 18),
904	UNIPHIER_PINCTRL_GROUP_SINGLE(port23, port_range0, 19),
905	UNIPHIER_PINCTRL_GROUP_SINGLE(port24, port_range0, 20),
906	UNIPHIER_PINCTRL_GROUP_SINGLE(port25, port_range0, 21),
907	UNIPHIER_PINCTRL_GROUP_SINGLE(port26, port_range0, 22),
908	UNIPHIER_PINCTRL_GROUP_SINGLE(port27, port_range0, 23),
909	UNIPHIER_PINCTRL_GROUP_SINGLE(port30, port_range0, 24),
910	UNIPHIER_PINCTRL_GROUP_SINGLE(port31, port_range0, 25),
911	UNIPHIER_PINCTRL_GROUP_SINGLE(port32, port_range0, 26),
912	UNIPHIER_PINCTRL_GROUP_SINGLE(port33, port_range0, 27),
913	UNIPHIER_PINCTRL_GROUP_SINGLE(port34, port_range0, 28),
914	UNIPHIER_PINCTRL_GROUP_SINGLE(port35, port_range0, 29),
915	UNIPHIER_PINCTRL_GROUP_SINGLE(port36, port_range0, 30),
916	UNIPHIER_PINCTRL_GROUP_SINGLE(port37, port_range0, 31),
917	UNIPHIER_PINCTRL_GROUP_SINGLE(port40, port_range0, 32),
918	UNIPHIER_PINCTRL_GROUP_SINGLE(port41, port_range0, 33),
919	UNIPHIER_PINCTRL_GROUP_SINGLE(port42, port_range0, 34),
920	UNIPHIER_PINCTRL_GROUP_SINGLE(port43, port_range0, 35),
921	UNIPHIER_PINCTRL_GROUP_SINGLE(port44, port_range0, 36),
922	UNIPHIER_PINCTRL_GROUP_SINGLE(port45, port_range0, 37),
923	UNIPHIER_PINCTRL_GROUP_SINGLE(port46, port_range0, 38),
924	UNIPHIER_PINCTRL_GROUP_SINGLE(port47, port_range0, 39),
925	UNIPHIER_PINCTRL_GROUP_SINGLE(port50, port_range0, 40),
926	UNIPHIER_PINCTRL_GROUP_SINGLE(port51, port_range0, 41),
927	UNIPHIER_PINCTRL_GROUP_SINGLE(port52, port_range0, 42),
928	UNIPHIER_PINCTRL_GROUP_SINGLE(port53, port_range0, 43),
929	UNIPHIER_PINCTRL_GROUP_SINGLE(port54, port_range0, 44),
930	UNIPHIER_PINCTRL_GROUP_SINGLE(port55, port_range0, 45),
931	UNIPHIER_PINCTRL_GROUP_SINGLE(port56, port_range0, 46),
932	UNIPHIER_PINCTRL_GROUP_SINGLE(port57, port_range0, 47),
933	UNIPHIER_PINCTRL_GROUP_SINGLE(port60, port_range0, 48),
934	UNIPHIER_PINCTRL_GROUP_SINGLE(port61, port_range0, 49),
935	UNIPHIER_PINCTRL_GROUP_SINGLE(port62, port_range0, 50),
936	UNIPHIER_PINCTRL_GROUP_SINGLE(port63, port_range0, 51),
937	UNIPHIER_PINCTRL_GROUP_SINGLE(port64, port_range0, 52),
938	UNIPHIER_PINCTRL_GROUP_SINGLE(port65, port_range0, 53),
939	UNIPHIER_PINCTRL_GROUP_SINGLE(port66, port_range0, 54),
940	UNIPHIER_PINCTRL_GROUP_SINGLE(port67, port_range0, 55),
941	UNIPHIER_PINCTRL_GROUP_SINGLE(port70, port_range0, 56),
942	UNIPHIER_PINCTRL_GROUP_SINGLE(port71, port_range0, 57),
943	UNIPHIER_PINCTRL_GROUP_SINGLE(port72, port_range0, 58),
944	UNIPHIER_PINCTRL_GROUP_SINGLE(port73, port_range0, 59),
945	UNIPHIER_PINCTRL_GROUP_SINGLE(port74, port_range0, 60),
946	UNIPHIER_PINCTRL_GROUP_SINGLE(port75, port_range0, 61),
947	UNIPHIER_PINCTRL_GROUP_SINGLE(port76, port_range0, 62),
948	UNIPHIER_PINCTRL_GROUP_SINGLE(port77, port_range0, 63),
949	UNIPHIER_PINCTRL_GROUP_SINGLE(port80, port_range0, 64),
950	UNIPHIER_PINCTRL_GROUP_SINGLE(port81, port_range0, 65),
951	UNIPHIER_PINCTRL_GROUP_SINGLE(port82, port_range0, 66),
952	UNIPHIER_PINCTRL_GROUP_SINGLE(port83, port_range0, 67),
953	UNIPHIER_PINCTRL_GROUP_SINGLE(port84, port_range0, 68),
954	UNIPHIER_PINCTRL_GROUP_SINGLE(port85, port_range0, 69),
955	UNIPHIER_PINCTRL_GROUP_SINGLE(port86, port_range0, 70),
956	UNIPHIER_PINCTRL_GROUP_SINGLE(port87, port_range0, 71),
957	UNIPHIER_PINCTRL_GROUP_SINGLE(port90, port_range0, 72),
958	UNIPHIER_PINCTRL_GROUP_SINGLE(port91, port_range0, 73),
959	UNIPHIER_PINCTRL_GROUP_SINGLE(port92, port_range0, 74),
960	UNIPHIER_PINCTRL_GROUP_SINGLE(port93, port_range0, 75),
961	UNIPHIER_PINCTRL_GROUP_SINGLE(port94, port_range0, 76),
962	UNIPHIER_PINCTRL_GROUP_SINGLE(port95, port_range0, 77),
963	UNIPHIER_PINCTRL_GROUP_SINGLE(port96, port_range0, 78),
964	UNIPHIER_PINCTRL_GROUP_SINGLE(port97, port_range0, 79),
965	UNIPHIER_PINCTRL_GROUP_SINGLE(port100, port_range0, 80),
966	UNIPHIER_PINCTRL_GROUP_SINGLE(port101, port_range0, 81),
967	UNIPHIER_PINCTRL_GROUP_SINGLE(port102, port_range0, 82),
968	UNIPHIER_PINCTRL_GROUP_SINGLE(port103, port_range0, 83),
969	UNIPHIER_PINCTRL_GROUP_SINGLE(port104, port_range0, 84),
970	UNIPHIER_PINCTRL_GROUP_SINGLE(port105, port_range0, 85),
971	UNIPHIER_PINCTRL_GROUP_SINGLE(port106, port_range0, 86),
972	UNIPHIER_PINCTRL_GROUP_SINGLE(port107, port_range0, 87),
973	UNIPHIER_PINCTRL_GROUP_SINGLE(port120, port_range1, 0),
974	UNIPHIER_PINCTRL_GROUP_SINGLE(port121, port_range1, 1),
975	UNIPHIER_PINCTRL_GROUP_SINGLE(port122, port_range1, 2),
976	UNIPHIER_PINCTRL_GROUP_SINGLE(port123, port_range1, 3),
977	UNIPHIER_PINCTRL_GROUP_SINGLE(port124, port_range1, 4),
978	UNIPHIER_PINCTRL_GROUP_SINGLE(port125, port_range1, 5),
979	UNIPHIER_PINCTRL_GROUP_SINGLE(port126, port_range1, 6),
980	UNIPHIER_PINCTRL_GROUP_SINGLE(port127, port_range1, 7),
981	UNIPHIER_PINCTRL_GROUP_SINGLE(port130, port_range1, 8),
982	UNIPHIER_PINCTRL_GROUP_SINGLE(port131, port_range1, 9),
983	UNIPHIER_PINCTRL_GROUP_SINGLE(port132, port_range1, 10),
984	UNIPHIER_PINCTRL_GROUP_SINGLE(port133, port_range1, 11),
985	UNIPHIER_PINCTRL_GROUP_SINGLE(port134, port_range1, 12),
986	UNIPHIER_PINCTRL_GROUP_SINGLE(port135, port_range1, 13),
987	UNIPHIER_PINCTRL_GROUP_SINGLE(port136, port_range1, 14),
988	UNIPHIER_PINCTRL_GROUP_SINGLE(port137, port_range1, 15),
989	UNIPHIER_PINCTRL_GROUP_SINGLE(port140, port_range1, 16),
990	UNIPHIER_PINCTRL_GROUP_SINGLE(port141, port_range1, 17),
991	UNIPHIER_PINCTRL_GROUP_SINGLE(port142, port_range1, 18),
992	UNIPHIER_PINCTRL_GROUP_SINGLE(port143, port_range1, 19),
993	UNIPHIER_PINCTRL_GROUP_SINGLE(port144, port_range1, 20),
994	UNIPHIER_PINCTRL_GROUP_SINGLE(port145, port_range1, 21),
995	UNIPHIER_PINCTRL_GROUP_SINGLE(port146, port_range1, 22),
996	UNIPHIER_PINCTRL_GROUP_SINGLE(port147, port_range1, 23),
997	UNIPHIER_PINCTRL_GROUP_SINGLE(port150, port_range1, 24),
998	UNIPHIER_PINCTRL_GROUP_SINGLE(port151, port_range1, 25),
999	UNIPHIER_PINCTRL_GROUP_SINGLE(port152, port_range1, 26),
1000	UNIPHIER_PINCTRL_GROUP_SINGLE(port153, port_range1, 27),
1001	UNIPHIER_PINCTRL_GROUP_SINGLE(port154, port_range1, 28),
1002	UNIPHIER_PINCTRL_GROUP_SINGLE(port155, port_range1, 29),
1003	UNIPHIER_PINCTRL_GROUP_SINGLE(port156, port_range1, 30),
1004	UNIPHIER_PINCTRL_GROUP_SINGLE(port157, port_range1, 31),
1005	UNIPHIER_PINCTRL_GROUP_SINGLE(port160, port_range1, 32),
1006	UNIPHIER_PINCTRL_GROUP_SINGLE(port161, port_range1, 33),
1007	UNIPHIER_PINCTRL_GROUP_SINGLE(port162, port_range1, 34),
1008	UNIPHIER_PINCTRL_GROUP_SINGLE(port163, port_range1, 35),
1009	UNIPHIER_PINCTRL_GROUP_SINGLE(port164, port_range1, 36),
1010	UNIPHIER_PINCTRL_GROUP_SINGLE(port165, port_range1, 37),
1011	UNIPHIER_PINCTRL_GROUP_SINGLE(port166, port_range1, 38),
1012	UNIPHIER_PINCTRL_GROUP_SINGLE(port167, port_range1, 39),
1013	UNIPHIER_PINCTRL_GROUP_SINGLE(port170, port_range1, 40),
1014	UNIPHIER_PINCTRL_GROUP_SINGLE(port171, port_range1, 41),
1015	UNIPHIER_PINCTRL_GROUP_SINGLE(port172, port_range1, 42),
1016	UNIPHIER_PINCTRL_GROUP_SINGLE(port173, port_range1, 43),
1017	UNIPHIER_PINCTRL_GROUP_SINGLE(port174, port_range1, 44),
1018	UNIPHIER_PINCTRL_GROUP_SINGLE(port175, port_range1, 45),
1019	UNIPHIER_PINCTRL_GROUP_SINGLE(port176, port_range1, 46),
1020	UNIPHIER_PINCTRL_GROUP_SINGLE(port177, port_range1, 47),
1021	UNIPHIER_PINCTRL_GROUP_SINGLE(port180, port_range1, 48),
1022	UNIPHIER_PINCTRL_GROUP_SINGLE(port181, port_range1, 49),
1023	UNIPHIER_PINCTRL_GROUP_SINGLE(port182, port_range1, 50),
1024	UNIPHIER_PINCTRL_GROUP_SINGLE(port183, port_range1, 51),
1025	UNIPHIER_PINCTRL_GROUP_SINGLE(port184, port_range1, 52),
1026	UNIPHIER_PINCTRL_GROUP_SINGLE(port185, port_range1, 53),
1027	UNIPHIER_PINCTRL_GROUP_SINGLE(port186, port_range1, 54),
1028	UNIPHIER_PINCTRL_GROUP_SINGLE(port187, port_range1, 55),
1029	UNIPHIER_PINCTRL_GROUP_SINGLE(port190, port_range1, 56),
1030	UNIPHIER_PINCTRL_GROUP_SINGLE(port191, port_range1, 57),
1031	UNIPHIER_PINCTRL_GROUP_SINGLE(port192, port_range1, 58),
1032	UNIPHIER_PINCTRL_GROUP_SINGLE(port193, port_range1, 59),
1033	UNIPHIER_PINCTRL_GROUP_SINGLE(port194, port_range1, 60),
1034	UNIPHIER_PINCTRL_GROUP_SINGLE(port195, port_range1, 61),
1035	UNIPHIER_PINCTRL_GROUP_SINGLE(port196, port_range1, 62),
1036	UNIPHIER_PINCTRL_GROUP_SINGLE(port197, port_range1, 63),
1037	UNIPHIER_PINCTRL_GROUP_SINGLE(port200, port_range1, 64),
1038	UNIPHIER_PINCTRL_GROUP_SINGLE(port201, port_range1, 65),
1039	UNIPHIER_PINCTRL_GROUP_SINGLE(port202, port_range1, 66),
1040	UNIPHIER_PINCTRL_GROUP_SINGLE(port203, port_range1, 67),
1041	UNIPHIER_PINCTRL_GROUP_SINGLE(port204, port_range1, 68),
1042	UNIPHIER_PINCTRL_GROUP_SINGLE(port205, port_range1, 69),
1043	UNIPHIER_PINCTRL_GROUP_SINGLE(port206, port_range1, 70),
1044	UNIPHIER_PINCTRL_GROUP_SINGLE(port207, port_range1, 71),
1045	UNIPHIER_PINCTRL_GROUP_SINGLE(port210, port_range1, 72),
1046	UNIPHIER_PINCTRL_GROUP_SINGLE(port211, port_range1, 73),
1047	UNIPHIER_PINCTRL_GROUP_SINGLE(port212, port_range1, 74),
1048	UNIPHIER_PINCTRL_GROUP_SINGLE(port213, port_range1, 75),
1049	UNIPHIER_PINCTRL_GROUP_SINGLE(port214, port_range1, 76),
1050	UNIPHIER_PINCTRL_GROUP_SINGLE(port215, port_range1, 77),
1051	UNIPHIER_PINCTRL_GROUP_SINGLE(port216, port_range1, 78),
1052	UNIPHIER_PINCTRL_GROUP_SINGLE(port217, port_range1, 79),
1053	UNIPHIER_PINCTRL_GROUP_SINGLE(port220, port_range1, 80),
1054	UNIPHIER_PINCTRL_GROUP_SINGLE(port221, port_range1, 81),
1055	UNIPHIER_PINCTRL_GROUP_SINGLE(port222, port_range1, 82),
1056	UNIPHIER_PINCTRL_GROUP_SINGLE(port223, port_range1, 83),
1057	UNIPHIER_PINCTRL_GROUP_SINGLE(port224, port_range1, 84),
1058	UNIPHIER_PINCTRL_GROUP_SINGLE(port225, port_range1, 85),
1059	UNIPHIER_PINCTRL_GROUP_SINGLE(port226, port_range1, 86),
1060	UNIPHIER_PINCTRL_GROUP_SINGLE(port227, port_range1, 87),
1061	UNIPHIER_PINCTRL_GROUP_SINGLE(port230, port_range1, 88),
1062	UNIPHIER_PINCTRL_GROUP_SINGLE(port231, port_range1, 89),
1063	UNIPHIER_PINCTRL_GROUP_SINGLE(port232, port_range1, 90),
1064	UNIPHIER_PINCTRL_GROUP_SINGLE(port233, port_range1, 91),
1065	UNIPHIER_PINCTRL_GROUP_SINGLE(port234, port_range1, 92),
1066	UNIPHIER_PINCTRL_GROUP_SINGLE(port235, port_range1, 93),
1067	UNIPHIER_PINCTRL_GROUP_SINGLE(port236, port_range1, 94),
1068	UNIPHIER_PINCTRL_GROUP_SINGLE(port237, port_range1, 95),
1069	UNIPHIER_PINCTRL_GROUP_SINGLE(port240, port_range1, 96),
1070	UNIPHIER_PINCTRL_GROUP_SINGLE(port241, port_range1, 97),
1071	UNIPHIER_PINCTRL_GROUP_SINGLE(port242, port_range1, 98),
1072	UNIPHIER_PINCTRL_GROUP_SINGLE(port243, port_range1, 99),
1073	UNIPHIER_PINCTRL_GROUP_SINGLE(port244, port_range1, 100),
1074	UNIPHIER_PINCTRL_GROUP_SINGLE(port245, port_range1, 101),
1075	UNIPHIER_PINCTRL_GROUP_SINGLE(port246, port_range1, 102),
1076	UNIPHIER_PINCTRL_GROUP_SINGLE(port247, port_range1, 103),
1077	UNIPHIER_PINCTRL_GROUP_SINGLE(port250, port_range1, 104),
1078	UNIPHIER_PINCTRL_GROUP_SINGLE(port251, port_range1, 105),
1079	UNIPHIER_PINCTRL_GROUP_SINGLE(port252, port_range1, 106),
1080	UNIPHIER_PINCTRL_GROUP_SINGLE(port253, port_range1, 107),
1081	UNIPHIER_PINCTRL_GROUP_SINGLE(port254, port_range1, 108),
1082	UNIPHIER_PINCTRL_GROUP_SINGLE(port255, port_range1, 109),
1083	UNIPHIER_PINCTRL_GROUP_SINGLE(port256, port_range1, 110),
1084	UNIPHIER_PINCTRL_GROUP_SINGLE(port257, port_range1, 111),
1085	UNIPHIER_PINCTRL_GROUP_SINGLE(port260, port_range1, 112),
1086	UNIPHIER_PINCTRL_GROUP_SINGLE(port261, port_range1, 113),
1087	UNIPHIER_PINCTRL_GROUP_SINGLE(port262, port_range1, 114),
1088	UNIPHIER_PINCTRL_GROUP_SINGLE(port263, port_range1, 115),
1089	UNIPHIER_PINCTRL_GROUP_SINGLE(port264, port_range1, 116),
1090	UNIPHIER_PINCTRL_GROUP_SINGLE(port265, port_range1, 117),
1091	UNIPHIER_PINCTRL_GROUP_SINGLE(port266, port_range1, 118),
1092	UNIPHIER_PINCTRL_GROUP_SINGLE(port267, port_range1, 119),
1093	UNIPHIER_PINCTRL_GROUP_SINGLE(port270, port_range1, 120),
1094	UNIPHIER_PINCTRL_GROUP_SINGLE(port271, port_range1, 121),
1095	UNIPHIER_PINCTRL_GROUP_SINGLE(port272, port_range1, 122),
1096	UNIPHIER_PINCTRL_GROUP_SINGLE(port273, port_range1, 123),
1097	UNIPHIER_PINCTRL_GROUP_SINGLE(port274, port_range1, 124),
1098	UNIPHIER_PINCTRL_GROUP_SINGLE(port275, port_range1, 125),
1099	UNIPHIER_PINCTRL_GROUP_SINGLE(port276, port_range1, 126),
1100	UNIPHIER_PINCTRL_GROUP_SINGLE(port277, port_range1, 127),
1101	UNIPHIER_PINCTRL_GROUP_SINGLE(port280, port_range1, 128),
1102	UNIPHIER_PINCTRL_GROUP_SINGLE(port281, port_range1, 129),
1103	UNIPHIER_PINCTRL_GROUP_SINGLE(port282, port_range1, 130),
1104	UNIPHIER_PINCTRL_GROUP_SINGLE(port283, port_range1, 131),
1105	UNIPHIER_PINCTRL_GROUP_SINGLE(port284, port_range1, 132),
1106	UNIPHIER_PINCTRL_GROUP_SINGLE(port285, port_range1, 133),
1107	UNIPHIER_PINCTRL_GROUP_SINGLE(port286, port_range1, 134),
1108	UNIPHIER_PINCTRL_GROUP_SINGLE(port287, port_range1, 135),
1109	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq0, xirq, 0),
1110	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq1, xirq, 1),
1111	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq2, xirq, 2),
1112	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq3, xirq, 3),
1113	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq4, xirq, 4),
1114	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq5, xirq, 5),
1115	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq6, xirq, 6),
1116	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq7, xirq, 7),
1117	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq8, xirq, 8),
1118	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq9, xirq, 9),
1119	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq10, xirq, 10),
1120	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq11, xirq, 11),
1121	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq12, xirq, 12),
1122	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq13, xirq, 13),
1123	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq14, xirq, 14),
1124	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq15, xirq, 15),
1125	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq16, xirq, 16),
1126	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq17, xirq, 17),
1127	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq18, xirq, 18),
1128	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq19, xirq, 19),
1129	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq20, xirq, 20),
1130	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq21, xirq, 21),
1131	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq22, xirq, 22),
1132	UNIPHIER_PINCTRL_GROUP_SINGLE(xirq23, xirq, 23),
1133};
1134
1135static const char * const adinter_groups[] = {"adinter"};
1136static const char * const emmc_groups[] = {"emmc", "emmc_dat8"};
1137static const char * const i2c0_groups[] = {"i2c0"};
1138static const char * const i2c1_groups[] = {"i2c1"};
1139static const char * const i2c2_groups[] = {"i2c2"};
1140static const char * const i2c3_groups[] = {"i2c3"};
1141static const char * const nand_groups[] = {"nand", "nand_cs1"};
1142static const char * const sd_groups[] = {"sd"};
1143static const char * const uart0_groups[] = {"uart0", "uart0b"};
1144static const char * const uart1_groups[] = {"uart1", "uart1b"};
1145static const char * const uart2_groups[] = {"uart2", "uart2b"};
1146static const char * const usb0_groups[] = {"usb0"};
1147static const char * const usb1_groups[] = {"usb1"};
1148static const char * const usb2_groups[] = {"usb2"};
1149static const char * const usb3_groups[] = {"usb3"};
1150static const char * const port_groups[] = {
1151	"port00",  "port01",  "port02",  "port03",
1152	"port04",  "port05",  "port06",  "port07",
1153	"port10",  "port11",  "port12",  "port13",
1154	"port14",  "port15",  "port16",  "port17",
1155	"port20",  "port21",  "port22",  "port23",
1156	"port24",  "port25",  "port26",  "port27",
1157	"port30",  "port31",  "port32",  "port33",
1158	"port34",  "port35",  "port36",  "port37",
1159	"port40",  "port41",  "port42",  "port43",
1160	"port44",  "port45",  "port46",  "port47",
1161	"port50",  "port51",  "port52",  "port53",
1162	"port54",  "port55",  "port56",  "port57",
1163	"port60",  "port61",  "port62",  "port63",
1164	"port64",  "port65",  "port66",  "port67",
1165	"port70",  "port71",  "port72",  "port73",
1166	"port74",  "port75",  "port76",  "port77",
1167	"port80",  "port81",  "port82",  "port83",
1168	"port84",  "port85",  "port86",  "port87",
1169	"port90",  "port91",  "port92",  "port93",
1170	"port94",  "port95",  "port96",  "port97",
1171	"port100", "port101", "port102", "port103",
1172	"port104", "port105", "port106", "port107",
1173	/* port110-117 missing */
1174	"port120", "port121", "port122", "port123",
1175	"port124", "port125", "port126", "port127",
1176	"port130", "port131", "port132", "port133",
1177	"port134", "port135", "port136", "port137",
1178	"port140", "port141", "port142", "port143",
1179	"port144", "port145", "port146", "port147",
1180	"port150", "port151", "port152", "port153",
1181	"port154", "port155", "port156", "port157",
1182	"port160", "port161", "port162", "port163",
1183	"port164", "port165", "port166", "port167",
1184	"port170", "port171", "port172", "port173",
1185	"port174", "port175", "port176", "port177",
1186	"port180", "port181", "port182", "port183",
1187	"port184", "port185", "port186", "port187",
1188	"port190", "port191", "port192", "port193",
1189	"port194", "port195", "port196", "port197",
1190	"port200", "port201", "port202", "port203",
1191	"port204", "port205", "port206", "port207",
1192	"port210", "port211", "port212", "port213",
1193	"port214", "port215", "port216", "port217",
1194	"port220", "port221", "port222", "port223",
1195	"port224", "port225", "port226", "port227",
1196	"port230", "port231", "port232", "port233",
1197	"port234", "port235", "port236", "port237",
1198	"port240", "port241", "port242", "port243",
1199	"port244", "port245", "port246", "port247",
1200	"port250", "port251", "port252", "port253",
1201	"port254", "port255", "port256", "port257",
1202	"port260", "port261", "port262", "port263",
1203	"port264", "port265", "port266", "port267",
1204	"port270", "port271", "port272", "port273",
1205	"port274", "port275", "port276", "port277",
1206	"port280", "port281", "port282", "port283",
1207	"port284", "port285", "port286", "port287",
1208};
1209static const char * const xirq_groups[] = {
1210	"xirq0",  "xirq1",  "xirq2",  "xirq3",
1211	"xirq4",  "xirq5",  "xirq6",  "xirq7",
1212	"xirq8",  "xirq9",  "xirq10", "xirq11",
1213	"xirq12", "xirq13", "xirq14", "xirq15",
1214	"xirq16", "xirq17", "xirq18", "xirq19",
1215	"xirq20", "xirq21", "xirq22", "xirq23",
1216};
1217
1218static const struct uniphier_pinmux_function ph1_ld6b_functions[] = {
1219	UNIPHIER_PINMUX_FUNCTION(adinter), /* Achip-Dchip interconnect */
1220	UNIPHIER_PINMUX_FUNCTION(emmc),
1221	UNIPHIER_PINMUX_FUNCTION(i2c0),
1222	UNIPHIER_PINMUX_FUNCTION(i2c1),
1223	UNIPHIER_PINMUX_FUNCTION(i2c2),
1224	UNIPHIER_PINMUX_FUNCTION(i2c3),
1225	UNIPHIER_PINMUX_FUNCTION(nand),
1226	UNIPHIER_PINMUX_FUNCTION(sd),
1227	UNIPHIER_PINMUX_FUNCTION(uart0),
1228	UNIPHIER_PINMUX_FUNCTION(uart1),
1229	UNIPHIER_PINMUX_FUNCTION(uart2),
1230	UNIPHIER_PINMUX_FUNCTION(usb0),
1231	UNIPHIER_PINMUX_FUNCTION(usb1),
1232	UNIPHIER_PINMUX_FUNCTION(usb2),
1233	UNIPHIER_PINMUX_FUNCTION(usb3),
1234	UNIPHIER_PINMUX_FUNCTION(port),
1235	UNIPHIER_PINMUX_FUNCTION(xirq),
1236};
1237
1238static struct uniphier_pinctrl_socdata ph1_ld6b_pindata = {
1239	.groups = ph1_ld6b_groups,
1240	.groups_count = ARRAY_SIZE(ph1_ld6b_groups),
1241	.functions = ph1_ld6b_functions,
1242	.functions_count = ARRAY_SIZE(ph1_ld6b_functions),
1243	.mux_bits = 8,
1244	.reg_stride = 4,
1245	.load_pinctrl = false,
1246};
1247
1248static struct pinctrl_desc ph1_ld6b_pinctrl_desc = {
1249	.name = DRIVER_NAME,
1250	.pins = ph1_ld6b_pins,
1251	.npins = ARRAY_SIZE(ph1_ld6b_pins),
1252	.owner = THIS_MODULE,
1253};
1254
1255static int ph1_ld6b_pinctrl_probe(struct platform_device *pdev)
1256{
1257	return uniphier_pinctrl_probe(pdev, &ph1_ld6b_pinctrl_desc,
1258				      &ph1_ld6b_pindata);
1259}
1260
1261static const struct of_device_id ph1_ld6b_pinctrl_match[] = {
1262	{ .compatible = "socionext,ph1-ld6b-pinctrl" },
1263	{ /* sentinel */ }
1264};
1265MODULE_DEVICE_TABLE(of, ph1_ld6b_pinctrl_match);
1266
1267static struct platform_driver ph1_ld6b_pinctrl_driver = {
1268	.probe = ph1_ld6b_pinctrl_probe,
1269	.remove = uniphier_pinctrl_remove,
1270	.driver = {
1271		.name = DRIVER_NAME,
1272		.of_match_table = ph1_ld6b_pinctrl_match,
1273	},
1274};
1275module_platform_driver(ph1_ld6b_pinctrl_driver);
1276
1277MODULE_AUTHOR("Masahiro Yamada <yamada.masahiro@socionext.com>");
1278MODULE_DESCRIPTION("UniPhier PH1-LD6b pinctrl driver");
1279MODULE_LICENSE("GPL");
1280