linux/drivers/pinctrl/sh-pfc/pfc-sh7720.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0
   2/*
   3 * SH7720 Pinmux
   4 *
   5 *  Copyright (C) 2008  Magnus Damm
   6 */
   7
   8#include <linux/kernel.h>
   9#include <linux/gpio.h>
  10#include <cpu/sh7720.h>
  11
  12#include "sh_pfc.h"
  13
  14enum {
  15        PINMUX_RESERVED = 0,
  16
  17        PINMUX_DATA_BEGIN,
  18        PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
  19        PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA,
  20        PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
  21        PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA,
  22        PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
  23        PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA,
  24        PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
  25        PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA,
  26        PTE6_DATA, PTE5_DATA, PTE4_DATA,
  27        PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA,
  28        PTF6_DATA, PTF5_DATA, PTF4_DATA,
  29        PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA,
  30        PTG6_DATA, PTG5_DATA, PTG4_DATA,
  31        PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA,
  32        PTH6_DATA, PTH5_DATA, PTH4_DATA,
  33        PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA,
  34        PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
  35        PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA,
  36        PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA,
  37        PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA, PTL3_DATA,
  38        PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
  39        PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA,
  40        PTP4_DATA, PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA,
  41        PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
  42        PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA,
  43        PTS4_DATA, PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA,
  44        PTT4_DATA, PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA,
  45        PTU4_DATA, PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA,
  46        PTV4_DATA, PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA,
  47        PINMUX_DATA_END,
  48
  49        PINMUX_INPUT_BEGIN,
  50        PTA7_IN, PTA6_IN, PTA5_IN, PTA4_IN,
  51        PTA3_IN, PTA2_IN, PTA1_IN, PTA0_IN,
  52        PTB7_IN, PTB6_IN, PTB5_IN, PTB4_IN,
  53        PTB3_IN, PTB2_IN, PTB1_IN, PTB0_IN,
  54        PTC7_IN, PTC6_IN, PTC5_IN, PTC4_IN,
  55        PTC3_IN, PTC2_IN, PTC1_IN, PTC0_IN,
  56        PTD7_IN, PTD6_IN, PTD5_IN, PTD4_IN,
  57        PTD3_IN, PTD2_IN, PTD1_IN, PTD0_IN,
  58        PTE6_IN, PTE5_IN, PTE4_IN,
  59        PTE3_IN, PTE2_IN, PTE1_IN, PTE0_IN,
  60        PTF6_IN, PTF5_IN, PTF4_IN,
  61        PTF3_IN, PTF2_IN, PTF1_IN, PTF0_IN,
  62        PTG6_IN, PTG5_IN, PTG4_IN,
  63        PTG3_IN, PTG2_IN, PTG1_IN, PTG0_IN,
  64        PTH6_IN, PTH5_IN, PTH4_IN,
  65        PTH3_IN, PTH2_IN, PTH1_IN, PTH0_IN,
  66        PTJ6_IN, PTJ5_IN, PTJ4_IN,
  67        PTJ3_IN, PTJ2_IN, PTJ1_IN, PTJ0_IN,
  68        PTK3_IN, PTK2_IN, PTK1_IN, PTK0_IN,
  69        PTL7_IN, PTL6_IN, PTL5_IN, PTL4_IN, PTL3_IN,
  70        PTM7_IN, PTM6_IN, PTM5_IN, PTM4_IN,
  71        PTM3_IN, PTM2_IN, PTM1_IN, PTM0_IN,
  72        PTP4_IN, PTP3_IN, PTP2_IN, PTP1_IN, PTP0_IN,
  73        PTR7_IN, PTR6_IN, PTR5_IN, PTR4_IN,
  74        PTR3_IN, PTR2_IN, PTR1_IN, PTR0_IN,
  75        PTS4_IN, PTS3_IN, PTS2_IN, PTS1_IN, PTS0_IN,
  76        PTT4_IN, PTT3_IN, PTT2_IN, PTT1_IN, PTT0_IN,
  77        PTU4_IN, PTU3_IN, PTU2_IN, PTU1_IN, PTU0_IN,
  78        PTV4_IN, PTV3_IN, PTV2_IN, PTV1_IN, PTV0_IN,
  79        PINMUX_INPUT_END,
  80
  81        PINMUX_OUTPUT_BEGIN,
  82        PTA7_OUT, PTA6_OUT, PTA5_OUT, PTA4_OUT,
  83        PTA3_OUT, PTA2_OUT, PTA1_OUT, PTA0_OUT,
  84        PTB7_OUT, PTB6_OUT, PTB5_OUT, PTB4_OUT,
  85        PTB3_OUT, PTB2_OUT, PTB1_OUT, PTB0_OUT,
  86        PTC7_OUT, PTC6_OUT, PTC5_OUT, PTC4_OUT,
  87        PTC3_OUT, PTC2_OUT, PTC1_OUT, PTC0_OUT,
  88        PTD7_OUT, PTD6_OUT, PTD5_OUT, PTD4_OUT,
  89        PTD3_OUT, PTD2_OUT, PTD1_OUT, PTD0_OUT,
  90        PTE4_OUT, PTE3_OUT, PTE2_OUT, PTE1_OUT, PTE0_OUT,
  91        PTF0_OUT,
  92        PTG6_OUT, PTG5_OUT, PTG4_OUT,
  93        PTG3_OUT, PTG2_OUT, PTG1_OUT, PTG0_OUT,
  94        PTH6_OUT, PTH5_OUT, PTH4_OUT,
  95        PTH3_OUT, PTH2_OUT, PTH1_OUT, PTH0_OUT,
  96        PTJ6_OUT, PTJ5_OUT, PTJ4_OUT,
  97        PTJ3_OUT, PTJ2_OUT, PTJ1_OUT, PTJ0_OUT,
  98        PTK3_OUT, PTK2_OUT, PTK1_OUT, PTK0_OUT,
  99        PTL7_OUT, PTL6_OUT, PTL5_OUT, PTL4_OUT, PTL3_OUT,
 100        PTM7_OUT, PTM6_OUT, PTM5_OUT, PTM4_OUT,
 101        PTM3_OUT, PTM2_OUT, PTM1_OUT, PTM0_OUT,
 102        PTP4_OUT, PTP3_OUT, PTP2_OUT, PTP1_OUT, PTP0_OUT,
 103        PTR7_OUT, PTR6_OUT, PTR5_OUT, PTR4_OUT,
 104        PTR3_OUT, PTR2_OUT, PTR1_OUT, PTR0_OUT,
 105        PTS4_OUT, PTS3_OUT, PTS2_OUT, PTS1_OUT, PTS0_OUT,
 106        PTT4_OUT, PTT3_OUT, PTT2_OUT, PTT1_OUT, PTT0_OUT,
 107        PTU4_OUT, PTU3_OUT, PTU2_OUT, PTU1_OUT, PTU0_OUT,
 108        PTV4_OUT, PTV3_OUT, PTV2_OUT, PTV1_OUT, PTV0_OUT,
 109        PINMUX_OUTPUT_END,
 110
 111        PINMUX_FUNCTION_BEGIN,
 112        PTA7_FN, PTA6_FN, PTA5_FN, PTA4_FN,
 113        PTA3_FN, PTA2_FN, PTA1_FN, PTA0_FN,
 114        PTB7_FN, PTB6_FN, PTB5_FN, PTB4_FN,
 115        PTB3_FN, PTB2_FN, PTB1_FN, PTB0_FN,
 116        PTC7_FN, PTC6_FN, PTC5_FN, PTC4_FN,
 117        PTC3_FN, PTC2_FN, PTC1_FN, PTC0_FN,
 118        PTD7_FN, PTD6_FN, PTD5_FN, PTD4_FN,
 119        PTD3_FN, PTD2_FN, PTD1_FN, PTD0_FN,
 120        PTE6_FN, PTE5_FN, PTE4_FN,
 121        PTE3_FN, PTE2_FN, PTE1_FN, PTE0_FN,
 122        PTF6_FN, PTF5_FN, PTF4_FN,
 123        PTF3_FN, PTF2_FN, PTF1_FN, PTF0_FN,
 124        PTG6_FN, PTG5_FN, PTG4_FN,
 125        PTG3_FN, PTG2_FN, PTG1_FN, PTG0_FN,
 126        PTH6_FN, PTH5_FN, PTH4_FN,
 127        PTH3_FN, PTH2_FN, PTH1_FN, PTH0_FN,
 128        PTJ6_FN, PTJ5_FN, PTJ4_FN,
 129        PTJ3_FN, PTJ2_FN, PTJ1_FN, PTJ0_FN,
 130        PTK3_FN, PTK2_FN, PTK1_FN, PTK0_FN,
 131        PTL7_FN, PTL6_FN, PTL5_FN, PTL4_FN, PTL3_FN,
 132        PTM7_FN, PTM6_FN, PTM5_FN, PTM4_FN,
 133        PTM3_FN, PTM2_FN, PTM1_FN, PTM0_FN,
 134        PTP4_FN, PTP3_FN, PTP2_FN, PTP1_FN, PTP0_FN,
 135        PTR7_FN, PTR6_FN, PTR5_FN, PTR4_FN,
 136        PTR3_FN, PTR2_FN, PTR1_FN, PTR0_FN,
 137        PTS4_FN, PTS3_FN, PTS2_FN, PTS1_FN, PTS0_FN,
 138        PTT4_FN, PTT3_FN, PTT2_FN, PTT1_FN, PTT0_FN,
 139        PTU4_FN, PTU3_FN, PTU2_FN, PTU1_FN, PTU0_FN,
 140        PTV4_FN, PTV3_FN, PTV2_FN, PTV1_FN, PTV0_FN,
 141
 142        PSELA_1_0_00, PSELA_1_0_01, PSELA_1_0_10,
 143        PSELA_3_2_00, PSELA_3_2_01, PSELA_3_2_10, PSELA_3_2_11,
 144        PSELA_5_4_00, PSELA_5_4_01, PSELA_5_4_10, PSELA_5_4_11,
 145        PSELA_7_6_00, PSELA_7_6_01, PSELA_7_6_10,
 146        PSELA_9_8_00, PSELA_9_8_01, PSELA_9_8_10,
 147        PSELA_11_10_00, PSELA_11_10_01, PSELA_11_10_10,
 148        PSELA_13_12_00, PSELA_13_12_10,
 149        PSELA_15_14_00, PSELA_15_14_10,
 150        PSELB_9_8_00, PSELB_9_8_11,
 151        PSELB_11_10_00, PSELB_11_10_01, PSELB_11_10_10, PSELB_11_10_11,
 152        PSELB_13_12_00, PSELB_13_12_01, PSELB_13_12_10, PSELB_13_12_11,
 153        PSELB_15_14_00, PSELB_15_14_11,
 154        PSELC_9_8_00, PSELC_9_8_10,
 155        PSELC_11_10_00, PSELC_11_10_10,
 156        PSELC_13_12_00, PSELC_13_12_01, PSELC_13_12_10,
 157        PSELC_15_14_00, PSELC_15_14_01, PSELC_15_14_10,
 158        PSELD_1_0_00, PSELD_1_0_10,
 159        PSELD_11_10_00, PSELD_11_10_01,
 160        PSELD_15_14_00, PSELD_15_14_01, PSELD_15_14_10,
 161        PINMUX_FUNCTION_END,
 162
 163        PINMUX_MARK_BEGIN,
 164        D31_MARK, D30_MARK, D29_MARK, D28_MARK,
 165        D27_MARK, D26_MARK, D25_MARK, D24_MARK,
 166        D23_MARK, D22_MARK, D21_MARK, D20_MARK,
 167        D19_MARK, D18_MARK, D17_MARK, D16_MARK,
 168        IOIS16_MARK, RAS_MARK, CAS_MARK, CKE_MARK,
 169        CS5B_CE1A_MARK, CS6B_CE1B_MARK,
 170        A25_MARK, A24_MARK, A23_MARK, A22_MARK,
 171        A21_MARK, A20_MARK, A19_MARK, A0_MARK,
 172        REFOUT_MARK, IRQOUT_MARK,
 173        LCD_DATA15_MARK, LCD_DATA14_MARK,
 174        LCD_DATA13_MARK, LCD_DATA12_MARK,
 175        LCD_DATA11_MARK, LCD_DATA10_MARK,
 176        LCD_DATA9_MARK, LCD_DATA8_MARK,
 177        LCD_DATA7_MARK, LCD_DATA6_MARK,
 178        LCD_DATA5_MARK, LCD_DATA4_MARK,
 179        LCD_DATA3_MARK, LCD_DATA2_MARK,
 180        LCD_DATA1_MARK, LCD_DATA0_MARK,
 181        LCD_M_DISP_MARK,
 182        LCD_CL1_MARK, LCD_CL2_MARK,
 183        LCD_DON_MARK, LCD_FLM_MARK,
 184        LCD_VEPWC_MARK, LCD_VCPWC_MARK,
 185        AFE_RXIN_MARK, AFE_RDET_MARK,
 186        AFE_FS_MARK, AFE_TXOUT_MARK,
 187        AFE_SCLK_MARK, AFE_RLYCNT_MARK,
 188        AFE_HC1_MARK,
 189        IIC_SCL_MARK, IIC_SDA_MARK,
 190        DA1_MARK, DA0_MARK,
 191        AN3_MARK, AN2_MARK, AN1_MARK, AN0_MARK, ADTRG_MARK,
 192        USB1D_RCV_MARK, USB1D_TXSE0_MARK,
 193        USB1D_TXDPLS_MARK, USB1D_DMNS_MARK,
 194        USB1D_DPLS_MARK, USB1D_SPEED_MARK,
 195        USB1D_TXENL_MARK,
 196        USB2_PWR_EN_MARK, USB1_PWR_EN_USBF_UPLUP_MARK, USB1D_SUSPEND_MARK,
 197        IRQ5_MARK, IRQ4_MARK,
 198        IRQ3_IRL3_MARK, IRQ2_IRL2_MARK,
 199        IRQ1_IRL1_MARK, IRQ0_IRL0_MARK,
 200        PCC_REG_MARK, PCC_DRV_MARK,
 201        PCC_BVD2_MARK, PCC_BVD1_MARK,
 202        PCC_CD2_MARK, PCC_CD1_MARK,
 203        PCC_RESET_MARK, PCC_RDY_MARK,
 204        PCC_VS2_MARK, PCC_VS1_MARK,
 205        AUDATA3_MARK, AUDATA2_MARK, AUDATA1_MARK, AUDATA0_MARK,
 206        AUDCK_MARK, AUDSYNC_MARK, ASEBRKAK_MARK, TRST_MARK,
 207        TMS_MARK, TDO_MARK, TDI_MARK, TCK_MARK,
 208        DACK1_MARK, DREQ1_MARK, DACK0_MARK, DREQ0_MARK,
 209        TEND1_MARK, TEND0_MARK,
 210        SIOF0_SYNC_MARK, SIOF0_MCLK_MARK,
 211        SIOF0_TXD_MARK, SIOF0_RXD_MARK,
 212        SIOF0_SCK_MARK,
 213        SIOF1_SYNC_MARK, SIOF1_MCLK_MARK,
 214        SIOF1_TXD_MARK, SIOF1_RXD_MARK,
 215        SIOF1_SCK_MARK,
 216        SCIF0_TXD_MARK, SCIF0_RXD_MARK,
 217        SCIF0_RTS_MARK, SCIF0_CTS_MARK, SCIF0_SCK_MARK,
 218        SCIF1_TXD_MARK, SCIF1_RXD_MARK,
 219        SCIF1_RTS_MARK, SCIF1_CTS_MARK, SCIF1_SCK_MARK,
 220        TPU_TO1_MARK, TPU_TO0_MARK,
 221        TPU_TI3B_MARK, TPU_TI3A_MARK,
 222        TPU_TI2B_MARK, TPU_TI2A_MARK,
 223        TPU_TO3_MARK, TPU_TO2_MARK,
 224        SIM_D_MARK, SIM_CLK_MARK, SIM_RST_MARK,
 225        MMC_DAT_MARK, MMC_CMD_MARK,
 226        MMC_CLK_MARK, MMC_VDDON_MARK,
 227        MMC_ODMOD_MARK,
 228        STATUS0_MARK, STATUS1_MARK,
 229        PINMUX_MARK_END,
 230};
 231
 232static const u16 pinmux_data[] = {
 233        /* PTA GPIO */
 234        PINMUX_DATA(PTA7_DATA, PTA7_IN, PTA7_OUT),
 235        PINMUX_DATA(PTA6_DATA, PTA6_IN, PTA6_OUT),
 236        PINMUX_DATA(PTA5_DATA, PTA5_IN, PTA5_OUT),
 237        PINMUX_DATA(PTA4_DATA, PTA4_IN, PTA4_OUT),
 238        PINMUX_DATA(PTA3_DATA, PTA3_IN, PTA3_OUT),
 239        PINMUX_DATA(PTA2_DATA, PTA2_IN, PTA2_OUT),
 240        PINMUX_DATA(PTA1_DATA, PTA1_IN, PTA1_OUT),
 241        PINMUX_DATA(PTA0_DATA, PTA0_IN, PTA0_OUT),
 242
 243        /* PTB GPIO */
 244        PINMUX_DATA(PTB7_DATA, PTB7_IN, PTB7_OUT),
 245        PINMUX_DATA(PTB6_DATA, PTB6_IN, PTB6_OUT),
 246        PINMUX_DATA(PTB5_DATA, PTB5_IN, PTB5_OUT),
 247        PINMUX_DATA(PTB4_DATA, PTB4_IN, PTB4_OUT),
 248        PINMUX_DATA(PTB3_DATA, PTB3_IN, PTB3_OUT),
 249        PINMUX_DATA(PTB2_DATA, PTB2_IN, PTB2_OUT),
 250        PINMUX_DATA(PTB1_DATA, PTB1_IN, PTB1_OUT),
 251        PINMUX_DATA(PTB0_DATA, PTB0_IN, PTB0_OUT),
 252
 253        /* PTC GPIO */
 254        PINMUX_DATA(PTC7_DATA, PTC7_IN, PTC7_OUT),
 255        PINMUX_DATA(PTC6_DATA, PTC6_IN, PTC6_OUT),
 256        PINMUX_DATA(PTC5_DATA, PTC5_IN, PTC5_OUT),
 257        PINMUX_DATA(PTC4_DATA, PTC4_IN, PTC4_OUT),
 258        PINMUX_DATA(PTC3_DATA, PTC3_IN, PTC3_OUT),
 259        PINMUX_DATA(PTC2_DATA, PTC2_IN, PTC2_OUT),
 260        PINMUX_DATA(PTC1_DATA, PTC1_IN, PTC1_OUT),
 261        PINMUX_DATA(PTC0_DATA, PTC0_IN, PTC0_OUT),
 262
 263        /* PTD GPIO */
 264        PINMUX_DATA(PTD7_DATA, PTD7_IN, PTD7_OUT),
 265        PINMUX_DATA(PTD6_DATA, PTD6_IN, PTD6_OUT),
 266        PINMUX_DATA(PTD5_DATA, PTD5_IN, PTD5_OUT),
 267        PINMUX_DATA(PTD4_DATA, PTD4_IN, PTD4_OUT),
 268        PINMUX_DATA(PTD3_DATA, PTD3_IN, PTD3_OUT),
 269        PINMUX_DATA(PTD2_DATA, PTD2_IN, PTD2_OUT),
 270        PINMUX_DATA(PTD1_DATA, PTD1_IN, PTD1_OUT),
 271        PINMUX_DATA(PTD0_DATA, PTD0_IN, PTD0_OUT),
 272
 273        /* PTE GPIO */
 274        PINMUX_DATA(PTE6_DATA, PTE6_IN),
 275        PINMUX_DATA(PTE5_DATA, PTE5_IN),
 276        PINMUX_DATA(PTE4_DATA, PTE4_IN, PTE4_OUT),
 277        PINMUX_DATA(PTE3_DATA, PTE3_IN, PTE3_OUT),
 278        PINMUX_DATA(PTE2_DATA, PTE2_IN, PTE2_OUT),
 279        PINMUX_DATA(PTE1_DATA, PTE1_IN, PTE1_OUT),
 280        PINMUX_DATA(PTE0_DATA, PTE0_IN, PTE0_OUT),
 281
 282        /* PTF GPIO */
 283        PINMUX_DATA(PTF6_DATA, PTF6_IN),
 284        PINMUX_DATA(PTF5_DATA, PTF5_IN),
 285        PINMUX_DATA(PTF4_DATA, PTF4_IN),
 286        PINMUX_DATA(PTF3_DATA, PTF3_IN),
 287        PINMUX_DATA(PTF2_DATA, PTF2_IN),
 288        PINMUX_DATA(PTF1_DATA, PTF1_IN),
 289        PINMUX_DATA(PTF0_DATA, PTF0_IN, PTF0_OUT),
 290
 291        /* PTG GPIO */
 292        PINMUX_DATA(PTG6_DATA, PTG6_IN, PTG6_OUT),
 293        PINMUX_DATA(PTG5_DATA, PTG5_IN, PTG5_OUT),
 294        PINMUX_DATA(PTG4_DATA, PTG4_IN, PTG4_OUT),
 295        PINMUX_DATA(PTG3_DATA, PTG3_IN, PTG3_OUT),
 296        PINMUX_DATA(PTG2_DATA, PTG2_IN, PTG2_OUT),
 297        PINMUX_DATA(PTG1_DATA, PTG1_IN, PTG1_OUT),
 298        PINMUX_DATA(PTG0_DATA, PTG0_IN, PTG0_OUT),
 299
 300        /* PTH GPIO */
 301        PINMUX_DATA(PTH6_DATA, PTH6_IN, PTH6_OUT),
 302        PINMUX_DATA(PTH5_DATA, PTH5_IN, PTH5_OUT),
 303        PINMUX_DATA(PTH4_DATA, PTH4_IN, PTH4_OUT),
 304        PINMUX_DATA(PTH3_DATA, PTH3_IN, PTH3_OUT),
 305        PINMUX_DATA(PTH2_DATA, PTH2_IN, PTH2_OUT),
 306        PINMUX_DATA(PTH1_DATA, PTH1_IN, PTH1_OUT),
 307        PINMUX_DATA(PTH0_DATA, PTH0_IN, PTH0_OUT),
 308
 309        /* PTJ GPIO */
 310        PINMUX_DATA(PTJ6_DATA, PTJ6_IN, PTJ6_OUT),
 311        PINMUX_DATA(PTJ5_DATA, PTJ5_IN, PTJ5_OUT),
 312        PINMUX_DATA(PTJ4_DATA, PTJ4_IN, PTJ4_OUT),
 313        PINMUX_DATA(PTJ3_DATA, PTJ3_IN, PTJ3_OUT),
 314        PINMUX_DATA(PTJ2_DATA, PTJ2_IN, PTJ2_OUT),
 315        PINMUX_DATA(PTJ1_DATA, PTJ1_IN, PTJ1_OUT),
 316        PINMUX_DATA(PTJ0_DATA, PTJ0_IN, PTJ0_OUT),
 317
 318        /* PTK GPIO */
 319        PINMUX_DATA(PTK3_DATA, PTK3_IN, PTK3_OUT),
 320        PINMUX_DATA(PTK2_DATA, PTK2_IN, PTK2_OUT),
 321        PINMUX_DATA(PTK1_DATA, PTK1_IN, PTK1_OUT),
 322        PINMUX_DATA(PTK0_DATA, PTK0_IN, PTK0_OUT),
 323
 324        /* PTL GPIO */
 325        PINMUX_DATA(PTL7_DATA, PTL7_IN, PTL7_OUT),
 326        PINMUX_DATA(PTL6_DATA, PTL6_IN, PTL6_OUT),
 327        PINMUX_DATA(PTL5_DATA, PTL5_IN, PTL5_OUT),
 328        PINMUX_DATA(PTL4_DATA, PTL4_IN, PTL4_OUT),
 329        PINMUX_DATA(PTL3_DATA, PTL3_IN, PTL3_OUT),
 330
 331        /* PTM GPIO */
 332        PINMUX_DATA(PTM7_DATA, PTM7_IN, PTM7_OUT),
 333        PINMUX_DATA(PTM6_DATA, PTM6_IN, PTM6_OUT),
 334        PINMUX_DATA(PTM5_DATA, PTM5_IN, PTM5_OUT),
 335        PINMUX_DATA(PTM4_DATA, PTM4_IN, PTM4_OUT),
 336        PINMUX_DATA(PTM3_DATA, PTM3_IN, PTM3_OUT),
 337        PINMUX_DATA(PTM2_DATA, PTM2_IN, PTM2_OUT),
 338        PINMUX_DATA(PTM1_DATA, PTM1_IN, PTM1_OUT),
 339        PINMUX_DATA(PTM0_DATA, PTM0_IN, PTM0_OUT),
 340
 341        /* PTP GPIO */
 342        PINMUX_DATA(PTP4_DATA, PTP4_IN, PTP4_OUT),
 343        PINMUX_DATA(PTP3_DATA, PTP3_IN, PTP3_OUT),
 344        PINMUX_DATA(PTP2_DATA, PTP2_IN, PTP2_OUT),
 345        PINMUX_DATA(PTP1_DATA, PTP1_IN, PTP1_OUT),
 346        PINMUX_DATA(PTP0_DATA, PTP0_IN, PTP0_OUT),
 347
 348        /* PTR GPIO */
 349        PINMUX_DATA(PTR7_DATA, PTR7_IN, PTR7_OUT),
 350        PINMUX_DATA(PTR6_DATA, PTR6_IN, PTR6_OUT),
 351        PINMUX_DATA(PTR5_DATA, PTR5_IN, PTR5_OUT),
 352        PINMUX_DATA(PTR4_DATA, PTR4_IN, PTR4_OUT),
 353        PINMUX_DATA(PTR3_DATA, PTR3_IN, PTR3_OUT),
 354        PINMUX_DATA(PTR2_DATA, PTR2_IN, PTR2_OUT),
 355        PINMUX_DATA(PTR1_DATA, PTR1_IN, PTR1_OUT),
 356        PINMUX_DATA(PTR0_DATA, PTR0_IN, PTR0_OUT),
 357
 358        /* PTS GPIO */
 359        PINMUX_DATA(PTS4_DATA, PTS4_IN, PTS4_OUT),
 360        PINMUX_DATA(PTS3_DATA, PTS3_IN, PTS3_OUT),
 361        PINMUX_DATA(PTS2_DATA, PTS2_IN, PTS2_OUT),
 362        PINMUX_DATA(PTS1_DATA, PTS1_IN, PTS1_OUT),
 363        PINMUX_DATA(PTS0_DATA, PTS0_IN, PTS0_OUT),
 364
 365        /* PTT GPIO */
 366        PINMUX_DATA(PTT4_DATA, PTT4_IN, PTT4_OUT),
 367        PINMUX_DATA(PTT3_DATA, PTT3_IN, PTT3_OUT),
 368        PINMUX_DATA(PTT2_DATA, PTT2_IN, PTT2_OUT),
 369        PINMUX_DATA(PTT1_DATA, PTT1_IN, PTT1_OUT),
 370        PINMUX_DATA(PTT0_DATA, PTT0_IN, PTT0_OUT),
 371
 372        /* PTU GPIO */
 373        PINMUX_DATA(PTU4_DATA, PTU4_IN, PTU4_OUT),
 374        PINMUX_DATA(PTU3_DATA, PTU3_IN, PTU3_OUT),
 375        PINMUX_DATA(PTU2_DATA, PTU2_IN, PTU2_OUT),
 376        PINMUX_DATA(PTU1_DATA, PTU1_IN, PTU1_OUT),
 377        PINMUX_DATA(PTU0_DATA, PTU0_IN, PTU0_OUT),
 378
 379        /* PTV GPIO */
 380        PINMUX_DATA(PTV4_DATA, PTV4_IN, PTV4_OUT),
 381        PINMUX_DATA(PTV3_DATA, PTV3_IN, PTV3_OUT),
 382        PINMUX_DATA(PTV2_DATA, PTV2_IN, PTV2_OUT),
 383        PINMUX_DATA(PTV1_DATA, PTV1_IN, PTV1_OUT),
 384        PINMUX_DATA(PTV0_DATA, PTV0_IN, PTV0_OUT),
 385
 386        /* PTA FN */
 387        PINMUX_DATA(D23_MARK, PTA7_FN),
 388        PINMUX_DATA(D22_MARK, PTA6_FN),
 389        PINMUX_DATA(D21_MARK, PTA5_FN),
 390        PINMUX_DATA(D20_MARK, PTA4_FN),
 391        PINMUX_DATA(D19_MARK, PTA3_FN),
 392        PINMUX_DATA(D18_MARK, PTA2_FN),
 393        PINMUX_DATA(D17_MARK, PTA1_FN),
 394        PINMUX_DATA(D16_MARK, PTA0_FN),
 395
 396        /* PTB FN */
 397        PINMUX_DATA(D31_MARK, PTB7_FN),
 398        PINMUX_DATA(D30_MARK, PTB6_FN),
 399        PINMUX_DATA(D29_MARK, PTB5_FN),
 400        PINMUX_DATA(D28_MARK, PTB4_FN),
 401        PINMUX_DATA(D27_MARK, PTB3_FN),
 402        PINMUX_DATA(D26_MARK, PTB2_FN),
 403        PINMUX_DATA(D25_MARK, PTB1_FN),
 404        PINMUX_DATA(D24_MARK, PTB0_FN),
 405
 406        /* PTC FN */
 407        PINMUX_DATA(LCD_DATA7_MARK, PTC7_FN),
 408        PINMUX_DATA(LCD_DATA6_MARK, PTC6_FN),
 409        PINMUX_DATA(LCD_DATA5_MARK, PTC5_FN),
 410        PINMUX_DATA(LCD_DATA4_MARK, PTC4_FN),
 411        PINMUX_DATA(LCD_DATA3_MARK, PTC3_FN),
 412        PINMUX_DATA(LCD_DATA2_MARK, PTC2_FN),
 413        PINMUX_DATA(LCD_DATA1_MARK, PTC1_FN),
 414        PINMUX_DATA(LCD_DATA0_MARK, PTC0_FN),
 415
 416        /* PTD FN */
 417        PINMUX_DATA(LCD_DATA15_MARK, PTD7_FN),
 418        PINMUX_DATA(LCD_DATA14_MARK, PTD6_FN),
 419        PINMUX_DATA(LCD_DATA13_MARK, PTD5_FN),
 420        PINMUX_DATA(LCD_DATA12_MARK, PTD4_FN),
 421        PINMUX_DATA(LCD_DATA11_MARK, PTD3_FN),
 422        PINMUX_DATA(LCD_DATA10_MARK, PTD2_FN),
 423        PINMUX_DATA(LCD_DATA9_MARK, PTD1_FN),
 424        PINMUX_DATA(LCD_DATA8_MARK, PTD0_FN),
 425
 426        /* PTE FN */
 427        PINMUX_DATA(IIC_SCL_MARK, PSELB_9_8_00, PTE6_FN),
 428        PINMUX_DATA(AFE_RXIN_MARK, PSELB_9_8_11, PTE6_FN),
 429        PINMUX_DATA(IIC_SDA_MARK, PSELB_9_8_00, PTE5_FN),
 430        PINMUX_DATA(AFE_RDET_MARK, PSELB_9_8_11, PTE5_FN),
 431        PINMUX_DATA(LCD_M_DISP_MARK, PTE4_FN),
 432        PINMUX_DATA(LCD_CL1_MARK, PTE3_FN),
 433        PINMUX_DATA(LCD_CL2_MARK, PTE2_FN),
 434        PINMUX_DATA(LCD_DON_MARK, PTE1_FN),
 435        PINMUX_DATA(LCD_FLM_MARK, PTE0_FN),
 436
 437        /* PTF FN */
 438        PINMUX_DATA(DA1_MARK, PTF6_FN),
 439        PINMUX_DATA(DA0_MARK, PTF5_FN),
 440        PINMUX_DATA(AN3_MARK, PTF4_FN),
 441        PINMUX_DATA(AN2_MARK, PTF3_FN),
 442        PINMUX_DATA(AN1_MARK, PTF2_FN),
 443        PINMUX_DATA(AN0_MARK, PTF1_FN),
 444        PINMUX_DATA(ADTRG_MARK, PTF0_FN),
 445
 446        /* PTG FN */
 447        PINMUX_DATA(USB1D_RCV_MARK, PSELA_3_2_00, PTG6_FN),
 448        PINMUX_DATA(AFE_FS_MARK, PSELA_3_2_01, PTG6_FN),
 449        PINMUX_DATA(PCC_REG_MARK, PSELA_3_2_10, PTG6_FN),
 450        PINMUX_DATA(IRQ5_MARK, PSELA_3_2_11, PTG6_FN),
 451        PINMUX_DATA(USB1D_TXSE0_MARK, PSELA_5_4_00, PTG5_FN),
 452        PINMUX_DATA(AFE_TXOUT_MARK, PSELA_5_4_01, PTG5_FN),
 453        PINMUX_DATA(PCC_DRV_MARK, PSELA_5_4_10, PTG5_FN),
 454        PINMUX_DATA(IRQ4_MARK, PSELA_5_4_11, PTG5_FN),
 455        PINMUX_DATA(USB1D_TXDPLS_MARK, PSELA_7_6_00, PTG4_FN),
 456        PINMUX_DATA(AFE_SCLK_MARK, PSELA_7_6_01, PTG4_FN),
 457        PINMUX_DATA(IOIS16_MARK, PSELA_7_6_10, PTG4_FN),
 458        PINMUX_DATA(USB1D_DMNS_MARK, PSELA_9_8_00, PTG3_FN),
 459        PINMUX_DATA(AFE_RLYCNT_MARK, PSELA_9_8_01, PTG3_FN),
 460        PINMUX_DATA(PCC_BVD2_MARK, PSELA_9_8_10, PTG3_FN),
 461        PINMUX_DATA(USB1D_DPLS_MARK, PSELA_11_10_00, PTG2_FN),
 462        PINMUX_DATA(AFE_HC1_MARK, PSELA_11_10_01, PTG2_FN),
 463        PINMUX_DATA(PCC_BVD1_MARK, PSELA_11_10_10, PTG2_FN),
 464        PINMUX_DATA(USB1D_SPEED_MARK, PSELA_13_12_00, PTG1_FN),
 465        PINMUX_DATA(PCC_CD2_MARK, PSELA_13_12_10, PTG1_FN),
 466        PINMUX_DATA(USB1D_TXENL_MARK, PSELA_15_14_00, PTG0_FN),
 467        PINMUX_DATA(PCC_CD1_MARK, PSELA_15_14_10, PTG0_FN),
 468
 469        /* PTH FN */
 470        PINMUX_DATA(RAS_MARK, PTH6_FN),
 471        PINMUX_DATA(CAS_MARK, PTH5_FN),
 472        PINMUX_DATA(CKE_MARK, PTH4_FN),
 473        PINMUX_DATA(STATUS1_MARK, PTH3_FN),
 474        PINMUX_DATA(STATUS0_MARK, PTH2_FN),
 475        PINMUX_DATA(USB2_PWR_EN_MARK, PTH1_FN),
 476        PINMUX_DATA(USB1_PWR_EN_USBF_UPLUP_MARK, PTH0_FN),
 477
 478        /* PTJ FN */
 479        PINMUX_DATA(AUDCK_MARK, PTJ6_FN),
 480        PINMUX_DATA(ASEBRKAK_MARK, PTJ5_FN),
 481        PINMUX_DATA(AUDATA3_MARK, PTJ4_FN),
 482        PINMUX_DATA(AUDATA2_MARK, PTJ3_FN),
 483        PINMUX_DATA(AUDATA1_MARK, PTJ2_FN),
 484        PINMUX_DATA(AUDATA0_MARK, PTJ1_FN),
 485        PINMUX_DATA(AUDSYNC_MARK, PTJ0_FN),
 486
 487        /* PTK FN */
 488        PINMUX_DATA(PCC_RESET_MARK, PTK3_FN),
 489        PINMUX_DATA(PCC_RDY_MARK, PTK2_FN),
 490        PINMUX_DATA(PCC_VS2_MARK, PTK1_FN),
 491        PINMUX_DATA(PCC_VS1_MARK, PTK0_FN),
 492
 493        /* PTL FN */
 494        PINMUX_DATA(TRST_MARK, PTL7_FN),
 495        PINMUX_DATA(TMS_MARK, PTL6_FN),
 496        PINMUX_DATA(TDO_MARK, PTL5_FN),
 497        PINMUX_DATA(TDI_MARK, PTL4_FN),
 498        PINMUX_DATA(TCK_MARK, PTL3_FN),
 499
 500        /* PTM FN */
 501        PINMUX_DATA(DREQ1_MARK, PTM7_FN),
 502        PINMUX_DATA(DREQ0_MARK, PTM6_FN),
 503        PINMUX_DATA(DACK1_MARK, PTM5_FN),
 504        PINMUX_DATA(DACK0_MARK, PTM4_FN),
 505        PINMUX_DATA(TEND1_MARK, PTM3_FN),
 506        PINMUX_DATA(TEND0_MARK, PTM2_FN),
 507        PINMUX_DATA(CS5B_CE1A_MARK, PTM1_FN),
 508        PINMUX_DATA(CS6B_CE1B_MARK, PTM0_FN),
 509
 510        /* PTP FN */
 511        PINMUX_DATA(USB1D_SUSPEND_MARK, PSELA_1_0_00, PTP4_FN),
 512        PINMUX_DATA(REFOUT_MARK, PSELA_1_0_01, PTP4_FN),
 513        PINMUX_DATA(IRQOUT_MARK, PSELA_1_0_10, PTP4_FN),
 514        PINMUX_DATA(IRQ3_IRL3_MARK, PTP3_FN),
 515        PINMUX_DATA(IRQ2_IRL2_MARK, PTP2_FN),
 516        PINMUX_DATA(IRQ1_IRL1_MARK, PTP1_FN),
 517        PINMUX_DATA(IRQ0_IRL0_MARK, PTP0_FN),
 518
 519        /* PTR FN */
 520        PINMUX_DATA(A25_MARK, PTR7_FN),
 521        PINMUX_DATA(A24_MARK, PTR6_FN),
 522        PINMUX_DATA(A23_MARK, PTR5_FN),
 523        PINMUX_DATA(A22_MARK, PTR4_FN),
 524        PINMUX_DATA(A21_MARK, PTR3_FN),
 525        PINMUX_DATA(A20_MARK, PTR2_FN),
 526        PINMUX_DATA(A19_MARK, PTR1_FN),
 527        PINMUX_DATA(A0_MARK, PTR0_FN),
 528
 529        /* PTS FN */
 530        PINMUX_DATA(SIOF0_SYNC_MARK, PTS4_FN),
 531        PINMUX_DATA(SIOF0_MCLK_MARK, PTS3_FN),
 532        PINMUX_DATA(SIOF0_TXD_MARK, PTS2_FN),
 533        PINMUX_DATA(SIOF0_RXD_MARK, PTS1_FN),
 534        PINMUX_DATA(SIOF0_SCK_MARK, PTS0_FN),
 535
 536        /* PTT FN */
 537        PINMUX_DATA(SCIF0_CTS_MARK, PSELB_15_14_00, PTT4_FN),
 538        PINMUX_DATA(TPU_TO1_MARK, PSELB_15_14_11, PTT4_FN),
 539        PINMUX_DATA(SCIF0_RTS_MARK, PSELB_15_14_00, PTT3_FN),
 540        PINMUX_DATA(TPU_TO0_MARK, PSELB_15_14_11, PTT3_FN),
 541        PINMUX_DATA(SCIF0_TXD_MARK, PTT2_FN),
 542        PINMUX_DATA(SCIF0_RXD_MARK, PTT1_FN),
 543        PINMUX_DATA(SCIF0_SCK_MARK, PTT0_FN),
 544
 545        /* PTU FN */
 546        PINMUX_DATA(SIOF1_SYNC_MARK, PTU4_FN),
 547        PINMUX_DATA(SIOF1_MCLK_MARK, PSELD_11_10_00, PTU3_FN),
 548        PINMUX_DATA(TPU_TI3B_MARK, PSELD_11_10_01, PTU3_FN),
 549        PINMUX_DATA(SIOF1_TXD_MARK, PSELD_15_14_00, PTU2_FN),
 550        PINMUX_DATA(TPU_TI3A_MARK, PSELD_15_14_01, PTU2_FN),
 551        PINMUX_DATA(MMC_DAT_MARK, PSELD_15_14_10, PTU2_FN),
 552        PINMUX_DATA(SIOF1_RXD_MARK, PSELC_13_12_00, PTU1_FN),
 553        PINMUX_DATA(TPU_TI2B_MARK, PSELC_13_12_01, PTU1_FN),
 554        PINMUX_DATA(MMC_CMD_MARK, PSELC_13_12_10, PTU1_FN),
 555        PINMUX_DATA(SIOF1_SCK_MARK, PSELC_15_14_00, PTU0_FN),
 556        PINMUX_DATA(TPU_TI2A_MARK, PSELC_15_14_01, PTU0_FN),
 557        PINMUX_DATA(MMC_CLK_MARK, PSELC_15_14_10, PTU0_FN),
 558
 559        /* PTV FN */
 560        PINMUX_DATA(SCIF1_CTS_MARK, PSELB_11_10_00, PTV4_FN),
 561        PINMUX_DATA(TPU_TO3_MARK, PSELB_11_10_01, PTV4_FN),
 562        PINMUX_DATA(MMC_VDDON_MARK, PSELB_11_10_10, PTV4_FN),
 563        PINMUX_DATA(LCD_VEPWC_MARK, PSELB_11_10_11, PTV4_FN),
 564        PINMUX_DATA(SCIF1_RTS_MARK, PSELB_13_12_00, PTV3_FN),
 565        PINMUX_DATA(TPU_TO2_MARK, PSELB_13_12_01, PTV3_FN),
 566        PINMUX_DATA(MMC_ODMOD_MARK, PSELB_13_12_10, PTV3_FN),
 567        PINMUX_DATA(LCD_VCPWC_MARK, PSELB_13_12_11, PTV3_FN),
 568        PINMUX_DATA(SCIF1_TXD_MARK, PSELC_9_8_00, PTV2_FN),
 569        PINMUX_DATA(SIM_D_MARK, PSELC_9_8_10, PTV2_FN),
 570        PINMUX_DATA(SCIF1_RXD_MARK, PSELC_11_10_00, PTV1_FN),
 571        PINMUX_DATA(SIM_RST_MARK, PSELC_11_10_10, PTV1_FN),
 572        PINMUX_DATA(SCIF1_SCK_MARK, PSELD_1_0_00, PTV0_FN),
 573        PINMUX_DATA(SIM_CLK_MARK, PSELD_1_0_10, PTV0_FN),
 574};
 575
 576static const struct sh_pfc_pin pinmux_pins[] = {
 577        /* PTA */
 578        PINMUX_GPIO(PTA7),
 579        PINMUX_GPIO(PTA6),
 580        PINMUX_GPIO(PTA5),
 581        PINMUX_GPIO(PTA4),
 582        PINMUX_GPIO(PTA3),
 583        PINMUX_GPIO(PTA2),
 584        PINMUX_GPIO(PTA1),
 585        PINMUX_GPIO(PTA0),
 586
 587        /* PTB */
 588        PINMUX_GPIO(PTB7),
 589        PINMUX_GPIO(PTB6),
 590        PINMUX_GPIO(PTB5),
 591        PINMUX_GPIO(PTB4),
 592        PINMUX_GPIO(PTB3),
 593        PINMUX_GPIO(PTB2),
 594        PINMUX_GPIO(PTB1),
 595        PINMUX_GPIO(PTB0),
 596
 597        /* PTC */
 598        PINMUX_GPIO(PTC7),
 599        PINMUX_GPIO(PTC6),
 600        PINMUX_GPIO(PTC5),
 601        PINMUX_GPIO(PTC4),
 602        PINMUX_GPIO(PTC3),
 603        PINMUX_GPIO(PTC2),
 604        PINMUX_GPIO(PTC1),
 605        PINMUX_GPIO(PTC0),
 606
 607        /* PTD */
 608        PINMUX_GPIO(PTD7),
 609        PINMUX_GPIO(PTD6),
 610        PINMUX_GPIO(PTD5),
 611        PINMUX_GPIO(PTD4),
 612        PINMUX_GPIO(PTD3),
 613        PINMUX_GPIO(PTD2),
 614        PINMUX_GPIO(PTD1),
 615        PINMUX_GPIO(PTD0),
 616
 617        /* PTE */
 618        PINMUX_GPIO(PTE6),
 619        PINMUX_GPIO(PTE5),
 620        PINMUX_GPIO(PTE4),
 621        PINMUX_GPIO(PTE3),
 622        PINMUX_GPIO(PTE2),
 623        PINMUX_GPIO(PTE1),
 624        PINMUX_GPIO(PTE0),
 625
 626        /* PTF */
 627        PINMUX_GPIO(PTF6),
 628        PINMUX_GPIO(PTF5),
 629        PINMUX_GPIO(PTF4),
 630        PINMUX_GPIO(PTF3),
 631        PINMUX_GPIO(PTF2),
 632        PINMUX_GPIO(PTF1),
 633        PINMUX_GPIO(PTF0),
 634
 635        /* PTG */
 636        PINMUX_GPIO(PTG6),
 637        PINMUX_GPIO(PTG5),
 638        PINMUX_GPIO(PTG4),
 639        PINMUX_GPIO(PTG3),
 640        PINMUX_GPIO(PTG2),
 641        PINMUX_GPIO(PTG1),
 642        PINMUX_GPIO(PTG0),
 643
 644        /* PTH */
 645        PINMUX_GPIO(PTH6),
 646        PINMUX_GPIO(PTH5),
 647        PINMUX_GPIO(PTH4),
 648        PINMUX_GPIO(PTH3),
 649        PINMUX_GPIO(PTH2),
 650        PINMUX_GPIO(PTH1),
 651        PINMUX_GPIO(PTH0),
 652
 653        /* PTJ */
 654        PINMUX_GPIO(PTJ6),
 655        PINMUX_GPIO(PTJ5),
 656        PINMUX_GPIO(PTJ4),
 657        PINMUX_GPIO(PTJ3),
 658        PINMUX_GPIO(PTJ2),
 659        PINMUX_GPIO(PTJ1),
 660        PINMUX_GPIO(PTJ0),
 661
 662        /* PTK */
 663        PINMUX_GPIO(PTK3),
 664        PINMUX_GPIO(PTK2),
 665        PINMUX_GPIO(PTK1),
 666        PINMUX_GPIO(PTK0),
 667
 668        /* PTL */
 669        PINMUX_GPIO(PTL7),
 670        PINMUX_GPIO(PTL6),
 671        PINMUX_GPIO(PTL5),
 672        PINMUX_GPIO(PTL4),
 673        PINMUX_GPIO(PTL3),
 674
 675        /* PTM */
 676        PINMUX_GPIO(PTM7),
 677        PINMUX_GPIO(PTM6),
 678        PINMUX_GPIO(PTM5),
 679        PINMUX_GPIO(PTM4),
 680        PINMUX_GPIO(PTM3),
 681        PINMUX_GPIO(PTM2),
 682        PINMUX_GPIO(PTM1),
 683        PINMUX_GPIO(PTM0),
 684
 685        /* PTP */
 686        PINMUX_GPIO(PTP4),
 687        PINMUX_GPIO(PTP3),
 688        PINMUX_GPIO(PTP2),
 689        PINMUX_GPIO(PTP1),
 690        PINMUX_GPIO(PTP0),
 691
 692        /* PTR */
 693        PINMUX_GPIO(PTR7),
 694        PINMUX_GPIO(PTR6),
 695        PINMUX_GPIO(PTR5),
 696        PINMUX_GPIO(PTR4),
 697        PINMUX_GPIO(PTR3),
 698        PINMUX_GPIO(PTR2),
 699        PINMUX_GPIO(PTR1),
 700        PINMUX_GPIO(PTR0),
 701
 702        /* PTS */
 703        PINMUX_GPIO(PTS4),
 704        PINMUX_GPIO(PTS3),
 705        PINMUX_GPIO(PTS2),
 706        PINMUX_GPIO(PTS1),
 707        PINMUX_GPIO(PTS0),
 708
 709        /* PTT */
 710        PINMUX_GPIO(PTT4),
 711        PINMUX_GPIO(PTT3),
 712        PINMUX_GPIO(PTT2),
 713        PINMUX_GPIO(PTT1),
 714        PINMUX_GPIO(PTT0),
 715
 716        /* PTU */
 717        PINMUX_GPIO(PTU4),
 718        PINMUX_GPIO(PTU3),
 719        PINMUX_GPIO(PTU2),
 720        PINMUX_GPIO(PTU1),
 721        PINMUX_GPIO(PTU0),
 722
 723        /* PTV */
 724        PINMUX_GPIO(PTV4),
 725        PINMUX_GPIO(PTV3),
 726        PINMUX_GPIO(PTV2),
 727        PINMUX_GPIO(PTV1),
 728        PINMUX_GPIO(PTV0),
 729};
 730
 731#define PINMUX_FN_BASE  ARRAY_SIZE(pinmux_pins)
 732
 733static const struct pinmux_func pinmux_func_gpios[] = {
 734        /* BSC */
 735        GPIO_FN(D31),
 736        GPIO_FN(D30),
 737        GPIO_FN(D29),
 738        GPIO_FN(D28),
 739        GPIO_FN(D27),
 740        GPIO_FN(D26),
 741        GPIO_FN(D25),
 742        GPIO_FN(D24),
 743        GPIO_FN(D23),
 744        GPIO_FN(D22),
 745        GPIO_FN(D21),
 746        GPIO_FN(D20),
 747        GPIO_FN(D19),
 748        GPIO_FN(D18),
 749        GPIO_FN(D17),
 750        GPIO_FN(D16),
 751        GPIO_FN(IOIS16),
 752        GPIO_FN(RAS),
 753        GPIO_FN(CAS),
 754        GPIO_FN(CKE),
 755        GPIO_FN(CS5B_CE1A),
 756        GPIO_FN(CS6B_CE1B),
 757        GPIO_FN(A25),
 758        GPIO_FN(A24),
 759        GPIO_FN(A23),
 760        GPIO_FN(A22),
 761        GPIO_FN(A21),
 762        GPIO_FN(A20),
 763        GPIO_FN(A19),
 764        GPIO_FN(A0),
 765        GPIO_FN(REFOUT),
 766        GPIO_FN(IRQOUT),
 767
 768        /* LCDC */
 769        GPIO_FN(LCD_DATA15),
 770        GPIO_FN(LCD_DATA14),
 771        GPIO_FN(LCD_DATA13),
 772        GPIO_FN(LCD_DATA12),
 773        GPIO_FN(LCD_DATA11),
 774        GPIO_FN(LCD_DATA10),
 775        GPIO_FN(LCD_DATA9),
 776        GPIO_FN(LCD_DATA8),
 777        GPIO_FN(LCD_DATA7),
 778        GPIO_FN(LCD_DATA6),
 779        GPIO_FN(LCD_DATA5),
 780        GPIO_FN(LCD_DATA4),
 781        GPIO_FN(LCD_DATA3),
 782        GPIO_FN(LCD_DATA2),
 783        GPIO_FN(LCD_DATA1),
 784        GPIO_FN(LCD_DATA0),
 785        GPIO_FN(LCD_M_DISP),
 786        GPIO_FN(LCD_CL1),
 787        GPIO_FN(LCD_CL2),
 788        GPIO_FN(LCD_DON),
 789        GPIO_FN(LCD_FLM),
 790        GPIO_FN(LCD_VEPWC),
 791        GPIO_FN(LCD_VCPWC),
 792
 793        /* AFEIF */
 794        GPIO_FN(AFE_RXIN),
 795        GPIO_FN(AFE_RDET),
 796        GPIO_FN(AFE_FS),
 797        GPIO_FN(AFE_TXOUT),
 798        GPIO_FN(AFE_SCLK),
 799        GPIO_FN(AFE_RLYCNT),
 800        GPIO_FN(AFE_HC1),
 801
 802        /* IIC */
 803        GPIO_FN(IIC_SCL),
 804        GPIO_FN(IIC_SDA),
 805
 806        /* DAC */
 807        GPIO_FN(DA1),
 808        GPIO_FN(DA0),
 809
 810        /* ADC */
 811        GPIO_FN(AN3),
 812        GPIO_FN(AN2),
 813        GPIO_FN(AN1),
 814        GPIO_FN(AN0),
 815        GPIO_FN(ADTRG),
 816
 817        /* USB */
 818        GPIO_FN(USB1D_RCV),
 819        GPIO_FN(USB1D_TXSE0),
 820        GPIO_FN(USB1D_TXDPLS),
 821        GPIO_FN(USB1D_DMNS),
 822        GPIO_FN(USB1D_DPLS),
 823        GPIO_FN(USB1D_SPEED),
 824        GPIO_FN(USB1D_TXENL),
 825
 826        GPIO_FN(USB2_PWR_EN),
 827        GPIO_FN(USB1_PWR_EN_USBF_UPLUP),
 828        GPIO_FN(USB1D_SUSPEND),
 829
 830        /* INTC */
 831        GPIO_FN(IRQ5),
 832        GPIO_FN(IRQ4),
 833        GPIO_FN(IRQ3_IRL3),
 834        GPIO_FN(IRQ2_IRL2),
 835        GPIO_FN(IRQ1_IRL1),
 836        GPIO_FN(IRQ0_IRL0),
 837
 838        /* PCC */
 839        GPIO_FN(PCC_REG),
 840        GPIO_FN(PCC_DRV),
 841        GPIO_FN(PCC_BVD2),
 842        GPIO_FN(PCC_BVD1),
 843        GPIO_FN(PCC_CD2),
 844        GPIO_FN(PCC_CD1),
 845        GPIO_FN(PCC_RESET),
 846        GPIO_FN(PCC_RDY),
 847        GPIO_FN(PCC_VS2),
 848        GPIO_FN(PCC_VS1),
 849
 850        /* HUDI */
 851        GPIO_FN(AUDATA3),
 852        GPIO_FN(AUDATA2),
 853        GPIO_FN(AUDATA1),
 854        GPIO_FN(AUDATA0),
 855        GPIO_FN(AUDCK),
 856        GPIO_FN(AUDSYNC),
 857        GPIO_FN(ASEBRKAK),
 858        GPIO_FN(TRST),
 859        GPIO_FN(TMS),
 860        GPIO_FN(TDO),
 861        GPIO_FN(TDI),
 862        GPIO_FN(TCK),
 863
 864        /* DMAC */
 865        GPIO_FN(DACK1),
 866        GPIO_FN(DREQ1),
 867        GPIO_FN(DACK0),
 868        GPIO_FN(DREQ0),
 869        GPIO_FN(TEND1),
 870        GPIO_FN(TEND0),
 871
 872        /* SIOF0 */
 873        GPIO_FN(SIOF0_SYNC),
 874        GPIO_FN(SIOF0_MCLK),
 875        GPIO_FN(SIOF0_TXD),
 876        GPIO_FN(SIOF0_RXD),
 877        GPIO_FN(SIOF0_SCK),
 878
 879        /* SIOF1 */
 880        GPIO_FN(SIOF1_SYNC),
 881        GPIO_FN(SIOF1_MCLK),
 882        GPIO_FN(SIOF1_TXD),
 883        GPIO_FN(SIOF1_RXD),
 884        GPIO_FN(SIOF1_SCK),
 885
 886        /* SCIF0 */
 887        GPIO_FN(SCIF0_TXD),
 888        GPIO_FN(SCIF0_RXD),
 889        GPIO_FN(SCIF0_RTS),
 890        GPIO_FN(SCIF0_CTS),
 891        GPIO_FN(SCIF0_SCK),
 892
 893        /* SCIF1 */
 894        GPIO_FN(SCIF1_TXD),
 895        GPIO_FN(SCIF1_RXD),
 896        GPIO_FN(SCIF1_RTS),
 897        GPIO_FN(SCIF1_CTS),
 898        GPIO_FN(SCIF1_SCK),
 899
 900        /* TPU */
 901        GPIO_FN(TPU_TO1),
 902        GPIO_FN(TPU_TO0),
 903        GPIO_FN(TPU_TI3B),
 904        GPIO_FN(TPU_TI3A),
 905        GPIO_FN(TPU_TI2B),
 906        GPIO_FN(TPU_TI2A),
 907        GPIO_FN(TPU_TO3),
 908        GPIO_FN(TPU_TO2),
 909
 910        /* SIM */
 911        GPIO_FN(SIM_D),
 912        GPIO_FN(SIM_CLK),
 913        GPIO_FN(SIM_RST),
 914
 915        /* MMC */
 916        GPIO_FN(MMC_DAT),
 917        GPIO_FN(MMC_CMD),
 918        GPIO_FN(MMC_CLK),
 919        GPIO_FN(MMC_VDDON),
 920        GPIO_FN(MMC_ODMOD),
 921
 922        /* SYSC */
 923        GPIO_FN(STATUS0),
 924        GPIO_FN(STATUS1),
 925};
 926
 927static const struct pinmux_cfg_reg pinmux_config_regs[] = {
 928        { PINMUX_CFG_REG("PACR", 0xa4050100, 16, 2, GROUP(
 929                PTA7_FN, PTA7_OUT, 0, PTA7_IN,
 930                PTA6_FN, PTA6_OUT, 0, PTA6_IN,
 931                PTA5_FN, PTA5_OUT, 0, PTA5_IN,
 932                PTA4_FN, PTA4_OUT, 0, PTA4_IN,
 933                PTA3_FN, PTA3_OUT, 0, PTA3_IN,
 934                PTA2_FN, PTA2_OUT, 0, PTA2_IN,
 935                PTA1_FN, PTA1_OUT, 0, PTA1_IN,
 936                PTA0_FN, PTA0_OUT, 0, PTA0_IN ))
 937        },
 938        { PINMUX_CFG_REG("PBCR", 0xa4050102, 16, 2, GROUP(
 939                PTB7_FN, PTB7_OUT, 0, PTB7_IN,
 940                PTB6_FN, PTB6_OUT, 0, PTB6_IN,
 941                PTB5_FN, PTB5_OUT, 0, PTB5_IN,
 942                PTB4_FN, PTB4_OUT, 0, PTB4_IN,
 943                PTB3_FN, PTB3_OUT, 0, PTB3_IN,
 944                PTB2_FN, PTB2_OUT, 0, PTB2_IN,
 945                PTB1_FN, PTB1_OUT, 0, PTB1_IN,
 946                PTB0_FN, PTB0_OUT, 0, PTB0_IN ))
 947        },
 948        { PINMUX_CFG_REG("PCCR", 0xa4050104, 16, 2, GROUP(
 949                PTC7_FN, PTC7_OUT, 0, PTC7_IN,
 950                PTC6_FN, PTC6_OUT, 0, PTC6_IN,
 951                PTC5_FN, PTC5_OUT, 0, PTC5_IN,
 952                PTC4_FN, PTC4_OUT, 0, PTC4_IN,
 953                PTC3_FN, PTC3_OUT, 0, PTC3_IN,
 954                PTC2_FN, PTC2_OUT, 0, PTC2_IN,
 955                PTC1_FN, PTC1_OUT, 0, PTC1_IN,
 956                PTC0_FN, PTC0_OUT, 0, PTC0_IN ))
 957        },
 958        { PINMUX_CFG_REG("PDCR", 0xa4050106, 16, 2, GROUP(
 959                PTD7_FN, PTD7_OUT, 0, PTD7_IN,
 960                PTD6_FN, PTD6_OUT, 0, PTD6_IN,
 961                PTD5_FN, PTD5_OUT, 0, PTD5_IN,
 962                PTD4_FN, PTD4_OUT, 0, PTD4_IN,
 963                PTD3_FN, PTD3_OUT, 0, PTD3_IN,
 964                PTD2_FN, PTD2_OUT, 0, PTD2_IN,
 965                PTD1_FN, PTD1_OUT, 0, PTD1_IN,
 966                PTD0_FN, PTD0_OUT, 0, PTD0_IN ))
 967        },
 968        { PINMUX_CFG_REG("PECR", 0xa4050108, 16, 2, GROUP(
 969                0, 0, 0, 0,
 970                PTE6_FN, 0, 0, PTE6_IN,
 971                PTE5_FN, 0, 0, PTE5_IN,
 972                PTE4_FN, PTE4_OUT, 0, PTE4_IN,
 973                PTE3_FN, PTE3_OUT, 0, PTE3_IN,
 974                PTE2_FN, PTE2_OUT, 0, PTE2_IN,
 975                PTE1_FN, PTE1_OUT, 0, PTE1_IN,
 976                PTE0_FN, PTE0_OUT, 0, PTE0_IN ))
 977        },
 978        { PINMUX_CFG_REG("PFCR", 0xa405010a, 16, 2, GROUP(
 979                0, 0, 0, 0,
 980                PTF6_FN, 0, 0, PTF6_IN,
 981                PTF5_FN, 0, 0, PTF5_IN,
 982                PTF4_FN, 0, 0, PTF4_IN,
 983                PTF3_FN, 0, 0, PTF3_IN,
 984                PTF2_FN, 0, 0, PTF2_IN,
 985                PTF1_FN, 0, 0, PTF1_IN,
 986                PTF0_FN, 0, 0, PTF0_IN ))
 987        },
 988        { PINMUX_CFG_REG("PGCR", 0xa405010c, 16, 2, GROUP(
 989                0, 0, 0, 0,
 990                PTG6_FN, PTG6_OUT, 0, PTG6_IN,
 991                PTG5_FN, PTG5_OUT, 0, PTG5_IN,
 992                PTG4_FN, PTG4_OUT, 0, PTG4_IN,
 993                PTG3_FN, PTG3_OUT, 0, PTG3_IN,
 994                PTG2_FN, PTG2_OUT, 0, PTG2_IN,
 995                PTG1_FN, PTG1_OUT, 0, PTG1_IN,
 996                PTG0_FN, PTG0_OUT, 0, PTG0_IN ))
 997        },
 998        { PINMUX_CFG_REG("PHCR", 0xa405010e, 16, 2, GROUP(
 999                0, 0, 0, 0,
1000                PTH6_FN, PTH6_OUT, 0, PTH6_IN,
1001                PTH5_FN, PTH5_OUT, 0, PTH5_IN,
1002                PTH4_FN, PTH4_OUT, 0, PTH4_IN,
1003                PTH3_FN, PTH3_OUT, 0, PTH3_IN,
1004                PTH2_FN, PTH2_OUT, 0, PTH2_IN,
1005                PTH1_FN, PTH1_OUT, 0, PTH1_IN,
1006                PTH0_FN, PTH0_OUT, 0, PTH0_IN ))
1007        },
1008        { PINMUX_CFG_REG("PJCR", 0xa4050110, 16, 2, GROUP(
1009                0, 0, 0, 0,
1010                PTJ6_FN, PTJ6_OUT, 0, PTJ6_IN,
1011                PTJ5_FN, PTJ5_OUT, 0, PTJ5_IN,
1012                PTJ4_FN, PTJ4_OUT, 0, PTJ4_IN,
1013                PTJ3_FN, PTJ3_OUT, 0, PTJ3_IN,
1014                PTJ2_FN, PTJ2_OUT, 0, PTJ2_IN,
1015                PTJ1_FN, PTJ1_OUT, 0, PTJ1_IN,
1016                PTJ0_FN, PTJ0_OUT, 0, PTJ0_IN ))
1017        },
1018        { PINMUX_CFG_REG("PKCR", 0xa4050112, 16, 2, GROUP(
1019                0, 0, 0, 0,
1020                0, 0, 0, 0,
1021                0, 0, 0, 0,
1022                0, 0, 0, 0,
1023                PTK3_FN, PTK3_OUT, 0, PTK3_IN,
1024                PTK2_FN, PTK2_OUT, 0, PTK2_IN,
1025                PTK1_FN, PTK1_OUT, 0, PTK1_IN,
1026                PTK0_FN, PTK0_OUT, 0, PTK0_IN ))
1027        },
1028        { PINMUX_CFG_REG("PLCR", 0xa4050114, 16, 2, GROUP(
1029                PTL7_FN, PTL7_OUT, 0, PTL7_IN,
1030                PTL6_FN, PTL6_OUT, 0, PTL6_IN,
1031                PTL5_FN, PTL5_OUT, 0, PTL5_IN,
1032                PTL4_FN, PTL4_OUT, 0, PTL4_IN,
1033                PTL3_FN, PTL3_OUT, 0, PTL3_IN,
1034                0, 0, 0, 0,
1035                0, 0, 0, 0,
1036                0, 0, 0, 0 ))
1037        },
1038        { PINMUX_CFG_REG("PMCR", 0xa4050116, 16, 2, GROUP(
1039                PTM7_FN, PTM7_OUT, 0, PTM7_IN,
1040                PTM6_FN, PTM6_OUT, 0, PTM6_IN,
1041                PTM5_FN, PTM5_OUT, 0, PTM5_IN,
1042                PTM4_FN, PTM4_OUT, 0, PTM4_IN,
1043                PTM3_FN, PTM3_OUT, 0, PTM3_IN,
1044                PTM2_FN, PTM2_OUT, 0, PTM2_IN,
1045                PTM1_FN, PTM1_OUT, 0, PTM1_IN,
1046                PTM0_FN, PTM0_OUT, 0, PTM0_IN ))
1047        },
1048        { PINMUX_CFG_REG("PPCR", 0xa4050118, 16, 2, GROUP(
1049                0, 0, 0, 0,
1050                0, 0, 0, 0,
1051                0, 0, 0, 0,
1052                PTP4_FN, PTP4_OUT, 0, PTP4_IN,
1053                PTP3_FN, PTP3_OUT, 0, PTP3_IN,
1054                PTP2_FN, PTP2_OUT, 0, PTP2_IN,
1055                PTP1_FN, PTP1_OUT, 0, PTP1_IN,
1056                PTP0_FN, PTP0_OUT, 0, PTP0_IN ))
1057        },
1058        { PINMUX_CFG_REG("PRCR", 0xa405011a, 16, 2, GROUP(
1059                PTR7_FN, PTR7_OUT, 0, PTR7_IN,
1060                PTR6_FN, PTR6_OUT, 0, PTR6_IN,
1061                PTR5_FN, PTR5_OUT, 0, PTR5_IN,
1062                PTR4_FN, PTR4_OUT, 0, PTR4_IN,
1063                PTR3_FN, PTR3_OUT, 0, PTR3_IN,
1064                PTR2_FN, PTR2_OUT, 0, PTR2_IN,
1065                PTR1_FN, PTR1_OUT, 0, PTR1_IN,
1066                PTR0_FN, PTR0_OUT, 0, PTR0_IN ))
1067        },
1068        { PINMUX_CFG_REG("PSCR", 0xa405011c, 16, 2, GROUP(
1069                0, 0, 0, 0,
1070                0, 0, 0, 0,
1071                0, 0, 0, 0,
1072                PTS4_FN, PTS4_OUT, 0, PTS4_IN,
1073                PTS3_FN, PTS3_OUT, 0, PTS3_IN,
1074                PTS2_FN, PTS2_OUT, 0, PTS2_IN,
1075                PTS1_FN, PTS1_OUT, 0, PTS1_IN,
1076                PTS0_FN, PTS0_OUT, 0, PTS0_IN ))
1077        },
1078        { PINMUX_CFG_REG("PTCR", 0xa405011e, 16, 2, GROUP(
1079                0, 0, 0, 0,
1080                0, 0, 0, 0,
1081                0, 0, 0, 0,
1082                PTT4_FN, PTT4_OUT, 0, PTT4_IN,
1083                PTT3_FN, PTT3_OUT, 0, PTT3_IN,
1084                PTT2_FN, PTT2_OUT, 0, PTT2_IN,
1085                PTT1_FN, PTT1_OUT, 0, PTT1_IN,
1086                PTT0_FN, PTT0_OUT, 0, PTT0_IN ))
1087        },
1088        { PINMUX_CFG_REG("PUCR", 0xa4050120, 16, 2, GROUP(
1089                0, 0, 0, 0,
1090                0, 0, 0, 0,
1091                0, 0, 0, 0,
1092                PTU4_FN, PTU4_OUT, 0, PTU4_IN,
1093                PTU3_FN, PTU3_OUT, 0, PTU3_IN,
1094                PTU2_FN, PTU2_OUT, 0, PTU2_IN,
1095                PTU1_FN, PTU1_OUT, 0, PTU1_IN,
1096                PTU0_FN, PTU0_OUT, 0, PTU0_IN ))
1097        },
1098        { PINMUX_CFG_REG("PVCR", 0xa4050122, 16, 2, GROUP(
1099                0, 0, 0, 0,
1100                0, 0, 0, 0,
1101                0, 0, 0, 0,
1102                PTV4_FN, PTV4_OUT, 0, PTV4_IN,
1103                PTV3_FN, PTV3_OUT, 0, PTV3_IN,
1104                PTV2_FN, PTV2_OUT, 0, PTV2_IN,
1105                PTV1_FN, PTV1_OUT, 0, PTV1_IN,
1106                PTV0_FN, PTV0_OUT, 0, PTV0_IN ))
1107        },
1108        {}
1109};
1110
1111static const struct pinmux_data_reg pinmux_data_regs[] = {
1112        { PINMUX_DATA_REG("PADR", 0xa4050140, 8, GROUP(
1113                PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
1114                PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA ))
1115        },
1116        { PINMUX_DATA_REG("PBDR", 0xa4050142, 8, GROUP(
1117                PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
1118                PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA ))
1119        },
1120        { PINMUX_DATA_REG("PCDR", 0xa4050144, 8, GROUP(
1121                PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
1122                PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA ))
1123        },
1124        { PINMUX_DATA_REG("PDDR", 0xa4050126, 8, GROUP(
1125                PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
1126                PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA ))
1127        },
1128        { PINMUX_DATA_REG("PEDR", 0xa4050148, 8, GROUP(
1129                0, PTE6_DATA, PTE5_DATA, PTE4_DATA,
1130                PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA ))
1131        },
1132        { PINMUX_DATA_REG("PFDR", 0xa405014a, 8, GROUP(
1133                0, PTF6_DATA, PTF5_DATA, PTF4_DATA,
1134                PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA ))
1135        },
1136        { PINMUX_DATA_REG("PGDR", 0xa405014c, 8, GROUP(
1137                0, PTG6_DATA, PTG5_DATA, PTG4_DATA,
1138                PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA ))
1139        },
1140        { PINMUX_DATA_REG("PHDR", 0xa405014e, 8, GROUP(
1141                0, PTH6_DATA, PTH5_DATA, PTH4_DATA,
1142                PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA ))
1143        },
1144        { PINMUX_DATA_REG("PJDR", 0xa4050150, 8, GROUP(
1145                0, PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
1146                PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA ))
1147        },
1148        { PINMUX_DATA_REG("PKDR", 0xa4050152, 8, GROUP(
1149                0, 0, 0, 0,
1150                PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA ))
1151        },
1152        { PINMUX_DATA_REG("PLDR", 0xa4050154, 8, GROUP(
1153                PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA,
1154                PTL3_DATA, 0, 0, 0 ))
1155        },
1156        { PINMUX_DATA_REG("PMDR", 0xa4050156, 8, GROUP(
1157                PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
1158                PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA ))
1159        },
1160        { PINMUX_DATA_REG("PPDR", 0xa4050158, 8, GROUP(
1161                0, 0, 0, PTP4_DATA,
1162                PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA ))
1163        },
1164        { PINMUX_DATA_REG("PRDR", 0xa405015a, 8, GROUP(
1165                PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
1166                PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA ))
1167        },
1168        { PINMUX_DATA_REG("PSDR", 0xa405015c, 8, GROUP(
1169                0, 0, 0, PTS4_DATA,
1170                PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA ))
1171        },
1172        { PINMUX_DATA_REG("PTDR", 0xa405015e, 8, GROUP(
1173                0, 0, 0, PTT4_DATA,
1174                PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA ))
1175        },
1176        { PINMUX_DATA_REG("PUDR", 0xa4050160, 8, GROUP(
1177                0, 0, 0, PTU4_DATA,
1178                PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA ))
1179        },
1180        { PINMUX_DATA_REG("PVDR", 0xa4050162, 8, GROUP(
1181                0, 0, 0, PTV4_DATA,
1182                PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA ))
1183        },
1184        { },
1185};
1186
1187const struct sh_pfc_soc_info sh7720_pinmux_info = {
1188        .name = "sh7720_pfc",
1189        .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
1190        .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
1191        .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
1192
1193        .pins = pinmux_pins,
1194        .nr_pins = ARRAY_SIZE(pinmux_pins),
1195        .func_gpios = pinmux_func_gpios,
1196        .nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
1197
1198        .cfg_regs = pinmux_config_regs,
1199        .data_regs = pinmux_data_regs,
1200
1201        .pinmux_data = pinmux_data,
1202        .pinmux_data_size = ARRAY_SIZE(pinmux_data),
1203};
1204