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