// SPDX-License-Identifier: GPL-2.0
/*
 * R8A77470 processor support - PFC hardware block.
 *
 * Copyright (C) 2018 Renesas Electronics Corp.
 */

#include <linux/errno.h>
#include <linux/kernel.h>

#include "sh_pfc.h"

#define CPU_ALL_GP(fn, sfx)						\
	PORT_GP_4(0, fn, sfx),						\
	PORT_GP_1(0, 4, fn, sfx),					\
	PORT_GP_CFG_1(0,  5, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0,  6, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0,  7, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0,  8, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0,  9, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 10, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_1(0, 11, fn, sfx),					\
	PORT_GP_1(0, 12, fn, sfx),					\
	PORT_GP_CFG_1(0, 13, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 14, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 15, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 16, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 17, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 18, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 19, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 20, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 21, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(0, 22, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_23(1, fn, sfx),						\
	PORT_GP_32(2, fn, sfx),						\
	PORT_GP_17(3, fn, sfx),						\
	PORT_GP_1(3, 27, fn, sfx),					\
	PORT_GP_1(3, 28, fn, sfx),					\
	PORT_GP_1(3, 29, fn, sfx),					\
	PORT_GP_14(4, fn, sfx),						\
	PORT_GP_CFG_1(4, 14, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(4, 15, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(4, 16, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(4, 17, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(4, 18, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_CFG_1(4, 19, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE),	\
	PORT_GP_1(4, 20, fn, sfx),					\
	PORT_GP_1(4, 21, fn, sfx),					\
	PORT_GP_1(4, 22, fn, sfx),					\
	PORT_GP_1(4, 23, fn, sfx),					\
	PORT_GP_1(4, 24, fn, sfx),					\
	PORT_GP_1(4, 25, fn, sfx),					\
	PORT_GP_32(5, fn, sfx)

enum {
	PINMUX_RESERVED = 0,

	PINMUX_DATA_BEGIN,
	GP_ALL(DATA),
	PINMUX_DATA_END,

	PINMUX_FUNCTION_BEGIN,
	GP_ALL(FN),

	/* GPSR0 */
	FN_USB0_PWEN, FN_USB0_OVC, FN_USB1_PWEN, FN_USB1_OVC, FN_CLKOUT,
	FN_IP0_3_0, FN_IP0_7_4, FN_IP0_11_8, FN_IP0_15_12, FN_IP0_19_16,
	FN_IP0_23_20, FN_IP0_27_24, FN_IP0_31_28, FN_MMC0_CLK_SDHI1_CLK,
	FN_MMC0_CMD_SDHI1_CMD, FN_MMC0_D0_SDHI1_D0, FN_MMC0_D1_SDHI1_D1,
	FN_MMC0_D2_SDHI1_D2, FN_MMC0_D3_SDHI1_D3, FN_IP1_3_0,
	FN_IP1_7_4, FN_MMC0_D6, FN_MMC0_D7,

	/* GPSR1 */
	FN_IP1_11_8, FN_IP1_15_12, FN_IP1_19_16, FN_IP1_23_20, FN_IP1_27_24,
	FN_IP1_31_28, FN_IP2_3_0, FN_IP2_7_4, FN_IP2_11_8, FN_IP2_15_12,
	FN_IP2_19_16, FN_IP2_23_20, FN_IP2_27_24, FN_IP2_31_28, FN_IP3_3_0,
	FN_IP3_7_4, FN_IP3_11_8, FN_IP3_15_12, FN_IP3_19_16, FN_IP3_23_20,
	FN_IP3_27_24, FN_IP3_31_28, FN_IP4_3_0,

	/* GPSR2 */
	FN_IP4_7_4, FN_IP4_11_8, FN_IP4_15_12, FN_IP4_19_16, FN_IP4_23_20,
	FN_IP4_27_24, FN_IP4_31_28, FN_IP5_3_0, FN_IP5_7_4, FN_IP5_11_8,
	FN_IP5_15_12, FN_IP5_19_16, FN_IP5_23_20, FN_IP5_27_24, FN_IP5_31_28,
	FN_IP6_3_0, FN_IP6_7_4, FN_IP6_11_8, FN_IP6_15_12, FN_IP6_19_16,
	FN_IP6_23_20, FN_IP6_27_24, FN_IP6_31_28, FN_IP7_3_0, FN_IP7_7_4,
	FN_IP7_11_8, FN_IP7_15_12, FN_IP7_19_16, FN_IP7_23_20, FN_IP7_27_24,
	FN_IP7_31_28, FN_IP8_3_0,

	/* GPSR3 */
	FN_IP8_7_4, FN_IP8_11_8, FN_IP8_15_12, FN_IP8_19_16, FN_IP8_23_20,
	FN_IP8_27_24, FN_IP8_31_28, FN_IP9_3_0, FN_IP9_7_4, FN_IP9_11_8,
	FN_IP9_15_12, FN_IP9_19_16, FN_IP9_23_20, FN_IP9_27_24, FN_IP9_31_28,
	FN_IP10_3_0, FN_IP10_7_4, FN_IP10_11_8, FN_IP10_15_12, FN_IP10_19_16,

	/* GPSR4 */
	FN_IP10_23_20, FN_IP10_27_24, FN_IP10_31_28, FN_IP11_3_0, FN_IP11_7_4,
	FN_IP11_11_8, FN_IP11_15_12, FN_IP11_19_16, FN_IP11_23_20,
	FN_IP11_27_24, FN_IP11_31_28, FN_IP12_3_0, FN_IP12_7_4, FN_IP12_11_8,
	FN_IP12_15_12, FN_IP12_19_16, FN_IP12_23_20, FN_IP12_27_24,
	FN_IP12_31_28, FN_IP13_3_0, FN_IP13_7_4, FN_IP13_11_8, FN_IP13_15_12,
	FN_IP13_19_16, FN_IP13_23_20, FN_IP13_27_24,

	/* GPSR5 */
	FN_IP13_31_28, FN_IP14_3_0, FN_IP14_7_4, FN_IP14_11_8, FN_IP14_15_12,
	FN_IP14_19_16, FN_IP14_23_20, FN_IP14_27_24, FN_IP14_31_28,
	FN_IP15_3_0, FN_IP15_7_4, FN_IP15_11_8, FN_IP15_15_12, FN_IP15_19_16,
	FN_IP15_23_20, FN_IP15_27_24, FN_IP15_31_28, FN_IP16_3_0, FN_IP16_7_4,
	FN_IP16_11_8, FN_IP16_15_12, FN_IP16_19_16, FN_IP16_23_20,
	FN_IP16_27_24, FN_IP16_31_28, FN_IP17_3_0, FN_IP17_7_4, FN_IP17_11_8,
	FN_IP17_15_12, FN_IP17_19_16, FN_IP17_23_20, FN_IP17_27_24,

	/* IPSR0 */
	FN_SD0_CLK, FN_SSI_SCK1_C, FN_RX3_C,
	FN_SD0_CMD, FN_SSI_WS1_C, FN_TX3_C,
	FN_SD0_DAT0, FN_SSI_SDATA1_C, FN_RX4_E,
	FN_SD0_DAT1, FN_SSI_SCK0129_B, FN_TX4_E,
	FN_SD0_DAT2, FN_SSI_WS0129_B, FN_RX5_E,
	FN_SD0_DAT3, FN_SSI_SDATA0_B, FN_TX5_E,
	FN_SD0_CD, FN_CAN0_RX_A,
	FN_SD0_WP, FN_IRQ7, FN_CAN0_TX_A,

	/* IPSR1 */
	FN_MMC0_D4, FN_SD1_CD,
	FN_MMC0_D5, FN_SD1_WP,
	FN_D0, FN_SCL3_B, FN_RX5_B, FN_IRQ4, FN_MSIOF2_RXD_C, FN_SSI_SDATA5_B,
	FN_D1, FN_SDA3_B, FN_TX5_B, FN_MSIOF2_TXD_C, FN_SSI_WS5_B,
	FN_D2, FN_RX4_B, FN_SCL0_D, FN_PWM1_C, FN_MSIOF2_SCK_C, FN_SSI_SCK5_B,
	FN_D3, FN_TX4_B, FN_SDA0_D, FN_PWM0_A, FN_MSIOF2_SYNC_C,
	FN_D4, FN_IRQ3, FN_TCLK1_A, FN_PWM6_C,
	FN_D5, FN_HRX2, FN_SCL1_B, FN_PWM2_C, FN_TCLK2_B,

	/* IPSR2 */
	FN_D6, FN_HTX2, FN_SDA1_B, FN_PWM4_C,
	FN_D7, FN_HSCK2, FN_SCIF1_SCK_C, FN_IRQ6, FN_PWM5_C,
	FN_D8, FN_HCTS2_N, FN_RX1_C, FN_SCL1_D, FN_PWM3_C,
	FN_D9, FN_HRTS2_N, FN_TX1_C, FN_SDA1_D,
	FN_D10, FN_MSIOF2_RXD_A, FN_HRX0_B,
	FN_D11, FN_MSIOF2_TXD_A, FN_HTX0_B,
	FN_D12, FN_MSIOF2_SCK_A, FN_HSCK0, FN_CAN_CLK_C,
	FN_D13,	FN_MSIOF2_SYNC_A, FN_RX4_C,

	/* IPSR3 */
	FN_D14, FN_MSIOF2_SS1, FN_TX4_C, FN_CAN1_RX_B, FN_AVB_AVTP_CAPTURE_A,
	FN_D15, FN_MSIOF2_SS2, FN_PWM4_A, FN_CAN1_TX_B, FN_IRQ2, FN_AVB_AVTP_MATCH_A,
	FN_QSPI0_SPCLK, FN_WE0_N,
	FN_QSPI0_MOSI_QSPI0_IO0, FN_BS_N,
	FN_QSPI0_MISO_QSPI0_IO1, FN_RD_WR_N,
	FN_QSPI0_IO2, FN_CS0_N,
	FN_QSPI0_IO3, FN_RD_N,
	FN_QSPI0_SSL, FN_WE1_N,

	/* IPSR4 */
	FN_EX_WAIT0, FN_CAN_CLK_B, FN_SCIF_CLK_A,
	FN_DU0_DR0, FN_RX5_C, FN_SCL2_D, FN_A0,
	FN_DU0_DR1, FN_TX5_C, FN_SDA2_D, FN_A1,
	FN_DU0_DR2, FN_RX0_D, FN_SCL0_E, FN_A2,
	FN_DU0_DR3, FN_TX0_D, FN_SDA0_E, FN_PWM0_B, FN_A3,
	FN_DU0_DR4, FN_RX1_D, FN_A4,
	FN_DU0_DR5, FN_TX1_D, FN_PWM1_B, FN_A5,
	FN_DU0_DR6, FN_RX2_C, FN_A6,

	/* IPSR5 */
	FN_DU0_DR7, FN_TX2_C, FN_PWM2_B, FN_A7,
	FN_DU0_DG0, FN_RX3_B, FN_SCL3_D, FN_A8,
	FN_DU0_DG1, FN_TX3_B, FN_SDA3_D, FN_PWM3_B, FN_A9,
	FN_DU0_DG2, FN_RX4_D, FN_A10,
	FN_DU0_DG3, FN_TX4_D, FN_PWM4_B, FN_A11,
	FN_DU0_DG4, FN_HRX0_A, FN_A12,
	FN_DU0_DG5, FN_HTX0_A, FN_PWM5_B, FN_A13,
	FN_DU0_DG6, FN_HRX1_C, FN_A14,

	/* IPSR6 */
	FN_DU0_DG7, FN_HTX1_C, FN_PWM6_B, FN_A15,
	FN_DU0_DB0, FN_SCL4_D, FN_CAN0_RX_C, FN_A16,
	FN_DU0_DB1, FN_SDA4_D, FN_CAN0_TX_C, FN_A17,
	FN_DU0_DB2, FN_HCTS0_N, FN_A18,
	FN_DU0_DB3, FN_HRTS0_N, FN_A19,
	FN_DU0_DB4, FN_HCTS1_N_C, FN_A20,
	FN_DU0_DB5, FN_HRTS1_N_C, FN_A21,
	FN_DU0_DB6, FN_A22,

	/* IPSR7 */
	FN_DU0_DB7, FN_A23,
	FN_DU0_DOTCLKIN, FN_A24,
	FN_DU0_DOTCLKOUT0, FN_A25,
	FN_DU0_DOTCLKOUT1, FN_MSIOF2_RXD_B, FN_CS1_N_A26,
	FN_DU0_EXHSYNC_DU0_HSYNC, FN_MSIOF2_TXD_B, FN_DREQ0_N,
	FN_DU0_EXVSYNC_DU0_VSYNC, FN_MSIOF2_SYNC_B, FN_DACK0,
	FN_DU0_EXODDF_DU0_ODDF_DISP_CDE, FN_MSIOF2_SCK_B, FN_DRACK0,
	FN_DU0_DISP, FN_CAN1_RX_C,

	/* IPSR8 */
	FN_DU0_CDE, FN_CAN1_TX_C,
	FN_VI1_CLK, FN_AVB_RX_CLK, FN_ETH_REF_CLK,
	FN_VI1_DATA0, FN_AVB_RX_DV, FN_ETH_CRS_DV,
	FN_VI1_DATA1, FN_AVB_RXD0, FN_ETH_RXD0,
	FN_VI1_DATA2, FN_AVB_RXD1, FN_ETH_RXD1,
	FN_VI1_DATA3, FN_AVB_RXD2, FN_ETH_MDIO,
	FN_VI1_DATA4, FN_AVB_RXD3, FN_ETH_RX_ER,
	FN_VI1_DATA5, FN_AVB_RXD4, FN_ETH_LINK,

	/* IPSR9 */
	FN_VI1_DATA6, FN_AVB_RXD5, FN_ETH_TXD1,
	FN_VI1_DATA7, FN_AVB_RXD6, FN_ETH_TX_EN,
	FN_VI1_CLKENB, FN_SCL3_A, FN_AVB_RXD7, FN_ETH_MAGIC,
	FN_VI1_FIELD, FN_SDA3_A, FN_AVB_RX_ER, FN_ETH_TXD0,
	FN_VI1_HSYNC_N,	FN_RX0_B, FN_SCL0_C, FN_AVB_GTXREFCLK, FN_ETH_MDC,
	FN_VI1_VSYNC_N,	FN_TX0_B, FN_SDA0_C, FN_AUDIO_CLKOUT_B, FN_AVB_TX_CLK,
	FN_VI1_DATA8, FN_SCL2_B, FN_AVB_TX_EN,
	FN_VI1_DATA9, FN_SDA2_B, FN_AVB_TXD0,

	/* IPSR10 */
	FN_VI1_DATA10, FN_CAN0_RX_B, FN_AVB_TXD1,
	FN_VI1_DATA11, FN_CAN0_TX_B, FN_AVB_TXD2,
	FN_AVB_TXD3, FN_AUDIO_CLKA_B, FN_SSI_SCK1_D, FN_RX5_F, FN_MSIOF0_RXD_B,
	FN_AVB_TXD4, FN_AUDIO_CLKB_B, FN_SSI_WS1_D, FN_TX5_F, FN_MSIOF0_TXD_B,
	FN_AVB_TXD5, FN_SCIF_CLK_B, FN_AUDIO_CLKC_B, FN_SSI_SDATA1_D, FN_MSIOF0_SCK_B,
	FN_SCL0_A, FN_RX0_C, FN_PWM5_A,	FN_TCLK1_B, FN_AVB_TXD6, FN_CAN1_RX_D, FN_MSIOF0_SYNC_B,
	FN_SDA0_A, FN_TX0_C, FN_IRQ5, FN_CAN_CLK_A, FN_AVB_GTX_CLK, FN_CAN1_TX_D, FN_DVC_MUTE,
	FN_SCL1_A, FN_RX4_A, FN_PWM5_D, FN_DU1_DR0, FN_SSI_SCK6_B, FN_VI0_G0,

	/* IPSR11 */
	FN_SDA1_A, FN_TX4_A, FN_DU1_DR1, FN_SSI_WS6_B, FN_VI0_G1,
	FN_MSIOF0_RXD_A, FN_RX5_A, FN_SCL2_C, FN_DU1_DR2, FN_QSPI1_MOSI_QSPI1_IO0, FN_SSI_SDATA6_B, FN_VI0_G2,
	FN_MSIOF0_TXD_A, FN_TX5_A, FN_SDA2_C, FN_DU1_DR3, FN_QSPI1_MISO_QSPI1_IO1, FN_SSI_WS78_B, FN_VI0_G3,
	FN_MSIOF0_SCK_A, FN_IRQ0, FN_DU1_DR4, FN_QSPI1_SPCLK, FN_SSI_SCK78_B, FN_VI0_G4,
	FN_MSIOF0_SYNC_A, FN_PWM1_A, FN_DU1_DR5, FN_QSPI1_IO2, FN_SSI_SDATA7_B,
	FN_MSIOF0_SS1_A, FN_DU1_DR6, FN_QSPI1_IO3, FN_SSI_SDATA8_B,
	FN_MSIOF0_SS2_A, FN_DU1_DR7, FN_QSPI1_SSL,
	FN_HRX1_A, FN_SCL4_A, FN_PWM6_A, FN_DU1_DG0, FN_RX0_A,

	/* IPSR12 */
	FN_HTX1_A, FN_SDA4_A, FN_DU1_DG1, FN_TX0_A,
	FN_HCTS1_N_A, FN_PWM2_A, FN_DU1_DG2, FN_REMOCON_B,
	FN_HRTS1_N_A, FN_DU1_DG3, FN_SSI_WS1_B, FN_IRQ1,
	FN_SD2_CLK, FN_HSCK1, FN_DU1_DG4, FN_SSI_SCK1_B,
	FN_SD2_CMD, FN_SCIF1_SCK_A, FN_TCLK2_A, FN_DU1_DG5, FN_SSI_SCK2_B, FN_PWM3_A,
	FN_SD2_DAT0, FN_RX1_A, FN_SCL1_E, FN_DU1_DG6, FN_SSI_SDATA1_B,
	FN_SD2_DAT1, FN_TX1_A, FN_SDA1_E, FN_DU1_DG7, FN_SSI_WS2_B,
	FN_SD2_DAT2, FN_RX2_A, FN_DU1_DB0, FN_SSI_SDATA2_B,

	/* IPSR13 */
	FN_SD2_DAT3, FN_TX2_A, FN_DU1_DB1, FN_SSI_WS9_B,
	FN_SD2_CD, FN_SCIF2_SCK_A, FN_DU1_DB2, FN_SSI_SCK9_B,
	FN_SD2_WP, FN_SCIF3_SCK, FN_DU1_DB3, FN_SSI_SDATA9_B,
	FN_RX3_A, FN_SCL1_C, FN_MSIOF1_RXD_B, FN_DU1_DB4, FN_AUDIO_CLKA_C, FN_SSI_SDATA4_B,
	FN_TX3_A, FN_SDA1_C, FN_MSIOF1_TXD_B, FN_DU1_DB5, FN_AUDIO_CLKB_C, FN_SSI_WS4_B,
	FN_SCL2_A, FN_MSIOF1_SCK_B, FN_DU1_DB6, FN_AUDIO_CLKC_C, FN_SSI_SCK4_B,
	FN_SDA2_A, FN_MSIOF1_SYNC_B, FN_DU1_DB7, FN_AUDIO_CLKOUT_C,
	FN_SSI_SCK5_A, FN_DU1_DOTCLKOUT1,

	/* IPSR14 */
	FN_SSI_WS5_A, FN_SCL3_C, FN_DU1_DOTCLKIN,
	FN_SSI_SDATA5_A, FN_SDA3_C, FN_DU1_DOTCLKOUT0,
	FN_SSI_SCK6_A, FN_DU1_EXODDF_DU1_ODDF_DISP_CDE,
	FN_SSI_WS6_A, FN_SCL4_C, FN_DU1_EXHSYNC_DU1_HSYNC,
	FN_SSI_SDATA6_A, FN_SDA4_C, FN_DU1_EXVSYNC_DU1_VSYNC,
	FN_SSI_SCK78_A, FN_SDA4_E, FN_DU1_DISP,
	FN_SSI_WS78_A, FN_SCL4_E, FN_DU1_CDE,
	FN_SSI_SDATA7_A, FN_IRQ8, FN_AUDIO_CLKA_D, FN_CAN_CLK_D, FN_VI0_G5,

	/* IPSR15 */
	FN_SSI_SCK0129_A, FN_MSIOF1_RXD_A, FN_RX5_D, FN_VI0_G6,
	FN_SSI_WS0129_A, FN_MSIOF1_TXD_A, FN_TX5_D, FN_VI0_G7,
	FN_SSI_SDATA0_A, FN_MSIOF1_SYNC_A, FN_PWM0_C, FN_VI0_R0,
	FN_SSI_SCK34, FN_MSIOF1_SCK_A, FN_AVB_MDC, FN_DACK1, FN_VI0_R1,
	FN_SSI_WS34, FN_MSIOF1_SS1_A, FN_AVB_MDIO, FN_CAN1_RX_A, FN_DREQ1_N, FN_VI0_R2,
	FN_SSI_SDATA3, FN_MSIOF1_SS2_A, FN_AVB_LINK, FN_CAN1_TX_A, FN_DREQ2_N, FN_VI0_R3,
	FN_SSI_SCK4_A, FN_AVB_MAGIC, FN_VI0_R4,
	FN_SSI_WS4_A, FN_AVB_PHY_INT, FN_VI0_R5,

	/* IPSR16 */
	FN_SSI_SDATA4_A, FN_AVB_CRS, FN_VI0_R6,
	FN_SSI_SCK1_A, FN_SCIF1_SCK_B, FN_PWM1_D, FN_IRQ9, FN_REMOCON_A, FN_DACK2, FN_VI0_CLK, FN_AVB_COL,
	FN_SSI_SDATA8_A, FN_RX1_B, FN_CAN0_RX_D, FN_AVB_AVTP_CAPTURE_B,	FN_VI0_R7,
	FN_SSI_WS1_A, FN_TX1_B, FN_CAN0_TX_D, FN_AVB_AVTP_MATCH_B, FN_VI0_DATA0_VI0_B0,
	FN_SSI_SDATA1_A, FN_HRX1_B, FN_VI0_DATA1_VI0_B1,
	FN_SSI_SCK2_A, FN_HTX1_B, FN_AVB_TXD7, FN_VI0_DATA2_VI0_B2,
	FN_SSI_WS2_A, FN_HCTS1_N_B, FN_AVB_TX_ER, FN_VI0_DATA3_VI0_B3,
	FN_SSI_SDATA2_A, FN_HRTS1_N_B, FN_VI0_DATA4_VI0_B4,

	/* IPSR17 */
	FN_SSI_SCK9_A, FN_RX2_B, FN_SCL3_E, FN_EX_WAIT1, FN_VI0_DATA5_VI0_B5,
	FN_SSI_WS9_A, FN_TX2_B, FN_SDA3_E, FN_VI0_DATA6_VI0_B6,
	FN_SSI_SDATA9_A, FN_SCIF2_SCK_B, FN_PWM2_D, FN_VI0_DATA7_VI0_B7,
	FN_AUDIO_CLKA_A, FN_SCL0_B, FN_VI0_CLKENB,
	FN_AUDIO_CLKB_A, FN_SDA0_B, FN_VI0_FIELD,
	FN_AUDIO_CLKC_A, FN_SCL4_B, FN_VI0_HSYNC_N,
	FN_AUDIO_CLKOUT_A, FN_SDA4_B, FN_VI0_VSYNC_N,

	/* MOD_SEL0 */
	FN_SEL_ADGA_0, FN_SEL_ADGA_1, FN_SEL_ADGA_2, FN_SEL_ADGA_3,
	FN_SEL_CANCLK_0, FN_SEL_CANCLK_1, FN_SEL_CANCLK_2, FN_SEL_CANCLK_3,
	FN_SEL_CAN1_0, FN_SEL_CAN1_1, FN_SEL_CAN1_2, FN_SEL_CAN1_3,
	FN_SEL_CAN0_0, FN_SEL_CAN0_1, FN_SEL_CAN0_2, FN_SEL_CAN0_3,
	FN_SEL_I2C04_0, FN_SEL_I2C04_1,	FN_SEL_I2C04_2, FN_SEL_I2C04_3, FN_SEL_I2C04_4,
	FN_SEL_I2C03_0,	FN_SEL_I2C03_1, FN_SEL_I2C03_2, FN_SEL_I2C03_3, FN_SEL_I2C03_4,
	FN_SEL_I2C02_0, FN_SEL_I2C02_1, FN_SEL_I2C02_2, FN_SEL_I2C02_3,
	FN_SEL_I2C01_0, FN_SEL_I2C01_1, FN_SEL_I2C01_2, FN_SEL_I2C01_3, FN_SEL_I2C01_4,
	FN_SEL_I2C00_0, FN_SEL_I2C00_1, FN_SEL_I2C00_2, FN_SEL_I2C00_3, FN_SEL_I2C00_4,
	FN_SEL_AVB_0, FN_SEL_AVB_1,

	/* MOD_SEL1 */
	FN_SEL_SCIFCLK_0, FN_SEL_SCIFCLK_1,
	FN_SEL_SCIF5_0, FN_SEL_SCIF5_1,	FN_SEL_SCIF5_2, FN_SEL_SCIF5_3, FN_SEL_SCIF5_4, FN_SEL_SCIF5_5,
	FN_SEL_SCIF4_0, FN_SEL_SCIF4_1, FN_SEL_SCIF4_2, FN_SEL_SCIF4_3,	FN_SEL_SCIF4_4,
	FN_SEL_SCIF3_0, FN_SEL_SCIF3_1, FN_SEL_SCIF3_2,
	FN_SEL_SCIF2_0, FN_SEL_SCIF2_1, FN_SEL_SCIF2_2,
	FN_SEL_SCIF2_CLK_0, FN_SEL_SCIF2_CLK_1,
	FN_SEL_SCIF1_0, FN_SEL_SCIF1_1, FN_SEL_SCIF1_2,	FN_SEL_SCIF1_3,
	FN_SEL_SCIF0_0, FN_SEL_SCIF0_1, FN_SEL_SCIF0_2,	FN_SEL_SCIF0_3,
	FN_SEL_MSIOF2_0, FN_SEL_MSIOF2_1, FN_SEL_MSIOF2_2,
	FN_SEL_MSIOF1_0, FN_SEL_MSIOF1_1,
	FN_SEL_MSIOF0_0, FN_SEL_MSIOF0_1,
	FN_SEL_RCN_0, FN_SEL_RCN_1,
	FN_SEL_TMU2_0, FN_SEL_TMU2_1,
	FN_SEL_TMU1_0, FN_SEL_TMU1_1,
	FN_SEL_HSCIF1_0, FN_SEL_HSCIF1_1, FN_SEL_HSCIF1_2,
	FN_SEL_HSCIF0_0, FN_SEL_HSCIF0_1,

	/* MOD_SEL2 */
	FN_SEL_ADGB_0, FN_SEL_ADGB_1, FN_SEL_ADGB_2,
	FN_SEL_ADGC_0, FN_SEL_ADGC_1, FN_SEL_ADGC_2,
	FN_SEL_SSI9_0, FN_SEL_SSI9_1,
	FN_SEL_SSI8_0, FN_SEL_SSI8_1,
	FN_SEL_SSI7_0, FN_SEL_SSI7_1,
	FN_SEL_SSI6_0, FN_SEL_SSI6_1,
	FN_SEL_SSI5_0, FN_SEL_SSI5_1,
	FN_SEL_SSI4_0, FN_SEL_SSI4_1,
	FN_SEL_SSI2_0, FN_SEL_SSI2_1,
	FN_SEL_SSI1_0, FN_SEL_SSI1_1, FN_SEL_SSI1_2, FN_SEL_SSI1_3,
	FN_SEL_SSI0_0, FN_SEL_SSI0_1,
	PINMUX_FUNCTION_END,

	PINMUX_MARK_BEGIN,

	USB0_PWEN_MARK, USB0_OVC_MARK, USB1_PWEN_MARK, USB1_OVC_MARK,
	CLKOUT_MARK, MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK,
	MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK,
	MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK, MMC0_D6_MARK,
	MMC0_D7_MARK,

	/* IPSR0 */
	SD0_CLK_MARK, SSI_SCK1_C_MARK, RX3_C_MARK,
	SD0_CMD_MARK, SSI_WS1_C_MARK, TX3_C_MARK,
	SD0_DAT0_MARK, SSI_SDATA1_C_MARK, RX4_E_MARK,
	SD0_DAT1_MARK, SSI_SCK0129_B_MARK, TX4_E_MARK,
	SD0_DAT2_MARK, SSI_WS0129_B_MARK, RX5_E_MARK,
	SD0_DAT3_MARK, SSI_SDATA0_B_MARK, TX5_E_MARK,
	SD0_CD_MARK, CAN0_RX_A_MARK,
	SD0_WP_MARK, IRQ7_MARK,	CAN0_TX_A_MARK,

	/* IPSR1 */
	MMC0_D4_MARK, SD1_CD_MARK,
	MMC0_D5_MARK, SD1_WP_MARK,
	D0_MARK, SCL3_B_MARK, RX5_B_MARK, IRQ4_MARK, MSIOF2_RXD_C_MARK,	SSI_SDATA5_B_MARK,
	D1_MARK, SDA3_B_MARK, TX5_B_MARK, MSIOF2_TXD_C_MARK, SSI_WS5_B_MARK,
	D2_MARK, RX4_B_MARK, SCL0_D_MARK, PWM1_C_MARK, MSIOF2_SCK_C_MARK, SSI_SCK5_B_MARK,
	D3_MARK, TX4_B_MARK, SDA0_D_MARK, PWM0_A_MARK, MSIOF2_SYNC_C_MARK,
	D4_MARK, IRQ3_MARK, TCLK1_A_MARK, PWM6_C_MARK,
	D5_MARK, HRX2_MARK, SCL1_B_MARK, PWM2_C_MARK, TCLK2_B_MARK,

	/* IPSR2 */
	D6_MARK, HTX2_MARK, SDA1_B_MARK, PWM4_C_MARK,
	D7_MARK, HSCK2_MARK, SCIF1_SCK_C_MARK, IRQ6_MARK, PWM5_C_MARK,
	D8_MARK, HCTS2_N_MARK, RX1_C_MARK, SCL1_D_MARK,	PWM3_C_MARK,
	D9_MARK, HRTS2_N_MARK, TX1_C_MARK, SDA1_D_MARK,
	D10_MARK, MSIOF2_RXD_A_MARK, HRX0_B_MARK,
	D11_MARK, MSIOF2_TXD_A_MARK, HTX0_B_MARK,
	D12_MARK, MSIOF2_SCK_A_MARK, HSCK0_MARK, CAN_CLK_C_MARK,
	D13_MARK, MSIOF2_SYNC_A_MARK, RX4_C_MARK,

	/* IPSR3 */
	D14_MARK, MSIOF2_SS1_MARK, TX4_C_MARK, CAN1_RX_B_MARK, AVB_AVTP_CAPTURE_A_MARK,
	D15_MARK, MSIOF2_SS2_MARK, PWM4_A_MARK, CAN1_TX_B_MARK, IRQ2_MARK, AVB_AVTP_MATCH_A_MARK,
	QSPI0_SPCLK_MARK, WE0_N_MARK,
	QSPI0_MOSI_QSPI0_IO0_MARK, BS_N_MARK,
	QSPI0_MISO_QSPI0_IO1_MARK, RD_WR_N_MARK,
	QSPI0_IO2_MARK, CS0_N_MARK,
	QSPI0_IO3_MARK, RD_N_MARK,
	QSPI0_SSL_MARK, WE1_N_MARK,

	/* IPSR4 */
	EX_WAIT0_MARK, CAN_CLK_B_MARK, SCIF_CLK_A_MARK,
	DU0_DR0_MARK, RX5_C_MARK, SCL2_D_MARK, A0_MARK,
	DU0_DR1_MARK, TX5_C_MARK, SDA2_D_MARK, A1_MARK,
	DU0_DR2_MARK, RX0_D_MARK, SCL0_E_MARK, A2_MARK,
	DU0_DR3_MARK, TX0_D_MARK, SDA0_E_MARK, PWM0_B_MARK, A3_MARK,
	DU0_DR4_MARK, RX1_D_MARK, A4_MARK,
	DU0_DR5_MARK, TX1_D_MARK, PWM1_B_MARK, A5_MARK,
	DU0_DR6_MARK, RX2_C_MARK, A6_MARK,

	/* IPSR5 */
	DU0_DR7_MARK, TX2_C_MARK, PWM2_B_MARK, A7_MARK,
	DU0_DG0_MARK, RX3_B_MARK, SCL3_D_MARK, A8_MARK,
	DU0_DG1_MARK, TX3_B_MARK, SDA3_D_MARK, PWM3_B_MARK, A9_MARK,
	DU0_DG2_MARK, RX4_D_MARK, A10_MARK,
	DU0_DG3_MARK, TX4_D_MARK, PWM4_B_MARK, A11_MARK,
	DU0_DG4_MARK, HRX0_A_MARK, A12_MARK,
	DU0_DG5_MARK, HTX0_A_MARK, PWM5_B_MARK, A13_MARK,
	DU0_DG6_MARK, HRX1_C_MARK, A14_MARK,

	/* IPSR6 */
	DU0_DG7_MARK, HTX1_C_MARK, PWM6_B_MARK, A15_MARK,
	DU0_DB0_MARK, SCL4_D_MARK, CAN0_RX_C_MARK, A16_MARK,
	DU0_DB1_MARK, SDA4_D_MARK, CAN0_TX_C_MARK, A17_MARK,
	DU0_DB2_MARK, HCTS0_N_MARK, A18_MARK,
	DU0_DB3_MARK, HRTS0_N_MARK, A19_MARK,
	DU0_DB4_MARK, HCTS1_N_C_MARK, A20_MARK,
	DU0_DB5_MARK, HRTS1_N_C_MARK, A21_MARK,
	DU0_DB6_MARK, A22_MARK,

	/* IPSR7 */
	DU0_DB7_MARK, A23_MARK,
	DU0_DOTCLKIN_MARK, A24_MARK,
	DU0_DOTCLKOUT0_MARK, A25_MARK,
	DU0_DOTCLKOUT1_MARK, MSIOF2_RXD_B_MARK, CS1_N_A26_MARK,
	DU0_EXHSYNC_DU0_HSYNC_MARK, MSIOF2_TXD_B_MARK, DREQ0_N_MARK,
	DU0_EXVSYNC_DU0_VSYNC_MARK, MSIOF2_SYNC_B_MARK, DACK0_MARK,
	DU0_EXODDF_DU0_ODDF_DISP_CDE_MARK, MSIOF2_SCK_B_MARK, DRACK0_MARK,
	DU0_DISP_MARK, CAN1_RX_C_MARK,

	/* IPSR8 */
	DU0_CDE_MARK, CAN1_TX_C_MARK,
	VI1_CLK_MARK, AVB_RX_CLK_MARK, ETH_REF_CLK_MARK,
	VI1_DATA0_MARK, AVB_RX_DV_MARK, ETH_CRS_DV_MARK,
	VI1_DATA1_MARK, AVB_RXD0_MARK, ETH_RXD0_MARK,
	VI1_DATA2_MARK, AVB_RXD1_MARK, ETH_RXD1_MARK,
	VI1_DATA3_MARK, AVB_RXD2_MARK, ETH_MDIO_MARK,
	VI1_DATA4_MARK, AVB_RXD3_MARK, ETH_RX_ER_MARK,
	VI1_DATA5_MARK, AVB_RXD4_MARK, ETH_LINK_MARK,

	/* IPSR9 */
	VI1_DATA6_MARK, AVB_RXD5_MARK, ETH_TXD1_MARK,
	VI1_DATA7_MARK,	AVB_RXD6_MARK, ETH_TX_EN_MARK,
	VI1_CLKENB_MARK, SCL3_A_MARK, AVB_RXD7_MARK, ETH_MAGIC_MARK,
	VI1_FIELD_MARK, SDA3_A_MARK, AVB_RX_ER_MARK, ETH_TXD0_MARK,
	VI1_HSYNC_N_MARK, RX0_B_MARK, SCL0_C_MARK, AVB_GTXREFCLK_MARK, ETH_MDC_MARK,
	VI1_VSYNC_N_MARK, TX0_B_MARK, SDA0_C_MARK, AUDIO_CLKOUT_B_MARK, AVB_TX_CLK_MARK,
	VI1_DATA8_MARK, SCL2_B_MARK, AVB_TX_EN_MARK,
	VI1_DATA9_MARK, SDA2_B_MARK, AVB_TXD0_MARK,

	/* IPSR10 */
	VI1_DATA10_MARK, CAN0_RX_B_MARK, AVB_TXD1_MARK,
	VI1_DATA11_MARK, CAN0_TX_B_MARK, AVB_TXD2_MARK,
	AVB_TXD3_MARK, AUDIO_CLKA_B_MARK, SSI_SCK1_D_MARK, RX5_F_MARK, MSIOF0_RXD_B_MARK,
	AVB_TXD4_MARK, AUDIO_CLKB_B_MARK, SSI_WS1_D_MARK, TX5_F_MARK, MSIOF0_TXD_B_MARK,
	AVB_TXD5_MARK, SCIF_CLK_B_MARK, AUDIO_CLKC_B_MARK, SSI_SDATA1_D_MARK, MSIOF0_SCK_B_MARK,
	SCL0_A_MARK, RX0_C_MARK, PWM5_A_MARK, TCLK1_B_MARK, AVB_TXD6_MARK, CAN1_RX_D_MARK, MSIOF0_SYNC_B_MARK,
	SDA0_A_MARK, TX0_C_MARK, IRQ5_MARK, CAN_CLK_A_MARK, AVB_GTX_CLK_MARK, CAN1_TX_D_MARK, DVC_MUTE_MARK,
	SCL1_A_MARK, RX4_A_MARK, PWM5_D_MARK, DU1_DR0_MARK, SSI_SCK6_B_MARK, VI0_G0_MARK,

	/* IPSR11 */
	SDA1_A_MARK, TX4_A_MARK, DU1_DR1_MARK, SSI_WS6_B_MARK, VI0_G1_MARK,
	MSIOF0_RXD_A_MARK, RX5_A_MARK, SCL2_C_MARK, DU1_DR2_MARK, QSPI1_MOSI_QSPI1_IO0_MARK, SSI_SDATA6_B_MARK, VI0_G2_MARK,
	MSIOF0_TXD_A_MARK, TX5_A_MARK, SDA2_C_MARK, DU1_DR3_MARK, QSPI1_MISO_QSPI1_IO1_MARK, SSI_WS78_B_MARK, VI0_G3_MARK,
	MSIOF0_SCK_A_MARK, IRQ0_MARK, DU1_DR4_MARK, QSPI1_SPCLK_MARK, SSI_SCK78_B_MARK, VI0_G4_MARK,
	MSIOF0_SYNC_A_MARK, PWM1_A_MARK, DU1_DR5_MARK, QSPI1_IO2_MARK, SSI_SDATA7_B_MARK,
	MSIOF0_SS1_A_MARK, DU1_DR6_MARK, QSPI1_IO3_MARK, SSI_SDATA8_B_MARK,
	MSIOF0_SS2_A_MARK, DU1_DR7_MARK, QSPI1_SSL_MARK,
	HRX1_A_MARK, SCL4_A_MARK, PWM6_A_MARK, DU1_DG0_MARK, RX0_A_MARK,

	/* IPSR12 */
	HTX1_A_MARK, SDA4_A_MARK, DU1_DG1_MARK, TX0_A_MARK,
	HCTS1_N_A_MARK, PWM2_A_MARK, DU1_DG2_MARK, REMOCON_B_MARK,
	HRTS1_N_A_MARK, DU1_DG3_MARK, SSI_WS1_B_MARK, IRQ1_MARK,
	SD2_CLK_MARK, HSCK1_MARK, DU1_DG4_MARK, SSI_SCK1_B_MARK,
	SD2_CMD_MARK, SCIF1_SCK_A_MARK, TCLK2_A_MARK, DU1_DG5_MARK, SSI_SCK2_B_MARK, PWM3_A_MARK,
	SD2_DAT0_MARK, RX1_A_MARK, SCL1_E_MARK, DU1_DG6_MARK, SSI_SDATA1_B_MARK,
	SD2_DAT1_MARK, TX1_A_MARK, SDA1_E_MARK, DU1_DG7_MARK, SSI_WS2_B_MARK,
	SD2_DAT2_MARK, RX2_A_MARK, DU1_DB0_MARK, SSI_SDATA2_B_MARK,

	/* IPSR13 */
	SD2_DAT3_MARK, TX2_A_MARK, DU1_DB1_MARK, SSI_WS9_B_MARK,
	SD2_CD_MARK, SCIF2_SCK_A_MARK, DU1_DB2_MARK, SSI_SCK9_B_MARK,
	SD2_WP_MARK, SCIF3_SCK_MARK, DU1_DB3_MARK, SSI_SDATA9_B_MARK,
	RX3_A_MARK, SCL1_C_MARK, MSIOF1_RXD_B_MARK, DU1_DB4_MARK, AUDIO_CLKA_C_MARK, SSI_SDATA4_B_MARK,
	TX3_A_MARK, SDA1_C_MARK, MSIOF1_TXD_B_MARK, DU1_DB5_MARK, AUDIO_CLKB_C_MARK, SSI_WS4_B_MARK,
	SCL2_A_MARK, MSIOF1_SCK_B_MARK, DU1_DB6_MARK, AUDIO_CLKC_C_MARK, SSI_SCK4_B_MARK,
	SDA2_A_MARK, MSIOF1_SYNC_B_MARK, DU1_DB7_MARK, AUDIO_CLKOUT_C_MARK,
	SSI_SCK5_A_MARK, DU1_DOTCLKOUT1_MARK,

	/* IPSR14 */
	SSI_WS5_A_MARK, SCL3_C_MARK, DU1_DOTCLKIN_MARK,
	SSI_SDATA5_A_MARK, SDA3_C_MARK, DU1_DOTCLKOUT0_MARK,
	SSI_SCK6_A_MARK, DU1_EXODDF_DU1_ODDF_DISP_CDE_MARK,
	SSI_WS6_A_MARK, SCL4_C_MARK, DU1_EXHSYNC_DU1_HSYNC_MARK,
	SSI_SDATA6_A_MARK, SDA4_C_MARK, DU1_EXVSYNC_DU1_VSYNC_MARK,
	SSI_SCK78_A_MARK, SDA4_E_MARK, DU1_DISP_MARK,
	SSI_WS78_A_MARK, SCL4_E_MARK, DU1_CDE_MARK,
	SSI_SDATA7_A_MARK, IRQ8_MARK, AUDIO_CLKA_D_MARK, CAN_CLK_D_MARK, VI0_G5_MARK,

	/* IPSR15 */
	SSI_SCK0129_A_MARK, MSIOF1_RXD_A_MARK, RX5_D_MARK, VI0_G6_MARK,
	SSI_WS0129_A_MARK, MSIOF1_TXD_A_MARK, TX5_D_MARK, VI0_G7_MARK,
	SSI_SDATA0_A_MARK, MSIOF1_SYNC_A_MARK, PWM0_C_MARK, VI0_R0_MARK,
	SSI_SCK34_MARK, MSIOF1_SCK_A_MARK, AVB_MDC_MARK, DACK1_MARK, VI0_R1_MARK,
	SSI_WS34_MARK, MSIOF1_SS1_A_MARK, AVB_MDIO_MARK, CAN1_RX_A_MARK, DREQ1_N_MARK, VI0_R2_MARK,
	SSI_SDATA3_MARK, MSIOF1_SS2_A_MARK, AVB_LINK_MARK, CAN1_TX_A_MARK, DREQ2_N_MARK, VI0_R3_MARK,
	SSI_SCK4_A_MARK, AVB_MAGIC_MARK, VI0_R4_MARK,
	SSI_WS4_A_MARK, AVB_PHY_INT_MARK, VI0_R5_MARK,

	/* IPSR16 */
	SSI_SDATA4_A_MARK, AVB_CRS_MARK, VI0_R6_MARK,
	SSI_SCK1_A_MARK, SCIF1_SCK_B_MARK, PWM1_D_MARK, IRQ9_MARK, REMOCON_A_MARK, DACK2_MARK, VI0_CLK_MARK, AVB_COL_MARK,
	SSI_SDATA8_A_MARK, RX1_B_MARK, CAN0_RX_D_MARK, AVB_AVTP_CAPTURE_B_MARK, VI0_R7_MARK,
	SSI_WS1_A_MARK,	TX1_B_MARK, CAN0_TX_D_MARK, AVB_AVTP_MATCH_B_MARK, VI0_DATA0_VI0_B0_MARK,
	SSI_SDATA1_A_MARK, HRX1_B_MARK, VI0_DATA1_VI0_B1_MARK,
	SSI_SCK2_A_MARK, HTX1_B_MARK, AVB_TXD7_MARK, VI0_DATA2_VI0_B2_MARK,
	SSI_WS2_A_MARK, HCTS1_N_B_MARK, AVB_TX_ER_MARK, VI0_DATA3_VI0_B3_MARK,
	SSI_SDATA2_A_MARK, HRTS1_N_B_MARK, VI0_DATA4_VI0_B4_MARK,

	/* IPSR17 */
	SSI_SCK9_A_MARK, RX2_B_MARK, SCL3_E_MARK, EX_WAIT1_MARK, VI0_DATA5_VI0_B5_MARK,
	SSI_WS9_A_MARK, TX2_B_MARK, SDA3_E_MARK, VI0_DATA6_VI0_B6_MARK,
	SSI_SDATA9_A_MARK, SCIF2_SCK_B_MARK, PWM2_D_MARK, VI0_DATA7_VI0_B7_MARK,
	AUDIO_CLKA_A_MARK, SCL0_B_MARK, VI0_CLKENB_MARK,
	AUDIO_CLKB_A_MARK, SDA0_B_MARK,	VI0_FIELD_MARK,
	AUDIO_CLKC_A_MARK, SCL4_B_MARK, VI0_HSYNC_N_MARK,
	AUDIO_CLKOUT_A_MARK, SDA4_B_MARK, VI0_VSYNC_N_MARK,

	PINMUX_MARK_END,
};

static const u16 pinmux_data[] = {
	PINMUX_DATA_GP_ALL(), /* PINMUX_DATA(GP_M_N_DATA, GP_M_N_FN...), */

	PINMUX_SINGLE(USB0_PWEN),
	PINMUX_SINGLE(USB0_OVC),
	PINMUX_SINGLE(USB1_PWEN),
	PINMUX_SINGLE(USB1_OVC),
	PINMUX_SINGLE(CLKOUT),
	PINMUX_SINGLE(MMC0_CLK_SDHI1_CLK),
	PINMUX_SINGLE(MMC0_CMD_SDHI1_CMD),
	PINMUX_SINGLE(MMC0_D0_SDHI1_D0),
	PINMUX_SINGLE(MMC0_D1_SDHI1_D1),
	PINMUX_SINGLE(MMC0_D2_SDHI1_D2),
	PINMUX_SINGLE(MMC0_D3_SDHI1_D3),
	PINMUX_SINGLE(MMC0_D6),
	PINMUX_SINGLE(MMC0_D7),

	/* IPSR0 */
	PINMUX_IPSR_GPSR(IP0_3_0, SD0_CLK),
	PINMUX_IPSR_MSEL(IP0_3_0, SSI_SCK1_C, SEL_SSI1_2),
	PINMUX_IPSR_MSEL(IP0_3_0, RX3_C, SEL_SCIF3_2),
	PINMUX_IPSR_GPSR(IP0_7_4, SD0_CMD),
	PINMUX_IPSR_MSEL(IP0_7_4, SSI_WS1_C, SEL_SSI1_2),
	PINMUX_IPSR_MSEL(IP0_7_4, TX3_C, SEL_SCIF3_2),
	PINMUX_IPSR_GPSR(IP0_11_8, SD0_DAT0),
	PINMUX_IPSR_MSEL(IP0_11_8, SSI_SDATA1_C, SEL_SSI1_2),
	PINMUX_IPSR_MSEL(IP0_11_8, RX4_E, SEL_SCIF4_4),
	PINMUX_IPSR_GPSR(IP0_15_12, SD0_DAT1),
	PINMUX_IPSR_MSEL(IP0_15_12, SSI_SCK0129_B, SEL_SSI0_1),
	PINMUX_IPSR_MSEL(IP0_15_12, TX4_E, SEL_SCIF4_4),
	PINMUX_IPSR_GPSR(IP0_19_16, SD0_DAT2),
	PINMUX_IPSR_MSEL(IP0_19_16, SSI_WS0129_B, SEL_SSI0_1),
	PINMUX_IPSR_MSEL(IP0_19_16, RX5_E, SEL_SCIF5_4),
	PINMUX_IPSR_GPSR(IP0_23_20, SD0_DAT3),
	PINMUX_IPSR_MSEL(IP0_23_20, SSI_SDATA0_B, SEL_SSI0_1),
	PINMUX_IPSR_MSEL(IP0_23_20, TX5_E, SEL_SCIF5_4),
	PINMUX_IPSR_GPSR(IP0_27_24, SD0_CD),
	PINMUX_IPSR_MSEL(IP0_27_24, CAN0_RX_A, SEL_CAN0_0),
	PINMUX_IPSR_GPSR(IP0_31_28, SD0_WP),
	PINMUX_IPSR_GPSR(IP0_31_28, IRQ7),
	PINMUX_IPSR_MSEL(IP0_31_28, CAN0_TX_A, SEL_CAN0_0),

	/* IPSR1 */
	PINMUX_IPSR_GPSR(IP1_3_0, MMC0_D4),
	PINMUX_IPSR_GPSR(IP1_3_0, SD1_CD),
	PINMUX_IPSR_GPSR(IP1_7_4, MMC0_D5),
	PINMUX_IPSR_GPSR(IP1_7_4, SD1_WP),
	PINMUX_IPSR_GPSR(IP1_11_8, D0),
	PINMUX_IPSR_MSEL(IP1_11_8, SCL3_B, SEL_I2C03_1),
	PINMUX_IPSR_MSEL(IP1_11_8, RX5_B, SEL_SCIF5_1),
	PINMUX_IPSR_GPSR(IP1_11_8, IRQ4),
	PINMUX_IPSR_MSEL(IP1_11_8, MSIOF2_RXD_C, SEL_MSIOF2_2),
	PINMUX_IPSR_MSEL(IP1_11_8, SSI_SDATA5_B, SEL_SSI5_1),
	PINMUX_IPSR_GPSR(IP1_15_12, D1),
	PINMUX_IPSR_MSEL(IP1_15_12, SDA3_B, SEL_I2C03_1),
	PINMUX_IPSR_MSEL(IP1_15_12, TX5_B, SEL_SCIF5_1),
	PINMUX_IPSR_MSEL(IP1_15_12, MSIOF2_TXD_C, SEL_MSIOF2_2),
	PINMUX_IPSR_MSEL(IP1_15_12, SSI_WS5_B, SEL_SSI5_1),
	PINMUX_IPSR_GPSR(IP1_19_16, D2),
	PINMUX_IPSR_MSEL(IP1_19_16, RX4_B, SEL_SCIF4_1),
	PINMUX_IPSR_MSEL(IP1_19_16, SCL0_D, SEL_I2C00_3),
	PINMUX_IPSR_GPSR(IP1_19_16, PWM1_C),
	PINMUX_IPSR_MSEL(IP1_19_16, MSIOF2_SCK_C, SEL_MSIOF2_2),
	PINMUX_IPSR_MSEL(IP1_19_16, SSI_SCK5_B, SEL_SSI5_1),
	PINMUX_IPSR_GPSR(IP1_23_20, D3),
	PINMUX_IPSR_MSEL(IP1_23_20, TX4_B, SEL_SCIF4_1),
	PINMUX_IPSR_MSEL(IP1_23_20, SDA0_D, SEL_I2C00_3),
	PINMUX_IPSR_GPSR(IP1_23_20, PWM0_A),
	PINMUX_IPSR_MSEL(IP1_23_20, MSIOF2_SYNC_C, SEL_MSIOF2_2),
	PINMUX_IPSR_GPSR(IP1_27_24, D4),
	PINMUX_IPSR_GPSR(IP1_27_24, IRQ3),
	PINMUX_IPSR_MSEL(IP1_27_24, TCLK1_A, SEL_TMU1_0),
	PINMUX_IPSR_GPSR(IP1_27_24, PWM6_C),
	PINMUX_IPSR_GPSR(IP1_31_28, D5),
	PINMUX_IPSR_GPSR(IP1_31_28, HRX2),
	PINMUX_IPSR_MSEL(IP1_31_28, SCL1_B, SEL_I2C01_1),
	PINMUX_IPSR_GPSR(IP1_31_28, PWM2_C),
	PINMUX_IPSR_MSEL(IP1_31_28, TCLK2_B, SEL_TMU2_1),

	/* IPSR2 */
	PINMUX_IPSR_GPSR(IP2_3_0, D6),
	PINMUX_IPSR_GPSR(IP2_3_0, HTX2),
	PINMUX_IPSR_MSEL(IP2_3_0, SDA1_B, SEL_I2C01_1),
	PINMUX_IPSR_GPSR(IP2_3_0, PWM4_C),
	PINMUX_IPSR_GPSR(IP2_7_4, D7),
	PINMUX_IPSR_GPSR(IP2_7_4, HSCK2),
	PINMUX_IPSR_MSEL(IP2_7_4, SCIF1_SCK_C, SEL_SCIF1_2),
	PINMUX_IPSR_GPSR(IP2_7_4, IRQ6),
	PINMUX_IPSR_GPSR(IP2_7_4, PWM5_C),
	PINMUX_IPSR_GPSR(IP2_11_8, D8),
	PINMUX_IPSR_GPSR(IP2_11_8, HCTS2_N),
	PINMUX_IPSR_MSEL(IP2_11_8, RX1_C, SEL_SCIF1_2),
	PINMUX_IPSR_MSEL(IP2_11_8, SCL1_D, SEL_I2C01_3),
	PINMUX_IPSR_GPSR(IP2_11_8, PWM3_C),
	PINMUX_IPSR_GPSR(IP2_15_12, D9),
	PINMUX_IPSR_GPSR(IP2_15_12, HRTS2_N),
	PINMUX_IPSR_MSEL(IP2_15_12, TX1_C, SEL_SCIF1_2),
	PINMUX_IPSR_MSEL(IP2_15_12, SDA1_D, SEL_I2C01_3),
	PINMUX_IPSR_GPSR(IP2_19_16, D10),
	PINMUX_IPSR_MSEL(IP2_19_16, MSIOF2_RXD_A, SEL_MSIOF2_0),
	PINMUX_IPSR_MSEL(IP2_19_16, HRX0_B, SEL_HSCIF0_1),
	PINMUX_IPSR_GPSR(IP2_23_20, D11),
	PINMUX_IPSR_MSEL(IP2_23_20, MSIOF2_TXD_A, SEL_MSIOF2_0),
	PINMUX_IPSR_MSEL(IP2_23_20, HTX0_B, SEL_HSCIF0_1),
	PINMUX_IPSR_GPSR(IP2_27_24, D12),
	PINMUX_IPSR_MSEL(IP2_27_24, MSIOF2_SCK_A, SEL_MSIOF2_0),
	PINMUX_IPSR_GPSR(IP2_27_24, HSCK0),
	PINMUX_IPSR_MSEL(IP2_27_24, CAN_CLK_C, SEL_CANCLK_2),
	PINMUX_IPSR_GPSR(IP2_31_28, D13),
	PINMUX_IPSR_MSEL(IP2_31_28, MSIOF2_SYNC_A, SEL_MSIOF2_0),
	PINMUX_IPSR_MSEL(IP2_31_28, RX4_C, SEL_SCIF4_2),

	/* IPSR3 */
	PINMUX_IPSR_GPSR(IP3_3_0, D14),
	PINMUX_IPSR_GPSR(IP3_3_0, MSIOF2_SS1),
	PINMUX_IPSR_MSEL(IP3_3_0, TX4_C, SEL_SCIF4_2),
	PINMUX_IPSR_MSEL(IP3_3_0, CAN1_RX_B, SEL_CAN1_1),
	PINMUX_IPSR_MSEL(IP3_3_0, AVB_AVTP_CAPTURE_A, SEL_AVB_0),
	PINMUX_IPSR_GPSR(IP3_7_4, D15),
	PINMUX_IPSR_GPSR(IP3_7_4, MSIOF2_SS2),
	PINMUX_IPSR_GPSR(IP3_7_4, PWM4_A),
	PINMUX_IPSR_MSEL(IP3_7_4, CAN1_TX_B, SEL_CAN1_1),
	PINMUX_IPSR_GPSR(IP3_7_4, IRQ2),
	PINMUX_IPSR_MSEL(IP3_7_4, AVB_AVTP_MATCH_A, SEL_AVB_0),
	PINMUX_IPSR_GPSR(IP3_11_8, QSPI0_SPCLK),
	PINMUX_IPSR_GPSR(IP3_11_8, WE0_N),
	PINMUX_IPSR_GPSR(IP3_15_12, QSPI0_MOSI_QSPI0_IO0),
	PINMUX_IPSR_GPSR(IP3_15_12, BS_N),
	PINMUX_IPSR_GPSR(IP3_19_16, QSPI0_MISO_QSPI0_IO1),
	PINMUX_IPSR_GPSR(IP3_19_16, RD_WR_N),
	PINMUX_IPSR_GPSR(IP3_23_20, QSPI0_IO2),
	PINMUX_IPSR_GPSR(IP3_23_20, CS0_N),
	PINMUX_IPSR_GPSR(IP3_27_24, QSPI0_IO3),
	PINMUX_IPSR_GPSR(IP3_27_24, RD_N),
	PINMUX_IPSR_GPSR(IP3_31_28, QSPI0_SSL),
	PINMUX_IPSR_GPSR(IP3_31_28, WE1_N),

	/* IPSR4 */
	PINMUX_IPSR_GPSR(IP4_3_0, EX_WAIT0),
	PINMUX_IPSR_MSEL(IP4_3_0, CAN_CLK_B, SEL_CANCLK_1),
	PINMUX_IPSR_MSEL(IP4_3_0, SCIF_CLK_A, SEL_SCIFCLK_0),
	PINMUX_IPSR_GPSR(IP4_7_4, DU0_DR0),
	PINMUX_IPSR_MSEL(IP4_7_4, RX5_C, SEL_SCIF5_2),
	PINMUX_IPSR_MSEL(IP4_7_4, SCL2_D, SEL_I2C02_3),
	PINMUX_IPSR_GPSR(IP4_7_4, A0),
	PINMUX_IPSR_GPSR(IP4_11_8, DU0_DR1),
	PINMUX_IPSR_MSEL(IP4_11_8, TX5_C, SEL_SCIF5_2),
	PINMUX_IPSR_MSEL(IP4_11_8, SDA2_D, SEL_I2C02_3),
	PINMUX_IPSR_GPSR(IP4_11_8, A1),
	PINMUX_IPSR_GPSR(IP4_15_12, DU0_DR2),
	PINMUX_IPSR_MSEL(IP4_15_12, RX0_D, SEL_SCIF0_3),
	PINMUX_IPSR_MSEL(IP4_15_12, SCL0_E, SEL_I2C00_4),
	PINMUX_IPSR_GPSR(IP4_15_12, A2),
	PINMUX_IPSR_GPSR(IP4_19_16, DU0_DR3),
	PINMUX_IPSR_MSEL(IP4_19_16, TX0_D, SEL_SCIF0_3),
	PINMUX_IPSR_MSEL(IP4_19_16, SDA0_E, SEL_I2C00_4),
	PINMUX_IPSR_GPSR(IP4_19_16, PWM0_B),
	PINMUX_IPSR_GPSR(IP4_19_16, A3),
	PINMUX_IPSR_GPSR(IP4_23_20, DU0_DR4),
	PINMUX_IPSR_MSEL(IP4_23_20, RX1_D, SEL_SCIF1_3),
	PINMUX_IPSR_GPSR(IP4_23_20, A4),
	PINMUX_IPSR_GPSR(IP4_27_24, DU0_DR5),
	PINMUX_IPSR_MSEL(IP4_27_24, TX1_D, SEL_SCIF1_3),
	PINMUX_IPSR_GPSR(IP4_27_24, PWM1_B),
	PINMUX_IPSR_GPSR(IP4_27_24, A5),
	PINMUX_IPSR_GPSR(IP4_31_28, DU0_DR6),
	PINMUX_IPSR_MSEL(IP4_31_28, RX2_C, SEL_SCIF2_2),
	PINMUX_IPSR_GPSR(IP4_31_28, A6),

	/* IPSR5 */
	PINMUX_IPSR_GPSR(IP5_3_0, DU0_DR7),
	PINMUX_IPSR_MSEL(IP5_3_0, TX2_C, SEL_SCIF2_2),
	PINMUX_IPSR_GPSR(IP5_3_0, PWM2_B),
	PINMUX_IPSR_GPSR(IP5_3_0, A7),
	PINMUX_IPSR_GPSR(IP5_7_4, DU0_DG0),
	PINMUX_IPSR_MSEL(IP5_7_4, RX3_B, SEL_SCIF3_1),
	PINMUX_IPSR_MSEL(IP5_7_4, SCL3_D, SEL_I2C03_3),
	PINMUX_IPSR_GPSR(IP5_7_4, A8),
	PINMUX_IPSR_GPSR(IP5_11_8, DU0_DG1),
	PINMUX_IPSR_MSEL(IP5_11_8, TX3_B, SEL_SCIF3_1),
	PINMUX_IPSR_MSEL(IP5_11_8, SDA3_D, SEL_I2C03_3),
	PINMUX_IPSR_GPSR(IP5_11_8, PWM3_B),
	PINMUX_IPSR_GPSR(IP5_11_8, A9),
	PINMUX_IPSR_GPSR(IP5_15_12, DU0_DG2),
	PINMUX_IPSR_MSEL(IP5_15_12, RX4_D, SEL_SCIF4_3),
	PINMUX_IPSR_GPSR(IP5_15_12, A10),
	PINMUX_IPSR_GPSR(IP5_19_16, DU0_DG3),
	PINMUX_IPSR_MSEL(IP5_19_16, TX4_D, SEL_SCIF4_3),
	PINMUX_IPSR_GPSR(IP5_19_16, PWM4_B),
	PINMUX_IPSR_GPSR(IP5_19_16, A11),
	PINMUX_IPSR_GPSR(IP5_23_20, DU0_DG4),
	PINMUX_IPSR_MSEL(IP5_23_20, HRX0_A, SEL_HSCIF0_0),
	PINMUX_IPSR_GPSR(IP5_23_20, A12),
	PINMUX_IPSR_GPSR(IP5_27_24, DU0_DG5),
	PINMUX_IPSR_MSEL(IP5_27_24, HTX0_A, SEL_HSCIF0_0),
	PINMUX_IPSR_GPSR(IP5_27_24, PWM5_B),
	PINMUX_IPSR_GPSR(IP5_27_24, A13),
	PINMUX_IPSR_GPSR(IP5_31_28, DU0_DG6),
	PINMUX_IPSR_MSEL(IP5_31_28, HRX1_C, SEL_HSCIF1_2),
	PINMUX_IPSR_GPSR(IP5_31_28, A14),

	/* IPSR6 */
	PINMUX_IPSR_GPSR(IP6_3_0, DU0_DG7),
	PINMUX_IPSR_MSEL(IP6_3_0, HTX1_C, SEL_HSCIF1_2),
	PINMUX_IPSR_GPSR(IP6_3_0, PWM6_B),
	PINMUX_IPSR_GPSR(IP6_3_0, A15),
	PINMUX_IPSR_GPSR(IP6_7_4, DU0_DB0),
	PINMUX_IPSR_MSEL(IP6_7_4, SCL4_D, SEL_I2C04_3),
	PINMUX_IPSR_MSEL(IP6_7_4, CAN0_RX_C, SEL_CAN0_2),
	PINMUX_IPSR_GPSR(IP6_7_4, A16),
	PINMUX_IPSR_GPSR(IP6_11_8, DU0_DB1),
	PINMUX_IPSR_MSEL(IP6_11_8, SDA4_D, SEL_I2C04_3),
	PINMUX_IPSR_MSEL(IP6_11_8, CAN0_TX_C, SEL_CAN0_2),
	PINMUX_IPSR_GPSR(IP6_11_8, A17),
	PINMUX_IPSR_GPSR(IP6_15_12, DU0_DB2),
	PINMUX_IPSR_GPSR(IP6_15_12, HCTS0_N),
	PINMUX_IPSR_GPSR(IP6_15_12, A18),
	PINMUX_IPSR_GPSR(IP6_19_16, DU0_DB3),
	PINMUX_IPSR_GPSR(IP6_19_16, HRTS0_N),
	PINMUX_IPSR_GPSR(IP6_19_16, A19),
	PINMUX_IPSR_GPSR(IP6_23_20, DU0_DB4),
	PINMUX_IPSR_MSEL(IP6_23_20, HCTS1_N_C, SEL_HSCIF1_2),
	PINMUX_IPSR_GPSR(IP6_23_20, A20),
	PINMUX_IPSR_GPSR(IP6_27_24, DU0_DB5),
	PINMUX_IPSR_MSEL(IP6_27_24, HRTS1_N_C, SEL_HSCIF1_2),
	PINMUX_IPSR_GPSR(IP6_27_24, A21),
	PINMUX_IPSR_GPSR(IP6_31_28, DU0_DB6),
	PINMUX_IPSR_GPSR(IP6_31_28, A22),

	/* IPSR7 */
	PINMUX_IPSR_GPSR(IP7_3_0, DU0_DB7),
	PINMUX_IPSR_GPSR(IP7_3_0, A23),
	PINMUX_IPSR_GPSR(IP7_7_4, DU0_DOTCLKIN),
	PINMUX_IPSR_GPSR(IP7_7_4, A24),
	PINMUX_IPSR_GPSR(IP7_11_8, DU0_DOTCLKOUT0),
	PINMUX_IPSR_GPSR(IP7_11_8, A25),
	PINMUX_IPSR_GPSR(IP7_15_12, DU0_DOTCLKOUT1),
	PINMUX_IPSR_MSEL(IP7_15_12, MSIOF2_RXD_B, SEL_MSIOF2_1),
	PINMUX_IPSR_GPSR(IP7_15_12, CS1_N_A26),
	PINMUX_IPSR_GPSR(IP7_19_16, DU0_EXHSYNC_DU0_HSYNC),
	PINMUX_IPSR_MSEL(IP7_19_16, MSIOF2_TXD_B, SEL_MSIOF2_1),
	PINMUX_IPSR_GPSR(IP7_19_16, DREQ0_N),
	PINMUX_IPSR_GPSR(IP7_23_20, DU0_EXVSYNC_DU0_VSYNC),
	PINMUX_IPSR_MSEL(IP7_23_20, MSIOF2_SYNC_B, SEL_MSIOF2_1),
	PINMUX_IPSR_GPSR(IP7_23_20, DACK0),
	PINMUX_IPSR_GPSR(IP7_27_24, DU0_EXODDF_DU0_ODDF_DISP_CDE),
	PINMUX_IPSR_MSEL(IP7_27_24, MSIOF2_SCK_B, SEL_MSIOF2_1),
	PINMUX_IPSR_GPSR(IP7_27_24, DRACK0),
	PINMUX_IPSR_GPSR(IP7_31_28, DU0_DISP),
	PINMUX_IPSR_MSEL(IP7_31_28, CAN1_RX_C, SEL_CAN1_2),

	/* IPSR8 */
	PINMUX_IPSR_GPSR(IP8_3_0, DU0_CDE),
	PINMUX_IPSR_MSEL(IP8_3_0, CAN1_TX_C, SEL_CAN1_2),
	PINMUX_IPSR_GPSR(IP8_7_4, VI1_CLK),
	PINMUX_IPSR_GPSR(IP8_7_4, AVB_RX_CLK),
	PINMUX_IPSR_GPSR(IP8_7_4, ETH_REF_CLK),
	PINMUX_IPSR_GPSR(IP8_11_8, VI1_DATA0),
	PINMUX_IPSR_GPSR(IP8_11_8, AVB_RX_DV),
	PINMUX_IPSR_GPSR(IP8_11_8, ETH_CRS_DV),
	PINMUX_IPSR_GPSR(IP8_15_12, VI1_DATA1),
	PINMUX_IPSR_GPSR(IP8_15_12, AVB_RXD0),
	PINMUX_IPSR_GPSR(IP8_15_12, ETH_RXD0),
	PINMUX_IPSR_GPSR(IP8_19_16, VI1_DATA2),
	PINMUX_IPSR_GPSR(IP8_19_16, AVB_RXD1),
	PINMUX_IPSR_GPSR(IP8_19_16, ETH_RXD1),
	PINMUX_IPSR_GPSR(IP8_23_20, VI1_DATA3),
	PINMUX_IPSR_GPSR(IP8_23_20, AVB_RXD2),
	PINMUX_IPSR_GPSR(IP8_23_20, ETH_MDIO),
	PINMUX_IPSR_GPSR(IP8_27_24, VI1_DATA4),
	PINMUX_IPSR_GPSR(IP8_27_24, AVB_RXD3),
	PINMUX_IPSR_GPSR(IP8_27_24, ETH_RX_ER),
	PINMUX_IPSR_GPSR(IP8_31_28, VI1_DATA5),
	PINMUX_IPSR_GPSR(IP8_31_28, AVB_RXD4),
	PINMUX_IPSR_GPSR(IP8_31_28, ETH_LINK),

	/* IPSR9 */
	PINMUX_IPSR_GPSR(IP9_3_0, VI1_DATA6),
	PINMUX_IPSR_GPSR(IP9_3_0, AVB_RXD5),
	PINMUX_IPSR_GPSR(IP9_3_0, ETH_TXD1),
	PINMUX_IPSR_GPSR(IP9_7_4, VI1_DATA7),
	PINMUX_IPSR_GPSR(IP9_7_4, AVB_RXD6),
	PINMUX_IPSR_GPSR(IP9_7_4, ETH_TX_EN),
	PINMUX_IPSR_GPSR(IP9_11_8, VI1_CLKENB),
	PINMUX_IPSR_MSEL(IP9_11_8, SCL3_A, SEL_I2C03_0),
	PINMUX_IPSR_GPSR(IP9_11_8, AVB_RXD7),
	PINMUX_IPSR_GPSR(IP9_11_8, ETH_MAGIC),
	PINMUX_IPSR_GPSR(IP9_15_12, VI1_FIELD),
	PINMUX_IPSR_MSEL(IP9_15_12, SDA3_A, SEL_I2C03_0),
	PINMUX_IPSR_GPSR(IP9_15_12, AVB_RX_ER),
	PINMUX_IPSR_GPSR(IP9_15_12, ETH_TXD0),
	PINMUX_IPSR_GPSR(IP9_19_16, VI1_HSYNC_N),
	PINMUX_IPSR_MSEL(IP9_19_16, RX0_B, SEL_SCIF0_1),
	PINMUX_IPSR_MSEL(IP9_19_16, SCL0_C, SEL_I2C00_2),
	PINMUX_IPSR_GPSR(IP9_19_16, AVB_GTXREFCLK),
	PINMUX_IPSR_GPSR(IP9_19_16, ETH_MDC),
	PINMUX_IPSR_GPSR(IP9_23_20, VI1_VSYNC_N),
	PINMUX_IPSR_MSEL(IP9_23_20, TX0_B, SEL_SCIF0_1),
	PINMUX_IPSR_MSEL(IP9_23_20, SDA0_C, SEL_I2C00_2),
	PINMUX_IPSR_GPSR(IP9_23_20, AUDIO_CLKOUT_B),
	PINMUX_IPSR_GPSR(IP9_23_20, AVB_TX_CLK),
	PINMUX_IPSR_GPSR(IP9_27_24, VI1_DATA8),
	PINMUX_IPSR_MSEL(IP9_27_24, SCL2_B, SEL_I2C02_1),
	PINMUX_IPSR_GPSR(IP9_27_24, AVB_TX_EN),
	PINMUX_IPSR_GPSR(IP9_31_28, VI1_DATA9),
	PINMUX_IPSR_MSEL(IP9_31_28, SDA2_B, SEL_I2C02_1),
	PINMUX_IPSR_GPSR(IP9_31_28, AVB_TXD0),

	/* IPSR10 */
	PINMUX_IPSR_GPSR(IP10_3_0, VI1_DATA10),
	PINMUX_IPSR_MSEL(IP10_3_0, CAN0_RX_B, SEL_CAN0_1),
	PINMUX_IPSR_GPSR(IP10_3_0, AVB_TXD1),
	PINMUX_IPSR_GPSR(IP10_7_4, VI1_DATA11),
	PINMUX_IPSR_MSEL(IP10_7_4, CAN0_TX_B, SEL_CAN0_1),
	PINMUX_IPSR_GPSR(IP10_7_4, AVB_TXD2),
	PINMUX_IPSR_GPSR(IP10_11_8, AVB_TXD3),
	PINMUX_IPSR_MSEL(IP10_11_8, AUDIO_CLKA_B, SEL_ADGA_1),
	PINMUX_IPSR_MSEL(IP10_11_8, SSI_SCK1_D, SEL_SSI1_3),
	PINMUX_IPSR_MSEL(IP10_11_8, RX5_F, SEL_SCIF5_5),
	PINMUX_IPSR_MSEL(IP10_11_8, MSIOF0_RXD_B, SEL_MSIOF0_1),
	PINMUX_IPSR_GPSR(IP10_15_12, AVB_TXD4),
	PINMUX_IPSR_MSEL(IP10_15_12, AUDIO_CLKB_B, SEL_ADGB_1),
	PINMUX_IPSR_MSEL(IP10_15_12, SSI_WS1_D, SEL_SSI1_3),
	PINMUX_IPSR_MSEL(IP10_15_12, TX5_F, SEL_SCIF5_5),
	PINMUX_IPSR_MSEL(IP10_15_12, MSIOF0_TXD_B, SEL_MSIOF0_1),
	PINMUX_IPSR_GPSR(IP10_19_16, AVB_TXD5),
	PINMUX_IPSR_MSEL(IP10_19_16, SCIF_CLK_B, SEL_SCIFCLK_1),
	PINMUX_IPSR_MSEL(IP10_19_16, AUDIO_CLKC_B, SEL_ADGC_1),
	PINMUX_IPSR_MSEL(IP10_19_16, SSI_SDATA1_D, SEL_SSI1_3),
	PINMUX_IPSR_MSEL(IP10_19_16, MSIOF0_SCK_B, SEL_MSIOF0_1),
	PINMUX_IPSR_MSEL(IP10_23_20, SCL0_A, SEL_I2C00_0),
	PINMUX_IPSR_MSEL(IP10_23_20, RX0_C, SEL_SCIF0_2),
	PINMUX_IPSR_GPSR(IP10_23_20, PWM5_A),
	PINMUX_IPSR_MSEL(IP10_23_20, TCLK1_B, SEL_TMU1_1),
	PINMUX_IPSR_GPSR(IP10_23_20, AVB_TXD6),
	PINMUX_IPSR_MSEL(IP10_23_20, CAN1_RX_D, SEL_CAN1_3),
	PINMUX_IPSR_MSEL(IP10_23_20, MSIOF0_SYNC_B, SEL_MSIOF0_1),
	PINMUX_IPSR_MSEL(IP10_27_24, SDA0_A, SEL_I2C00_0),
	PINMUX_IPSR_MSEL(IP10_27_24, TX0_C, SEL_SCIF0_2),
	PINMUX_IPSR_GPSR(IP10_27_24, IRQ5),
	PINMUX_IPSR_MSEL(IP10_27_24, CAN_CLK_A, SEL_CANCLK_0),
	PINMUX_IPSR_GPSR(IP10_27_24, AVB_GTX_CLK),
	PINMUX_IPSR_MSEL(IP10_27_24, CAN1_TX_D, SEL_CAN1_3),
	PINMUX_IPSR_GPSR(IP10_27_24, DVC_MUTE),
	PINMUX_IPSR_MSEL(IP10_31_28, SCL1_A, SEL_I2C01_0),
	PINMUX_IPSR_MSEL(IP10_31_28, RX4_A, SEL_SCIF4_0),
	PINMUX_IPSR_GPSR(IP10_31_28, PWM5_D),
	PINMUX_IPSR_GPSR(IP10_31_28, DU1_DR0),
	PINMUX_IPSR_MSEL(IP10_31_28, SSI_SCK6_B, SEL_SSI6_1),
	PINMUX_IPSR_GPSR(IP10_31_28, VI0_G0),

	/* IPSR11 */
	PINMUX_IPSR_MSEL(IP11_3_0, SDA1_A, SEL_I2C01_0),
	PINMUX_IPSR_MSEL(IP11_3_0, TX4_A, SEL_SCIF4_0),
	PINMUX_IPSR_GPSR(IP11_3_0, DU1_DR1),
	PINMUX_IPSR_MSEL(IP11_3_0, SSI_WS6_B, SEL_SSI6_1),
	PINMUX_IPSR_GPSR(IP11_3_0, VI0_G1),
	PINMUX_IPSR_MSEL(IP11_7_4, MSIOF0_RXD_A, SEL_MSIOF0_0),
	PINMUX_IPSR_MSEL(IP11_7_4, RX5_A, SEL_SCIF5_0),
	PINMUX_IPSR_MSEL(IP11_7_4, SCL2_C, SEL_I2C02_2),
	PINMUX_IPSR_GPSR(IP11_7_4, DU1_DR2),
	PINMUX_IPSR_GPSR(IP11_7_4, QSPI1_MOSI_QSPI1_IO0),
	PINMUX_IPSR_MSEL(IP11_7_4, SSI_SDATA6_B, SEL_SSI6_1),
	PINMUX_IPSR_GPSR(IP11_7_4, VI0_G2),
	PINMUX_IPSR_MSEL(IP11_11_8, MSIOF0_TXD_A, SEL_MSIOF0_0),
	PINMUX_IPSR_MSEL(IP11_11_8, TX5_A, SEL_SCIF5_0),
	PINMUX_IPSR_MSEL(IP11_11_8, SDA2_C, SEL_I2C02_2),
	PINMUX_IPSR_GPSR(IP11_11_8, DU1_DR3),
	PINMUX_IPSR_GPSR(IP11_11_8, QSPI1_MISO_QSPI1_IO1),
	PINMUX_IPSR_MSEL(IP11_11_8, SSI_WS78_B, SEL_SSI7_1),
	PINMUX_IPSR_GPSR(IP11_11_8, VI0_G3),
	PINMUX_IPSR_MSEL(IP11_15_12, MSIOF0_SCK_A, SEL_MSIOF0_0),
	PINMUX_IPSR_GPSR(IP11_15_12, IRQ0),
	PINMUX_IPSR_GPSR(IP11_15_12, DU1_DR4),
	PINMUX_IPSR_GPSR(IP11_15_12, QSPI1_SPCLK),
	PINMUX_IPSR_MSEL(IP11_15_12, SSI_SCK78_B, SEL_SSI7_1),
	PINMUX_IPSR_GPSR(IP11_15_12, VI0_G4),
	PINMUX_IPSR_MSEL(IP11_19_16, MSIOF0_SYNC_A, SEL_MSIOF0_0),
	PINMUX_IPSR_GPSR(IP11_19_16, PWM1_A),
	PINMUX_IPSR_GPSR(IP11_19_16, DU1_DR5),
	PINMUX_IPSR_GPSR(IP11_19_16, QSPI1_IO2),
	PINMUX_IPSR_MSEL(IP11_19_16, SSI_SDATA7_B, SEL_SSI7_1),
	PINMUX_IPSR_MSEL(IP11_23_20, MSIOF0_SS1_A, SEL_MSIOF0_0),
	PINMUX_IPSR_GPSR(IP11_23_20, DU1_DR6),
	PINMUX_IPSR_GPSR(IP11_23_20, QSPI1_IO3),
	PINMUX_IPSR_MSEL(IP11_23_20, SSI_SDATA8_B, SEL_SSI8_1),
	PINMUX_IPSR_MSEL(IP11_27_24, MSIOF0_SS2_A, SEL_MSIOF0_0),
	PINMUX_IPSR_GPSR(IP11_27_24, DU1_DR7),
	PINMUX_IPSR_GPSR(IP11_27_24, QSPI1_SSL),
	PINMUX_IPSR_MSEL(IP11_31_28, HRX1_A, SEL_HSCIF1_0),
	PINMUX_IPSR_MSEL(IP11_31_28, SCL4_A, SEL_I2C04_0),
	PINMUX_IPSR_GPSR(IP11_31_28, PWM6_A),
	PINMUX_IPSR_GPSR(IP11_31_28, DU1_DG0),
	PINMUX_IPSR_MSEL(IP11_31_28, RX0_A, SEL_SCIF0_0),

	/* IPSR12 */
	PINMUX_IPSR_MSEL(IP12_3_0, HTX1_A, SEL_HSCIF1_0),
	PINMUX_IPSR_MSEL(IP12_3_0, SDA4_A, SEL_I2C04_0),
	PINMUX_IPSR_GPSR(IP12_3_0, DU1_DG1),
	PINMUX_IPSR_MSEL(IP12_3_0, TX0_A, SEL_SCIF0_0),
	PINMUX_IPSR_MSEL(IP12_7_4, HCTS1_N_A, SEL_HSCIF1_0),
	PINMUX_IPSR_GPSR(IP12_7_4, PWM2_A),
	PINMUX_IPSR_GPSR(IP12_7_4, DU1_DG2),
	PINMUX_IPSR_MSEL(IP12_7_4, REMOCON_B, SEL_RCN_1),
	PINMUX_IPSR_MSEL(IP12_11_8, HRTS1_N_A, SEL_HSCIF1_0),
	PINMUX_IPSR_GPSR(IP12_11_8, DU1_DG3),
	PINMUX_IPSR_MSEL(IP12_11_8, SSI_WS1_B, SEL_SSI1_1),
	PINMUX_IPSR_GPSR(IP12_11_8, IRQ1),
	PINMUX_IPSR_GPSR(IP12_15_12, SD2_CLK),
	PINMUX_IPSR_GPSR(IP12_15_12, HSCK1),
	PINMUX_IPSR_GPSR(IP12_15_12, DU1_DG4),
	PINMUX_IPSR_MSEL(IP12_15_12, SSI_SCK1_B, SEL_SSI1_1),
	PINMUX_IPSR_GPSR(IP12_19_16, SD2_CMD),
	PINMUX_IPSR_MSEL(IP12_19_16, SCIF1_SCK_A, SEL_SCIF1_0),
	PINMUX_IPSR_MSEL(IP12_19_16, TCLK2_A, SEL_TMU2_0),
	PINMUX_IPSR_GPSR(IP12_19_16, DU1_DG5),
	PINMUX_IPSR_MSEL(IP12_19_16, SSI_SCK2_B, SEL_SSI2_1),
	PINMUX_IPSR_GPSR(IP12_19_16, PWM3_A),
	PINMUX_IPSR_GPSR(IP12_23_20, SD2_DAT0),
	PINMUX_IPSR_MSEL(IP12_23_20, RX1_A, SEL_SCIF1_0),
	PINMUX_IPSR_MSEL(IP12_23_20, SCL1_E, SEL_I2C01_4),
	PINMUX_IPSR_GPSR(IP12_23_20, DU1_DG6),
	PINMUX_IPSR_MSEL(IP12_23_20, SSI_SDATA1_B, SEL_SSI1_1),
	PINMUX_IPSR_GPSR(IP12_27_24, SD2_DAT1),
	PINMUX_IPSR_MSEL(IP12_27_24, TX1_A, SEL_SCIF1_0),
	PINMUX_IPSR_MSEL(IP12_27_24, SDA1_E, SEL_I2C01_4),
	PINMUX_IPSR_GPSR(IP12_27_24, DU1_DG7),
	PINMUX_IPSR_MSEL(IP12_27_24, SSI_WS2_B, SEL_SSI2_1),
	PINMUX_IPSR_GPSR(IP12_31_28, SD2_DAT2),
	PINMUX_IPSR_MSEL(IP12_31_28, RX2_A, SEL_SCIF2_0),
	PINMUX_IPSR_GPSR(IP12_31_28, DU1_DB0),
	PINMUX_IPSR_MSEL(IP12_31_28, SSI_SDATA2_B, SEL_SSI2_1),

	/* IPSR13 */
	PINMUX_IPSR_GPSR(IP13_3_0, SD2_DAT3),
	PINMUX_IPSR_MSEL(IP13_3_0, TX2_A, SEL_SCIF2_0),
	PINMUX_IPSR_GPSR(IP13_3_0, DU1_DB1),
	PINMUX_IPSR_MSEL(IP13_3_0, SSI_WS9_B, SEL_SSI9_1),
	PINMUX_IPSR_GPSR(IP13_7_4, SD2_CD),
	PINMUX_IPSR_MSEL(IP13_7_4, SCIF2_SCK_A, SEL_SCIF2_CLK_0),
	PINMUX_IPSR_GPSR(IP13_7_4, DU1_DB2),
	PINMUX_IPSR_MSEL(IP13_7_4, SSI_SCK9_B, SEL_SSI9_1),
	PINMUX_IPSR_GPSR(IP13_11_8, SD2_WP),
	PINMUX_IPSR_GPSR(IP13_11_8, SCIF3_SCK),
	PINMUX_IPSR_GPSR(IP13_11_8, DU1_DB3),
	PINMUX_IPSR_MSEL(IP13_11_8, SSI_SDATA9_B, SEL_SSI9_1),
	PINMUX_IPSR_MSEL(IP13_15_12, RX3_A, SEL_SCIF3_0),
	PINMUX_IPSR_MSEL(IP13_15_12, SCL1_C, SEL_I2C01_2),
	PINMUX_IPSR_MSEL(IP13_15_12, MSIOF1_RXD_B, SEL_MSIOF1_1),
	PINMUX_IPSR_GPSR(IP13_15_12, DU1_DB4),
	PINMUX_IPSR_MSEL(IP13_15_12, AUDIO_CLKA_C, SEL_ADGA_2),
	PINMUX_IPSR_MSEL(IP13_15_12, SSI_SDATA4_B, SEL_SSI4_1),
	PINMUX_IPSR_MSEL(IP13_19_16, TX3_A, SEL_SCIF3_0),
	PINMUX_IPSR_MSEL(IP13_19_16, SDA1_C, SEL_I2C01_2),
	PINMUX_IPSR_MSEL(IP13_19_16, MSIOF1_TXD_B, SEL_MSIOF1_1),
	PINMUX_IPSR_GPSR(IP13_19_16, DU1_DB5),
	PINMUX_IPSR_MSEL(IP13_19_16, AUDIO_CLKB_C, SEL_ADGB_2),
	PINMUX_IPSR_MSEL(IP13_19_16, SSI_WS4_B, SEL_SSI4_1),
	PINMUX_IPSR_MSEL(IP13_23_20, SCL2_A, SEL_I2C02_0),
	PINMUX_IPSR_MSEL(IP13_23_20, MSIOF1_SCK_B, SEL_MSIOF1_1),
	PINMUX_IPSR_GPSR(IP13_23_20, DU1_DB6),
	PINMUX_IPSR_MSEL(IP13_23_20, AUDIO_CLKC_C, SEL_ADGC_2),
	PINMUX_IPSR_MSEL(IP13_23_20, SSI_SCK4_B, SEL_SSI4_1),
	PINMUX_IPSR_MSEL(IP13_27_24, SDA2_A, SEL_I2C02_0),
	PINMUX_IPSR_MSEL(IP13_27_24, MSIOF1_SYNC_B, SEL_MSIOF1_1),
	PINMUX_IPSR_GPSR(IP13_27_24, DU1_DB7),
	PINMUX_IPSR_GPSR(IP13_27_24, AUDIO_CLKOUT_C),
	PINMUX_IPSR_MSEL(IP13_31_28, SSI_SCK5_A, SEL_SSI5_0),
	PINMUX_IPSR_GPSR(IP13_31_28, DU1_DOTCLKOUT1),

	/* IPSR14 */
	PINMUX_IPSR_MSEL(IP14_3_0, SSI_WS5_A, SEL_SSI5_0),
	PINMUX_IPSR_MSEL(IP14_3_0, SCL3_C, SEL_I2C03_2),
	PINMUX_IPSR_GPSR(IP14_3_0, DU1_DOTCLKIN),
	PINMUX_IPSR_MSEL(IP14_7_4, SSI_SDATA5_A, SEL_SSI5_0),
	PINMUX_IPSR_MSEL(IP14_7_4, SDA3_C, SEL_I2C03_2),
	PINMUX_IPSR_GPSR(IP14_7_4, DU1_DOTCLKOUT0),
	PINMUX_IPSR_MSEL(IP14_11_8, SSI_SCK6_A, SEL_SSI6_0),
	PINMUX_IPSR_GPSR(IP14_11_8, DU1_EXODDF_DU1_ODDF_DISP_CDE),
	PINMUX_IPSR_MSEL(IP14_15_12, SSI_WS6_A, SEL_SSI6_0),
	PINMUX_IPSR_MSEL(IP14_15_12, SCL4_C, SEL_I2C04_2),
	PINMUX_IPSR_GPSR(IP14_15_12, DU1_EXHSYNC_DU1_HSYNC),
	PINMUX_IPSR_MSEL(IP14_19_16, SSI_SDATA6_A, SEL_SSI6_0),
	PINMUX_IPSR_MSEL(IP14_19_16, SDA4_C, SEL_I2C04_2),
	PINMUX_IPSR_GPSR(IP14_19_16, DU1_EXVSYNC_DU1_VSYNC),
	PINMUX_IPSR_MSEL(IP14_23_20, SSI_SCK78_A, SEL_SSI7_0),
	PINMUX_IPSR_MSEL(IP14_23_20, SDA4_E, SEL_I2C04_4),
	PINMUX_IPSR_GPSR(IP14_23_20, DU1_DISP),
	PINMUX_IPSR_MSEL(IP14_27_24, SSI_WS78_A, SEL_SSI7_0),
	PINMUX_IPSR_MSEL(IP14_27_24, SCL4_E, SEL_I2C04_4),
	PINMUX_IPSR_GPSR(IP14_27_24, DU1_CDE),
	PINMUX_IPSR_MSEL(IP14_31_28, SSI_SDATA7_A, SEL_SSI7_0),
	PINMUX_IPSR_GPSR(IP14_31_28, IRQ8),
	PINMUX_IPSR_MSEL(IP14_31_28, AUDIO_CLKA_D, SEL_ADGA_3),
	PINMUX_IPSR_MSEL(IP14_31_28, CAN_CLK_D, SEL_CANCLK_3),
	PINMUX_IPSR_GPSR(IP14_31_28, VI0_G5),

	/* IPSR15 */
	PINMUX_IPSR_MSEL(IP15_3_0, SSI_SCK0129_A, SEL_SSI0_0),
	PINMUX_IPSR_MSEL(IP15_3_0, MSIOF1_RXD_A, SEL_MSIOF1_0),
	PINMUX_IPSR_MSEL(IP15_3_0, RX5_D, SEL_SCIF5_3),
	PINMUX_IPSR_GPSR(IP15_3_0, VI0_G6),
	PINMUX_IPSR_MSEL(IP15_7_4, SSI_WS0129_A, SEL_SSI0_0),
	PINMUX_IPSR_MSEL(IP15_7_4, MSIOF1_TXD_A, SEL_MSIOF1_0),
	PINMUX_IPSR_MSEL(IP15_7_4, TX5_D, SEL_SCIF5_3),
	PINMUX_IPSR_GPSR(IP15_7_4, VI0_G7),
	PINMUX_IPSR_MSEL(IP15_11_8, SSI_SDATA0_A, SEL_SSI0_0),
	PINMUX_IPSR_MSEL(IP15_11_8, MSIOF1_SYNC_A, SEL_MSIOF1_0),
	PINMUX_IPSR_GPSR(IP15_11_8, PWM0_C),
	PINMUX_IPSR_GPSR(IP15_11_8, VI0_R0),
	PINMUX_IPSR_GPSR(IP15_15_12, SSI_SCK34),
	PINMUX_IPSR_MSEL(IP15_15_12, MSIOF1_SCK_A, SEL_MSIOF1_0),
	PINMUX_IPSR_GPSR(IP15_15_12, AVB_MDC),
	PINMUX_IPSR_GPSR(IP15_15_12, DACK1),
	PINMUX_IPSR_GPSR(IP15_15_12, VI0_R1),
	PINMUX_IPSR_GPSR(IP15_19_16, SSI_WS34),
	PINMUX_IPSR_MSEL(IP15_19_16, MSIOF1_SS1_A, SEL_MSIOF1_0),
	PINMUX_IPSR_GPSR(IP15_19_16, AVB_MDIO),
	PINMUX_IPSR_MSEL(IP15_19_16, CAN1_RX_A, SEL_CAN1_0),
	PINMUX_IPSR_GPSR(IP15_19_16, DREQ1_N),
	PINMUX_IPSR_GPSR(IP15_19_16, VI0_R2),
	PINMUX_IPSR_GPSR(IP15_23_20, SSI_SDATA3),
	PINMUX_IPSR_MSEL(IP15_23_20, MSIOF1_SS2_A, SEL_MSIOF1_0),
	PINMUX_IPSR_GPSR(IP15_23_20, AVB_LINK),
	PINMUX_IPSR_MSEL(IP15_23_20, CAN1_TX_A, SEL_CAN1_0),
	PINMUX_IPSR_GPSR(IP15_23_20, DREQ2_N),
	PINMUX_IPSR_GPSR(IP15_23_20, VI0_R3),
	PINMUX_IPSR_MSEL(IP15_27_24, SSI_SCK4_A, SEL_SSI4_0),
	PINMUX_IPSR_GPSR(IP15_27_24, AVB_MAGIC),
	PINMUX_IPSR_GPSR(IP15_27_24, VI0_R4),
	PINMUX_IPSR_MSEL(IP15_31_28, SSI_WS4_A, SEL_SSI4_0),
	PINMUX_IPSR_GPSR(IP15_31_28, AVB_PHY_INT),
	PINMUX_IPSR_GPSR(IP15_31_28, VI0_R5),

	/* IPSR16 */
	PINMUX_IPSR_MSEL(IP16_3_0, SSI_SDATA4_A, SEL_SSI4_0),
	PINMUX_IPSR_GPSR(IP16_3_0, AVB_CRS),
	PINMUX_IPSR_GPSR(IP16_3_0, VI0_R6),
	PINMUX_IPSR_MSEL(IP16_7_4, SSI_SCK1_A, SEL_SSI1_0),
	PINMUX_IPSR_MSEL(IP16_7_4, SCIF1_SCK_B, SEL_SCIF1_1),
	PINMUX_IPSR_GPSR(IP16_7_4, PWM1_D),
	PINMUX_IPSR_GPSR(IP16_7_4, IRQ9),
	PINMUX_IPSR_MSEL(IP16_7_4, REMOCON_A, SEL_RCN_0),
	PINMUX_IPSR_GPSR(IP16_7_4, DACK2),
	PINMUX_IPSR_GPSR(IP16_7_4, VI0_CLK),
	PINMUX_IPSR_GPSR(IP16_7_4, AVB_COL),
	PINMUX_IPSR_MSEL(IP16_11_8, SSI_SDATA8_A, SEL_SSI8_0),
	PINMUX_IPSR_MSEL(IP16_11_8, RX1_B, SEL_SCIF1_1),
	PINMUX_IPSR_MSEL(IP16_11_8, CAN0_RX_D, SEL_CAN0_3),
	PINMUX_IPSR_MSEL(IP16_11_8, AVB_AVTP_CAPTURE_B, SEL_AVB_1),
	PINMUX_IPSR_GPSR(IP16_11_8, VI0_R7),
	PINMUX_IPSR_MSEL(IP16_15_12, SSI_WS1_A, SEL_SSI1_0),
	PINMUX_IPSR_MSEL(IP16_15_12, TX1_B, SEL_SCIF1_1),
	PINMUX_IPSR_MSEL(IP16_15_12, CAN0_TX_D, SEL_CAN0_3),
	PINMUX_IPSR_MSEL(IP16_15_12, AVB_AVTP_MATCH_B, SEL_AVB_1),
	PINMUX_IPSR_GPSR(IP16_15_12, VI0_DATA0_VI0_B0),
	PINMUX_IPSR_MSEL(IP16_19_16, SSI_SDATA1_A, SEL_SSI1_0),
	PINMUX_IPSR_MSEL(IP16_19_16, HRX1_B, SEL_HSCIF1_1),
	PINMUX_IPSR_GPSR(IP16_19_16, VI0_DATA1_VI0_B1),
	PINMUX_IPSR_MSEL(IP16_23_20, SSI_SCK2_A, SEL_SSI2_0),
	PINMUX_IPSR_MSEL(IP16_23_20, HTX1_B, SEL_HSCIF1_1),
	PINMUX_IPSR_GPSR(IP16_23_20, AVB_TXD7),
	PINMUX_IPSR_GPSR(IP16_23_20, VI0_DATA2_VI0_B2),
	PINMUX_IPSR_MSEL(IP16_27_24, SSI_WS2_A, SEL_SSI2_0),
	PINMUX_IPSR_MSEL(IP16_27_24, HCTS1_N_B, SEL_HSCIF1_1),
	PINMUX_IPSR_GPSR(IP16_27_24, AVB_TX_ER),
	PINMUX_IPSR_GPSR(IP16_27_24, VI0_DATA3_VI0_B3),
	PINMUX_IPSR_MSEL(IP16_31_28, SSI_SDATA2_A, SEL_SSI2_0),
	PINMUX_IPSR_MSEL(IP16_31_28, HRTS1_N_B, SEL_HSCIF1_1),
	PINMUX_IPSR_GPSR(IP16_31_28, VI0_DATA4_VI0_B4),

	/* IPSR17 */
	PINMUX_IPSR_MSEL(IP17_3_0, SSI_SCK9_A, SEL_SSI9_0),
	PINMUX_IPSR_MSEL(IP17_3_0, RX2_B, SEL_SCIF2_1),
	PINMUX_IPSR_MSEL(IP17_3_0, SCL3_E, SEL_I2C03_4),
	PINMUX_IPSR_GPSR(IP17_3_0, EX_WAIT1),
	PINMUX_IPSR_GPSR(IP17_3_0, VI0_DATA5_VI0_B5),
	PINMUX_IPSR_MSEL(IP17_7_4, SSI_WS9_A, SEL_SSI9_0),
	PINMUX_IPSR_MSEL(IP17_7_4, TX2_B, SEL_SCIF2_1),
	PINMUX_IPSR_MSEL(IP17_7_4, SDA3_E, SEL_I2C03_4),
	PINMUX_IPSR_GPSR(IP17_7_4, VI0_DATA6_VI0_B6),
	PINMUX_IPSR_MSEL(IP17_11_8, SSI_SDATA9_A, SEL_SSI9_0),
	PINMUX_IPSR_GPSR(IP17_11_8, SCIF2_SCK_B),
	PINMUX_IPSR_GPSR(IP17_11_8, PWM2_D),
	PINMUX_IPSR_GPSR(IP17_11_8, VI0_DATA7_VI0_B7),
	PINMUX_IPSR_MSEL(IP17_15_12, AUDIO_CLKA_A, SEL_ADGA_0),
	PINMUX_IPSR_MSEL(IP17_15_12, SCL0_B, SEL_I2C00_1),
	PINMUX_IPSR_GPSR(IP17_15_12, VI0_CLKENB),
	PINMUX_IPSR_MSEL(IP17_19_16, AUDIO_CLKB_A, SEL_ADGB_0),
	PINMUX_IPSR_MSEL(IP17_19_16, SDA0_B, SEL_I2C00_1),
	PINMUX_IPSR_GPSR(IP17_19_16, VI0_FIELD),
	PINMUX_IPSR_MSEL(IP17_23_20, AUDIO_CLKC_A, SEL_ADGC_0),
	PINMUX_IPSR_MSEL(IP17_23_20, SCL4_B, SEL_I2C04_1),
	PINMUX_IPSR_GPSR(IP17_23_20, VI0_HSYNC_N),
	PINMUX_IPSR_GPSR(IP17_27_24, AUDIO_CLKOUT_A),
	PINMUX_IPSR_MSEL(IP17_27_24, SDA4_B, SEL_I2C04_1),
	PINMUX_IPSR_GPSR(IP17_27_24, VI0_VSYNC_N),
};

static const struct sh_pfc_pin pinmux_pins[] = {
	PINMUX_GPIO_GP_ALL(),
};

/* - AVB -------------------------------------------------------------------- */
static const unsigned int avb_col_pins[] = {
	RCAR_GP_PIN(5, 18),
};
static const unsigned int avb_col_mux[] = {
	AVB_COL_MARK,
};
static const unsigned int avb_crs_pins[] = {
	RCAR_GP_PIN(5, 17),
};
static const unsigned int avb_crs_mux[] = {
	AVB_CRS_MARK,
};
static const unsigned int avb_link_pins[] = {
	RCAR_GP_PIN(5, 14),
};
static const unsigned int avb_link_mux[] = {
	AVB_LINK_MARK,
};
static const unsigned int avb_magic_pins[] = {
	RCAR_GP_PIN(5, 15),
};
static const unsigned int avb_magic_mux[] = {
	AVB_MAGIC_MARK,
};
static const unsigned int avb_phy_int_pins[] = {
	RCAR_GP_PIN(5, 16),
};
static const unsigned int avb_phy_int_mux[] = {
	AVB_PHY_INT_MARK,
};
static const unsigned int avb_mdio_pins[] = {
	RCAR_GP_PIN(5, 12), RCAR_GP_PIN(5, 13),
};
static const unsigned int avb_mdio_mux[] = {
	AVB_MDC_MARK, AVB_MDIO_MARK,
};
static const unsigned int avb_mii_tx_rx_pins[] = {
	RCAR_GP_PIN(3, 12), RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15),
	RCAR_GP_PIN(3, 16), RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 13),

	RCAR_GP_PIN(3, 0), RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3),
	RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5), RCAR_GP_PIN(3, 1),
	RCAR_GP_PIN(3, 10),
};
static const unsigned int avb_mii_tx_rx_mux[] = {
	AVB_TX_CLK_MARK, AVB_TXD0_MARK, AVB_TXD1_MARK, AVB_TXD2_MARK,
	AVB_TXD3_MARK, AVB_TX_EN_MARK,

	AVB_RX_CLK_MARK, AVB_RXD0_MARK, AVB_RXD1_MARK, AVB_RXD2_MARK,
	AVB_RXD3_MARK, AVB_RX_DV_MARK, AVB_RX_ER_MARK,
};
static const unsigned int avb_mii_tx_er_pins[] = {
	RCAR_GP_PIN(5, 23),
};
static const unsigned int avb_mii_tx_er_mux[] = {
	AVB_TX_ER_MARK,
};
static const unsigned int avb_gmii_tx_rx_pins[] = {
	RCAR_GP_PIN(4, 1), RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12),
	RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15), RCAR_GP_PIN(3, 16),
	RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 28), RCAR_GP_PIN(3, 29),
	RCAR_GP_PIN(4, 0), RCAR_GP_PIN(5, 22), RCAR_GP_PIN(3, 13),
	RCAR_GP_PIN(5, 23),

	RCAR_GP_PIN(3, 0), RCAR_GP_PIN(3, 2), RCAR_GP_PIN(3, 3),
	RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5), RCAR_GP_PIN(3, 6),
	RCAR_GP_PIN(3, 7), RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9),
	RCAR_GP_PIN(3, 1), RCAR_GP_PIN(3, 10),
};
static const unsigned int avb_gmii_tx_rx_mux[] = {
	AVB_GTX_CLK_MARK, AVB_GTXREFCLK_MARK, AVB_TX_CLK_MARK, AVB_TXD0_MARK,
	AVB_TXD1_MARK, AVB_TXD2_MARK, AVB_TXD3_MARK, AVB_TXD4_MARK,
	AVB_TXD5_MARK, AVB_TXD6_MARK, AVB_TXD7_MARK, AVB_TX_EN_MARK,
	AVB_TX_ER_MARK,

	AVB_RX_CLK_MARK, AVB_RXD0_MARK, AVB_RXD1_MARK, AVB_RXD2_MARK,
	AVB_RXD3_MARK, AVB_RXD4_MARK, AVB_RXD5_MARK, AVB_RXD6_MARK,
	AVB_RXD7_MARK, AVB_RX_DV_MARK, AVB_RX_ER_MARK,
};
static const unsigned int avb_avtp_match_a_pins[] = {
	RCAR_GP_PIN(1, 15),
};
static const unsigned int avb_avtp_match_a_mux[] = {
	AVB_AVTP_MATCH_A_MARK,
};
static const unsigned int avb_avtp_capture_a_pins[] = {
	RCAR_GP_PIN(1, 14),
};
static const unsigned int avb_avtp_capture_a_mux[] = {
	AVB_AVTP_CAPTURE_A_MARK,
};
static const unsigned int avb_avtp_match_b_pins[] = {
	RCAR_GP_PIN(5, 20),
};
static const unsigned int avb_avtp_match_b_mux[] = {
	AVB_AVTP_MATCH_B_MARK,
};
static const unsigned int avb_avtp_capture_b_pins[] = {
	RCAR_GP_PIN(5, 19),
};
static const unsigned int avb_avtp_capture_b_mux[] = {
	AVB_AVTP_CAPTURE_B_MARK,
};
/* - DU --------------------------------------------------------------------- */
static const unsigned int du0_rgb666_pins[] = {
	/* R[7:2], G[7:2], B[7:2] */
	RCAR_GP_PIN(2, 7),  RCAR_GP_PIN(2, 6),  RCAR_GP_PIN(2, 5),
	RCAR_GP_PIN(2, 4),  RCAR_GP_PIN(2, 3),  RCAR_GP_PIN(2, 2),
	RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 13),
	RCAR_GP_PIN(2, 12), RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10),
	RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 22), RCAR_GP_PIN(2, 21),
	RCAR_GP_PIN(2, 20), RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 18),
};
static const unsigned int du0_rgb666_mux[] = {
	DU0_DR7_MARK, DU0_DR6_MARK, DU0_DR5_MARK, DU0_DR4_MARK,
	DU0_DR3_MARK, DU0_DR2_MARK,
	DU0_DG7_MARK, DU0_DG6_MARK, DU0_DG5_MARK, DU0_DG4_MARK,
	DU0_DG3_MARK, DU0_DG2_MARK,
	DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK,
	DU0_DB3_MARK, DU0_DB2_MARK,
};
static const unsigned int du0_rgb888_pins[] = {
	/* R[7:0], G[7:0], B[7:0] */
	RCAR_GP_PIN(2, 7),  RCAR_GP_PIN(2, 6),  RCAR_GP_PIN(2, 5),
	RCAR_GP_PIN(2, 4),  RCAR_GP_PIN(2, 3),  RCAR_GP_PIN(2, 2),
	RCAR_GP_PIN(2, 1),  RCAR_GP_PIN(2, 0),
	RCAR_GP_PIN(2, 15), RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 13),
	RCAR_GP_PIN(2, 12), RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10),
	RCAR_GP_PIN(2, 9),  RCAR_GP_PIN(2, 8),
	RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 22), RCAR_GP_PIN(2, 21),
	RCAR_GP_PIN(2, 20), RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 18),
	RCAR_GP_PIN(2, 17), RCAR_GP_PIN(2, 16),
};
static const unsigned int du0_rgb888_mux[] = {
	DU0_DR7_MARK, DU0_DR6_MARK, DU0_DR5_MARK, DU0_DR4_MARK,
	DU0_DR3_MARK, DU0_DR2_MARK, DU0_DR1_MARK, DU0_DR0_MARK,
	DU0_DG7_MARK, DU0_DG6_MARK, DU0_DG5_MARK, DU0_DG4_MARK,
	DU0_DG3_MARK, DU0_DG2_MARK, DU0_DG1_MARK, DU0_DG0_MARK,
	DU0_DB7_MARK, DU0_DB6_MARK, DU0_DB5_MARK, DU0_DB4_MARK,
	DU0_DB3_MARK, DU0_DB2_MARK, DU0_DB1_MARK, DU0_DB0_MARK,
};
static const unsigned int du0_clk0_out_pins[] = {
	/* DOTCLKOUT0 */
	RCAR_GP_PIN(2, 25),
};
static const unsigned int du0_clk0_out_mux[] = {
	DU0_DOTCLKOUT0_MARK
};
static const unsigned int du0_clk1_out_pins[] = {
	/* DOTCLKOUT1 */
	RCAR_GP_PIN(2, 26),
};
static const unsigned int du0_clk1_out_mux[] = {
	DU0_DOTCLKOUT1_MARK
};
static const unsigned int du0_clk_in_pins[] = {
	/* CLKIN */
	RCAR_GP_PIN(2, 24),
};
static const unsigned int du0_clk_in_mux[] = {
	DU0_DOTCLKIN_MARK
};
static const unsigned int du0_sync_pins[] = {
	/* EXVSYNC/VSYNC, EXHSYNC/HSYNC */
	RCAR_GP_PIN(2, 28), RCAR_GP_PIN(2, 27),
};
static const unsigned int du0_sync_mux[] = {
	DU0_EXVSYNC_DU0_VSYNC_MARK, DU0_EXHSYNC_DU0_HSYNC_MARK
};
static const unsigned int du0_oddf_pins[] = {
	/* EXODDF/ODDF/DISP/CDE */
	RCAR_GP_PIN(2, 29),
};
static const unsigned int du0_oddf_mux[] = {
	DU0_EXODDF_DU0_ODDF_DISP_CDE_MARK,
};
static const unsigned int du0_cde_pins[] = {
	/* CDE */
	RCAR_GP_PIN(2, 31),
};
static const unsigned int du0_cde_mux[] = {
	DU0_CDE_MARK,
};
static const unsigned int du0_disp_pins[] = {
	/* DISP */
	RCAR_GP_PIN(2, 30),
};
static const unsigned int du0_disp_mux[] = {
	DU0_DISP_MARK
};
static const unsigned int du1_rgb666_pins[] = {
	/* R[7:2], G[7:2], B[7:2] */
	RCAR_GP_PIN(4, 9),  RCAR_GP_PIN(4, 8),  RCAR_GP_PIN(4, 7),
	RCAR_GP_PIN(4, 6),  RCAR_GP_PIN(4, 5),  RCAR_GP_PIN(4, 4),
	RCAR_GP_PIN(4, 17), RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 15),
	RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 13), RCAR_GP_PIN(4, 12),
	RCAR_GP_PIN(4, 25), RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 23),
	RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 21), RCAR_GP_PIN(4, 20),
};
static const unsigned int du1_rgb666_mux[] = {
	DU1_DR7_MARK, DU1_DR6_MARK, DU1_DR5_MARK, DU1_DR4_MARK,
	DU1_DR3_MARK, DU1_DR2_MARK,
	DU1_DG7_MARK, DU1_DG6_MARK, DU1_DG5_MARK, DU1_DG4_MARK,
	DU1_DG3_MARK, DU1_DG2_MARK,
	DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK,
	DU1_DB3_MARK, DU1_DB2_MARK,
};
static const unsigned int du1_rgb888_pins[] = {
	/* R[7:0], G[7:0], B[7:0] */
	RCAR_GP_PIN(4, 9),  RCAR_GP_PIN(4, 8),  RCAR_GP_PIN(4, 7),
	RCAR_GP_PIN(4, 6),  RCAR_GP_PIN(4, 5),  RCAR_GP_PIN(4, 4),
	RCAR_GP_PIN(4, 3),  RCAR_GP_PIN(4, 2),
	RCAR_GP_PIN(4, 17), RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 15),
	RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 13), RCAR_GP_PIN(4, 12),
	RCAR_GP_PIN(4, 11), RCAR_GP_PIN(4, 10),
	RCAR_GP_PIN(4, 25), RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 23),
	RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 21), RCAR_GP_PIN(4, 20),
	RCAR_GP_PIN(4, 19), RCAR_GP_PIN(4, 18),
};
static const unsigned int du1_rgb888_mux[] = {
	DU1_DR7_MARK, DU1_DR6_MARK, DU1_DR5_MARK, DU1_DR4_MARK,
	DU1_DR3_MARK, DU1_DR2_MARK, DU1_DR1_MARK, DU1_DR0_MARK,
	DU1_DG7_MARK, DU1_DG6_MARK, DU1_DG5_MARK, DU1_DG4_MARK,
	DU1_DG3_MARK, DU1_DG2_MARK, DU1_DG1_MARK, DU1_DG0_MARK,
	DU1_DB7_MARK, DU1_DB6_MARK, DU1_DB5_MARK, DU1_DB4_MARK,
	DU1_DB3_MARK, DU1_DB2_MARK, DU1_DB1_MARK, DU1_DB0_MARK,
};
static const unsigned int du1_clk0_out_pins[] = {
	/* DOTCLKOUT0 */
	RCAR_GP_PIN(5, 2),
};
static const unsigned int du1_clk0_out_mux[] = {
	DU1_DOTCLKOUT0_MARK
};
static const unsigned int du1_clk1_out_pins[] = {
	/* DOTCLKOUT1 */
	RCAR_GP_PIN(5, 0),
};
static const unsigned int du1_clk1_out_mux[] = {
	DU1_DOTCLKOUT1_MARK
};
static const unsigned int du1_clk_in_pins[] = {
	/* DOTCLKIN */
	RCAR_GP_PIN(5, 1),
};
static const unsigned int du1_clk_in_mux[] = {
	DU1_DOTCLKIN_MARK
};
static const unsigned int du1_sync_pins[] = {
	/* EXVSYNC/VSYNC, EXHSYNC/HSYNC */
	RCAR_GP_PIN(5, 5), RCAR_GP_PIN(5, 4),
};
static const unsigned int du1_sync_mux[] = {
	DU1_EXVSYNC_DU1_VSYNC_MARK, DU1_EXHSYNC_DU1_HSYNC_MARK
};
static const unsigned int du1_oddf_pins[] = {
	/* EXODDF/ODDF/DISP/CDE */
	RCAR_GP_PIN(5, 3),
};
static const unsigned int du1_oddf_mux[] = {
	DU1_EXODDF_DU1_ODDF_DISP_CDE_MARK,
};
static const unsigned int du1_cde_pins[] = {
	/* CDE */
	RCAR_GP_PIN(5, 7),
};
static const unsigned int du1_cde_mux[] = {
	DU1_CDE_MARK
};
static const unsigned int du1_disp_pins[] = {
	/* DISP */
	RCAR_GP_PIN(5, 6),
};
static const unsigned int du1_disp_mux[] = {
	DU1_DISP_MARK
};
/* - I2C0 ------------------------------------------------------------------- */
static const unsigned int i2c0_a_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 0), RCAR_GP_PIN(4, 1),
};
static const unsigned int i2c0_a_mux[] = {
	SCL0_A_MARK, SDA0_A_MARK,
};
static const unsigned int i2c0_b_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 28), RCAR_GP_PIN(5, 29),
};
static const unsigned int i2c0_b_mux[] = {
	SCL0_B_MARK, SDA0_B_MARK,
};
static const unsigned int i2c0_c_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12),
};
static const unsigned int i2c0_c_mux[] = {
	SCL0_C_MARK, SDA0_C_MARK,
};
static const unsigned int i2c0_d_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(1, 2), RCAR_GP_PIN(1, 3),
};
static const unsigned int i2c0_d_mux[] = {
	SCL0_D_MARK, SDA0_D_MARK,
};
static const unsigned int i2c0_e_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 3),
};
static const unsigned int i2c0_e_mux[] = {
	SCL0_E_MARK, SDA0_E_MARK,
};
/* - I2C1 ------------------------------------------------------------------- */
static const unsigned int i2c1_a_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3),
};
static const unsigned int i2c1_a_mux[] = {
	SCL1_A_MARK, SDA1_A_MARK,
};
static const unsigned int i2c1_b_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(1, 5), RCAR_GP_PIN(1, 6),
};
static const unsigned int i2c1_b_mux[] = {
	SCL1_B_MARK, SDA1_B_MARK,
};
static const unsigned int i2c1_c_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 23),
};
static const unsigned int i2c1_c_mux[] = {
	SCL1_C_MARK, SDA1_C_MARK,
};
static const unsigned int i2c1_d_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 9),
};
static const unsigned int i2c1_d_mux[] = {
	SCL1_D_MARK, SDA1_D_MARK,
};
static const unsigned int i2c1_e_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17),
};
static const unsigned int i2c1_e_mux[] = {
	SCL1_E_MARK, SDA1_E_MARK,
};
/* - I2C2 ------------------------------------------------------------------- */
static const unsigned int i2c2_a_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 24), RCAR_GP_PIN(4, 25),
};
static const unsigned int i2c2_a_mux[] = {
	SCL2_A_MARK, SDA2_A_MARK,
};
static const unsigned int i2c2_b_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14),
};
static const unsigned int i2c2_b_mux[] = {
	SCL2_B_MARK, SDA2_B_MARK,
};
static const unsigned int i2c2_c_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
};
static const unsigned int i2c2_c_mux[] = {
	SCL2_C_MARK, SDA2_C_MARK,
};
static const unsigned int i2c2_d_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(2, 0), RCAR_GP_PIN(2, 1),
};
static const unsigned int i2c2_d_mux[] = {
	SCL2_D_MARK, SDA2_D_MARK,
};
/* - I2C3 ------------------------------------------------------------------- */
static const unsigned int i2c3_a_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(3, 9), RCAR_GP_PIN(3, 10),
};
static const unsigned int i2c3_a_mux[] = {
	SCL3_A_MARK, SDA3_A_MARK,
};
static const unsigned int i2c3_b_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(1, 0), RCAR_GP_PIN(1, 1),
};
static const unsigned int i2c3_b_mux[] = {
	SCL3_B_MARK, SDA3_B_MARK,
};
static const unsigned int i2c3_c_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 1), RCAR_GP_PIN(5, 2),
};
static const unsigned int i2c3_c_mux[] = {
	SCL3_C_MARK, SDA3_C_MARK,
};
static const unsigned int i2c3_d_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
};
static const unsigned int i2c3_d_mux[] = {
	SCL3_D_MARK, SDA3_D_MARK,
};
static const unsigned int i2c3_e_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 25), RCAR_GP_PIN(5, 26),
};
static const unsigned int i2c3_e_mux[] = {
	SCL3_E_MARK, SDA3_E_MARK,
};
/* - I2C4 ------------------------------------------------------------------- */
static const unsigned int i2c4_a_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11),
};
static const unsigned int i2c4_a_mux[] = {
	SCL4_A_MARK, SDA4_A_MARK,
};
static const unsigned int i2c4_b_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 30), RCAR_GP_PIN(5, 31),
};
static const unsigned int i2c4_b_mux[] = {
	SCL4_B_MARK, SDA4_B_MARK,
};
static const unsigned int i2c4_c_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 4), RCAR_GP_PIN(5, 5),
};
static const unsigned int i2c4_c_mux[] = {
	SCL4_C_MARK, SDA4_C_MARK,
};
static const unsigned int i2c4_d_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(2, 16), RCAR_GP_PIN(2, 17),
};
static const unsigned int i2c4_d_mux[] = {
	SCL4_D_MARK, SDA4_D_MARK,
};
static const unsigned int i2c4_e_pins[] = {
	/* SCL, SDA */
	RCAR_GP_PIN(5, 7), RCAR_GP_PIN(5, 6),
};
static const unsigned int i2c4_e_mux[] = {
	SCL4_E_MARK, SDA4_E_MARK,
};
/* - MMC -------------------------------------------------------------------- */
static const unsigned int mmc_data1_pins[] = {
	/* D0 */
	RCAR_GP_PIN(0, 15),
};
static const unsigned int mmc_data1_mux[] = {
	MMC0_D0_SDHI1_D0_MARK,
};
static const unsigned int mmc_data4_pins[] = {
	/* D[0:3] */
	RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16),
	RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18),
};
static const unsigned int mmc_data4_mux[] = {
	MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK,
	MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK,
};
static const unsigned int mmc_data8_pins[] = {
	/* D[0:3] */
	RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16),
	RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18),
	RCAR_GP_PIN(0, 19), RCAR_GP_PIN(0, 20),
	RCAR_GP_PIN(0, 21), RCAR_GP_PIN(0, 22),
};
static const unsigned int mmc_data8_mux[] = {
	MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK,
	MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK,
	MMC0_D4_MARK, MMC0_D5_MARK,
	MMC0_D6_MARK, MMC0_D7_MARK,
};
static const unsigned int mmc_ctrl_pins[] = {
	/* CLK, CMD */
	RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 14),
};
static const unsigned int mmc_ctrl_mux[] = {
	MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK,
};
/* - QSPI ------------------------------------------------------------------- */
static const unsigned int qspi0_ctrl_pins[] = {
	/* SPCLK, SSL */
	RCAR_GP_PIN(1, 16), RCAR_GP_PIN(1, 21),
};
static const unsigned int qspi0_ctrl_mux[] = {
	QSPI0_SPCLK_MARK, QSPI0_SSL_MARK,
};
static const unsigned int qspi0_data2_pins[] = {
	/* MOSI_IO0, MISO_IO1 */
	RCAR_GP_PIN(1, 17), RCAR_GP_PIN(1, 18),
};
static const unsigned int qspi0_data2_mux[] = {
	QSPI0_MOSI_QSPI0_IO0_MARK, QSPI0_MISO_QSPI0_IO1_MARK,
};
static const unsigned int qspi0_data4_pins[] = {
	/* MOSI_IO0, MISO_IO1, IO2, IO3 */
	RCAR_GP_PIN(1, 17), RCAR_GP_PIN(1, 18), RCAR_GP_PIN(1, 19),
	RCAR_GP_PIN(1, 20),
};
static const unsigned int qspi0_data4_mux[] = {
	QSPI0_MOSI_QSPI0_IO0_MARK, QSPI0_MISO_QSPI0_IO1_MARK,
	QSPI0_IO2_MARK, QSPI0_IO3_MARK,
};
static const unsigned int qspi1_ctrl_pins[] = {
	/* SPCLK, SSL */
	RCAR_GP_PIN(4, 6), RCAR_GP_PIN(4, 9),
};
static const unsigned int qspi1_ctrl_mux[] = {
	QSPI1_SPCLK_MARK, QSPI1_SSL_MARK,
};
static const unsigned int qspi1_data2_pins[] = {
	/* MOSI_IO0, MISO_IO1 */
	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
};
static const unsigned int qspi1_data2_mux[] = {
	QSPI1_MOSI_QSPI1_IO0_MARK, QSPI1_MISO_QSPI1_IO1_MARK,
};
static const unsigned int qspi1_data4_pins[] = {
	/* MOSI_IO0, MISO_IO1, IO2, IO3 */
	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 7),
	RCAR_GP_PIN(4, 8),
};
static const unsigned int qspi1_data4_mux[] = {
	QSPI1_MOSI_QSPI1_IO0_MARK, QSPI1_MISO_QSPI1_IO1_MARK,
	QSPI1_IO2_MARK, QSPI1_IO3_MARK,
};
/* - SCIF0 ------------------------------------------------------------------ */
static const unsigned int scif0_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11),
};
static const unsigned int scif0_data_a_mux[] = {
	RX0_A_MARK, TX0_A_MARK,
};
static const unsigned int scif0_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(3, 11), RCAR_GP_PIN(3, 12),
};
static const unsigned int scif0_data_b_mux[] = {
	RX0_B_MARK, TX0_B_MARK,
};
static const unsigned int scif0_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 0), RCAR_GP_PIN(4, 1),
};
static const unsigned int scif0_data_c_mux[] = {
	RX0_C_MARK, TX0_C_MARK,
};
static const unsigned int scif0_data_d_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 3),
};
static const unsigned int scif0_data_d_mux[] = {
	RX0_D_MARK, TX0_D_MARK,
};
/* - SCIF1 ------------------------------------------------------------------ */
static const unsigned int scif1_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17),
};
static const unsigned int scif1_data_a_mux[] = {
	RX1_A_MARK, TX1_A_MARK,
};
static const unsigned int scif1_clk_a_pins[] = {
	/* SCK */
	RCAR_GP_PIN(4, 15),
};
static const unsigned int scif1_clk_a_mux[] = {
	SCIF1_SCK_A_MARK,
};
static const unsigned int scif1_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(5, 19), RCAR_GP_PIN(5, 20),
};
static const unsigned int scif1_data_b_mux[] = {
	RX1_B_MARK, TX1_B_MARK,
};
static const unsigned int scif1_clk_b_pins[] = {
	/* SCK */
	RCAR_GP_PIN(5, 18),
};
static const unsigned int scif1_clk_b_mux[] = {
	SCIF1_SCK_B_MARK,
};
static const unsigned int scif1_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 9),
};
static const unsigned int scif1_data_c_mux[] = {
	RX1_C_MARK, TX1_C_MARK,
};
static const unsigned int scif1_clk_c_pins[] = {
	/* SCK */
	RCAR_GP_PIN(1, 7),
};
static const unsigned int scif1_clk_c_mux[] = {
	SCIF1_SCK_C_MARK,
};
static const unsigned int scif1_data_d_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 5),
};
static const unsigned int scif1_data_d_mux[] = {
	RX1_D_MARK, TX1_D_MARK,
};
/* - SCIF2 ------------------------------------------------------------------ */
static const unsigned int scif2_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 18), RCAR_GP_PIN(4, 19),
};
static const unsigned int scif2_data_a_mux[] = {
	RX2_A_MARK, TX2_A_MARK,
};
static const unsigned int scif2_clk_a_pins[] = {
	/* SCK */
	RCAR_GP_PIN(4, 20),
};
static const unsigned int scif2_clk_a_mux[] = {
	SCIF2_SCK_A_MARK,
};
static const unsigned int scif2_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(5, 25), RCAR_GP_PIN(5, 26),
};
static const unsigned int scif2_data_b_mux[] = {
	RX2_B_MARK, TX2_B_MARK,
};
static const unsigned int scif2_clk_b_pins[] = {
	/* SCK */
	RCAR_GP_PIN(5, 27),
};
static const unsigned int scif2_clk_b_mux[] = {
	SCIF2_SCK_B_MARK,
};
static const unsigned int scif2_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 7),
};
static const unsigned int scif2_data_c_mux[] = {
	RX2_C_MARK, TX2_C_MARK,
};
/* - SCIF3 ------------------------------------------------------------------ */
static const unsigned int scif3_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 22), RCAR_GP_PIN(4, 23),
};
static const unsigned int scif3_data_a_mux[] = {
	RX3_A_MARK, TX3_A_MARK,
};
static const unsigned int scif3_clk_pins[] = {
	/* SCK */
	RCAR_GP_PIN(4, 21),
};
static const unsigned int scif3_clk_mux[] = {
	SCIF3_SCK_MARK,
};
static const unsigned int scif3_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
};
static const unsigned int scif3_data_b_mux[] = {
	RX3_B_MARK, TX3_B_MARK,
};
static const unsigned int scif3_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6),
};
static const unsigned int scif3_data_c_mux[] = {
	RX3_C_MARK, TX3_C_MARK,
};
/* - SCIF4 ------------------------------------------------------------------ */
static const unsigned int scif4_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3),
};
static const unsigned int scif4_data_a_mux[] = {
	RX4_A_MARK, TX4_A_MARK,
};
static const unsigned int scif4_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(1, 2), RCAR_GP_PIN(1, 3),
};
static const unsigned int scif4_data_b_mux[] = {
	RX4_B_MARK, TX4_B_MARK,
};
static const unsigned int scif4_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(1, 13), RCAR_GP_PIN(1, 14),
};
static const unsigned int scif4_data_c_mux[] = {
	RX4_C_MARK, TX4_C_MARK,
};
static const unsigned int scif4_data_d_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 10), RCAR_GP_PIN(2, 11),
};
static const unsigned int scif4_data_d_mux[] = {
	RX4_D_MARK, TX4_D_MARK,
};
static const unsigned int scif4_data_e_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 8),
};
static const unsigned int scif4_data_e_mux[] = {
	RX4_E_MARK, TX4_E_MARK,
};
/* - SCIF5 ------------------------------------------------------------------ */
static const unsigned int scif5_data_a_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
};
static const unsigned int scif5_data_a_mux[] = {
	RX5_A_MARK, TX5_A_MARK,
};
static const unsigned int scif5_data_b_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(1, 0), RCAR_GP_PIN(1, 1),
};
static const unsigned int scif5_data_b_mux[] = {
	RX5_B_MARK, TX5_B_MARK,
};
static const unsigned int scif5_data_c_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(2, 0), RCAR_GP_PIN(2, 1),
};
static const unsigned int scif5_data_c_mux[] = {
	RX5_C_MARK, TX5_C_MARK,
};
static const unsigned int scif5_data_d_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10),
};
static const unsigned int scif5_data_d_mux[] = {
	RX5_D_MARK, TX5_D_MARK,
};
static const unsigned int scif5_data_e_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10),
};
static const unsigned int scif5_data_e_mux[] = {
	RX5_E_MARK, TX5_E_MARK,
};
static const unsigned int scif5_data_f_pins[] = {
	/* RX, TX */
	RCAR_GP_PIN(3, 27), RCAR_GP_PIN(3, 28),
};
static const unsigned int scif5_data_f_mux[] = {
	RX5_F_MARK, TX5_F_MARK,
};
/* - SCIF Clock ------------------------------------------------------------- */
static const unsigned int scif_clk_a_pins[] = {
	/* SCIF_CLK */
	RCAR_GP_PIN(1, 22),
};
static const unsigned int scif_clk_a_mux[] = {
	SCIF_CLK_A_MARK,
};
static const unsigned int scif_clk_b_pins[] = {
	/* SCIF_CLK */
	RCAR_GP_PIN(3, 29),
};
static const unsigned int scif_clk_b_mux[] = {
	SCIF_CLK_B_MARK,
};
/* - SDHI0 ------------------------------------------------------------------ */
static const unsigned int sdhi0_data1_pins[] = {
	/* D0 */
	RCAR_GP_PIN(0, 7),
};
static const unsigned int sdhi0_data1_mux[] = {
	SD0_DAT0_MARK,
};
static const unsigned int sdhi0_data4_pins[] = {
	/* D[0:3] */
	RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 8),
	RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10),
};
static const unsigned int sdhi0_data4_mux[] = {
	SD0_DAT0_MARK, SD0_DAT1_MARK, SD0_DAT2_MARK, SD0_DAT3_MARK,
};
static const unsigned int sdhi0_ctrl_pins[] = {
	/* CLK, CMD */
	RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6),
};
static const unsigned int sdhi0_ctrl_mux[] = {
	SD0_CLK_MARK, SD0_CMD_MARK,
};
static const unsigned int sdhi0_cd_pins[] = {
	/* CD */
	RCAR_GP_PIN(0, 11),
};
static const unsigned int sdhi0_cd_mux[] = {
	SD0_CD_MARK,
};
static const unsigned int sdhi0_wp_pins[] = {
	/* WP */
	RCAR_GP_PIN(0, 12),
};
static const unsigned int sdhi0_wp_mux[] = {
	SD0_WP_MARK,
};
/* - SDHI1 ------------------------------------------------------------------ */
static const unsigned int sdhi1_data1_pins[] = {
	/* D0 */
	RCAR_GP_PIN(0, 15),
};
static const unsigned int sdhi1_data1_mux[] = {
	MMC0_D0_SDHI1_D0_MARK,
};
static const unsigned int sdhi1_data4_pins[] = {
	/* D[0:3] */
	RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 16),
	RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 18),
};
static const unsigned int sdhi1_data4_mux[] = {
	MMC0_D0_SDHI1_D0_MARK, MMC0_D1_SDHI1_D1_MARK,
	MMC0_D2_SDHI1_D2_MARK, MMC0_D3_SDHI1_D3_MARK,
};
static const unsigned int sdhi1_ctrl_pins[] = {
	/* CLK, CMD */
	RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 14),
};
static const unsigned int sdhi1_ctrl_mux[] = {
	MMC0_CLK_SDHI1_CLK_MARK, MMC0_CMD_SDHI1_CMD_MARK,
};
static const unsigned int sdhi1_cd_pins[] = {
	/* CD */
	RCAR_GP_PIN(0, 19),
};
static const unsigned int sdhi1_cd_mux[] = {
	SD1_CD_MARK,
};
static const unsigned int sdhi1_wp_pins[] = {
	/* WP */
	RCAR_GP_PIN(0, 20),
};
static const unsigned int sdhi1_wp_mux[] = {
	SD1_WP_MARK,
};
/* - SDHI2 ------------------------------------------------------------------ */
static const unsigned int sdhi2_data1_pins[] = {
	/* D0 */
	RCAR_GP_PIN(4, 16),
};
static const unsigned int sdhi2_data1_mux[] = {
	SD2_DAT0_MARK,
};
static const unsigned int sdhi2_data4_pins[] = {
	/* D[0:3] */
	RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17),
	RCAR_GP_PIN(4, 18), RCAR_GP_PIN(4, 19),
};
static const unsigned int sdhi2_data4_mux[] = {
	SD2_DAT0_MARK, SD2_DAT1_MARK, SD2_DAT2_MARK, SD2_DAT3_MARK,
};
static const unsigned int sdhi2_ctrl_pins[] = {
	/* CLK, CMD */
	RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 15),
};
static const unsigned int sdhi2_ctrl_mux[] = {
	SD2_CLK_MARK, SD2_CMD_MARK,
};
static const unsigned int sdhi2_cd_pins[] = {
	/* CD */
	RCAR_GP_PIN(4, 20),
};
static const unsigned int sdhi2_cd_mux[] = {
	SD2_CD_MARK,
};
static const unsigned int sdhi2_wp_pins[] = {
	/* WP */
	RCAR_GP_PIN(4, 21),
};
static const unsigned int sdhi2_wp_mux[] = {
	SD2_WP_MARK,
};
/* - USB0 ------------------------------------------------------------------- */
static const unsigned int usb0_pins[] = {
	RCAR_GP_PIN(0, 0), /* PWEN */
	RCAR_GP_PIN(0, 1), /* OVC */
};
static const unsigned int usb0_mux[] = {
	USB0_PWEN_MARK,
	USB0_OVC_MARK,
};
/* - USB1 ------------------------------------------------------------------- */
static const unsigned int usb1_pins[] = {
	RCAR_GP_PIN(0, 2), /* PWEN */
	RCAR_GP_PIN(0, 3), /* OVC */
};
static const unsigned int usb1_mux[] = {
	USB1_PWEN_MARK,
	USB1_OVC_MARK,
};
/* - VIN0 ------------------------------------------------------------------- */
static const union vin_data vin0_data_pins = {
	.data24 = {
		/* B */
		RCAR_GP_PIN(5, 20), RCAR_GP_PIN(5, 21),
		RCAR_GP_PIN(5, 22), RCAR_GP_PIN(5, 23),
		RCAR_GP_PIN(5, 24), RCAR_GP_PIN(5, 25),
		RCAR_GP_PIN(5, 26), RCAR_GP_PIN(5, 27),
		/* G */
		RCAR_GP_PIN(4, 2), RCAR_GP_PIN(4, 3),
		RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
		RCAR_GP_PIN(4, 6), RCAR_GP_PIN(5, 8),
		RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10),
		/* R */
		RCAR_GP_PIN(5, 11), RCAR_GP_PIN(5, 12),
		RCAR_GP_PIN(5, 13), RCAR_GP_PIN(5, 14),
		RCAR_GP_PIN(5, 15), RCAR_GP_PIN(5, 16),
		RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 19),
	},
};
static const union vin_data vin0_data_mux = {
	.data24 = {
		/* B */
		VI0_DATA0_VI0_B0_MARK, VI0_DATA1_VI0_B1_MARK,
		VI0_DATA2_VI0_B2_MARK, VI0_DATA3_VI0_B3_MARK,
		VI0_DATA4_VI0_B4_MARK, VI0_DATA5_VI0_B5_MARK,
		VI0_DATA6_VI0_B6_MARK, VI0_DATA7_VI0_B7_MARK,
		/* G */
		VI0_G0_MARK, VI0_G1_MARK,
		VI0_G2_MARK, VI0_G3_MARK,
		VI0_G4_MARK, VI0_G5_MARK,
		VI0_G6_MARK, VI0_G7_MARK,
		/* R */
		VI0_R0_MARK, VI0_R1_MARK,
		VI0_R2_MARK, VI0_R3_MARK,
		VI0_R4_MARK, VI0_R5_MARK,
		VI0_R6_MARK, VI0_R7_MARK,
	},
};
static const unsigned int vin0_data18_pins[] = {
	/* B */
	RCAR_GP_PIN(5, 22), RCAR_GP_PIN(5, 23),
	RCAR_GP_PIN(5, 24), RCAR_GP_PIN(5, 25),
	RCAR_GP_PIN(5, 26), RCAR_GP_PIN(5, 27),
	/* G */
	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
	RCAR_GP_PIN(4, 6), RCAR_GP_PIN(5, 8),
	RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10),
	/* R */
	RCAR_GP_PIN(5, 13), RCAR_GP_PIN(5, 14),
	RCAR_GP_PIN(5, 15), RCAR_GP_PIN(5, 16),
	RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 19),
};
static const unsigned int vin0_data18_mux[] = {
	/* B */
	VI0_DATA2_VI0_B2_MARK, VI0_DATA3_VI0_B3_MARK,
	VI0_DATA4_VI0_B4_MARK, VI0_DATA5_VI0_B5_MARK,
	VI0_DATA6_VI0_B6_MARK, VI0_DATA7_VI0_B7_MARK,
	/* G */
	VI0_G2_MARK, VI0_G3_MARK,
	VI0_G4_MARK, VI0_G5_MARK,
	VI0_G6_MARK, VI0_G7_MARK,
	/* R */
	VI0_R2_MARK, VI0_R3_MARK,
	VI0_R4_MARK, VI0_R5_MARK,
	VI0_R6_MARK, VI0_R7_MARK,
};
static const unsigned int vin0_sync_pins[] = {
	RCAR_GP_PIN(5, 30), /* HSYNC */
	RCAR_GP_PIN(5, 31), /* VSYNC */
};
static const unsigned int vin0_sync_mux[] = {
	VI0_HSYNC_N_MARK,
	VI0_VSYNC_N_MARK,
};
static const unsigned int vin0_field_pins[] = {
	RCAR_GP_PIN(5, 29),
};
static const unsigned int vin0_field_mux[] = {
	VI0_FIELD_MARK,
};
static const unsigned int vin0_clkenb_pins[] = {
	RCAR_GP_PIN(5, 28),
};
static const unsigned int vin0_clkenb_mux[] = {
	VI0_CLKENB_MARK,
};
static const unsigned int vin0_clk_pins[] = {
	RCAR_GP_PIN(5, 18),
};
static const unsigned int vin0_clk_mux[] = {
	VI0_CLK_MARK,
};
/* - VIN1 ------------------------------------------------------------------- */
static const union vin_data12 vin1_data_pins = {
	.data12 = {
		RCAR_GP_PIN(3,  1), RCAR_GP_PIN(3, 2),
		RCAR_GP_PIN(3,  3), RCAR_GP_PIN(3, 4),
		RCAR_GP_PIN(3,  5), RCAR_GP_PIN(3, 6),
		RCAR_GP_PIN(3,  7), RCAR_GP_PIN(3, 8),
		RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14),
		RCAR_GP_PIN(3, 15), RCAR_GP_PIN(3, 16),
	},
};
static const union vin_data12 vin1_data_mux = {
	.data12 = {
		VI1_DATA0_MARK, VI1_DATA1_MARK,
		VI1_DATA2_MARK, VI1_DATA3_MARK,
		VI1_DATA4_MARK, VI1_DATA5_MARK,
		VI1_DATA6_MARK, VI1_DATA7_MARK,
		VI1_DATA8_MARK, VI1_DATA9_MARK,
		VI1_DATA10_MARK, VI1_DATA11_MARK,
	},
};
static const unsigned int vin1_sync_pins[] = {
	RCAR_GP_PIN(3, 11), /* HSYNC */
	RCAR_GP_PIN(3, 12), /* VSYNC */
};
static const unsigned int vin1_sync_mux[] = {
	VI1_HSYNC_N_MARK,
	VI1_VSYNC_N_MARK,
};
static const unsigned int vin1_field_pins[] = {
	RCAR_GP_PIN(3, 10),
};
static const unsigned int vin1_field_mux[] = {
	VI1_FIELD_MARK,
};
static const unsigned int vin1_clkenb_pins[] = {
	RCAR_GP_PIN(3, 9),
};
static const unsigned int vin1_clkenb_mux[] = {
	VI1_CLKENB_MARK,
};
static const unsigned int vin1_clk_pins[] = {
	RCAR_GP_PIN(3, 0),
};
static const unsigned int vin1_clk_mux[] = {
	VI1_CLK_MARK,
};

static const struct sh_pfc_pin_group pinmux_groups[] = {
	SH_PFC_PIN_GROUP(avb_col),
	SH_PFC_PIN_GROUP(avb_crs),
	SH_PFC_PIN_GROUP(avb_link),
	SH_PFC_PIN_GROUP(avb_magic),
	SH_PFC_PIN_GROUP(avb_phy_int),
	SH_PFC_PIN_GROUP(avb_mdio),
	SH_PFC_PIN_GROUP(avb_mii_tx_rx),
	SH_PFC_PIN_GROUP(avb_mii_tx_er),
	SH_PFC_PIN_GROUP(avb_gmii_tx_rx),
	SH_PFC_PIN_GROUP(avb_avtp_match_a),
	SH_PFC_PIN_GROUP(avb_avtp_capture_a),
	SH_PFC_PIN_GROUP(avb_avtp_match_b),
	SH_PFC_PIN_GROUP(avb_avtp_capture_b),
	SH_PFC_PIN_GROUP(du0_rgb666),
	SH_PFC_PIN_GROUP(du0_rgb888),
	SH_PFC_PIN_GROUP(du0_clk0_out),
	SH_PFC_PIN_GROUP(du0_clk1_out),
	SH_PFC_PIN_GROUP(du0_clk_in),
	SH_PFC_PIN_GROUP(du0_sync),
	SH_PFC_PIN_GROUP(du0_oddf),
	SH_PFC_PIN_GROUP(du0_cde),
	SH_PFC_PIN_GROUP(du0_disp),
	SH_PFC_PIN_GROUP(du1_rgb666),
	SH_PFC_PIN_GROUP(du1_rgb888),
	SH_PFC_PIN_GROUP(du1_clk0_out),
	SH_PFC_PIN_GROUP(du1_clk1_out),
	SH_PFC_PIN_GROUP(du1_clk_in),
	SH_PFC_PIN_GROUP(du1_sync),
	SH_PFC_PIN_GROUP(du1_oddf),
	SH_PFC_PIN_GROUP(du1_cde),
	SH_PFC_PIN_GROUP(du1_disp),
	SH_PFC_PIN_GROUP(i2c0_a),
	SH_PFC_PIN_GROUP(i2c0_b),
	SH_PFC_PIN_GROUP(i2c0_c),
	SH_PFC_PIN_GROUP(i2c0_d),
	SH_PFC_PIN_GROUP(i2c0_e),
	SH_PFC_PIN_GROUP(i2c1_a),
	SH_PFC_PIN_GROUP(i2c1_b),
	SH_PFC_PIN_GROUP(i2c1_c),
	SH_PFC_PIN_GROUP(i2c1_d),
	SH_PFC_PIN_GROUP(i2c1_e),
	SH_PFC_PIN_GROUP(i2c2_a),
	SH_PFC_PIN_GROUP(i2c2_b),
	SH_PFC_PIN_GROUP(i2c2_c),
	SH_PFC_PIN_GROUP(i2c2_d),
	SH_PFC_PIN_GROUP(i2c3_a),
	SH_PFC_PIN_GROUP(i2c3_b),
	SH_PFC_PIN_GROUP(i2c3_c),
	SH_PFC_PIN_GROUP(i2c3_d),
	SH_PFC_PIN_GROUP(i2c3_e),
	SH_PFC_PIN_GROUP(i2c4_a),
	SH_PFC_PIN_GROUP(i2c4_b),
	SH_PFC_PIN_GROUP(i2c4_c),
	SH_PFC_PIN_GROUP(i2c4_d),
	SH_PFC_PIN_GROUP(i2c4_e),
	SH_PFC_PIN_GROUP(mmc_data1),
	SH_PFC_PIN_GROUP(mmc_data4),
	SH_PFC_PIN_GROUP(mmc_data8),
	SH_PFC_PIN_GROUP(mmc_ctrl),
	SH_PFC_PIN_GROUP(qspi0_ctrl),
	SH_PFC_PIN_GROUP(qspi0_data2),
	SH_PFC_PIN_GROUP(qspi0_data4),
	SH_PFC_PIN_GROUP(qspi1_ctrl),
	SH_PFC_PIN_GROUP(qspi1_data2),
	SH_PFC_PIN_GROUP(qspi1_data4),
	SH_PFC_PIN_GROUP(scif0_data_a),
	SH_PFC_PIN_GROUP(scif0_data_b),
	SH_PFC_PIN_GROUP(scif0_data_c),
	SH_PFC_PIN_GROUP(scif0_data_d),
	SH_PFC_PIN_GROUP(scif1_data_a),
	SH_PFC_PIN_GROUP(scif1_clk_a),
	SH_PFC_PIN_GROUP(scif1_data_b),
	SH_PFC_PIN_GROUP(scif1_clk_b),
	SH_PFC_PIN_GROUP(scif1_data_c),
	SH_PFC_PIN_GROUP(scif1_clk_c),
	SH_PFC_PIN_GROUP(scif1_data_d),
	SH_PFC_PIN_GROUP(scif2_data_a),
	SH_PFC_PIN_GROUP(scif2_clk_a),
	SH_PFC_PIN_GROUP(scif2_data_b),
	SH_PFC_PIN_GROUP(scif2_clk_b),
	SH_PFC_PIN_GROUP(scif2_data_c),
	SH_PFC_PIN_GROUP(scif3_data_a),
	SH_PFC_PIN_GROUP(scif3_clk),
	SH_PFC_PIN_GROUP(scif3_data_b),
	SH_PFC_PIN_GROUP(scif3_data_c),
	SH_PFC_PIN_GROUP(scif4_data_a),
	SH_PFC_PIN_GROUP(scif4_data_b),
	SH_PFC_PIN_GROUP(scif4_data_c),
	SH_PFC_PIN_GROUP(scif4_data_d),
	SH_PFC_PIN_GROUP(scif4_data_e),
	SH_PFC_PIN_GROUP(scif5_data_a),
	SH_PFC_PIN_GROUP(scif5_data_b),
	SH_PFC_PIN_GROUP(scif5_data_c),
	SH_PFC_PIN_GROUP(scif5_data_d),
	SH_PFC_PIN_GROUP(scif5_data_e),
	SH_PFC_PIN_GROUP(scif5_data_f),
	SH_PFC_PIN_GROUP(scif_clk_a),
	SH_PFC_PIN_GROUP(scif_clk_b),
	SH_PFC_PIN_GROUP(sdhi0_data1),
	SH_PFC_PIN_GROUP(sdhi0_data4),
	SH_PFC_PIN_GROUP(sdhi0_ctrl),
	SH_PFC_PIN_GROUP(sdhi0_cd),
	SH_PFC_PIN_GROUP(sdhi0_wp),
	SH_PFC_PIN_GROUP(sdhi1_data1),
	SH_PFC_PIN_GROUP(sdhi1_data4),
	SH_PFC_PIN_GROUP(sdhi1_ctrl),
	SH_PFC_PIN_GROUP(sdhi1_cd),
	SH_PFC_PIN_GROUP(sdhi1_wp),
	SH_PFC_PIN_GROUP(sdhi2_data1),
	SH_PFC_PIN_GROUP(sdhi2_data4),
	SH_PFC_PIN_GROUP(sdhi2_ctrl),
	SH_PFC_PIN_GROUP(sdhi2_cd),
	SH_PFC_PIN_GROUP(sdhi2_wp),
	SH_PFC_PIN_GROUP(usb0),
	SH_PFC_PIN_GROUP(usb1),
	VIN_DATA_PIN_GROUP(vin0_data, 24),
	VIN_DATA_PIN_GROUP(vin0_data, 20),
	SH_PFC_PIN_GROUP(vin0_data18),
	VIN_DATA_PIN_GROUP(vin0_data, 16),
	VIN_DATA_PIN_GROUP(vin0_data, 12),
	VIN_DATA_PIN_GROUP(vin0_data, 10),
	VIN_DATA_PIN_GROUP(vin0_data, 8),
	SH_PFC_PIN_GROUP(vin0_sync),
	SH_PFC_PIN_GROUP(vin0_field),
	SH_PFC_PIN_GROUP(vin0_clkenb),
	SH_PFC_PIN_GROUP(vin0_clk),
	VIN_DATA_PIN_GROUP(vin1_data, 12),
	VIN_DATA_PIN_GROUP(vin1_data, 10),
	VIN_DATA_PIN_GROUP(vin1_data, 8),
	SH_PFC_PIN_GROUP(vin1_sync),
	SH_PFC_PIN_GROUP(vin1_field),
	SH_PFC_PIN_GROUP(vin1_clkenb),
	SH_PFC_PIN_GROUP(vin1_clk),
};

static const char * const avb_groups[] = {
	"avb_col",
	"avb_crs",
	"avb_link",
	"avb_magic",
	"avb_phy_int",
	"avb_mdio",
	"avb_mii_tx_rx",
	"avb_mii_tx_er",
	"avb_gmii_tx_rx",
	"avb_avtp_match_a",
	"avb_avtp_capture_a",
	"avb_avtp_match_b",
	"avb_avtp_capture_b",
};

static const char * const du0_groups[] = {
	"du0_rgb666",
	"du0_rgb888",
	"du0_clk0_out",
	"du0_clk1_out",
	"du0_clk_in",
	"du0_sync",
	"du0_oddf",
	"du0_cde",
	"du0_disp",
};

static const char * const du1_groups[] = {
	"du1_rgb666",
	"du1_rgb888",
	"du1_clk0_out",
	"du1_clk1_out",
	"du1_clk_in",
	"du1_sync",
	"du1_oddf",
	"du1_cde",
	"du1_disp",
};

static const char * const i2c0_groups[] = {
	"i2c0_a",
	"i2c0_b",
	"i2c0_c",
	"i2c0_d",
	"i2c0_e",
};

static const char * const i2c1_groups[] = {
	"i2c1_a",
	"i2c1_b",
	"i2c1_c",
	"i2c1_d",
	"i2c1_e",
};

static const char * const i2c2_groups[] = {
	"i2c2_a",
	"i2c2_b",
	"i2c2_c",
	"i2c2_d",
};

static const char * const i2c3_groups[] = {
	"i2c3_a",
	"i2c3_b",
	"i2c3_c",
	"i2c3_d",
	"i2c3_e",
};

static const char * const i2c4_groups[] = {
	"i2c4_a",
	"i2c4_b",
	"i2c4_c",
	"i2c4_d",
	"i2c4_e",
};

static const char * const mmc_groups[] = {
	"mmc_data1",
	"mmc_data4",
	"mmc_data8",
	"mmc_ctrl",
};

static const char * const qspi0_groups[] = {
	"qspi0_ctrl",
	"qspi0_data2",
	"qspi0_data4",
};

static const char * const qspi1_groups[] = {
	"qspi1_ctrl",
	"qspi1_data2",
	"qspi1_data4",
};

static const char * const scif0_groups[] = {
	"scif0_data_a",
	"scif0_data_b",
	"scif0_data_c",
	"scif0_data_d",
};

static const char * const scif1_groups[] = {
	"scif1_data_a",
	"scif1_clk_a",
	"scif1_data_b",
	"scif1_clk_b",
	"scif1_data_c",
	"scif1_clk_c",
	"scif1_data_d",
};

static const char * const scif2_groups[] = {
	"scif2_data_a",
	"scif2_clk_a",
	"scif2_data_b",
	"scif2_clk_b",
	"scif2_data_c",
};

static const char * const scif3_groups[] = {
	"scif3_data_a",
	"scif3_clk",
	"scif3_data_b",
	"scif3_data_c",
};

static const char * const scif4_groups[] = {
	"scif4_data_a",
	"scif4_data_b",
	"scif4_data_c",
	"scif4_data_d",
	"scif4_data_e",
};

static const char * const scif5_groups[] = {
	"scif5_data_a",
	"scif5_data_b",
	"scif5_data_c",
	"scif5_data_d",
	"scif5_data_e",
	"scif5_data_f",
};

static const char * const scif_clk_groups[] = {
	"scif_clk_a",
	"scif_clk_b",
};

static const char * const sdhi0_groups[] = {
	"sdhi0_data1",
	"sdhi0_data4",
	"sdhi0_ctrl",
	"sdhi0_cd",
	"sdhi0_wp",
};

static const char * const sdhi1_groups[] = {
	"sdhi1_data1",
	"sdhi1_data4",
	"sdhi1_ctrl",
	"sdhi1_cd",
	"sdhi1_wp",
};

static const char * const sdhi2_groups[] = {
	"sdhi2_data1",
	"sdhi2_data4",
	"sdhi2_ctrl",
	"sdhi2_cd",
	"sdhi2_wp",
};

static const char * const usb0_groups[] = {
	"usb0",
};

static const char * const usb1_groups[] = {
	"usb1",
};

static const char * const vin0_groups[] = {
	"vin0_data24",
	"vin0_data20",
	"vin0_data18",
	"vin0_data16",
	"vin0_data12",
	"vin0_data10",
	"vin0_data8",
	"vin0_sync",
	"vin0_field",
	"vin0_clkenb",
	"vin0_clk",
};

static const char * const vin1_groups[] = {
	"vin1_data12",
	"vin1_data10",
	"vin1_data8",
	"vin1_sync",
	"vin1_field",
	"vin1_clkenb",
	"vin1_clk",
};

static const struct sh_pfc_function pinmux_functions[] = {
	SH_PFC_FUNCTION(avb),
	SH_PFC_FUNCTION(du0),
	SH_PFC_FUNCTION(du1),
	SH_PFC_FUNCTION(i2c0),
	SH_PFC_FUNCTION(i2c1),
	SH_PFC_FUNCTION(i2c2),
	SH_PFC_FUNCTION(i2c3),
	SH_PFC_FUNCTION(i2c4),
	SH_PFC_FUNCTION(mmc),
	SH_PFC_FUNCTION(qspi0),
	SH_PFC_FUNCTION(qspi1),
	SH_PFC_FUNCTION(scif0),
	SH_PFC_FUNCTION(scif1),
	SH_PFC_FUNCTION(scif2),
	SH_PFC_FUNCTION(scif3),
	SH_PFC_FUNCTION(scif4),
	SH_PFC_FUNCTION(scif5),
	SH_PFC_FUNCTION(scif_clk),
	SH_PFC_FUNCTION(sdhi0),
	SH_PFC_FUNCTION(sdhi1),
	SH_PFC_FUNCTION(sdhi2),
	SH_PFC_FUNCTION(usb0),
	SH_PFC_FUNCTION(usb1),
	SH_PFC_FUNCTION(vin0),
	SH_PFC_FUNCTION(vin1),
};

static const struct pinmux_cfg_reg pinmux_config_regs[] = {
	{ PINMUX_CFG_REG("GPSR0", 0xE6060004, 32, 1, GROUP(
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		GP_0_22_FN, FN_MMC0_D7,
		GP_0_21_FN, FN_MMC0_D6,
		GP_0_20_FN, FN_IP1_7_4,
		GP_0_19_FN, FN_IP1_3_0,
		GP_0_18_FN, FN_MMC0_D3_SDHI1_D3,
		GP_0_17_FN, FN_MMC0_D2_SDHI1_D2,
		GP_0_16_FN, FN_MMC0_D1_SDHI1_D1,
		GP_0_15_FN, FN_MMC0_D0_SDHI1_D0,
		GP_0_14_FN, FN_MMC0_CMD_SDHI1_CMD,
		GP_0_13_FN, FN_MMC0_CLK_SDHI1_CLK,
		GP_0_12_FN, FN_IP0_31_28,
		GP_0_11_FN, FN_IP0_27_24,
		GP_0_10_FN, FN_IP0_23_20,
		GP_0_9_FN, FN_IP0_19_16,
		GP_0_8_FN, FN_IP0_15_12,
		GP_0_7_FN, FN_IP0_11_8,
		GP_0_6_FN, FN_IP0_7_4,
		GP_0_5_FN, FN_IP0_3_0,
		GP_0_4_FN, FN_CLKOUT,
		GP_0_3_FN, FN_USB1_OVC,
		GP_0_2_FN, FN_USB1_PWEN,
		GP_0_1_FN, FN_USB0_OVC,
		GP_0_0_FN, FN_USB0_PWEN, ))
	},
	{ PINMUX_CFG_REG("GPSR1", 0xE6060008, 32, 1, GROUP(
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		GP_1_22_FN, FN_IP4_3_0,
		GP_1_21_FN, FN_IP3_31_28,
		GP_1_20_FN, FN_IP3_27_24,
		GP_1_19_FN, FN_IP3_23_20,
		GP_1_18_FN, FN_IP3_19_16,
		GP_1_17_FN, FN_IP3_15_12,
		GP_1_16_FN, FN_IP3_11_8,
		GP_1_15_FN, FN_IP3_7_4,
		GP_1_14_FN, FN_IP3_3_0,
		GP_1_13_FN, FN_IP2_31_28,
		GP_1_12_FN, FN_IP2_27_24,
		GP_1_11_FN, FN_IP2_23_20,
		GP_1_10_FN, FN_IP2_19_16,
		GP_1_9_FN, FN_IP2_15_12,
		GP_1_8_FN, FN_IP2_11_8,
		GP_1_7_FN, FN_IP2_7_4,
		GP_1_6_FN, FN_IP2_3_0,
		GP_1_5_FN, FN_IP1_31_28,
		GP_1_4_FN, FN_IP1_27_24,
		GP_1_3_FN, FN_IP1_23_20,
		GP_1_2_FN, FN_IP1_19_16,
		GP_1_1_FN, FN_IP1_15_12,
		GP_1_0_FN, FN_IP1_11_8, ))
	},
	{ PINMUX_CFG_REG("GPSR2", 0xE606000C, 32, 1, GROUP(
		GP_2_31_FN, FN_IP8_3_0,
		GP_2_30_FN, FN_IP7_31_28,
		GP_2_29_FN, FN_IP7_27_24,
		GP_2_28_FN, FN_IP7_23_20,
		GP_2_27_FN, FN_IP7_19_16,
		GP_2_26_FN, FN_IP7_15_12,
		GP_2_25_FN, FN_IP7_11_8,
		GP_2_24_FN, FN_IP7_7_4,
		GP_2_23_FN, FN_IP7_3_0,
		GP_2_22_FN, FN_IP6_31_28,
		GP_2_21_FN, FN_IP6_27_24,
		GP_2_20_FN, FN_IP6_23_20,
		GP_2_19_FN, FN_IP6_19_16,
		GP_2_18_FN, FN_IP6_15_12,
		GP_2_17_FN, FN_IP6_11_8,
		GP_2_16_FN, FN_IP6_7_4,
		GP_2_15_FN, FN_IP6_3_0,
		GP_2_14_FN, FN_IP5_31_28,
		GP_2_13_FN, FN_IP5_27_24,
		GP_2_12_FN, FN_IP5_23_20,
		GP_2_11_FN, FN_IP5_19_16,
		GP_2_10_FN, FN_IP5_15_12,
		GP_2_9_FN, FN_IP5_11_8,
		GP_2_8_FN, FN_IP5_7_4,
		GP_2_7_FN, FN_IP5_3_0,
		GP_2_6_FN, FN_IP4_31_28,
		GP_2_5_FN, FN_IP4_27_24,
		GP_2_4_FN, FN_IP4_23_20,
		GP_2_3_FN, FN_IP4_19_16,
		GP_2_2_FN, FN_IP4_15_12,
		GP_2_1_FN, FN_IP4_11_8,
		GP_2_0_FN, FN_IP4_7_4, ))
	},
	{ PINMUX_CFG_REG("GPSR3", 0xE6060010, 32, 1, GROUP(
		0, 0,
		0, 0,
		GP_3_29_FN, FN_IP10_19_16,
		GP_3_28_FN, FN_IP10_15_12,
		GP_3_27_FN, FN_IP10_11_8,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		GP_3_16_FN, FN_IP10_7_4,
		GP_3_15_FN, FN_IP10_3_0,
		GP_3_14_FN, FN_IP9_31_28,
		GP_3_13_FN, FN_IP9_27_24,
		GP_3_12_FN, FN_IP9_23_20,
		GP_3_11_FN, FN_IP9_19_16,
		GP_3_10_FN, FN_IP9_15_12,
		GP_3_9_FN, FN_IP9_11_8,
		GP_3_8_FN, FN_IP9_7_4,
		GP_3_7_FN, FN_IP9_3_0,
		GP_3_6_FN, FN_IP8_31_28,
		GP_3_5_FN, FN_IP8_27_24,
		GP_3_4_FN, FN_IP8_23_20,
		GP_3_3_FN, FN_IP8_19_16,
		GP_3_2_FN, FN_IP8_15_12,
		GP_3_1_FN, FN_IP8_11_8,
		GP_3_0_FN, FN_IP8_7_4, ))
	},
	{ PINMUX_CFG_REG("GPSR4", 0xE6060014, 32, 1, GROUP(
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		0, 0,
		GP_4_25_FN, FN_IP13_27_24,
		GP_4_24_FN, FN_IP13_23_20,
		GP_4_23_FN, FN_IP13_19_16,
		GP_4_22_FN, FN_IP13_15_12,
		GP_4_21_FN, FN_IP13_11_8,
		GP_4_20_FN, FN_IP13_7_4,
		GP_4_19_FN, FN_IP13_3_0,
		GP_4_18_FN, FN_IP12_31_28,
		GP_4_17_FN, FN_IP12_27_24,
		GP_4_16_FN, FN_IP12_23_20,
		GP_4_15_FN, FN_IP12_19_16,
		GP_4_14_FN, FN_IP12_15_12,
		GP_4_13_FN, FN_IP12_11_8,
		GP_4_12_FN, FN_IP12_7_4,
		GP_4_11_FN, FN_IP12_3_0,
		GP_4_10_FN, FN_IP11_31_28,
		GP_4_9_FN, FN_IP11_27_24,
		GP_4_8_FN, FN_IP11_23_20,
		GP_4_7_FN, FN_IP11_19_16,
		GP_4_6_FN, FN_IP11_15_12,
		GP_4_5_FN, FN_IP11_11_8,
		GP_4_4_FN, FN_IP11_7_4,
		GP_4_3_FN, FN_IP11_3_0,
		GP_4_2_FN, FN_IP10_31_28,
		GP_4_1_FN, FN_IP10_27_24,
		GP_4_0_FN, FN_IP10_23_20, ))
	},
	{ PINMUX_CFG_REG("GPSR5", 0xE6060018, 32, 1, GROUP(
		GP_5_31_FN, FN_IP17_27_24,
		GP_5_30_FN, FN_IP17_23_20,
		GP_5_29_FN, FN_IP17_19_16,
		GP_5_28_FN, FN_IP17_15_12,
		GP_5_27_FN, FN_IP17_11_8,
		GP_5_26_FN, FN_IP17_7_4,
		GP_5_25_FN, FN_IP17_3_0,
		GP_5_24_FN, FN_IP16_31_28,
		GP_5_23_FN, FN_IP16_27_24,
		GP_5_22_FN, FN_IP16_23_20,
		GP_5_21_FN, FN_IP16_19_16,
		GP_5_20_FN, FN_IP16_15_12,
		GP_5_19_FN, FN_IP16_11_8,
		GP_5_18_FN, FN_IP16_7_4,
		GP_5_17_FN, FN_IP16_3_0,
		GP_5_16_FN, FN_IP15_31_28,
		GP_5_15_FN, FN_IP15_27_24,
		GP_5_14_FN, FN_IP15_23_20,
		GP_5_13_FN, FN_IP15_19_16,
		GP_5_12_FN, FN_IP15_15_12,
		GP_5_11_FN, FN_IP15_11_8,
		GP_5_10_FN, FN_IP15_7_4,
		GP_5_9_FN, FN_IP15_3_0,
		GP_5_8_FN, FN_IP14_31_28,
		GP_5_7_FN, FN_IP14_27_24,
		GP_5_6_FN, FN_IP14_23_20,
		GP_5_5_FN, FN_IP14_19_16,
		GP_5_4_FN, FN_IP14_15_12,
		GP_5_3_FN, FN_IP14_11_8,
		GP_5_2_FN, FN_IP14_7_4,
		GP_5_1_FN, FN_IP14_3_0,
		GP_5_0_FN, FN_IP13_31_28, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR0", 0xE6060040, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP0_31_28 [4] */
		FN_SD0_WP, FN_IRQ7, FN_CAN0_TX_A, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_27_24 [4] */
		FN_SD0_CD, 0, FN_CAN0_RX_A, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_23_20 [4] */
		FN_SD0_DAT3, 0, 0, FN_SSI_SDATA0_B, FN_TX5_E, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_19_16 [4] */
		FN_SD0_DAT2, 0, 0, FN_SSI_WS0129_B, FN_RX5_E, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_15_12 [4] */
		FN_SD0_DAT1, 0, 0, FN_SSI_SCK0129_B, FN_TX4_E, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_11_8 [4] */
		FN_SD0_DAT0, 0, 0, FN_SSI_SDATA1_C, FN_RX4_E, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_7_4 [4] */
		FN_SD0_CMD, 0, 0, FN_SSI_WS1_C, FN_TX3_C, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP0_3_0 [4] */
		FN_SD0_CLK, 0, 0, FN_SSI_SCK1_C, FN_RX3_C, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR1", 0xE6060044, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP1_31_28 [4] */
		FN_D5, FN_HRX2, FN_SCL1_B, FN_PWM2_C, FN_TCLK2_B, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_27_24 [4] */
		FN_D4, 0, FN_IRQ3, FN_TCLK1_A, FN_PWM6_C, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_23_20 [4] */
		FN_D3, 0, FN_TX4_B, FN_SDA0_D, FN_PWM0_A,
		FN_MSIOF2_SYNC_C, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_19_16 [4] */
		FN_D2, 0, FN_RX4_B, FN_SCL0_D, FN_PWM1_C,
		FN_MSIOF2_SCK_C, FN_SSI_SCK5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_15_12 [4] */
		FN_D1, 0, FN_SDA3_B, FN_TX5_B, 0, FN_MSIOF2_TXD_C,
		FN_SSI_WS5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_11_8 [4] */
		FN_D0, 0, FN_SCL3_B, FN_RX5_B, FN_IRQ4,
		FN_MSIOF2_RXD_C, FN_SSI_SDATA5_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_7_4 [4] */
		FN_MMC0_D5, FN_SD1_WP, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP1_3_0 [4] */
		FN_MMC0_D4, FN_SD1_CD, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR2", 0xE6060048, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP2_31_28 [4] */
		FN_D13, FN_MSIOF2_SYNC_A, 0, FN_RX4_C, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP2_27_24 [4] */
		FN_D12, FN_MSIOF2_SCK_A, FN_HSCK0, 0, FN_CAN_CLK_C,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP2_23_20 [4] */
		FN_D11, FN_MSIOF2_TXD_A, FN_HTX0_B, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP2_19_16 [4] */
		FN_D10, FN_MSIOF2_RXD_A, FN_HRX0_B, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP2_15_12 [4] */
		FN_D9, FN_HRTS2_N, FN_TX1_C, FN_SDA1_D, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP2_11_8 [4] */
		FN_D8, FN_HCTS2_N, FN_RX1_C, FN_SCL1_D, FN_PWM3_C, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP2_7_4 [4] */
		FN_D7, FN_HSCK2, FN_SCIF1_SCK_C, FN_IRQ6, FN_PWM5_C,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP2_3_0 [4] */
		FN_D6, FN_HTX2, FN_SDA1_B, FN_PWM4_C, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR3", 0xE606004C, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP3_31_28 [4] */
		FN_QSPI0_SSL, FN_WE1_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP3_27_24 [4] */
		FN_QSPI0_IO3, FN_RD_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP3_23_20 [4] */
		FN_QSPI0_IO2, FN_CS0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP3_19_16 [4] */
		FN_QSPI0_MISO_QSPI0_IO1, FN_RD_WR_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0,
		/* IP3_15_12 [4] */
		FN_QSPI0_MOSI_QSPI0_IO0, FN_BS_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0, 0,
		/* IP3_11_8 [4] */
		FN_QSPI0_SPCLK, FN_WE0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP3_7_4 [4] */
		FN_D15, FN_MSIOF2_SS2, FN_PWM4_A, 0, FN_CAN1_TX_B, FN_IRQ2,
		FN_AVB_AVTP_MATCH_A, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP3_3_0 [4] */
		FN_D14, FN_MSIOF2_SS1, 0, FN_TX4_C, FN_CAN1_RX_B,
		0, FN_AVB_AVTP_CAPTURE_A,
		0, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR4", 0xE6060050, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP4_31_28 [4] */
		FN_DU0_DR6, 0, FN_RX2_C, 0, 0, 0, FN_A6, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_27_24 [4] */
		FN_DU0_DR5, 0, FN_TX1_D, 0, FN_PWM1_B, 0, FN_A5, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_23_20 [4] */
		FN_DU0_DR4, 0, FN_RX1_D, 0, 0, 0, FN_A4, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP4_19_16 [4] */
		FN_DU0_DR3, 0, FN_TX0_D, FN_SDA0_E, FN_PWM0_B, 0,
		FN_A3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_15_12 [4] */
		FN_DU0_DR2, 0, FN_RX0_D, FN_SCL0_E, 0, 0, FN_A2, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_11_8 [4] */
		FN_DU0_DR1, 0, FN_TX5_C, FN_SDA2_D, 0, 0, FN_A1, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_7_4 [4] */
		FN_DU0_DR0, 0, FN_RX5_C, FN_SCL2_D, 0, 0, FN_A0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP4_3_0 [4] */
		FN_EX_WAIT0, FN_CAN_CLK_B, FN_SCIF_CLK_A, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR5", 0xE6060054, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP5_31_28 [4] */
		FN_DU0_DG6, 0, FN_HRX1_C, 0, 0, 0, FN_A14,  0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP5_27_24 [4] */
		FN_DU0_DG5, 0, FN_HTX0_A, 0, FN_PWM5_B, 0, FN_A13,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP5_23_20 [4] */
		FN_DU0_DG4, 0, FN_HRX0_A, 0, 0, 0, FN_A12, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP5_19_16 [4] */
		FN_DU0_DG3, 0, FN_TX4_D, 0, FN_PWM4_B, 0, FN_A11, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP5_15_12 [4] */
		FN_DU0_DG2, 0, FN_RX4_D, 0, 0, 0, FN_A10, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP5_11_8 [4] */
		FN_DU0_DG1, 0, FN_TX3_B, FN_SDA3_D, FN_PWM3_B, 0,
		FN_A9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP5_7_4 [4] */
		FN_DU0_DG0, 0, FN_RX3_B, FN_SCL3_D, 0, 0, FN_A8, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP5_3_0 [4] */
		FN_DU0_DR7, 0, FN_TX2_C, 0, FN_PWM2_B, 0, FN_A7, 0,
		0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR6", 0xE6060058, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP6_31_28 [4] */
		FN_DU0_DB6, 0, 0, 0, 0, 0, FN_A22, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP6_27_24 [4] */
		FN_DU0_DB5, 0, FN_HRTS1_N_C, 0, 0, 0,
		FN_A21, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP6_23_20 [4] */
		FN_DU0_DB4, 0, FN_HCTS1_N_C, 0, 0, 0,
		FN_A20, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP6_19_16 [4] */
		FN_DU0_DB3, 0, FN_HRTS0_N, 0, 0, 0, FN_A19, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP6_15_12 [4] */
		FN_DU0_DB2, 0, FN_HCTS0_N, 0, 0, 0, FN_A18, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP6_11_8 [4] */
		FN_DU0_DB1, 0, 0, FN_SDA4_D, FN_CAN0_TX_C, 0, FN_A17,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP6_7_4 [4] */
		FN_DU0_DB0, 0, 0, FN_SCL4_D, FN_CAN0_RX_C, 0, FN_A16,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP6_3_0 [4] */
		FN_DU0_DG7, 0, FN_HTX1_C, 0,  FN_PWM6_B, 0, FN_A15,
		0, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR7", 0xE606005C, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP7_31_28 [4] */
		FN_DU0_DISP, 0, 0, 0, FN_CAN1_RX_C, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP7_27_24 [4] */
		FN_DU0_EXODDF_DU0_ODDF_DISP_CDE, 0, FN_MSIOF2_SCK_B,
		0, 0, 0, FN_DRACK0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP7_23_20 [4] */
		FN_DU0_EXVSYNC_DU0_VSYNC, 0, FN_MSIOF2_SYNC_B, 0,
		0, 0, FN_DACK0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP7_19_16 [4] */
		FN_DU0_EXHSYNC_DU0_HSYNC, 0, FN_MSIOF2_TXD_B, 0,
		0, 0, FN_DREQ0_N, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP7_15_12 [4] */
		FN_DU0_DOTCLKOUT1, 0, FN_MSIOF2_RXD_B, 0, 0, 0,
		FN_CS1_N_A26, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP7_11_8 [4] */
		FN_DU0_DOTCLKOUT0, 0, 0, 0, 0, 0, FN_A25, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP7_7_4 [4] */
		FN_DU0_DOTCLKIN, 0, 0, 0, 0, 0, FN_A24, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP7_3_0 [4] */
		FN_DU0_DB7, 0, 0, 0, 0, 0, FN_A23, 0, 0,
		0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR8", 0xE6060060, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP8_31_28 [4] */
		FN_VI1_DATA5, 0, 0, 0, FN_AVB_RXD4, FN_ETH_LINK, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP8_27_24 [4] */
		FN_VI1_DATA4, 0, 0, 0, FN_AVB_RXD3, FN_ETH_RX_ER, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP8_23_20 [4] */
		FN_VI1_DATA3, 0, 0, 0, FN_AVB_RXD2, FN_ETH_MDIO, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP8_19_16 [4] */
		FN_VI1_DATA2, 0, 0, 0, FN_AVB_RXD1, FN_ETH_RXD1, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP8_15_12 [4] */
		FN_VI1_DATA1, 0, 0, 0, FN_AVB_RXD0, FN_ETH_RXD0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP8_11_8 [4] */
		FN_VI1_DATA0, 0, 0, 0, FN_AVB_RX_DV, FN_ETH_CRS_DV, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP8_7_4 [4] */
		FN_VI1_CLK, 0, 0, 0, FN_AVB_RX_CLK, FN_ETH_REF_CLK, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP8_3_0 [4] */
		FN_DU0_CDE, 0, 0, 0, FN_CAN1_TX_C, 0, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR9", 0xE6060064, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP9_31_28 [4] */
		FN_VI1_DATA9, 0, 0, FN_SDA2_B, FN_AVB_TXD0, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP9_27_24 [4] */
		FN_VI1_DATA8, 0, 0, FN_SCL2_B, FN_AVB_TX_EN, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP9_23_20 [4] */
		FN_VI1_VSYNC_N, FN_TX0_B, FN_SDA0_C, FN_AUDIO_CLKOUT_B,
		FN_AVB_TX_CLK, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP9_19_16 [4] */
		FN_VI1_HSYNC_N, FN_RX0_B, FN_SCL0_C, 0, FN_AVB_GTXREFCLK,
		FN_ETH_MDC, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP9_15_12 [4] */
		FN_VI1_FIELD, FN_SDA3_A, 0, 0, FN_AVB_RX_ER, FN_ETH_TXD0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP9_11_8 [4] */
		FN_VI1_CLKENB, FN_SCL3_A, 0, 0, FN_AVB_RXD7, FN_ETH_MAGIC, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP9_7_4 [4] */
		FN_VI1_DATA7, 0, 0, 0, FN_AVB_RXD6, FN_ETH_TX_EN, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP9_3_0 [4] */
		FN_VI1_DATA6, 0, 0, 0, FN_AVB_RXD5, FN_ETH_TXD1, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR10", 0xE6060068, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP10_31_28 [4] */
		FN_SCL1_A, FN_RX4_A, FN_PWM5_D, FN_DU1_DR0, 0, 0,
		FN_SSI_SCK6_B, FN_VI0_G0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP10_27_24 [4] */
		FN_SDA0_A, FN_TX0_C, FN_IRQ5, FN_CAN_CLK_A, FN_AVB_GTX_CLK,
		FN_CAN1_TX_D, FN_DVC_MUTE, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP10_23_20 [4] */
		FN_SCL0_A, FN_RX0_C, FN_PWM5_A, FN_TCLK1_B, FN_AVB_TXD6,
		FN_CAN1_RX_D, FN_MSIOF0_SYNC_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP10_19_16 [4] */
		FN_AVB_TXD5, FN_SCIF_CLK_B, FN_AUDIO_CLKC_B, 0,
		FN_SSI_SDATA1_D, 0, FN_MSIOF0_SCK_B, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP10_15_12 [4] */
		FN_AVB_TXD4, 0, FN_AUDIO_CLKB_B, 0, FN_SSI_WS1_D, FN_TX5_F,
		FN_MSIOF0_TXD_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP10_11_8 [4] */
		FN_AVB_TXD3, 0, FN_AUDIO_CLKA_B, 0, FN_SSI_SCK1_D, FN_RX5_F,
		FN_MSIOF0_RXD_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP10_7_4 [4] */
		FN_VI1_DATA11, 0, 0, FN_CAN0_TX_B, FN_AVB_TXD2, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0,
		/* IP10_3_0 [4] */
		FN_VI1_DATA10, 0, 0, FN_CAN0_RX_B, FN_AVB_TXD1, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR11", 0xE606006C, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP11_31_28 [4] */
		FN_HRX1_A, FN_SCL4_A, FN_PWM6_A, FN_DU1_DG0, FN_RX0_A, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_27_24 [4] */
		FN_MSIOF0_SS2_A, 0, 0, FN_DU1_DR7, 0,
		FN_QSPI1_SSL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_23_20 [4] */
		FN_MSIOF0_SS1_A, 0, 0, FN_DU1_DR6, 0,
		FN_QSPI1_IO3, FN_SSI_SDATA8_B, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_19_16 [4] */
		FN_MSIOF0_SYNC_A, FN_PWM1_A, 0, FN_DU1_DR5,
		0, FN_QSPI1_IO2, FN_SSI_SDATA7_B, 0, 0, 0, 0, 0,
		0, 0, 0, 0,
		/* IP11_15_12 [4] */
		FN_MSIOF0_SCK_A, FN_IRQ0, 0, FN_DU1_DR4,
		0, FN_QSPI1_SPCLK, FN_SSI_SCK78_B, FN_VI0_G4,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_11_8 [4] */
		FN_MSIOF0_TXD_A, FN_TX5_A, FN_SDA2_C, FN_DU1_DR3, 0,
		FN_QSPI1_MISO_QSPI1_IO1, FN_SSI_WS78_B, FN_VI0_G3,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_7_4 [4] */
		FN_MSIOF0_RXD_A, FN_RX5_A, FN_SCL2_C, FN_DU1_DR2, 0,
		FN_QSPI1_MOSI_QSPI1_IO0, FN_SSI_SDATA6_B, FN_VI0_G2,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP11_3_0 [4] */
		FN_SDA1_A, FN_TX4_A, 0, FN_DU1_DR1, 0, 0, FN_SSI_WS6_B,
		FN_VI0_G1, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR12", 0xE6060070, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP12_31_28 [4] */
		FN_SD2_DAT2, FN_RX2_A, 0, FN_DU1_DB0, FN_SSI_SDATA2_B, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_27_24 [4] */
		FN_SD2_DAT1, FN_TX1_A, FN_SDA1_E, FN_DU1_DG7, FN_SSI_WS2_B,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_23_20 [4] */
		FN_SD2_DAT0, FN_RX1_A, FN_SCL1_E, FN_DU1_DG6,
		FN_SSI_SDATA1_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_19_16 [4] */
		FN_SD2_CMD, FN_SCIF1_SCK_A, FN_TCLK2_A, FN_DU1_DG5,
		FN_SSI_SCK2_B, FN_PWM3_A, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_15_12 [4] */
		FN_SD2_CLK, FN_HSCK1, 0, FN_DU1_DG4, FN_SSI_SCK1_B, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_11_8 [4] */
		FN_HRTS1_N_A, 0, 0, FN_DU1_DG3, FN_SSI_WS1_B, FN_IRQ1, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_7_4 [4] */
		FN_HCTS1_N_A, FN_PWM2_A, 0, FN_DU1_DG2, FN_REMOCON_B,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP12_3_0 [4] */
		FN_HTX1_A, FN_SDA4_A, 0, FN_DU1_DG1, FN_TX0_A, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR13", 0xE6060074, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP13_31_28 [4] */
		FN_SSI_SCK5_A, 0, 0, FN_DU1_DOTCLKOUT1, 0, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP13_27_24 [4] */
		FN_SDA2_A, 0, FN_MSIOF1_SYNC_B, FN_DU1_DB7, FN_AUDIO_CLKOUT_C,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP13_23_20 [4] */
		FN_SCL2_A, 0, FN_MSIOF1_SCK_B, FN_DU1_DB6, FN_AUDIO_CLKC_C,
		FN_SSI_SCK4_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP13_19_16 [4] */
		FN_TX3_A, FN_SDA1_C, FN_MSIOF1_TXD_B, FN_DU1_DB5,
		FN_AUDIO_CLKB_C, FN_SSI_WS4_B, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP13_15_12 [4] */
		FN_RX3_A, FN_SCL1_C, FN_MSIOF1_RXD_B, FN_DU1_DB4,
		FN_AUDIO_CLKA_C, FN_SSI_SDATA4_B, 0, 0, 0, 0, 0, 0, 0, 0,
		0, 0,
		/* IP13_11_8 [4] */
		FN_SD2_WP, FN_SCIF3_SCK, 0, FN_DU1_DB3, FN_SSI_SDATA9_B, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP13_7_4 [4] */
		FN_SD2_CD, FN_SCIF2_SCK_A, 0, FN_DU1_DB2, FN_SSI_SCK9_B, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP13_3_0 [4] */
		FN_SD2_DAT3, FN_TX2_A, 0, FN_DU1_DB1, FN_SSI_WS9_B, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR14", 0xE6060078, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP14_31_28 [4] */
		FN_SSI_SDATA7_A, 0, 0, FN_IRQ8, FN_AUDIO_CLKA_D, FN_CAN_CLK_D,
		FN_VI0_G5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP14_27_24 [4] */
		FN_SSI_WS78_A, 0, FN_SCL4_E, FN_DU1_CDE, 0, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0,
		/* IP14_23_20 [4] */
		FN_SSI_SCK78_A, 0, FN_SDA4_E, FN_DU1_DISP, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP14_19_16 [4] */
		FN_SSI_SDATA6_A, 0, FN_SDA4_C, FN_DU1_EXVSYNC_DU1_VSYNC, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP14_15_12 [4] */
		FN_SSI_WS6_A, 0, FN_SCL4_C, FN_DU1_EXHSYNC_DU1_HSYNC, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP14_11_8 [4] */
		FN_SSI_SCK6_A, 0, 0, FN_DU1_EXODDF_DU1_ODDF_DISP_CDE, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP14_7_4 [4] */
		FN_SSI_SDATA5_A, 0, FN_SDA3_C, FN_DU1_DOTCLKOUT0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP14_3_0 [4] */
		FN_SSI_WS5_A, 0, FN_SCL3_C, FN_DU1_DOTCLKIN, 0, 0, 0, 0, 0, 0,
		0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR15", 0xE606007C, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP15_31_28 [4] */
		FN_SSI_WS4_A, 0, FN_AVB_PHY_INT, 0, 0, 0, FN_VI0_R5, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP15_27_24 [4] */
		FN_SSI_SCK4_A, 0, FN_AVB_MAGIC, 0, 0, 0, FN_VI0_R4, 0, 0, 0,
		0, 0, 0, 0, 0, 0,
		/* IP15_23_20 [4] */
		FN_SSI_SDATA3, FN_MSIOF1_SS2_A, FN_AVB_LINK, 0, FN_CAN1_TX_A,
		FN_DREQ2_N, FN_VI0_R3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP15_19_16 [4] */
		FN_SSI_WS34, FN_MSIOF1_SS1_A, FN_AVB_MDIO, 0, FN_CAN1_RX_A,
		FN_DREQ1_N, FN_VI0_R2, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP15_15_12 [4] */
		FN_SSI_SCK34, FN_MSIOF1_SCK_A, FN_AVB_MDC, 0, 0, FN_DACK1,
		FN_VI0_R1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP15_11_8 [4] */
		FN_SSI_SDATA0_A, FN_MSIOF1_SYNC_A, FN_PWM0_C, 0, 0, 0,
		FN_VI0_R0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP15_7_4 [4] */
		FN_SSI_WS0129_A, FN_MSIOF1_TXD_A, FN_TX5_D, 0, 0, 0,
		FN_VI0_G7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP15_3_0 [4] */
		FN_SSI_SCK0129_A, FN_MSIOF1_RXD_A, FN_RX5_D, 0, 0, 0,
		FN_VI0_G6, 0, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR16", 0xE6060080, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP16_31_28 [4] */
		FN_SSI_SDATA2_A, FN_HRTS1_N_B, 0, 0, 0, 0,
		FN_VI0_DATA4_VI0_B4, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_27_24 [4] */
		FN_SSI_WS2_A, FN_HCTS1_N_B, 0, 0, 0, FN_AVB_TX_ER,
		FN_VI0_DATA3_VI0_B3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_23_20 [4] */
		FN_SSI_SCK2_A, FN_HTX1_B, 0, 0, 0, FN_AVB_TXD7,
		FN_VI0_DATA2_VI0_B2, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_19_16 [4] */
		FN_SSI_SDATA1_A, FN_HRX1_B, 0, 0, 0, 0, FN_VI0_DATA1_VI0_B1,
		0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_15_12 [4] */
		FN_SSI_WS1_A, FN_TX1_B, 0, 0, FN_CAN0_TX_D,
		FN_AVB_AVTP_MATCH_B, FN_VI0_DATA0_VI0_B0, 0, 0, 0, 0, 0, 0,
		0, 0, 0,
		/* IP16_11_8 [4] */
		FN_SSI_SDATA8_A, FN_RX1_B, 0, 0, FN_CAN0_RX_D,
		FN_AVB_AVTP_CAPTURE_B, FN_VI0_R7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_7_4 [4] */
		FN_SSI_SCK1_A, FN_SCIF1_SCK_B, FN_PWM1_D, FN_IRQ9, FN_REMOCON_A,
		FN_DACK2, FN_VI0_CLK, FN_AVB_COL, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP16_3_0 [4] */
		FN_SSI_SDATA4_A, 0, FN_AVB_CRS, 0, 0, 0, FN_VI0_R6, 0, 0, 0,
		0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("IPSR17", 0xE6060084, 32,
			     GROUP(4, 4, 4, 4, 4, 4, 4, 4),
			     GROUP(
		/* IP17_31_28 [4] */
		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_27_24 [4] */
		FN_AUDIO_CLKOUT_A, FN_SDA4_B, 0, 0, 0, 0,
		FN_VI0_VSYNC_N, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_23_20 [4] */
		FN_AUDIO_CLKC_A, FN_SCL4_B, 0, 0, 0, 0,
		FN_VI0_HSYNC_N, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_19_16 [4] */
		FN_AUDIO_CLKB_A, FN_SDA0_B, 0, 0, 0, 0,
		FN_VI0_FIELD, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_15_12 [4] */
		FN_AUDIO_CLKA_A, FN_SCL0_B, 0, 0, 0, 0,
		FN_VI0_CLKENB, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_11_8 [4] */
		FN_SSI_SDATA9_A, FN_SCIF2_SCK_B, FN_PWM2_D, 0, 0, 0,
		FN_VI0_DATA7_VI0_B7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_7_4 [4] */
		FN_SSI_WS9_A, FN_TX2_B, FN_SDA3_E, 0, 0, 0,
		FN_VI0_DATA6_VI0_B6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
		/* IP17_3_0 [4] */
		FN_SSI_SCK9_A, FN_RX2_B, FN_SCL3_E, 0, 0, FN_EX_WAIT1,
		FN_VI0_DATA5_VI0_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, ))
	},
	{ PINMUX_CFG_REG_VAR("MOD_SEL0", 0xE60600C0, 32,
			     GROUP(1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1,
				   3, 3, 1, 2, 3, 3, 1),
			     GROUP(
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* SEL_ADGA [2] */
		FN_SEL_ADGA_0, FN_SEL_ADGA_1, FN_SEL_ADGA_2, FN_SEL_ADGA_3,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* SEL_CANCLK [2] */
		FN_SEL_CANCLK_0, FN_SEL_CANCLK_1, FN_SEL_CANCLK_2,
		FN_SEL_CANCLK_3,
		/* SEL_CAN1 [2] */
		FN_SEL_CAN1_0, FN_SEL_CAN1_1, FN_SEL_CAN1_2, FN_SEL_CAN1_3,
		/* SEL_CAN0 [2] */
		FN_SEL_CAN0_0, FN_SEL_CAN0_1, FN_SEL_CAN0_2, FN_SEL_CAN0_3,
		/* RESERVED [1] */
		0, 0,
		/* SEL_I2C04 [3] */
		FN_SEL_I2C04_0, FN_SEL_I2C04_1, FN_SEL_I2C04_2, FN_SEL_I2C04_3,
		FN_SEL_I2C04_4, 0, 0, 0,
		/* SEL_I2C03 [3] */
		FN_SEL_I2C03_0, FN_SEL_I2C03_1, FN_SEL_I2C03_2, FN_SEL_I2C03_3,
		FN_SEL_I2C03_4, 0, 0, 0,
		/* RESERVED [1] */
		0, 0,
		/* SEL_I2C02 [2] */
		FN_SEL_I2C02_0, FN_SEL_I2C02_1, FN_SEL_I2C02_2, FN_SEL_I2C02_3,
		/* SEL_I2C01 [3] */
		FN_SEL_I2C01_0, FN_SEL_I2C01_1, FN_SEL_I2C01_2, FN_SEL_I2C01_3,
		FN_SEL_I2C01_4, 0, 0, 0,
		/* SEL_I2C00 [3] */
		FN_SEL_I2C00_0, FN_SEL_I2C00_1, FN_SEL_I2C00_2, FN_SEL_I2C00_3,
		FN_SEL_I2C00_4, 0, 0, 0,
		/* SEL_AVB [1] */
		FN_SEL_AVB_0, FN_SEL_AVB_1, ))
	},
	{ PINMUX_CFG_REG_VAR("MOD_SEL1", 0xE60600C4, 32,
			     GROUP(1, 3, 3, 2, 2, 1, 2, 2, 2, 1, 1, 1,
				   1, 1, 2, 1, 1, 2, 2, 1),
			     GROUP(
		/* SEL_SCIFCLK [1] */
		FN_SEL_SCIFCLK_0, FN_SEL_SCIFCLK_1,
		/* SEL_SCIF5 [3] */
		FN_SEL_SCIF5_0, FN_SEL_SCIF5_1, FN_SEL_SCIF5_2, FN_SEL_SCIF5_3,
		FN_SEL_SCIF5_4, FN_SEL_SCIF5_5, 0, 0,
		/* SEL_SCIF4 [3] */
		FN_SEL_SCIF4_0, FN_SEL_SCIF4_1, FN_SEL_SCIF4_2, FN_SEL_SCIF4_3,
		FN_SEL_SCIF4_4, 0, 0, 0,
		/* SEL_SCIF3 [2] */
		FN_SEL_SCIF3_0, FN_SEL_SCIF3_1, FN_SEL_SCIF3_2, 0,
		/* SEL_SCIF2 [2] */
		FN_SEL_SCIF2_0, FN_SEL_SCIF2_1, FN_SEL_SCIF2_2, 0,
		/* SEL_SCIF2_CLK [1] */
		FN_SEL_SCIF2_CLK_0, FN_SEL_SCIF2_CLK_1,
		/* SEL_SCIF1 [2] */
		FN_SEL_SCIF1_0, FN_SEL_SCIF1_1, FN_SEL_SCIF1_2, FN_SEL_SCIF1_3,
		/* SEL_SCIF0 [2] */
		FN_SEL_SCIF0_0, FN_SEL_SCIF0_1, FN_SEL_SCIF0_2, FN_SEL_SCIF0_3,
		/* SEL_MSIOF2 [2] */
		FN_SEL_MSIOF2_0, FN_SEL_MSIOF2_1, FN_SEL_MSIOF2_2, 0,
		/* RESERVED [1] */
		0, 0,
		/* SEL_MSIOF1 [1] */
		FN_SEL_MSIOF1_0, FN_SEL_MSIOF1_1,
		/* RESERVED [1] */
		0, 0,
		/* SEL_MSIOF0 [1] */
		FN_SEL_MSIOF0_0, FN_SEL_MSIOF0_1,
		/* SEL_RCN [1] */
		FN_SEL_RCN_0, FN_SEL_RCN_1,
		/* RESERVED [2] */
		0, 0, 0, 0,
		/* SEL_TMU2 [1] */
		FN_SEL_TMU2_0, FN_SEL_TMU2_1,
		/* SEL_TMU1 [1] */
		FN_SEL_TMU1_0, FN_SEL_TMU1_1,
		/* RESERVED [2] */
		0, 0, 0, 0,
		/* SEL_HSCIF1 [2] */
		FN_SEL_HSCIF1_0, FN_SEL_HSCIF1_1, FN_SEL_HSCIF1_2, 0,
		/* SEL_HSCIF0 [1] */
		FN_SEL_HSCIF0_0, FN_SEL_HSCIF0_1, ))
	},
	{ PINMUX_CFG_REG_VAR("MOD_SEL2", 0xE60600C8, 32,
			     GROUP(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
				   2, 2, 2, 2, 2, 2, 2, 2, 2),
			     GROUP(
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* RESERVED [1] */
		0, 0,
		/* SEL_ADGB [2] */
		FN_SEL_ADGB_0, FN_SEL_ADGB_1, FN_SEL_ADGB_2, 0,
		/* SEL_ADGC [2] */
		FN_SEL_ADGC_0, FN_SEL_ADGC_1, FN_SEL_ADGC_2, 0,
		/* SEL_SSI9 [2] */
		FN_SEL_SSI9_0, FN_SEL_SSI9_1, 0, 0,
		/* SEL_SSI8 [2] */
		FN_SEL_SSI8_0, FN_SEL_SSI8_1, 0, 0,
		/* SEL_SSI7 [2] */
		FN_SEL_SSI7_0, FN_SEL_SSI7_1, 0, 0,
		/* SEL_SSI6 [2] */
		FN_SEL_SSI6_0, FN_SEL_SSI6_1, 0, 0,
		/* SEL_SSI5 [2] */
		FN_SEL_SSI5_0, FN_SEL_SSI5_1, 0, 0,
		/* SEL_SSI4 [2] */
		FN_SEL_SSI4_0, FN_SEL_SSI4_1, 0, 0,
		/* SEL_SSI2 [2] */
		FN_SEL_SSI2_0, FN_SEL_SSI2_1, 0, 0,
		/* SEL_SSI1 [2] */
		FN_SEL_SSI1_0, FN_SEL_SSI1_1, FN_SEL_SSI1_2, FN_SEL_SSI1_3,
		/* SEL_SSI0 [2] */
		FN_SEL_SSI0_0, FN_SEL_SSI0_1, 0, 0, ))
	},
	{ },
};

static int r8a77470_pin_to_pocctrl(struct sh_pfc *pfc, unsigned int pin,
				   u32 *pocctrl)
{
	int bit = -EINVAL;

	*pocctrl = 0xe60600b0;

	if (pin >= RCAR_GP_PIN(0, 5) && pin <= RCAR_GP_PIN(0, 10))
		bit = 0;

	if (pin >= RCAR_GP_PIN(0, 13) && pin <= RCAR_GP_PIN(0, 22))
		bit = 2;

	if (pin >= RCAR_GP_PIN(4, 14) && pin <= RCAR_GP_PIN(4, 19))
		bit = 1;

	return bit;
}

static const struct sh_pfc_soc_operations r8a77470_pinmux_ops = {
	.pin_to_pocctrl = r8a77470_pin_to_pocctrl,
};

#ifdef CONFIG_PINCTRL_PFC_R8A77470
const struct sh_pfc_soc_info r8a77470_pinmux_info = {
	.name = "r8a77470_pfc",
	.ops = &r8a77470_pinmux_ops,
	.unlock_reg = 0xe6060000, /* PMMR */

	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },

	.pins = pinmux_pins,
	.nr_pins = ARRAY_SIZE(pinmux_pins),
	.groups = pinmux_groups,
	.nr_groups = ARRAY_SIZE(pinmux_groups),
	.functions = pinmux_functions,
	.nr_functions = ARRAY_SIZE(pinmux_functions),

	.cfg_regs = pinmux_config_regs,

	.pinmux_data = pinmux_data,
	.pinmux_data_size = ARRAY_SIZE(pinmux_data),
};
#endif
