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