162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * R8A77980 processor support - PFC hardware block.
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright (C) 2018 Renesas Electronics Corp.
662306a36Sopenharmony_ci * Copyright (C) 2018 Cogent Embedded, Inc.
762306a36Sopenharmony_ci *
862306a36Sopenharmony_ci * This file is based on the drivers/pinctrl/renesas/pfc-r8a7795.c
962306a36Sopenharmony_ci *
1062306a36Sopenharmony_ci * R-Car Gen3 processor support - PFC hardware block.
1162306a36Sopenharmony_ci *
1262306a36Sopenharmony_ci * Copyright (C) 2015 Renesas Electronics Corporation
1362306a36Sopenharmony_ci */
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci#include <linux/errno.h>
1662306a36Sopenharmony_ci#include <linux/io.h>
1762306a36Sopenharmony_ci#include <linux/kernel.h>
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci#include "sh_pfc.h"
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci#define CPU_ALL_GP(fn, sfx)	\
2262306a36Sopenharmony_ci	PORT_GP_CFG_22(0, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE_18_33 | SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
2362306a36Sopenharmony_ci	PORT_GP_CFG_28(1, fn, sfx, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
2462306a36Sopenharmony_ci	PORT_GP_CFG_30(2, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE_18_33 | SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
2562306a36Sopenharmony_ci	PORT_GP_CFG_17(3, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE_18_33 | SH_PFC_PIN_CFG_PULL_UP_DOWN), \
2662306a36Sopenharmony_ci	PORT_GP_CFG_25(4, fn, sfx, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
2762306a36Sopenharmony_ci	PORT_GP_CFG_15(5, fn, sfx, SH_PFC_PIN_CFG_PULL_UP_DOWN)
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci#define CPU_ALL_NOGP(fn)	\
3062306a36Sopenharmony_ci	PIN_NOGP_CFG(DCUTCK_LPDCLK, "DCUTCK_LPDCLK", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3162306a36Sopenharmony_ci	PIN_NOGP_CFG(DCUTDI_LPDI, "DCUTDI_LPDI", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3262306a36Sopenharmony_ci	PIN_NOGP_CFG(DCUTMS, "DCUTMS", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3362306a36Sopenharmony_ci	PIN_NOGP_CFG(DCUTRST_N, "DCUTRST#", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3462306a36Sopenharmony_ci	PIN_NOGP_CFG(DU_DOTCLKIN, "DU_DOTCLKIN", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3562306a36Sopenharmony_ci	PIN_NOGP_CFG(EXTALR, "EXTALR", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3662306a36Sopenharmony_ci	PIN_NOGP_CFG(FSCLKST, "FSCLKST", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3762306a36Sopenharmony_ci	PIN_NOGP_CFG(FSCLKST_N, "FSCLKST#", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN),	\
3862306a36Sopenharmony_ci	PIN_NOGP_CFG(PRESETOUT_N, "PRESETOUT#", fn, SH_PFC_PIN_CFG_PULL_UP_DOWN), \
3962306a36Sopenharmony_ci	PIN_NOGP_CFG(VDDQ_AVB, "VDDQ_AVB", fn, SH_PFC_PIN_CFG_IO_VOLTAGE_25_33), \
4062306a36Sopenharmony_ci	PIN_NOGP_CFG(VDDQ_GE, "VDDQ_GE", fn, SH_PFC_PIN_CFG_IO_VOLTAGE_25_33)
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci/*
4362306a36Sopenharmony_ci * F_() : just information
4462306a36Sopenharmony_ci * FM() : macro for FN_xxx / xxx_MARK
4562306a36Sopenharmony_ci */
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci/* GPSR0 */
4862306a36Sopenharmony_ci#define GPSR0_21	F_(DU_EXODDF_DU_ODDF_DISP_CDE,	IP2_23_20)
4962306a36Sopenharmony_ci#define GPSR0_20	F_(DU_EXVSYNC_DU_VSYNC,		IP2_19_16)
5062306a36Sopenharmony_ci#define GPSR0_19	F_(DU_EXHSYNC_DU_HSYNC,		IP2_15_12)
5162306a36Sopenharmony_ci#define GPSR0_18	F_(DU_DOTCLKOUT,		IP2_11_8)
5262306a36Sopenharmony_ci#define GPSR0_17	F_(DU_DB7,			IP2_7_4)
5362306a36Sopenharmony_ci#define GPSR0_16	F_(DU_DB6,			IP2_3_0)
5462306a36Sopenharmony_ci#define GPSR0_15	F_(DU_DB5,			IP1_31_28)
5562306a36Sopenharmony_ci#define GPSR0_14	F_(DU_DB4,			IP1_27_24)
5662306a36Sopenharmony_ci#define GPSR0_13	F_(DU_DB3,			IP1_23_20)
5762306a36Sopenharmony_ci#define GPSR0_12	F_(DU_DB2,			IP1_19_16)
5862306a36Sopenharmony_ci#define GPSR0_11	F_(DU_DG7,			IP1_15_12)
5962306a36Sopenharmony_ci#define GPSR0_10	F_(DU_DG6,			IP1_11_8)
6062306a36Sopenharmony_ci#define GPSR0_9		F_(DU_DG5,			IP1_7_4)
6162306a36Sopenharmony_ci#define GPSR0_8		F_(DU_DG4,			IP1_3_0)
6262306a36Sopenharmony_ci#define GPSR0_7		F_(DU_DG3,			IP0_31_28)
6362306a36Sopenharmony_ci#define GPSR0_6		F_(DU_DG2,			IP0_27_24)
6462306a36Sopenharmony_ci#define GPSR0_5		F_(DU_DR7,			IP0_23_20)
6562306a36Sopenharmony_ci#define GPSR0_4		F_(DU_DR6,			IP0_19_16)
6662306a36Sopenharmony_ci#define GPSR0_3		F_(DU_DR5,			IP0_15_12)
6762306a36Sopenharmony_ci#define GPSR0_2		F_(DU_DR4,			IP0_11_8)
6862306a36Sopenharmony_ci#define GPSR0_1		F_(DU_DR3,			IP0_7_4)
6962306a36Sopenharmony_ci#define GPSR0_0		F_(DU_DR2,			IP0_3_0)
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci/* GPSR1 */
7262306a36Sopenharmony_ci#define GPSR1_27	F_(DIGRF_CLKOUT,	IP8_31_28)
7362306a36Sopenharmony_ci#define GPSR1_26	F_(DIGRF_CLKIN,		IP8_27_24)
7462306a36Sopenharmony_ci#define GPSR1_25	F_(CANFD_CLK_A,		IP8_23_20)
7562306a36Sopenharmony_ci#define GPSR1_24	F_(CANFD1_RX,		IP8_19_16)
7662306a36Sopenharmony_ci#define GPSR1_23	F_(CANFD1_TX,		IP8_15_12)
7762306a36Sopenharmony_ci#define GPSR1_22	F_(CANFD0_RX_A,		IP8_11_8)
7862306a36Sopenharmony_ci#define GPSR1_21	F_(CANFD0_TX_A,		IP8_7_4)
7962306a36Sopenharmony_ci#define GPSR1_20	F_(AVB_AVTP_CAPTURE,	IP8_3_0)
8062306a36Sopenharmony_ci#define GPSR1_19	F_(AVB_AVTP_MATCH,	IP7_31_28)
8162306a36Sopenharmony_ci#define GPSR1_18	FM(AVB_LINK)
8262306a36Sopenharmony_ci#define GPSR1_17	FM(AVB_PHY_INT)
8362306a36Sopenharmony_ci#define GPSR1_16	FM(AVB_MAGIC)
8462306a36Sopenharmony_ci#define GPSR1_15	FM(AVB_MDC)
8562306a36Sopenharmony_ci#define GPSR1_14	FM(AVB_MDIO)
8662306a36Sopenharmony_ci#define GPSR1_13	FM(AVB_TXCREFCLK)
8762306a36Sopenharmony_ci#define GPSR1_12	FM(AVB_TD3)
8862306a36Sopenharmony_ci#define GPSR1_11	FM(AVB_TD2)
8962306a36Sopenharmony_ci#define GPSR1_10	FM(AVB_TD1)
9062306a36Sopenharmony_ci#define GPSR1_9		FM(AVB_TD0)
9162306a36Sopenharmony_ci#define GPSR1_8		FM(AVB_TXC)
9262306a36Sopenharmony_ci#define GPSR1_7		FM(AVB_TX_CTL)
9362306a36Sopenharmony_ci#define GPSR1_6		FM(AVB_RD3)
9462306a36Sopenharmony_ci#define GPSR1_5		FM(AVB_RD2)
9562306a36Sopenharmony_ci#define GPSR1_4		FM(AVB_RD1)
9662306a36Sopenharmony_ci#define GPSR1_3		FM(AVB_RD0)
9762306a36Sopenharmony_ci#define GPSR1_2		FM(AVB_RXC)
9862306a36Sopenharmony_ci#define GPSR1_1		FM(AVB_RX_CTL)
9962306a36Sopenharmony_ci#define GPSR1_0		F_(IRQ0,		IP2_27_24)
10062306a36Sopenharmony_ci
10162306a36Sopenharmony_ci/* GPSR2 */
10262306a36Sopenharmony_ci#define GPSR2_29	F_(FSO_TOE_N,		IP10_19_16)
10362306a36Sopenharmony_ci#define GPSR2_28	F_(FSO_CFE_1_N,		IP10_15_12)
10462306a36Sopenharmony_ci#define GPSR2_27	F_(FSO_CFE_0_N,		IP10_11_8)
10562306a36Sopenharmony_ci#define GPSR2_26	F_(SDA3,		IP10_7_4)
10662306a36Sopenharmony_ci#define GPSR2_25	F_(SCL3,		IP10_3_0)
10762306a36Sopenharmony_ci#define GPSR2_24	F_(MSIOF0_SS2,		IP9_31_28)
10862306a36Sopenharmony_ci#define GPSR2_23	F_(MSIOF0_SS1,		IP9_27_24)
10962306a36Sopenharmony_ci#define GPSR2_22	F_(MSIOF0_SYNC,		IP9_23_20)
11062306a36Sopenharmony_ci#define GPSR2_21	F_(MSIOF0_SCK,		IP9_19_16)
11162306a36Sopenharmony_ci#define GPSR2_20	F_(MSIOF0_TXD,		IP9_15_12)
11262306a36Sopenharmony_ci#define GPSR2_19	F_(MSIOF0_RXD,		IP9_11_8)
11362306a36Sopenharmony_ci#define GPSR2_18	F_(IRQ5,		IP9_7_4)
11462306a36Sopenharmony_ci#define GPSR2_17	F_(IRQ4,		IP9_3_0)
11562306a36Sopenharmony_ci#define GPSR2_16	F_(VI0_FIELD,		IP4_31_28)
11662306a36Sopenharmony_ci#define GPSR2_15	F_(VI0_DATA11,		IP4_27_24)
11762306a36Sopenharmony_ci#define GPSR2_14	F_(VI0_DATA10,		IP4_23_20)
11862306a36Sopenharmony_ci#define GPSR2_13	F_(VI0_DATA9,		IP4_19_16)
11962306a36Sopenharmony_ci#define GPSR2_12	F_(VI0_DATA8,		IP4_15_12)
12062306a36Sopenharmony_ci#define GPSR2_11	F_(VI0_DATA7,		IP4_11_8)
12162306a36Sopenharmony_ci#define GPSR2_10	F_(VI0_DATA6,		IP4_7_4)
12262306a36Sopenharmony_ci#define GPSR2_9		F_(VI0_DATA5,		IP4_3_0)
12362306a36Sopenharmony_ci#define GPSR2_8		F_(VI0_DATA4,		IP3_31_28)
12462306a36Sopenharmony_ci#define GPSR2_7		F_(VI0_DATA3,		IP3_27_24)
12562306a36Sopenharmony_ci#define GPSR2_6		F_(VI0_DATA2,		IP3_23_20)
12662306a36Sopenharmony_ci#define GPSR2_5		F_(VI0_DATA1,		IP3_19_16)
12762306a36Sopenharmony_ci#define GPSR2_4		F_(VI0_DATA0,		IP3_15_12)
12862306a36Sopenharmony_ci#define GPSR2_3		F_(VI0_VSYNC_N,		IP3_11_8)
12962306a36Sopenharmony_ci#define GPSR2_2		F_(VI0_HSYNC_N,		IP3_7_4)
13062306a36Sopenharmony_ci#define GPSR2_1		F_(VI0_CLKENB,		IP3_3_0)
13162306a36Sopenharmony_ci#define GPSR2_0		F_(VI0_CLK,		IP2_31_28)
13262306a36Sopenharmony_ci
13362306a36Sopenharmony_ci/* GPSR3 */
13462306a36Sopenharmony_ci#define GPSR3_16	F_(VI1_FIELD,		IP7_3_0)
13562306a36Sopenharmony_ci#define GPSR3_15	F_(VI1_DATA11,		IP6_31_28)
13662306a36Sopenharmony_ci#define GPSR3_14	F_(VI1_DATA10,		IP6_27_24)
13762306a36Sopenharmony_ci#define GPSR3_13	F_(VI1_DATA9,		IP6_23_20)
13862306a36Sopenharmony_ci#define GPSR3_12	F_(VI1_DATA8,		IP6_19_16)
13962306a36Sopenharmony_ci#define GPSR3_11	F_(VI1_DATA7,		IP6_15_12)
14062306a36Sopenharmony_ci#define GPSR3_10	F_(VI1_DATA6,		IP6_11_8)
14162306a36Sopenharmony_ci#define GPSR3_9		F_(VI1_DATA5,		IP6_7_4)
14262306a36Sopenharmony_ci#define GPSR3_8		F_(VI1_DATA4,		IP6_3_0)
14362306a36Sopenharmony_ci#define GPSR3_7		F_(VI1_DATA3,		IP5_31_28)
14462306a36Sopenharmony_ci#define GPSR3_6		F_(VI1_DATA2,		IP5_27_24)
14562306a36Sopenharmony_ci#define GPSR3_5		F_(VI1_DATA1,		IP5_23_20)
14662306a36Sopenharmony_ci#define GPSR3_4		F_(VI1_DATA0,		IP5_19_16)
14762306a36Sopenharmony_ci#define GPSR3_3		F_(VI1_VSYNC_N,		IP5_15_12)
14862306a36Sopenharmony_ci#define GPSR3_2		F_(VI1_HSYNC_N,		IP5_11_8)
14962306a36Sopenharmony_ci#define GPSR3_1		F_(VI1_CLKENB,		IP5_7_4)
15062306a36Sopenharmony_ci#define GPSR3_0		F_(VI1_CLK,		IP5_3_0)
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ci/* GPSR4 */
15362306a36Sopenharmony_ci#define GPSR4_24	FM(GETHER_LINK_A)
15462306a36Sopenharmony_ci#define GPSR4_23	FM(GETHER_PHY_INT_A)
15562306a36Sopenharmony_ci#define GPSR4_22	FM(GETHER_MAGIC)
15662306a36Sopenharmony_ci#define GPSR4_21	FM(GETHER_MDC_A)
15762306a36Sopenharmony_ci#define GPSR4_20	FM(GETHER_MDIO_A)
15862306a36Sopenharmony_ci#define GPSR4_19	FM(GETHER_TXCREFCLK_MEGA)
15962306a36Sopenharmony_ci#define GPSR4_18	FM(GETHER_TXCREFCLK)
16062306a36Sopenharmony_ci#define GPSR4_17	FM(GETHER_TD3)
16162306a36Sopenharmony_ci#define GPSR4_16	FM(GETHER_TD2)
16262306a36Sopenharmony_ci#define GPSR4_15	FM(GETHER_TD1)
16362306a36Sopenharmony_ci#define GPSR4_14	FM(GETHER_TD0)
16462306a36Sopenharmony_ci#define GPSR4_13	FM(GETHER_TXC)
16562306a36Sopenharmony_ci#define GPSR4_12	FM(GETHER_TX_CTL)
16662306a36Sopenharmony_ci#define GPSR4_11	FM(GETHER_RD3)
16762306a36Sopenharmony_ci#define GPSR4_10	FM(GETHER_RD2)
16862306a36Sopenharmony_ci#define GPSR4_9		FM(GETHER_RD1)
16962306a36Sopenharmony_ci#define GPSR4_8		FM(GETHER_RD0)
17062306a36Sopenharmony_ci#define GPSR4_7		FM(GETHER_RXC)
17162306a36Sopenharmony_ci#define GPSR4_6		FM(GETHER_RX_CTL)
17262306a36Sopenharmony_ci#define GPSR4_5		F_(SDA2,		IP7_27_24)
17362306a36Sopenharmony_ci#define GPSR4_4		F_(SCL2,		IP7_23_20)
17462306a36Sopenharmony_ci#define GPSR4_3		F_(SDA1,		IP7_19_16)
17562306a36Sopenharmony_ci#define GPSR4_2		F_(SCL1,		IP7_15_12)
17662306a36Sopenharmony_ci#define GPSR4_1		F_(SDA0,		IP7_11_8)
17762306a36Sopenharmony_ci#define GPSR4_0		F_(SCL0,		IP7_7_4)
17862306a36Sopenharmony_ci
17962306a36Sopenharmony_ci/* GPSR5 */
18062306a36Sopenharmony_ci#define GPSR5_14	FM(RPC_INT_N)
18162306a36Sopenharmony_ci#define GPSR5_13	FM(RPC_WP_N)
18262306a36Sopenharmony_ci#define GPSR5_12	FM(RPC_RESET_N)
18362306a36Sopenharmony_ci#define GPSR5_11	FM(QSPI1_SSL)
18462306a36Sopenharmony_ci#define GPSR5_10	FM(QSPI1_IO3)
18562306a36Sopenharmony_ci#define GPSR5_9		FM(QSPI1_IO2)
18662306a36Sopenharmony_ci#define GPSR5_8		FM(QSPI1_MISO_IO1)
18762306a36Sopenharmony_ci#define GPSR5_7		FM(QSPI1_MOSI_IO0)
18862306a36Sopenharmony_ci#define GPSR5_6		FM(QSPI1_SPCLK)
18962306a36Sopenharmony_ci#define GPSR5_5		FM(QSPI0_SSL)
19062306a36Sopenharmony_ci#define GPSR5_4		FM(QSPI0_IO3)
19162306a36Sopenharmony_ci#define GPSR5_3		FM(QSPI0_IO2)
19262306a36Sopenharmony_ci#define GPSR5_2		FM(QSPI0_MISO_IO1)
19362306a36Sopenharmony_ci#define GPSR5_1		FM(QSPI0_MOSI_IO0)
19462306a36Sopenharmony_ci#define GPSR5_0		FM(QSPI0_SPCLK)
19562306a36Sopenharmony_ci
19662306a36Sopenharmony_ci
19762306a36Sopenharmony_ci/* IPSRx */		/* 0 */				/* 1 */			/* 2 */			/* 3 */		/* 4 */		/* 5 */		/* 6 - F */
19862306a36Sopenharmony_ci#define IP0_3_0		FM(DU_DR2)			FM(SCK4)		FM(GETHER_RMII_CRS_DV)	FM(A0)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
19962306a36Sopenharmony_ci#define IP0_7_4		FM(DU_DR3)			FM(RX4)			FM(GETHER_RMII_RX_ER)	FM(A1)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20062306a36Sopenharmony_ci#define IP0_11_8	FM(DU_DR4)			FM(TX4)			FM(GETHER_RMII_RXD0)	FM(A2)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20162306a36Sopenharmony_ci#define IP0_15_12	FM(DU_DR5)			FM(CTS4_N)		FM(GETHER_RMII_RXD1)	FM(A3)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20262306a36Sopenharmony_ci#define IP0_19_16	FM(DU_DR6)			FM(RTS4_N)		FM(GETHER_RMII_TXD_EN)	FM(A4)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20362306a36Sopenharmony_ci#define IP0_23_20	FM(DU_DR7)			F_(0, 0)		FM(GETHER_RMII_TXD0)	FM(A5)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20462306a36Sopenharmony_ci#define IP0_27_24	FM(DU_DG2)			F_(0, 0)		FM(GETHER_RMII_TXD1)	FM(A6)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20562306a36Sopenharmony_ci#define IP0_31_28	FM(DU_DG3)			FM(CPG_CPCKOUT)		FM(GETHER_RMII_REFCLK)	FM(A7)		FM(PWMFSW0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20662306a36Sopenharmony_ci#define IP1_3_0		FM(DU_DG4)			FM(SCL5)		F_(0, 0)		FM(A8)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20762306a36Sopenharmony_ci#define IP1_7_4		FM(DU_DG5)			FM(SDA5)		FM(GETHER_MDC_B)	FM(A9)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20862306a36Sopenharmony_ci#define IP1_11_8	FM(DU_DG6)			FM(SCIF_CLK_A)		FM(GETHER_MDIO_B)	FM(A10)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
20962306a36Sopenharmony_ci#define IP1_15_12	FM(DU_DG7)			FM(HRX0_A)		F_(0, 0)		FM(A11)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21062306a36Sopenharmony_ci#define IP1_19_16	FM(DU_DB2)			FM(HSCK0_A)		F_(0, 0)		FM(A12)		FM(IRQ1)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21162306a36Sopenharmony_ci#define IP1_23_20	FM(DU_DB3)			FM(HRTS0_N_A)		F_(0, 0)		FM(A13)		FM(IRQ2)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21262306a36Sopenharmony_ci#define IP1_27_24	FM(DU_DB4)			FM(HCTS0_N_A)		F_(0, 0)		FM(A14)		FM(IRQ3)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21362306a36Sopenharmony_ci#define IP1_31_28	FM(DU_DB5)			FM(HTX0_A)		FM(PWM0_A)		FM(A15)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21462306a36Sopenharmony_ci#define IP2_3_0		FM(DU_DB6)			FM(MSIOF3_RXD)		F_(0, 0)		FM(A16)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21562306a36Sopenharmony_ci#define IP2_7_4		FM(DU_DB7)			FM(MSIOF3_TXD)		F_(0, 0)		FM(A17)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21662306a36Sopenharmony_ci#define IP2_11_8	FM(DU_DOTCLKOUT)		FM(MSIOF3_SS1)		FM(GETHER_LINK_B)	FM(A18)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21762306a36Sopenharmony_ci#define IP2_15_12	FM(DU_EXHSYNC_DU_HSYNC)		FM(MSIOF3_SS2)		FM(GETHER_PHY_INT_B)	FM(A19)		FM(FXR_TXENA_N)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21862306a36Sopenharmony_ci#define IP2_19_16	FM(DU_EXVSYNC_DU_VSYNC)		FM(MSIOF3_SCK)		F_(0, 0)		F_(0, 0)	FM(FXR_TXENB_N)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
21962306a36Sopenharmony_ci#define IP2_23_20	FM(DU_EXODDF_DU_ODDF_DISP_CDE)	FM(MSIOF3_SYNC)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22062306a36Sopenharmony_ci#define IP2_27_24	FM(IRQ0)			F_(0, 0)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22162306a36Sopenharmony_ci#define IP2_31_28	FM(VI0_CLK)			FM(MSIOF2_SCK)		FM(SCK3)		F_(0, 0)	FM(HSCK3)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22262306a36Sopenharmony_ci#define IP3_3_0		FM(VI0_CLKENB)			FM(MSIOF2_RXD)		FM(RX3)			FM(RD_WR_N)	FM(HCTS3_N)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22362306a36Sopenharmony_ci#define IP3_7_4		FM(VI0_HSYNC_N)			FM(MSIOF2_TXD)		FM(TX3)			F_(0, 0)	FM(HRTS3_N)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22462306a36Sopenharmony_ci#define IP3_11_8	FM(VI0_VSYNC_N)			FM(MSIOF2_SYNC)		FM(CTS3_N)		F_(0, 0)	FM(HTX3)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22562306a36Sopenharmony_ci#define IP3_15_12	FM(VI0_DATA0)			FM(MSIOF2_SS1)		FM(RTS3_N)		F_(0, 0)	FM(HRX3)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22662306a36Sopenharmony_ci#define IP3_19_16	FM(VI0_DATA1)			FM(MSIOF2_SS2)		FM(SCK1)		F_(0, 0)	FM(SPEEDIN_A)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22762306a36Sopenharmony_ci#define IP3_23_20	FM(VI0_DATA2)			FM(AVB_AVTP_PPS)	F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22862306a36Sopenharmony_ci#define IP3_27_24	FM(VI0_DATA3)			FM(HSCK1)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
22962306a36Sopenharmony_ci#define IP3_31_28	FM(VI0_DATA4)			FM(HRTS1_N)		FM(RX1_A)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23062306a36Sopenharmony_ci#define IP4_3_0		FM(VI0_DATA5)			FM(HCTS1_N)		FM(TX1_A)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23162306a36Sopenharmony_ci#define IP4_7_4		FM(VI0_DATA6)			FM(HTX1)		FM(CTS1_N)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23262306a36Sopenharmony_ci#define IP4_11_8	FM(VI0_DATA7)			FM(HRX1)		FM(RTS1_N)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23362306a36Sopenharmony_ci#define IP4_15_12	FM(VI0_DATA8)			FM(HSCK2)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23462306a36Sopenharmony_ci#define IP4_19_16	FM(VI0_DATA9)			FM(HCTS2_N)		FM(PWM1_A)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23562306a36Sopenharmony_ci#define IP4_23_20	FM(VI0_DATA10)			FM(HRTS2_N)		FM(PWM2_A)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23662306a36Sopenharmony_ci#define IP4_27_24	FM(VI0_DATA11)			FM(HTX2)		FM(PWM3_A)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23762306a36Sopenharmony_ci#define IP4_31_28	FM(VI0_FIELD)			FM(HRX2)		FM(PWM4_A)		FM(CS1_N)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23862306a36Sopenharmony_ci#define IP5_3_0		FM(VI1_CLK)			FM(MSIOF1_RXD)		F_(0, 0)		FM(CS0_N)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
23962306a36Sopenharmony_ci#define IP5_7_4		FM(VI1_CLKENB)			FM(MSIOF1_TXD)		F_(0, 0)		FM(D0)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24062306a36Sopenharmony_ci#define IP5_11_8	FM(VI1_HSYNC_N)			FM(MSIOF1_SCK)		F_(0, 0)		FM(D1)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24162306a36Sopenharmony_ci#define IP5_15_12	FM(VI1_VSYNC_N)			FM(MSIOF1_SYNC)		F_(0, 0)		FM(D2)		F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24262306a36Sopenharmony_ci#define IP5_19_16	FM(VI1_DATA0)			FM(MSIOF1_SS1)		F_(0, 0)		FM(D3)		FM(MMC_WP)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24362306a36Sopenharmony_ci#define IP5_23_20	FM(VI1_DATA1)			FM(MSIOF1_SS2)		F_(0, 0)		FM(D4)		FM(MMC_CD)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24462306a36Sopenharmony_ci#define IP5_27_24	FM(VI1_DATA2)			FM(CANFD0_TX_B)		F_(0, 0)		FM(D5)		FM(MMC_DS)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24562306a36Sopenharmony_ci#define IP5_31_28	FM(VI1_DATA3)			FM(CANFD0_RX_B)		F_(0, 0)		FM(D6)		FM(MMC_CMD)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24662306a36Sopenharmony_ci#define IP6_3_0		FM(VI1_DATA4)			FM(CANFD_CLK_B)		F_(0, 0)		FM(D7)		FM(MMC_D0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24762306a36Sopenharmony_ci#define IP6_7_4		FM(VI1_DATA5)			F_(0, 0)		F_(0, 0)		FM(D8)		FM(MMC_D1)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24862306a36Sopenharmony_ci#define IP6_11_8	FM(VI1_DATA6)			F_(0, 0)		F_(0, 0)		FM(D9)		FM(MMC_D2)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
24962306a36Sopenharmony_ci#define IP6_15_12	FM(VI1_DATA7)			F_(0, 0)		F_(0, 0)		FM(D10)		FM(MMC_D3)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25062306a36Sopenharmony_ci#define IP6_19_16	FM(VI1_DATA8)			F_(0, 0)		F_(0, 0)		FM(D11)		FM(MMC_CLK)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25162306a36Sopenharmony_ci#define IP6_23_20	FM(VI1_DATA9)			FM(TCLK1_A)		F_(0, 0)		FM(D12)		FM(MMC_D4)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25262306a36Sopenharmony_ci#define IP6_27_24	FM(VI1_DATA10)			FM(TCLK2_A)		F_(0, 0)		FM(D13)		FM(MMC_D5)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25362306a36Sopenharmony_ci#define IP6_31_28	FM(VI1_DATA11)			FM(SCL4)		F_(0, 0)		FM(D14)		FM(MMC_D6)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25462306a36Sopenharmony_ci#define IP7_3_0		FM(VI1_FIELD)			FM(SDA4)		F_(0, 0)		FM(D15)		FM(MMC_D7)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25562306a36Sopenharmony_ci#define IP7_7_4		FM(SCL0)			F_(0, 0)		F_(0, 0)		FM(CLKOUT)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25662306a36Sopenharmony_ci#define IP7_11_8	FM(SDA0)			F_(0, 0)		F_(0, 0)		FM(BS_N)	FM(SCK0)	FM(HSCK0_B)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25762306a36Sopenharmony_ci#define IP7_15_12	FM(SCL1)			F_(0, 0)		FM(TPU0TO2)		FM(RD_N)	FM(CTS0_N)	FM(HCTS0_N_B)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25862306a36Sopenharmony_ci#define IP7_19_16	FM(SDA1)			F_(0, 0)		FM(TPU0TO3)		FM(WE0_N)	FM(RTS0_N)	FM(HRTS0_N_B)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
25962306a36Sopenharmony_ci#define IP7_23_20	FM(SCL2)			F_(0, 0)		F_(0, 0)		FM(WE1_N)	FM(RX0)		FM(HRX0_B)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26062306a36Sopenharmony_ci#define IP7_27_24	FM(SDA2)			F_(0, 0)		F_(0, 0)		FM(EX_WAIT0)	FM(TX0)		FM(HTX0_B)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26162306a36Sopenharmony_ci#define IP7_31_28	FM(AVB_AVTP_MATCH)		FM(TPU0TO0)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26262306a36Sopenharmony_ci#define IP8_3_0		FM(AVB_AVTP_CAPTURE)		FM(TPU0TO1)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26362306a36Sopenharmony_ci#define IP8_7_4		FM(CANFD0_TX_A)			FM(FXR_TXDA)		FM(PWM0_B)		FM(DU_DISP)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26462306a36Sopenharmony_ci#define IP8_11_8	FM(CANFD0_RX_A)			FM(RXDA_EXTFXR)		FM(PWM1_B)		FM(DU_CDE)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26562306a36Sopenharmony_ci#define IP8_15_12	FM(CANFD1_TX)			FM(FXR_TXDB)		FM(PWM2_B)		FM(TCLK1_B)	FM(TX1_B)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26662306a36Sopenharmony_ci#define IP8_19_16	FM(CANFD1_RX)			FM(RXDB_EXTFXR)		FM(PWM3_B)		FM(TCLK2_B)	FM(RX1_B)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26762306a36Sopenharmony_ci#define IP8_23_20	FM(CANFD_CLK_A)			FM(CLK_EXTFXR)		FM(PWM4_B)		FM(SPEEDIN_B)	FM(SCIF_CLK_B)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26862306a36Sopenharmony_ci#define IP8_27_24	FM(DIGRF_CLKIN)			FM(DIGRF_CLKEN_IN)	F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
26962306a36Sopenharmony_ci#define IP8_31_28	FM(DIGRF_CLKOUT)		FM(DIGRF_CLKEN_OUT)	F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27062306a36Sopenharmony_ci#define IP9_3_0		FM(IRQ4)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA12)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27162306a36Sopenharmony_ci#define IP9_7_4		FM(IRQ5)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA13)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27262306a36Sopenharmony_ci#define IP9_11_8	FM(MSIOF0_RXD)			FM(DU_DR0)		F_(0, 0)		FM(VI0_DATA14)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27362306a36Sopenharmony_ci#define IP9_15_12	FM(MSIOF0_TXD)			FM(DU_DR1)		F_(0, 0)		FM(VI0_DATA15)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27462306a36Sopenharmony_ci#define IP9_19_16	FM(MSIOF0_SCK)			FM(DU_DG0)		F_(0, 0)		FM(VI0_DATA16)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27562306a36Sopenharmony_ci#define IP9_23_20	FM(MSIOF0_SYNC)			FM(DU_DG1)		F_(0, 0)		FM(VI0_DATA17)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27662306a36Sopenharmony_ci#define IP9_27_24	FM(MSIOF0_SS1)			FM(DU_DB0)		FM(TCLK3)		FM(VI0_DATA18)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27762306a36Sopenharmony_ci#define IP9_31_28	FM(MSIOF0_SS2)			FM(DU_DB1)		FM(TCLK4)		FM(VI0_DATA19)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27862306a36Sopenharmony_ci#define IP10_3_0	FM(SCL3)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA20)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
27962306a36Sopenharmony_ci#define IP10_7_4	FM(SDA3)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA21)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
28062306a36Sopenharmony_ci#define IP10_11_8	FM(FSO_CFE_0_N)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA22)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
28162306a36Sopenharmony_ci#define IP10_15_12	FM(FSO_CFE_1_N)			F_(0, 0)		F_(0, 0)		FM(VI0_DATA23)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
28262306a36Sopenharmony_ci#define IP10_19_16	FM(FSO_TOE_N)			F_(0, 0)		F_(0, 0)		F_(0, 0)	F_(0, 0)	F_(0, 0)	F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0) F_(0, 0)
28362306a36Sopenharmony_ci
28462306a36Sopenharmony_ci#define PINMUX_GPSR	\
28562306a36Sopenharmony_ci\
28662306a36Sopenharmony_ci				GPSR2_29 \
28762306a36Sopenharmony_ci				GPSR2_28 \
28862306a36Sopenharmony_ci		GPSR1_27	GPSR2_27 \
28962306a36Sopenharmony_ci		GPSR1_26	GPSR2_26 \
29062306a36Sopenharmony_ci		GPSR1_25	GPSR2_25 \
29162306a36Sopenharmony_ci		GPSR1_24	GPSR2_24			GPSR4_24 \
29262306a36Sopenharmony_ci		GPSR1_23	GPSR2_23			GPSR4_23 \
29362306a36Sopenharmony_ci		GPSR1_22	GPSR2_22			GPSR4_22 \
29462306a36Sopenharmony_ciGPSR0_21	GPSR1_21	GPSR2_21			GPSR4_21 \
29562306a36Sopenharmony_ciGPSR0_20	GPSR1_20	GPSR2_20			GPSR4_20 \
29662306a36Sopenharmony_ciGPSR0_19	GPSR1_19	GPSR2_19			GPSR4_19 \
29762306a36Sopenharmony_ciGPSR0_18	GPSR1_18	GPSR2_18			GPSR4_18 \
29862306a36Sopenharmony_ciGPSR0_17	GPSR1_17	GPSR2_17			GPSR4_17 \
29962306a36Sopenharmony_ciGPSR0_16	GPSR1_16	GPSR2_16	GPSR3_16	GPSR4_16 \
30062306a36Sopenharmony_ciGPSR0_15	GPSR1_15	GPSR2_15	GPSR3_15	GPSR4_15 \
30162306a36Sopenharmony_ciGPSR0_14	GPSR1_14	GPSR2_14	GPSR3_14	GPSR4_14	GPSR5_14 \
30262306a36Sopenharmony_ciGPSR0_13	GPSR1_13	GPSR2_13	GPSR3_13	GPSR4_13	GPSR5_13 \
30362306a36Sopenharmony_ciGPSR0_12	GPSR1_12	GPSR2_12	GPSR3_12	GPSR4_12	GPSR5_12 \
30462306a36Sopenharmony_ciGPSR0_11	GPSR1_11	GPSR2_11	GPSR3_11	GPSR4_11	GPSR5_11 \
30562306a36Sopenharmony_ciGPSR0_10	GPSR1_10	GPSR2_10	GPSR3_10	GPSR4_10	GPSR5_10 \
30662306a36Sopenharmony_ciGPSR0_9		GPSR1_9		GPSR2_9		GPSR3_9		GPSR4_9		GPSR5_9 \
30762306a36Sopenharmony_ciGPSR0_8		GPSR1_8		GPSR2_8		GPSR3_8		GPSR4_8		GPSR5_8 \
30862306a36Sopenharmony_ciGPSR0_7		GPSR1_7		GPSR2_7		GPSR3_7		GPSR4_7		GPSR5_7 \
30962306a36Sopenharmony_ciGPSR0_6		GPSR1_6		GPSR2_6		GPSR3_6		GPSR4_6		GPSR5_6 \
31062306a36Sopenharmony_ciGPSR0_5		GPSR1_5		GPSR2_5		GPSR3_5		GPSR4_5		GPSR5_5 \
31162306a36Sopenharmony_ciGPSR0_4		GPSR1_4		GPSR2_4		GPSR3_4		GPSR4_4		GPSR5_4 \
31262306a36Sopenharmony_ciGPSR0_3		GPSR1_3		GPSR2_3		GPSR3_3		GPSR4_3		GPSR5_3 \
31362306a36Sopenharmony_ciGPSR0_2		GPSR1_2		GPSR2_2		GPSR3_2		GPSR4_2		GPSR5_2 \
31462306a36Sopenharmony_ciGPSR0_1		GPSR1_1		GPSR2_1		GPSR3_1		GPSR4_1		GPSR5_1 \
31562306a36Sopenharmony_ciGPSR0_0		GPSR1_0		GPSR2_0		GPSR3_0		GPSR4_0		GPSR5_0
31662306a36Sopenharmony_ci
31762306a36Sopenharmony_ci#define PINMUX_IPSR	\
31862306a36Sopenharmony_ci\
31962306a36Sopenharmony_ciFM(IP0_3_0)	IP0_3_0		FM(IP1_3_0)	IP1_3_0		FM(IP2_3_0)	IP2_3_0		FM(IP3_3_0)	IP3_3_0 \
32062306a36Sopenharmony_ciFM(IP0_7_4)	IP0_7_4		FM(IP1_7_4)	IP1_7_4		FM(IP2_7_4)	IP2_7_4		FM(IP3_7_4)	IP3_7_4 \
32162306a36Sopenharmony_ciFM(IP0_11_8)	IP0_11_8	FM(IP1_11_8)	IP1_11_8	FM(IP2_11_8)	IP2_11_8	FM(IP3_11_8)	IP3_11_8 \
32262306a36Sopenharmony_ciFM(IP0_15_12)	IP0_15_12	FM(IP1_15_12)	IP1_15_12	FM(IP2_15_12)	IP2_15_12	FM(IP3_15_12)	IP3_15_12 \
32362306a36Sopenharmony_ciFM(IP0_19_16)	IP0_19_16	FM(IP1_19_16)	IP1_19_16	FM(IP2_19_16)	IP2_19_16	FM(IP3_19_16)	IP3_19_16 \
32462306a36Sopenharmony_ciFM(IP0_23_20)	IP0_23_20	FM(IP1_23_20)	IP1_23_20	FM(IP2_23_20)	IP2_23_20	FM(IP3_23_20)	IP3_23_20 \
32562306a36Sopenharmony_ciFM(IP0_27_24)	IP0_27_24	FM(IP1_27_24)	IP1_27_24	FM(IP2_27_24)	IP2_27_24	FM(IP3_27_24)	IP3_27_24 \
32662306a36Sopenharmony_ciFM(IP0_31_28)	IP0_31_28	FM(IP1_31_28)	IP1_31_28	FM(IP2_31_28)	IP2_31_28	FM(IP3_31_28)	IP3_31_28 \
32762306a36Sopenharmony_ci\
32862306a36Sopenharmony_ciFM(IP4_3_0)	IP4_3_0		FM(IP5_3_0)	IP5_3_0		FM(IP6_3_0)	IP6_3_0		FM(IP7_3_0)	IP7_3_0 \
32962306a36Sopenharmony_ciFM(IP4_7_4)	IP4_7_4		FM(IP5_7_4)	IP5_7_4		FM(IP6_7_4)	IP6_7_4		FM(IP7_7_4)	IP7_7_4 \
33062306a36Sopenharmony_ciFM(IP4_11_8)	IP4_11_8	FM(IP5_11_8)	IP5_11_8	FM(IP6_11_8)	IP6_11_8	FM(IP7_11_8)	IP7_11_8 \
33162306a36Sopenharmony_ciFM(IP4_15_12)	IP4_15_12	FM(IP5_15_12)	IP5_15_12	FM(IP6_15_12)	IP6_15_12	FM(IP7_15_12)	IP7_15_12 \
33262306a36Sopenharmony_ciFM(IP4_19_16)	IP4_19_16	FM(IP5_19_16)	IP5_19_16	FM(IP6_19_16)	IP6_19_16	FM(IP7_19_16)	IP7_19_16 \
33362306a36Sopenharmony_ciFM(IP4_23_20)	IP4_23_20	FM(IP5_23_20)	IP5_23_20	FM(IP6_23_20)	IP6_23_20	FM(IP7_23_20)	IP7_23_20 \
33462306a36Sopenharmony_ciFM(IP4_27_24)	IP4_27_24	FM(IP5_27_24)	IP5_27_24	FM(IP6_27_24)	IP6_27_24	FM(IP7_27_24)	IP7_27_24 \
33562306a36Sopenharmony_ciFM(IP4_31_28)	IP4_31_28	FM(IP5_31_28)	IP5_31_28	FM(IP6_31_28)	IP6_31_28	FM(IP7_31_28)	IP7_31_28 \
33662306a36Sopenharmony_ci\
33762306a36Sopenharmony_ciFM(IP8_3_0)	IP8_3_0		FM(IP9_3_0)	IP9_3_0		FM(IP10_3_0)	IP10_3_0 \
33862306a36Sopenharmony_ciFM(IP8_7_4)	IP8_7_4		FM(IP9_7_4)	IP9_7_4		FM(IP10_7_4)	IP10_7_4 \
33962306a36Sopenharmony_ciFM(IP8_11_8)	IP8_11_8	FM(IP9_11_8)	IP9_11_8	FM(IP10_11_8)	IP10_11_8 \
34062306a36Sopenharmony_ciFM(IP8_15_12)	IP8_15_12	FM(IP9_15_12)	IP9_15_12	FM(IP10_15_12)	IP10_15_12 \
34162306a36Sopenharmony_ciFM(IP8_19_16)	IP8_19_16	FM(IP9_19_16)	IP9_19_16	FM(IP10_19_16)	IP10_19_16 \
34262306a36Sopenharmony_ciFM(IP8_23_20)	IP8_23_20	FM(IP9_23_20)	IP9_23_20 \
34362306a36Sopenharmony_ciFM(IP8_27_24)	IP8_27_24	FM(IP9_27_24)	IP9_27_24 \
34462306a36Sopenharmony_ciFM(IP8_31_28)	IP8_31_28	FM(IP9_31_28)	IP9_31_28
34562306a36Sopenharmony_ci
34662306a36Sopenharmony_ci/* MOD_SEL0 */		/* 0 */			/* 1 */
34762306a36Sopenharmony_ci#define MOD_SEL0_11	FM(SEL_CANFD0_0)	FM(SEL_CANFD0_1)
34862306a36Sopenharmony_ci#define MOD_SEL0_10	FM(SEL_GETHER_0)	FM(SEL_GETHER_1)
34962306a36Sopenharmony_ci#define MOD_SEL0_9	FM(SEL_HSCIF0_0)	FM(SEL_HSCIF0_1)
35062306a36Sopenharmony_ci#define MOD_SEL0_8	FM(SEL_PWM0_0)		FM(SEL_PWM0_1)
35162306a36Sopenharmony_ci#define MOD_SEL0_7	FM(SEL_PWM1_0)		FM(SEL_PWM1_1)
35262306a36Sopenharmony_ci#define MOD_SEL0_6	FM(SEL_PWM2_0)		FM(SEL_PWM2_1)
35362306a36Sopenharmony_ci#define MOD_SEL0_5	FM(SEL_PWM3_0)		FM(SEL_PWM3_1)
35462306a36Sopenharmony_ci#define MOD_SEL0_4	FM(SEL_PWM4_0)		FM(SEL_PWM4_1)
35562306a36Sopenharmony_ci#define MOD_SEL0_2	FM(SEL_RSP_0)		FM(SEL_RSP_1)
35662306a36Sopenharmony_ci#define MOD_SEL0_1	FM(SEL_SCIF1_0)		FM(SEL_SCIF1_1)
35762306a36Sopenharmony_ci#define MOD_SEL0_0	FM(SEL_TMU_0)		FM(SEL_TMU_1)
35862306a36Sopenharmony_ci
35962306a36Sopenharmony_ci#define PINMUX_MOD_SELS \
36062306a36Sopenharmony_ci\
36162306a36Sopenharmony_ciMOD_SEL0_11 \
36262306a36Sopenharmony_ciMOD_SEL0_10 \
36362306a36Sopenharmony_ciMOD_SEL0_9 \
36462306a36Sopenharmony_ciMOD_SEL0_8 \
36562306a36Sopenharmony_ciMOD_SEL0_7 \
36662306a36Sopenharmony_ciMOD_SEL0_6 \
36762306a36Sopenharmony_ciMOD_SEL0_5 \
36862306a36Sopenharmony_ciMOD_SEL0_4 \
36962306a36Sopenharmony_ciMOD_SEL0_2 \
37062306a36Sopenharmony_ciMOD_SEL0_1 \
37162306a36Sopenharmony_ciMOD_SEL0_0
37262306a36Sopenharmony_ci
37362306a36Sopenharmony_cienum {
37462306a36Sopenharmony_ci	PINMUX_RESERVED = 0,
37562306a36Sopenharmony_ci
37662306a36Sopenharmony_ci	PINMUX_DATA_BEGIN,
37762306a36Sopenharmony_ci	GP_ALL(DATA),
37862306a36Sopenharmony_ci	PINMUX_DATA_END,
37962306a36Sopenharmony_ci
38062306a36Sopenharmony_ci#define F_(x, y)
38162306a36Sopenharmony_ci#define FM(x)   FN_##x,
38262306a36Sopenharmony_ci	PINMUX_FUNCTION_BEGIN,
38362306a36Sopenharmony_ci	GP_ALL(FN),
38462306a36Sopenharmony_ci	PINMUX_GPSR
38562306a36Sopenharmony_ci	PINMUX_IPSR
38662306a36Sopenharmony_ci	PINMUX_MOD_SELS
38762306a36Sopenharmony_ci	PINMUX_FUNCTION_END,
38862306a36Sopenharmony_ci#undef F_
38962306a36Sopenharmony_ci#undef FM
39062306a36Sopenharmony_ci
39162306a36Sopenharmony_ci#define F_(x, y)
39262306a36Sopenharmony_ci#define FM(x)	x##_MARK,
39362306a36Sopenharmony_ci	PINMUX_MARK_BEGIN,
39462306a36Sopenharmony_ci	PINMUX_GPSR
39562306a36Sopenharmony_ci	PINMUX_IPSR
39662306a36Sopenharmony_ci	PINMUX_MOD_SELS
39762306a36Sopenharmony_ci	PINMUX_MARK_END,
39862306a36Sopenharmony_ci#undef F_
39962306a36Sopenharmony_ci#undef FM
40062306a36Sopenharmony_ci};
40162306a36Sopenharmony_ci
40262306a36Sopenharmony_cistatic const u16 pinmux_data[] = {
40362306a36Sopenharmony_ci	PINMUX_DATA_GP_ALL(),
40462306a36Sopenharmony_ci
40562306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RX_CTL),
40662306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RXC),
40762306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RD0),
40862306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RD1),
40962306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RD2),
41062306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_RD3),
41162306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TX_CTL),
41262306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TXC),
41362306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TD0),
41462306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TD1),
41562306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TD2),
41662306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TD3),
41762306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_TXCREFCLK),
41862306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_MDIO),
41962306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_MDC),
42062306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_MAGIC),
42162306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_PHY_INT),
42262306a36Sopenharmony_ci	PINMUX_SINGLE(AVB_LINK),
42362306a36Sopenharmony_ci
42462306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RX_CTL),
42562306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RXC),
42662306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RD0),
42762306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RD1),
42862306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RD2),
42962306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_RD3),
43062306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TX_CTL),
43162306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TXC),
43262306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TD0),
43362306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TD1),
43462306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TD2),
43562306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TD3),
43662306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TXCREFCLK),
43762306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_TXCREFCLK_MEGA),
43862306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_MDIO_A),
43962306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_MDC_A),
44062306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_MAGIC),
44162306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_PHY_INT_A),
44262306a36Sopenharmony_ci	PINMUX_SINGLE(GETHER_LINK_A),
44362306a36Sopenharmony_ci
44462306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_SPCLK),
44562306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_MOSI_IO0),
44662306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_MISO_IO1),
44762306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_IO2),
44862306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_IO3),
44962306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI0_SSL),
45062306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_SPCLK),
45162306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_MOSI_IO0),
45262306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_MISO_IO1),
45362306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_IO2),
45462306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_IO3),
45562306a36Sopenharmony_ci	PINMUX_SINGLE(QSPI1_SSL),
45662306a36Sopenharmony_ci	PINMUX_SINGLE(RPC_RESET_N),
45762306a36Sopenharmony_ci	PINMUX_SINGLE(RPC_WP_N),
45862306a36Sopenharmony_ci	PINMUX_SINGLE(RPC_INT_N),
45962306a36Sopenharmony_ci
46062306a36Sopenharmony_ci	/* IPSR0 */
46162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_3_0,	DU_DR2),
46262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_3_0,	SCK4),
46362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_3_0,	GETHER_RMII_CRS_DV),
46462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_3_0,	A0),
46562306a36Sopenharmony_ci
46662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_7_4,	DU_DR3),
46762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_7_4,	RX4),
46862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_7_4,	GETHER_RMII_RX_ER),
46962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_7_4,	A1),
47062306a36Sopenharmony_ci
47162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_11_8,	DU_DR4),
47262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_11_8,	TX4),
47362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_11_8,	GETHER_RMII_RXD0),
47462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_11_8,	A2),
47562306a36Sopenharmony_ci
47662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_15_12,	DU_DR5),
47762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_15_12,	CTS4_N),
47862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_15_12,	GETHER_RMII_RXD1),
47962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_15_12,	A3),
48062306a36Sopenharmony_ci
48162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_19_16,	DU_DR6),
48262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_19_16,	RTS4_N),
48362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_19_16,	GETHER_RMII_TXD_EN),
48462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_19_16,	A4),
48562306a36Sopenharmony_ci
48662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_23_20,	DU_DR7),
48762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_23_20,	GETHER_RMII_TXD0),
48862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_23_20,	A5),
48962306a36Sopenharmony_ci
49062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_27_24,	DU_DG2),
49162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_27_24,	GETHER_RMII_TXD1),
49262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_27_24,	A6),
49362306a36Sopenharmony_ci
49462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_31_28,	DU_DG3),
49562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_31_28,	CPG_CPCKOUT),
49662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_31_28,	GETHER_RMII_REFCLK),
49762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_31_28,	A7),
49862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP0_31_28,	PWMFSW0),
49962306a36Sopenharmony_ci
50062306a36Sopenharmony_ci	/* IPSR1 */
50162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_3_0,	DU_DG4),
50262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_3_0,	SCL5),
50362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_3_0,	A8),
50462306a36Sopenharmony_ci
50562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_7_4,	DU_DG5),
50662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_7_4,	SDA5),
50762306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_7_4,	GETHER_MDC_B, SEL_GETHER_1),
50862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_7_4,	A9),
50962306a36Sopenharmony_ci
51062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_11_8,	DU_DG6),
51162306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_11_8,	SCIF_CLK_A, SEL_HSCIF0_0),
51262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_11_8,	GETHER_MDIO_B, SEL_GETHER_1),
51362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_11_8,	A10),
51462306a36Sopenharmony_ci
51562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_15_12,	DU_DG7),
51662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_15_12,	HRX0_A, SEL_HSCIF0_0),
51762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_15_12,	A11),
51862306a36Sopenharmony_ci
51962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_19_16,	DU_DB2),
52062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_19_16,	HSCK0_A, SEL_HSCIF0_0),
52162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_19_16,	A12),
52262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_19_16,	IRQ1),
52362306a36Sopenharmony_ci
52462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_23_20,	DU_DB3),
52562306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_23_20,	HRTS0_N_A, SEL_HSCIF0_0),
52662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_23_20,	A13),
52762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_23_20,	IRQ2),
52862306a36Sopenharmony_ci
52962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_27_24,	DU_DB4),
53062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_27_24,	HCTS0_N_A, SEL_HSCIF0_0),
53162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_27_24,	A14),
53262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_27_24,	IRQ3),
53362306a36Sopenharmony_ci
53462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_31_28,	DU_DB5),
53562306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_31_28,	HTX0_A, SEL_HSCIF0_0),
53662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_31_28,	PWM0_A, SEL_PWM0_0),
53762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP1_31_28,	A15),
53862306a36Sopenharmony_ci
53962306a36Sopenharmony_ci	/* IPSR2 */
54062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_3_0,	DU_DB6),
54162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_3_0,	MSIOF3_RXD),
54262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_3_0,	A16),
54362306a36Sopenharmony_ci
54462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_7_4,	DU_DB7),
54562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_7_4,	MSIOF3_TXD),
54662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_7_4,	A17),
54762306a36Sopenharmony_ci
54862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_11_8,	DU_DOTCLKOUT),
54962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_11_8,	MSIOF3_SS1),
55062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP2_11_8,	GETHER_LINK_B, SEL_GETHER_1),
55162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_11_8,	A18),
55262306a36Sopenharmony_ci
55362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_15_12,	DU_EXHSYNC_DU_HSYNC),
55462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_15_12,	MSIOF3_SS2),
55562306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP2_15_12,	GETHER_PHY_INT_B, SEL_GETHER_1),
55662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_15_12,	A19),
55762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_15_12,	FXR_TXENA_N),
55862306a36Sopenharmony_ci
55962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_19_16,	DU_EXVSYNC_DU_VSYNC),
56062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_19_16,	MSIOF3_SCK),
56162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_19_16,	FXR_TXENB_N),
56262306a36Sopenharmony_ci
56362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_23_20,	DU_EXODDF_DU_ODDF_DISP_CDE),
56462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_23_20,	MSIOF3_SYNC),
56562306a36Sopenharmony_ci
56662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_27_24,	IRQ0),
56762306a36Sopenharmony_ci
56862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_31_28,	VI0_CLK),
56962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_31_28,	MSIOF2_SCK),
57062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_31_28,	SCK3),
57162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP2_31_28,	HSCK3),
57262306a36Sopenharmony_ci
57362306a36Sopenharmony_ci	/* IPSR3 */
57462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_3_0,	VI0_CLKENB),
57562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_3_0,	MSIOF2_RXD),
57662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_3_0,	RX3),
57762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_3_0,	RD_WR_N),
57862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_3_0,	HCTS3_N),
57962306a36Sopenharmony_ci
58062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_7_4,	VI0_HSYNC_N),
58162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_7_4,	MSIOF2_TXD),
58262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_7_4,	TX3),
58362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_7_4,	HRTS3_N),
58462306a36Sopenharmony_ci
58562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_11_8,	VI0_VSYNC_N),
58662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_11_8,	MSIOF2_SYNC),
58762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_11_8,	CTS3_N),
58862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_11_8,	HTX3),
58962306a36Sopenharmony_ci
59062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_15_12,	VI0_DATA0),
59162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_15_12,	MSIOF2_SS1),
59262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_15_12,	RTS3_N),
59362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_15_12,	HRX3),
59462306a36Sopenharmony_ci
59562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_19_16,	VI0_DATA1),
59662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_19_16,	MSIOF2_SS2),
59762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_19_16,	SCK1),
59862306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP3_19_16,	SPEEDIN_A, SEL_RSP_0),
59962306a36Sopenharmony_ci
60062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_23_20,	VI0_DATA2),
60162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_23_20,	AVB_AVTP_PPS),
60262306a36Sopenharmony_ci
60362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_27_24,	VI0_DATA3),
60462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_27_24,	HSCK1),
60562306a36Sopenharmony_ci
60662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_31_28,	VI0_DATA4),
60762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP3_31_28,	HRTS1_N),
60862306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP3_31_28,	RX1_A, SEL_SCIF1_0),
60962306a36Sopenharmony_ci
61062306a36Sopenharmony_ci	/* IPSR4 */
61162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_3_0,	VI0_DATA5),
61262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_3_0,	HCTS1_N),
61362306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP4_3_0,	TX1_A, SEL_SCIF1_0),
61462306a36Sopenharmony_ci
61562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_7_4,	VI0_DATA6),
61662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_7_4,	HTX1),
61762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_7_4,	CTS1_N),
61862306a36Sopenharmony_ci
61962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_11_8,	VI0_DATA7),
62062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_11_8,	HRX1),
62162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_11_8,	RTS1_N),
62262306a36Sopenharmony_ci
62362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_15_12,	VI0_DATA8),
62462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_15_12,	HSCK2),
62562306a36Sopenharmony_ci
62662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_19_16,	VI0_DATA9),
62762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_19_16,	HCTS2_N),
62862306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP4_19_16,	PWM1_A, SEL_PWM1_0),
62962306a36Sopenharmony_ci
63062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_23_20,	VI0_DATA10),
63162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_23_20,	HRTS2_N),
63262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP4_23_20,	PWM2_A, SEL_PWM2_0),
63362306a36Sopenharmony_ci
63462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_27_24,	VI0_DATA11),
63562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_27_24,	HTX2),
63662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP4_27_24,	PWM3_A, SEL_PWM3_0),
63762306a36Sopenharmony_ci
63862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_31_28,	VI0_FIELD),
63962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_31_28,	HRX2),
64062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP4_31_28,	PWM4_A, SEL_PWM4_0),
64162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP4_31_28,	CS1_N),
64262306a36Sopenharmony_ci
64362306a36Sopenharmony_ci	/* IPSR5 */
64462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_3_0,	VI1_CLK),
64562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_3_0,	MSIOF1_RXD),
64662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_3_0,	CS0_N),
64762306a36Sopenharmony_ci
64862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_7_4,	VI1_CLKENB),
64962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_7_4,	MSIOF1_TXD),
65062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_7_4,	D0),
65162306a36Sopenharmony_ci
65262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_11_8,	VI1_HSYNC_N),
65362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_11_8,	MSIOF1_SCK),
65462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_11_8,	D1),
65562306a36Sopenharmony_ci
65662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_15_12,	VI1_VSYNC_N),
65762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_15_12,	MSIOF1_SYNC),
65862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_15_12,	D2),
65962306a36Sopenharmony_ci
66062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_19_16,	VI1_DATA0),
66162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_19_16,	MSIOF1_SS1),
66262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_19_16,	D3),
66362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_19_16,	MMC_WP),
66462306a36Sopenharmony_ci
66562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_23_20,	VI1_DATA1),
66662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_23_20,	MSIOF1_SS2),
66762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_23_20,	D4),
66862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_23_20,	MMC_CD),
66962306a36Sopenharmony_ci
67062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_27_24,	VI1_DATA2),
67162306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP5_27_24,	CANFD0_TX_B, SEL_CANFD0_1),
67262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_27_24,	D5),
67362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_27_24,	MMC_DS),
67462306a36Sopenharmony_ci
67562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_31_28,	VI1_DATA3),
67662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP5_31_28,	CANFD0_RX_B, SEL_CANFD0_1),
67762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_31_28,	D6),
67862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP5_31_28,	MMC_CMD),
67962306a36Sopenharmony_ci
68062306a36Sopenharmony_ci	/* IPSR6 */
68162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_3_0,	VI1_DATA4),
68262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP6_3_0,	CANFD_CLK_B, SEL_CANFD0_1),
68362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_3_0,	D7),
68462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_3_0,	MMC_D0),
68562306a36Sopenharmony_ci
68662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_7_4,	VI1_DATA5),
68762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_7_4,	D8),
68862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_7_4,	MMC_D1),
68962306a36Sopenharmony_ci
69062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_11_8,	VI1_DATA6),
69162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_11_8,	D9),
69262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_11_8,	MMC_D2),
69362306a36Sopenharmony_ci
69462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_15_12,	VI1_DATA7),
69562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_15_12,	D10),
69662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_15_12,	MMC_D3),
69762306a36Sopenharmony_ci
69862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_19_16,	VI1_DATA8),
69962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_19_16,	D11),
70062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_19_16,	MMC_CLK),
70162306a36Sopenharmony_ci
70262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_23_20,	VI1_DATA9),
70362306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP6_23_20,	TCLK1_A, SEL_TMU_0),
70462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_23_20,	D12),
70562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_23_20,	MMC_D4),
70662306a36Sopenharmony_ci
70762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_27_24,	VI1_DATA10),
70862306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP6_27_24,	TCLK2_A, SEL_TMU_0),
70962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_27_24,	D13),
71062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_27_24,	MMC_D5),
71162306a36Sopenharmony_ci
71262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_31_28,	VI1_DATA11),
71362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_31_28,	SCL4),
71462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_31_28,	D14),
71562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP6_31_28,	MMC_D6),
71662306a36Sopenharmony_ci
71762306a36Sopenharmony_ci	/* IPSR7 */
71862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_3_0,	VI1_FIELD),
71962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_3_0,	SDA4),
72062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_3_0,	D15),
72162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_3_0,	MMC_D7),
72262306a36Sopenharmony_ci
72362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_7_4,	SCL0),
72462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_7_4,	CLKOUT),
72562306a36Sopenharmony_ci
72662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_11_8,	SDA0),
72762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_11_8,	BS_N),
72862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_11_8,	SCK0),
72962306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP7_11_8,	HSCK0_B, SEL_HSCIF0_1),
73062306a36Sopenharmony_ci
73162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_15_12,	SCL1),
73262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_15_12,	TPU0TO2),
73362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_15_12,	RD_N),
73462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_15_12,	CTS0_N),
73562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_15_12,	HCTS0_N_B),
73662306a36Sopenharmony_ci
73762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_19_16,	SDA1),
73862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_19_16,	TPU0TO3),
73962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_19_16,	WE0_N),
74062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_19_16,	RTS0_N),
74162306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP1_23_20,	HRTS0_N_B, SEL_HSCIF0_1),
74262306a36Sopenharmony_ci
74362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_23_20,	SCL2),
74462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_23_20,	WE1_N),
74562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_23_20,	RX0),
74662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP7_23_20,	HRX0_B, SEL_HSCIF0_1),
74762306a36Sopenharmony_ci
74862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_27_24,	SDA2),
74962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_27_24,	EX_WAIT0),
75062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_27_24,	TX0),
75162306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP7_27_24,	HTX0_B, SEL_HSCIF0_1),
75262306a36Sopenharmony_ci
75362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_31_28,	AVB_AVTP_MATCH),
75462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP7_31_28,	TPU0TO0),
75562306a36Sopenharmony_ci
75662306a36Sopenharmony_ci	/* IPSR8 */
75762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_3_0,	AVB_AVTP_CAPTURE),
75862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_3_0,	TPU0TO1),
75962306a36Sopenharmony_ci
76062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_7_4,	CANFD0_TX_A, SEL_CANFD0_0),
76162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_7_4,	FXR_TXDA),
76262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_7_4,	PWM0_B, SEL_PWM0_1),
76362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_7_4,	DU_DISP),
76462306a36Sopenharmony_ci
76562306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_11_8,	CANFD0_RX_A, SEL_CANFD0_0),
76662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_11_8,	RXDA_EXTFXR),
76762306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_11_8,	PWM1_B, SEL_PWM1_1),
76862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_11_8,	DU_CDE),
76962306a36Sopenharmony_ci
77062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_15_12,	CANFD1_TX),
77162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_15_12,	FXR_TXDB),
77262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_15_12,	PWM2_B, SEL_PWM2_1),
77362306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_15_12,	TCLK1_B, SEL_TMU_1),
77462306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_15_12,	TX1_B, SEL_SCIF1_1),
77562306a36Sopenharmony_ci
77662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_19_16,	CANFD1_RX),
77762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_19_16,	RXDB_EXTFXR),
77862306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_19_16,	PWM3_B, SEL_PWM3_1),
77962306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_19_16,	TCLK2_B, SEL_TMU_1),
78062306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_19_16,	RX1_B, SEL_SCIF1_1),
78162306a36Sopenharmony_ci
78262306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_23_20,	CANFD_CLK_A, SEL_CANFD0_0),
78362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_23_20,	CLK_EXTFXR),
78462306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_23_20,	PWM4_B, SEL_PWM4_1),
78562306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_23_20,	SPEEDIN_B, SEL_RSP_1),
78662306a36Sopenharmony_ci	PINMUX_IPSR_MSEL(IP8_23_20,	SCIF_CLK_B, SEL_HSCIF0_1),
78762306a36Sopenharmony_ci
78862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_27_24,	DIGRF_CLKIN),
78962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_27_24,	DIGRF_CLKEN_IN),
79062306a36Sopenharmony_ci
79162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_31_28,	DIGRF_CLKOUT),
79262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP8_31_28,	DIGRF_CLKEN_OUT),
79362306a36Sopenharmony_ci
79462306a36Sopenharmony_ci	/* IPSR9 */
79562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_3_0,	IRQ4),
79662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_3_0,	VI0_DATA12),
79762306a36Sopenharmony_ci
79862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_7_4,	IRQ5),
79962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_7_4,	VI0_DATA13),
80062306a36Sopenharmony_ci
80162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_11_8,	MSIOF0_RXD),
80262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_11_8,	DU_DR0),
80362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_11_8,	VI0_DATA14),
80462306a36Sopenharmony_ci
80562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_15_12,	MSIOF0_TXD),
80662306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_15_12,	DU_DR1),
80762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_15_12,	VI0_DATA15),
80862306a36Sopenharmony_ci
80962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_19_16,	MSIOF0_SCK),
81062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_19_16,	DU_DG0),
81162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_19_16,	VI0_DATA16),
81262306a36Sopenharmony_ci
81362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_23_20,	MSIOF0_SYNC),
81462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_23_20,	DU_DG1),
81562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_23_20,	VI0_DATA17),
81662306a36Sopenharmony_ci
81762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_27_24,	MSIOF0_SS1),
81862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_27_24,	DU_DB0),
81962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_27_24,	TCLK3),
82062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_27_24,	VI0_DATA18),
82162306a36Sopenharmony_ci
82262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_31_28,	MSIOF0_SS2),
82362306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_31_28,	DU_DB1),
82462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_31_28,	TCLK4),
82562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP9_31_28,	VI0_DATA19),
82662306a36Sopenharmony_ci
82762306a36Sopenharmony_ci	/* IPSR10 */
82862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_3_0,	SCL3),
82962306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_3_0,	VI0_DATA20),
83062306a36Sopenharmony_ci
83162306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_7_4,	SDA3),
83262306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_7_4,	VI0_DATA21),
83362306a36Sopenharmony_ci
83462306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_11_8,	FSO_CFE_0_N),
83562306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_11_8,	VI0_DATA22),
83662306a36Sopenharmony_ci
83762306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_15_12,	FSO_CFE_1_N),
83862306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_15_12,	VI0_DATA23),
83962306a36Sopenharmony_ci
84062306a36Sopenharmony_ci	PINMUX_IPSR_GPSR(IP10_19_16,	FSO_TOE_N),
84162306a36Sopenharmony_ci};
84262306a36Sopenharmony_ci
84362306a36Sopenharmony_ci/*
84462306a36Sopenharmony_ci * Pins not associated with a GPIO port.
84562306a36Sopenharmony_ci */
84662306a36Sopenharmony_cienum {
84762306a36Sopenharmony_ci	GP_ASSIGN_LAST(),
84862306a36Sopenharmony_ci	NOGP_ALL(),
84962306a36Sopenharmony_ci};
85062306a36Sopenharmony_ci
85162306a36Sopenharmony_cistatic const struct sh_pfc_pin pinmux_pins[] = {
85262306a36Sopenharmony_ci	PINMUX_GPIO_GP_ALL(),
85362306a36Sopenharmony_ci	PINMUX_NOGP_ALL(),
85462306a36Sopenharmony_ci};
85562306a36Sopenharmony_ci
85662306a36Sopenharmony_ci/* - AVB -------------------------------------------------------------------- */
85762306a36Sopenharmony_cistatic const unsigned int avb_link_pins[] = {
85862306a36Sopenharmony_ci	/* AVB_LINK */
85962306a36Sopenharmony_ci	RCAR_GP_PIN(1, 18),
86062306a36Sopenharmony_ci};
86162306a36Sopenharmony_cistatic const unsigned int avb_link_mux[] = {
86262306a36Sopenharmony_ci	AVB_LINK_MARK,
86362306a36Sopenharmony_ci};
86462306a36Sopenharmony_cistatic const unsigned int avb_magic_pins[] = {
86562306a36Sopenharmony_ci	/* AVB_MAGIC */
86662306a36Sopenharmony_ci	RCAR_GP_PIN(1, 16),
86762306a36Sopenharmony_ci};
86862306a36Sopenharmony_cistatic const unsigned int avb_magic_mux[] = {
86962306a36Sopenharmony_ci	AVB_MAGIC_MARK,
87062306a36Sopenharmony_ci};
87162306a36Sopenharmony_cistatic const unsigned int avb_phy_int_pins[] = {
87262306a36Sopenharmony_ci	/* AVB_PHY_INT */
87362306a36Sopenharmony_ci	RCAR_GP_PIN(1, 17),
87462306a36Sopenharmony_ci};
87562306a36Sopenharmony_cistatic const unsigned int avb_phy_int_mux[] = {
87662306a36Sopenharmony_ci	AVB_PHY_INT_MARK,
87762306a36Sopenharmony_ci};
87862306a36Sopenharmony_cistatic const unsigned int avb_mdio_pins[] = {
87962306a36Sopenharmony_ci	/* AVB_MDC, AVB_MDIO */
88062306a36Sopenharmony_ci	RCAR_GP_PIN(1, 15), RCAR_GP_PIN(1, 14),
88162306a36Sopenharmony_ci};
88262306a36Sopenharmony_cistatic const unsigned int avb_mdio_mux[] = {
88362306a36Sopenharmony_ci	AVB_MDC_MARK, AVB_MDIO_MARK,
88462306a36Sopenharmony_ci};
88562306a36Sopenharmony_cistatic const unsigned int avb_rgmii_pins[] = {
88662306a36Sopenharmony_ci	/*
88762306a36Sopenharmony_ci	 * AVB_TX_CTL, AVB_TXC, AVB_TD0, AVB_TD1, AVB_TD2, AVB_TD3,
88862306a36Sopenharmony_ci	 * AVB_RX_CTL, AVB_RXC, AVB_RD0, AVB_RD1, AVB_RD2, AVB_RD3,
88962306a36Sopenharmony_ci	 */
89062306a36Sopenharmony_ci	RCAR_GP_PIN(1, 7), RCAR_GP_PIN(1, 8),
89162306a36Sopenharmony_ci	RCAR_GP_PIN(1, 9), RCAR_GP_PIN(1, 10),
89262306a36Sopenharmony_ci	RCAR_GP_PIN(1, 11), RCAR_GP_PIN(1, 12),
89362306a36Sopenharmony_ci	RCAR_GP_PIN(1, 1), RCAR_GP_PIN(1, 2),
89462306a36Sopenharmony_ci	RCAR_GP_PIN(1, 3), RCAR_GP_PIN(1, 4),
89562306a36Sopenharmony_ci	RCAR_GP_PIN(1, 5), RCAR_GP_PIN(1, 6),
89662306a36Sopenharmony_ci};
89762306a36Sopenharmony_cistatic const unsigned int avb_rgmii_mux[] = {
89862306a36Sopenharmony_ci	AVB_TX_CTL_MARK, AVB_TXC_MARK,
89962306a36Sopenharmony_ci	AVB_TD0_MARK, AVB_TD1_MARK, AVB_TD2_MARK, AVB_TD3_MARK,
90062306a36Sopenharmony_ci	AVB_RX_CTL_MARK, AVB_RXC_MARK,
90162306a36Sopenharmony_ci	AVB_RD0_MARK, AVB_RD1_MARK, AVB_RD2_MARK, AVB_RD3_MARK,
90262306a36Sopenharmony_ci};
90362306a36Sopenharmony_cistatic const unsigned int avb_txcrefclk_pins[] = {
90462306a36Sopenharmony_ci	/* AVB_TXCREFCLK */
90562306a36Sopenharmony_ci	RCAR_GP_PIN(1, 13),
90662306a36Sopenharmony_ci};
90762306a36Sopenharmony_cistatic const unsigned int avb_txcrefclk_mux[] = {
90862306a36Sopenharmony_ci	AVB_TXCREFCLK_MARK,
90962306a36Sopenharmony_ci};
91062306a36Sopenharmony_cistatic const unsigned int avb_avtp_pps_pins[] = {
91162306a36Sopenharmony_ci	/* AVB_AVTP_PPS */
91262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 6),
91362306a36Sopenharmony_ci};
91462306a36Sopenharmony_cistatic const unsigned int avb_avtp_pps_mux[] = {
91562306a36Sopenharmony_ci	AVB_AVTP_PPS_MARK,
91662306a36Sopenharmony_ci};
91762306a36Sopenharmony_cistatic const unsigned int avb_avtp_capture_pins[] = {
91862306a36Sopenharmony_ci	/* AVB_AVTP_CAPTURE */
91962306a36Sopenharmony_ci	RCAR_GP_PIN(1, 20),
92062306a36Sopenharmony_ci};
92162306a36Sopenharmony_cistatic const unsigned int avb_avtp_capture_mux[] = {
92262306a36Sopenharmony_ci	AVB_AVTP_CAPTURE_MARK,
92362306a36Sopenharmony_ci};
92462306a36Sopenharmony_cistatic const unsigned int avb_avtp_match_pins[] = {
92562306a36Sopenharmony_ci	/* AVB_AVTP_MATCH */
92662306a36Sopenharmony_ci	RCAR_GP_PIN(1, 19),
92762306a36Sopenharmony_ci};
92862306a36Sopenharmony_cistatic const unsigned int avb_avtp_match_mux[] = {
92962306a36Sopenharmony_ci	AVB_AVTP_MATCH_MARK,
93062306a36Sopenharmony_ci};
93162306a36Sopenharmony_ci
93262306a36Sopenharmony_ci/* - CANFD0 ----------------------------------------------------------------- */
93362306a36Sopenharmony_cistatic const unsigned int canfd0_data_a_pins[] = {
93462306a36Sopenharmony_ci	/* CANFD0_TX, CANFD0_RX */
93562306a36Sopenharmony_ci	RCAR_GP_PIN(1, 21), RCAR_GP_PIN(1, 22),
93662306a36Sopenharmony_ci};
93762306a36Sopenharmony_cistatic const unsigned int canfd0_data_a_mux[] = {
93862306a36Sopenharmony_ci	CANFD0_TX_A_MARK, CANFD0_RX_A_MARK,
93962306a36Sopenharmony_ci};
94062306a36Sopenharmony_cistatic const unsigned int canfd0_data_b_pins[] = {
94162306a36Sopenharmony_ci	/* CANFD0_TX, CANFD0_RX */
94262306a36Sopenharmony_ci	RCAR_GP_PIN(3, 6), RCAR_GP_PIN(3, 7),
94362306a36Sopenharmony_ci};
94462306a36Sopenharmony_cistatic const unsigned int canfd0_data_b_mux[] = {
94562306a36Sopenharmony_ci	CANFD0_TX_B_MARK, CANFD0_RX_B_MARK,
94662306a36Sopenharmony_ci};
94762306a36Sopenharmony_ci
94862306a36Sopenharmony_ci/* - CANFD1 ----------------------------------------------------------------- */
94962306a36Sopenharmony_cistatic const unsigned int canfd1_data_pins[] = {
95062306a36Sopenharmony_ci	/* CANFD1_TX, CANFD1_RX */
95162306a36Sopenharmony_ci	RCAR_GP_PIN(1, 23), RCAR_GP_PIN(1, 24),
95262306a36Sopenharmony_ci};
95362306a36Sopenharmony_cistatic const unsigned int canfd1_data_mux[] = {
95462306a36Sopenharmony_ci	CANFD1_TX_MARK, CANFD1_RX_MARK,
95562306a36Sopenharmony_ci};
95662306a36Sopenharmony_ci
95762306a36Sopenharmony_ci/* - CANFD Clock ------------------------------------------------------------ */
95862306a36Sopenharmony_cistatic const unsigned int canfd_clk_a_pins[] = {
95962306a36Sopenharmony_ci	/* CANFD_CLK */
96062306a36Sopenharmony_ci	RCAR_GP_PIN(1, 25),
96162306a36Sopenharmony_ci};
96262306a36Sopenharmony_cistatic const unsigned int canfd_clk_a_mux[] = {
96362306a36Sopenharmony_ci	CANFD_CLK_A_MARK,
96462306a36Sopenharmony_ci};
96562306a36Sopenharmony_cistatic const unsigned int canfd_clk_b_pins[] = {
96662306a36Sopenharmony_ci	/* CANFD_CLK */
96762306a36Sopenharmony_ci	RCAR_GP_PIN(3, 8),
96862306a36Sopenharmony_ci};
96962306a36Sopenharmony_cistatic const unsigned int canfd_clk_b_mux[] = {
97062306a36Sopenharmony_ci	CANFD_CLK_B_MARK,
97162306a36Sopenharmony_ci};
97262306a36Sopenharmony_ci
97362306a36Sopenharmony_ci/* - DU --------------------------------------------------------------------- */
97462306a36Sopenharmony_cistatic const unsigned int du_rgb666_pins[] = {
97562306a36Sopenharmony_ci	/* DU_DR[7:2], DU_DG[7:2], DU_DB[7:2] */
97662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 3),
97762306a36Sopenharmony_ci	RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 1), RCAR_GP_PIN(0, 0),
97862306a36Sopenharmony_ci	RCAR_GP_PIN(0, 11), RCAR_GP_PIN(0, 10), RCAR_GP_PIN(0, 9),
97962306a36Sopenharmony_ci	RCAR_GP_PIN(0, 8), RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 6),
98062306a36Sopenharmony_ci	RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 16), RCAR_GP_PIN(0, 15),
98162306a36Sopenharmony_ci	RCAR_GP_PIN(0, 14), RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 12),
98262306a36Sopenharmony_ci};
98362306a36Sopenharmony_cistatic const unsigned int du_rgb666_mux[] = {
98462306a36Sopenharmony_ci	DU_DR7_MARK, DU_DR6_MARK, DU_DR5_MARK,
98562306a36Sopenharmony_ci	DU_DR4_MARK, DU_DR3_MARK, DU_DR2_MARK,
98662306a36Sopenharmony_ci	DU_DG7_MARK, DU_DG6_MARK, DU_DG5_MARK,
98762306a36Sopenharmony_ci	DU_DG4_MARK, DU_DG3_MARK, DU_DG2_MARK,
98862306a36Sopenharmony_ci	DU_DB7_MARK, DU_DB6_MARK, DU_DB5_MARK,
98962306a36Sopenharmony_ci	DU_DB4_MARK, DU_DB3_MARK, DU_DB2_MARK,
99062306a36Sopenharmony_ci};
99162306a36Sopenharmony_cistatic const unsigned int du_rgb888_pins[] = {
99262306a36Sopenharmony_ci	/* DU_DR[7:0], DU_DG[7:0], DU_DB[7:0] */
99362306a36Sopenharmony_ci	RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 3),
99462306a36Sopenharmony_ci	RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 1), RCAR_GP_PIN(0, 0),
99562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 20), RCAR_GP_PIN(2, 19),
99662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 11), RCAR_GP_PIN(0, 10), RCAR_GP_PIN(0, 9),
99762306a36Sopenharmony_ci	RCAR_GP_PIN(0, 8), RCAR_GP_PIN(0, 7), RCAR_GP_PIN(0, 6),
99862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 22), RCAR_GP_PIN(2, 21),
99962306a36Sopenharmony_ci	RCAR_GP_PIN(0, 17), RCAR_GP_PIN(0, 16), RCAR_GP_PIN(0, 15),
100062306a36Sopenharmony_ci	RCAR_GP_PIN(0, 14), RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 12),
100162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 24), RCAR_GP_PIN(2, 23),
100262306a36Sopenharmony_ci};
100362306a36Sopenharmony_cistatic const unsigned int du_rgb888_mux[] = {
100462306a36Sopenharmony_ci	DU_DR7_MARK, DU_DR6_MARK, DU_DR5_MARK,
100562306a36Sopenharmony_ci	DU_DR4_MARK, DU_DR3_MARK, DU_DR2_MARK,
100662306a36Sopenharmony_ci	DU_DR1_MARK, DU_DR0_MARK,
100762306a36Sopenharmony_ci	DU_DG7_MARK, DU_DG6_MARK, DU_DG5_MARK,
100862306a36Sopenharmony_ci	DU_DG4_MARK, DU_DG3_MARK, DU_DG2_MARK,
100962306a36Sopenharmony_ci	DU_DG1_MARK, DU_DG0_MARK,
101062306a36Sopenharmony_ci	DU_DB7_MARK, DU_DB6_MARK, DU_DB5_MARK,
101162306a36Sopenharmony_ci	DU_DB4_MARK, DU_DB3_MARK, DU_DB2_MARK,
101262306a36Sopenharmony_ci	DU_DB1_MARK, DU_DB0_MARK,
101362306a36Sopenharmony_ci};
101462306a36Sopenharmony_cistatic const unsigned int du_clk_out_pins[] = {
101562306a36Sopenharmony_ci	/* DU_DOTCLKOUT */
101662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 18),
101762306a36Sopenharmony_ci};
101862306a36Sopenharmony_cistatic const unsigned int du_clk_out_mux[] = {
101962306a36Sopenharmony_ci	DU_DOTCLKOUT_MARK,
102062306a36Sopenharmony_ci};
102162306a36Sopenharmony_cistatic const unsigned int du_sync_pins[] = {
102262306a36Sopenharmony_ci	/* DU_EXVSYNC/DU_VSYNC, DU_EXHSYNC/DU_HSYNC */
102362306a36Sopenharmony_ci	RCAR_GP_PIN(0, 20), RCAR_GP_PIN(0, 19),
102462306a36Sopenharmony_ci};
102562306a36Sopenharmony_cistatic const unsigned int du_sync_mux[] = {
102662306a36Sopenharmony_ci	DU_EXVSYNC_DU_VSYNC_MARK, DU_EXHSYNC_DU_HSYNC_MARK,
102762306a36Sopenharmony_ci};
102862306a36Sopenharmony_cistatic const unsigned int du_oddf_pins[] = {
102962306a36Sopenharmony_ci	/* DU_EXODDF/DU_ODDF/DISP/CDE */
103062306a36Sopenharmony_ci	RCAR_GP_PIN(0, 21),
103162306a36Sopenharmony_ci};
103262306a36Sopenharmony_cistatic const unsigned int du_oddf_mux[] = {
103362306a36Sopenharmony_ci	DU_EXODDF_DU_ODDF_DISP_CDE_MARK,
103462306a36Sopenharmony_ci};
103562306a36Sopenharmony_cistatic const unsigned int du_cde_pins[] = {
103662306a36Sopenharmony_ci	/* DU_CDE */
103762306a36Sopenharmony_ci	RCAR_GP_PIN(1, 22),
103862306a36Sopenharmony_ci};
103962306a36Sopenharmony_cistatic const unsigned int du_cde_mux[] = {
104062306a36Sopenharmony_ci	DU_CDE_MARK,
104162306a36Sopenharmony_ci};
104262306a36Sopenharmony_cistatic const unsigned int du_disp_pins[] = {
104362306a36Sopenharmony_ci	/* DU_DISP */
104462306a36Sopenharmony_ci	RCAR_GP_PIN(1, 21),
104562306a36Sopenharmony_ci};
104662306a36Sopenharmony_cistatic const unsigned int du_disp_mux[] = {
104762306a36Sopenharmony_ci	DU_DISP_MARK,
104862306a36Sopenharmony_ci};
104962306a36Sopenharmony_ci
105062306a36Sopenharmony_ci/* - GETHER ----------------------------------------------------------------- */
105162306a36Sopenharmony_cistatic const unsigned int gether_link_a_pins[] = {
105262306a36Sopenharmony_ci	/* GETHER_LINK */
105362306a36Sopenharmony_ci	RCAR_GP_PIN(4, 24),
105462306a36Sopenharmony_ci};
105562306a36Sopenharmony_cistatic const unsigned int gether_link_a_mux[] = {
105662306a36Sopenharmony_ci	GETHER_LINK_A_MARK,
105762306a36Sopenharmony_ci};
105862306a36Sopenharmony_cistatic const unsigned int gether_phy_int_a_pins[] = {
105962306a36Sopenharmony_ci	/* GETHER_PHY_INT */
106062306a36Sopenharmony_ci	RCAR_GP_PIN(4, 23),
106162306a36Sopenharmony_ci};
106262306a36Sopenharmony_cistatic const unsigned int gether_phy_int_a_mux[] = {
106362306a36Sopenharmony_ci	GETHER_PHY_INT_A_MARK,
106462306a36Sopenharmony_ci};
106562306a36Sopenharmony_cistatic const unsigned int gether_mdio_a_pins[] = {
106662306a36Sopenharmony_ci	/* GETHER_MDC, GETHER_MDIO */
106762306a36Sopenharmony_ci	RCAR_GP_PIN(4, 21), RCAR_GP_PIN(4, 20),
106862306a36Sopenharmony_ci};
106962306a36Sopenharmony_cistatic const unsigned int gether_mdio_a_mux[] = {
107062306a36Sopenharmony_ci	GETHER_MDC_A_MARK, GETHER_MDIO_A_MARK,
107162306a36Sopenharmony_ci};
107262306a36Sopenharmony_cistatic const unsigned int gether_link_b_pins[] = {
107362306a36Sopenharmony_ci	/* GETHER_LINK */
107462306a36Sopenharmony_ci	RCAR_GP_PIN(0, 18),
107562306a36Sopenharmony_ci};
107662306a36Sopenharmony_cistatic const unsigned int gether_link_b_mux[] = {
107762306a36Sopenharmony_ci	GETHER_LINK_B_MARK,
107862306a36Sopenharmony_ci};
107962306a36Sopenharmony_cistatic const unsigned int gether_phy_int_b_pins[] = {
108062306a36Sopenharmony_ci	/* GETHER_PHY_INT */
108162306a36Sopenharmony_ci	RCAR_GP_PIN(0, 19),
108262306a36Sopenharmony_ci};
108362306a36Sopenharmony_cistatic const unsigned int gether_phy_int_b_mux[] = {
108462306a36Sopenharmony_ci	GETHER_PHY_INT_B_MARK,
108562306a36Sopenharmony_ci};
108662306a36Sopenharmony_cistatic const unsigned int gether_mdio_b_mux[] = {
108762306a36Sopenharmony_ci	GETHER_MDC_B_MARK, GETHER_MDIO_B_MARK,
108862306a36Sopenharmony_ci};
108962306a36Sopenharmony_cistatic const unsigned int gether_mdio_b_pins[] = {
109062306a36Sopenharmony_ci	/* GETHER_MDC, GETHER_MDIO */
109162306a36Sopenharmony_ci	RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 10),
109262306a36Sopenharmony_ci};
109362306a36Sopenharmony_cistatic const unsigned int gether_magic_pins[] = {
109462306a36Sopenharmony_ci	/* GETHER_MAGIC */
109562306a36Sopenharmony_ci	RCAR_GP_PIN(4, 22),
109662306a36Sopenharmony_ci};
109762306a36Sopenharmony_cistatic const unsigned int gether_magic_mux[] = {
109862306a36Sopenharmony_ci	GETHER_MAGIC_MARK,
109962306a36Sopenharmony_ci};
110062306a36Sopenharmony_cistatic const unsigned int gether_rgmii_pins[] = {
110162306a36Sopenharmony_ci	/*
110262306a36Sopenharmony_ci	 * GETHER_TX_CTL, GETHER_TXC,
110362306a36Sopenharmony_ci	 * GETHER_TD0, GETHER_TD1, GETHER_TD2, GETHER_TD3,
110462306a36Sopenharmony_ci	 * GETHER_RX_CTL, GETHER_RXC,
110562306a36Sopenharmony_ci	 * GETHER_RD0, GETHER_RD1, GETHER_RD2, GETHER_RD3,
110662306a36Sopenharmony_ci	 */
110762306a36Sopenharmony_ci	RCAR_GP_PIN(4, 12), RCAR_GP_PIN(4, 13),
110862306a36Sopenharmony_ci	RCAR_GP_PIN(4, 14), RCAR_GP_PIN(4, 15),
110962306a36Sopenharmony_ci	RCAR_GP_PIN(4, 16), RCAR_GP_PIN(4, 17),
111062306a36Sopenharmony_ci	RCAR_GP_PIN(4, 6), RCAR_GP_PIN(4, 7),
111162306a36Sopenharmony_ci	RCAR_GP_PIN(4, 8), RCAR_GP_PIN(4, 9),
111262306a36Sopenharmony_ci	RCAR_GP_PIN(4, 10), RCAR_GP_PIN(4, 11),
111362306a36Sopenharmony_ci};
111462306a36Sopenharmony_cistatic const unsigned int gether_rgmii_mux[] = {
111562306a36Sopenharmony_ci	GETHER_TX_CTL_MARK, GETHER_TXC_MARK,
111662306a36Sopenharmony_ci	GETHER_TD0_MARK, GETHER_TD1_MARK,
111762306a36Sopenharmony_ci	GETHER_TD2_MARK, GETHER_TD3_MARK,
111862306a36Sopenharmony_ci	GETHER_RX_CTL_MARK, GETHER_RXC_MARK,
111962306a36Sopenharmony_ci	GETHER_RD0_MARK, AVB_RD1_MARK,
112062306a36Sopenharmony_ci	GETHER_RD2_MARK, AVB_RD3_MARK,
112162306a36Sopenharmony_ci};
112262306a36Sopenharmony_cistatic const unsigned int gether_txcrefclk_pins[] = {
112362306a36Sopenharmony_ci	/* GETHER_TXCREFCLK */
112462306a36Sopenharmony_ci	RCAR_GP_PIN(4, 18),
112562306a36Sopenharmony_ci};
112662306a36Sopenharmony_cistatic const unsigned int gether_txcrefclk_mux[] = {
112762306a36Sopenharmony_ci	GETHER_TXCREFCLK_MARK,
112862306a36Sopenharmony_ci};
112962306a36Sopenharmony_cistatic const unsigned int gether_txcrefclk_mega_pins[] = {
113062306a36Sopenharmony_ci	/* GETHER_TXCREFCLK_MEGA */
113162306a36Sopenharmony_ci	RCAR_GP_PIN(4, 19),
113262306a36Sopenharmony_ci};
113362306a36Sopenharmony_cistatic const unsigned int gether_txcrefclk_mega_mux[] = {
113462306a36Sopenharmony_ci	GETHER_TXCREFCLK_MEGA_MARK,
113562306a36Sopenharmony_ci};
113662306a36Sopenharmony_cistatic const unsigned int gether_rmii_pins[] = {
113762306a36Sopenharmony_ci	/*
113862306a36Sopenharmony_ci	 * GETHER_RMII_CRS_DV, GETHER_RMII_RX_ER,
113962306a36Sopenharmony_ci	 * GETHER_RMII_RXD0, GETHER_RMII_RXD1,
114062306a36Sopenharmony_ci	 * GETHER_RMII_TXD_EN, GETHER_RMII_TXD0,
114162306a36Sopenharmony_ci	 * GETHER_RMII_TXD1, GETHER_RMII_REFCLK
114262306a36Sopenharmony_ci	 */
114362306a36Sopenharmony_ci	RCAR_GP_PIN(0, 0), RCAR_GP_PIN(0, 1),
114462306a36Sopenharmony_ci	RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 3),
114562306a36Sopenharmony_ci	RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 5),
114662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 6), RCAR_GP_PIN(0, 7),
114762306a36Sopenharmony_ci};
114862306a36Sopenharmony_cistatic const unsigned int gether_rmii_mux[] = {
114962306a36Sopenharmony_ci	GETHER_RMII_CRS_DV_MARK, GETHER_RMII_RX_ER_MARK,
115062306a36Sopenharmony_ci	GETHER_RMII_RXD0_MARK, GETHER_RMII_RXD1_MARK,
115162306a36Sopenharmony_ci	GETHER_RMII_TXD_EN_MARK, GETHER_RMII_TXD0_MARK,
115262306a36Sopenharmony_ci	GETHER_RMII_TXD1_MARK, GETHER_RMII_REFCLK_MARK,
115362306a36Sopenharmony_ci};
115462306a36Sopenharmony_ci
115562306a36Sopenharmony_ci/* - HSCIF0 ----------------------------------------------------------------- */
115662306a36Sopenharmony_cistatic const unsigned int hscif0_data_a_pins[] = {
115762306a36Sopenharmony_ci	/* HRX0, HTX0 */
115862306a36Sopenharmony_ci	RCAR_GP_PIN(0, 11), RCAR_GP_PIN(0, 15),
115962306a36Sopenharmony_ci};
116062306a36Sopenharmony_cistatic const unsigned int hscif0_data_a_mux[] = {
116162306a36Sopenharmony_ci	HRX0_A_MARK, HTX0_A_MARK,
116262306a36Sopenharmony_ci};
116362306a36Sopenharmony_cistatic const unsigned int hscif0_clk_a_pins[] = {
116462306a36Sopenharmony_ci	/* HSCK0 */
116562306a36Sopenharmony_ci	RCAR_GP_PIN(0, 12),
116662306a36Sopenharmony_ci};
116762306a36Sopenharmony_cistatic const unsigned int hscif0_clk_a_mux[] = {
116862306a36Sopenharmony_ci	HSCK0_A_MARK,
116962306a36Sopenharmony_ci};
117062306a36Sopenharmony_cistatic const unsigned int hscif0_ctrl_a_pins[] = {
117162306a36Sopenharmony_ci	/* HRTS0#, HCTS0# */
117262306a36Sopenharmony_ci	RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 14),
117362306a36Sopenharmony_ci};
117462306a36Sopenharmony_cistatic const unsigned int hscif0_ctrl_a_mux[] = {
117562306a36Sopenharmony_ci	HRTS0_N_A_MARK, HCTS0_N_A_MARK,
117662306a36Sopenharmony_ci};
117762306a36Sopenharmony_cistatic const unsigned int hscif0_data_b_pins[] = {
117862306a36Sopenharmony_ci	/* HRX0, HTX0 */
117962306a36Sopenharmony_ci	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
118062306a36Sopenharmony_ci};
118162306a36Sopenharmony_cistatic const unsigned int hscif0_data_b_mux[] = {
118262306a36Sopenharmony_ci	HRX0_B_MARK, HTX0_B_MARK,
118362306a36Sopenharmony_ci};
118462306a36Sopenharmony_cistatic const unsigned int hscif0_clk_b_pins[] = {
118562306a36Sopenharmony_ci	/* HSCK0 */
118662306a36Sopenharmony_ci	RCAR_GP_PIN(4, 1),
118762306a36Sopenharmony_ci};
118862306a36Sopenharmony_cistatic const unsigned int hscif0_clk_b_mux[] = {
118962306a36Sopenharmony_ci	HSCK0_B_MARK,
119062306a36Sopenharmony_ci};
119162306a36Sopenharmony_cistatic const unsigned int hscif0_ctrl_b_pins[] = {
119262306a36Sopenharmony_ci	/* HRTS0#, HCTS0# */
119362306a36Sopenharmony_ci	RCAR_GP_PIN(4, 3), RCAR_GP_PIN(4, 2),
119462306a36Sopenharmony_ci};
119562306a36Sopenharmony_cistatic const unsigned int hscif0_ctrl_b_mux[] = {
119662306a36Sopenharmony_ci	HRTS0_N_B_MARK, HCTS0_N_B_MARK,
119762306a36Sopenharmony_ci};
119862306a36Sopenharmony_ci
119962306a36Sopenharmony_ci/* - HSCIF1 ----------------------------------------------------------------- */
120062306a36Sopenharmony_cistatic const unsigned int hscif1_data_pins[] = {
120162306a36Sopenharmony_ci	/* HRX1, HTX1 */
120262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10),
120362306a36Sopenharmony_ci};
120462306a36Sopenharmony_cistatic const unsigned int hscif1_data_mux[] = {
120562306a36Sopenharmony_ci	HRX1_MARK, HTX1_MARK,
120662306a36Sopenharmony_ci};
120762306a36Sopenharmony_cistatic const unsigned int hscif1_clk_pins[] = {
120862306a36Sopenharmony_ci	/* HSCK1 */
120962306a36Sopenharmony_ci	RCAR_GP_PIN(2, 7),
121062306a36Sopenharmony_ci};
121162306a36Sopenharmony_cistatic const unsigned int hscif1_clk_mux[] = {
121262306a36Sopenharmony_ci	HSCK1_MARK,
121362306a36Sopenharmony_ci};
121462306a36Sopenharmony_cistatic const unsigned int hscif1_ctrl_pins[] = {
121562306a36Sopenharmony_ci	/* HRTS1#, HCTS1# */
121662306a36Sopenharmony_ci	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
121762306a36Sopenharmony_ci};
121862306a36Sopenharmony_cistatic const unsigned int hscif1_ctrl_mux[] = {
121962306a36Sopenharmony_ci	HRTS1_N_MARK, HCTS1_N_MARK,
122062306a36Sopenharmony_ci};
122162306a36Sopenharmony_ci
122262306a36Sopenharmony_ci/* - HSCIF2 ----------------------------------------------------------------- */
122362306a36Sopenharmony_cistatic const unsigned int hscif2_data_pins[] = {
122462306a36Sopenharmony_ci	/* HRX2, HTX2 */
122562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 16), RCAR_GP_PIN(2, 15),
122662306a36Sopenharmony_ci};
122762306a36Sopenharmony_cistatic const unsigned int hscif2_data_mux[] = {
122862306a36Sopenharmony_ci	HRX2_MARK, HTX2_MARK,
122962306a36Sopenharmony_ci};
123062306a36Sopenharmony_cistatic const unsigned int hscif2_clk_pins[] = {
123162306a36Sopenharmony_ci	/* HSCK2 */
123262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 12),
123362306a36Sopenharmony_ci};
123462306a36Sopenharmony_cistatic const unsigned int hscif2_clk_mux[] = {
123562306a36Sopenharmony_ci	HSCK2_MARK,
123662306a36Sopenharmony_ci};
123762306a36Sopenharmony_cistatic const unsigned int hscif2_ctrl_pins[] = {
123862306a36Sopenharmony_ci	/* HRTS2#, HCTS2# */
123962306a36Sopenharmony_ci	RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 13),
124062306a36Sopenharmony_ci};
124162306a36Sopenharmony_cistatic const unsigned int hscif2_ctrl_mux[] = {
124262306a36Sopenharmony_ci	HRTS2_N_MARK, HCTS2_N_MARK,
124362306a36Sopenharmony_ci};
124462306a36Sopenharmony_ci
124562306a36Sopenharmony_ci/* - HSCIF3 ----------------------------------------------------------------- */
124662306a36Sopenharmony_cistatic const unsigned int hscif3_data_pins[] = {
124762306a36Sopenharmony_ci	/* HRX3, HTX3 */
124862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 3),
124962306a36Sopenharmony_ci};
125062306a36Sopenharmony_cistatic const unsigned int hscif3_data_mux[] = {
125162306a36Sopenharmony_ci	HRX3_MARK, HTX3_MARK,
125262306a36Sopenharmony_ci};
125362306a36Sopenharmony_cistatic const unsigned int hscif3_clk_pins[] = {
125462306a36Sopenharmony_ci	/* HSCK3 */
125562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 0),
125662306a36Sopenharmony_ci};
125762306a36Sopenharmony_cistatic const unsigned int hscif3_clk_mux[] = {
125862306a36Sopenharmony_ci	HSCK3_MARK,
125962306a36Sopenharmony_ci};
126062306a36Sopenharmony_cistatic const unsigned int hscif3_ctrl_pins[] = {
126162306a36Sopenharmony_ci	/* HRTS3#, HCTS3# */
126262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 2), RCAR_GP_PIN(2, 1),
126362306a36Sopenharmony_ci};
126462306a36Sopenharmony_cistatic const unsigned int hscif3_ctrl_mux[] = {
126562306a36Sopenharmony_ci	HRTS3_N_MARK, HCTS3_N_MARK,
126662306a36Sopenharmony_ci};
126762306a36Sopenharmony_ci
126862306a36Sopenharmony_ci/* - I2C0 ------------------------------------------------------------------- */
126962306a36Sopenharmony_cistatic const unsigned int i2c0_pins[] = {
127062306a36Sopenharmony_ci	/* SDA0, SCL0 */
127162306a36Sopenharmony_ci	RCAR_GP_PIN(4, 1), RCAR_GP_PIN(4, 0),
127262306a36Sopenharmony_ci};
127362306a36Sopenharmony_cistatic const unsigned int i2c0_mux[] = {
127462306a36Sopenharmony_ci	SDA0_MARK, SCL0_MARK,
127562306a36Sopenharmony_ci};
127662306a36Sopenharmony_ci
127762306a36Sopenharmony_ci/* - I2C1 ------------------------------------------------------------------- */
127862306a36Sopenharmony_cistatic const unsigned int i2c1_pins[] = {
127962306a36Sopenharmony_ci	/* SDA1, SCL1 */
128062306a36Sopenharmony_ci	RCAR_GP_PIN(4, 3), RCAR_GP_PIN(4, 2),
128162306a36Sopenharmony_ci};
128262306a36Sopenharmony_cistatic const unsigned int i2c1_mux[] = {
128362306a36Sopenharmony_ci	SDA1_MARK, SCL1_MARK,
128462306a36Sopenharmony_ci};
128562306a36Sopenharmony_ci
128662306a36Sopenharmony_ci/* - I2C2 ------------------------------------------------------------------- */
128762306a36Sopenharmony_cistatic const unsigned int i2c2_pins[] = {
128862306a36Sopenharmony_ci	/* SDA2, SCL2 */
128962306a36Sopenharmony_ci	RCAR_GP_PIN(4, 5), RCAR_GP_PIN(4, 4),
129062306a36Sopenharmony_ci};
129162306a36Sopenharmony_cistatic const unsigned int i2c2_mux[] = {
129262306a36Sopenharmony_ci	SDA2_MARK, SCL2_MARK,
129362306a36Sopenharmony_ci};
129462306a36Sopenharmony_ci
129562306a36Sopenharmony_ci/* - I2C3 ------------------------------------------------------------------- */
129662306a36Sopenharmony_cistatic const unsigned int i2c3_pins[] = {
129762306a36Sopenharmony_ci	/* SDA3, SCL3 */
129862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 26), RCAR_GP_PIN(2, 25),
129962306a36Sopenharmony_ci};
130062306a36Sopenharmony_cistatic const unsigned int i2c3_mux[] = {
130162306a36Sopenharmony_ci	SDA3_MARK, SCL3_MARK,
130262306a36Sopenharmony_ci};
130362306a36Sopenharmony_ci
130462306a36Sopenharmony_ci/* - I2C4 ------------------------------------------------------------------- */
130562306a36Sopenharmony_cistatic const unsigned int i2c4_pins[] = {
130662306a36Sopenharmony_ci	/* SDA4, SCL4 */
130762306a36Sopenharmony_ci	RCAR_GP_PIN(3, 16), RCAR_GP_PIN(3, 15),
130862306a36Sopenharmony_ci};
130962306a36Sopenharmony_cistatic const unsigned int i2c4_mux[] = {
131062306a36Sopenharmony_ci	SDA4_MARK, SCL4_MARK,
131162306a36Sopenharmony_ci};
131262306a36Sopenharmony_ci
131362306a36Sopenharmony_ci/* - I2C5 ------------------------------------------------------------------- */
131462306a36Sopenharmony_cistatic const unsigned int i2c5_pins[] = {
131562306a36Sopenharmony_ci	/* SDA5, SCL5 */
131662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 9), RCAR_GP_PIN(0, 8),
131762306a36Sopenharmony_ci};
131862306a36Sopenharmony_cistatic const unsigned int i2c5_mux[] = {
131962306a36Sopenharmony_ci	SDA5_MARK, SCL5_MARK,
132062306a36Sopenharmony_ci};
132162306a36Sopenharmony_ci
132262306a36Sopenharmony_ci/* - INTC-EX ---------------------------------------------------------------- */
132362306a36Sopenharmony_cistatic const unsigned int intc_ex_irq0_pins[] = {
132462306a36Sopenharmony_ci	/* IRQ0 */
132562306a36Sopenharmony_ci	RCAR_GP_PIN(1, 0),
132662306a36Sopenharmony_ci};
132762306a36Sopenharmony_cistatic const unsigned int intc_ex_irq0_mux[] = {
132862306a36Sopenharmony_ci	IRQ0_MARK,
132962306a36Sopenharmony_ci};
133062306a36Sopenharmony_cistatic const unsigned int intc_ex_irq1_pins[] = {
133162306a36Sopenharmony_ci	/* IRQ1 */
133262306a36Sopenharmony_ci	RCAR_GP_PIN(0, 12),
133362306a36Sopenharmony_ci};
133462306a36Sopenharmony_cistatic const unsigned int intc_ex_irq1_mux[] = {
133562306a36Sopenharmony_ci	IRQ1_MARK,
133662306a36Sopenharmony_ci};
133762306a36Sopenharmony_cistatic const unsigned int intc_ex_irq2_pins[] = {
133862306a36Sopenharmony_ci	/* IRQ2 */
133962306a36Sopenharmony_ci	RCAR_GP_PIN(0, 13),
134062306a36Sopenharmony_ci};
134162306a36Sopenharmony_cistatic const unsigned int intc_ex_irq2_mux[] = {
134262306a36Sopenharmony_ci	IRQ2_MARK,
134362306a36Sopenharmony_ci};
134462306a36Sopenharmony_cistatic const unsigned int intc_ex_irq3_pins[] = {
134562306a36Sopenharmony_ci	/* IRQ3 */
134662306a36Sopenharmony_ci	RCAR_GP_PIN(0, 14),
134762306a36Sopenharmony_ci};
134862306a36Sopenharmony_cistatic const unsigned int intc_ex_irq3_mux[] = {
134962306a36Sopenharmony_ci	IRQ3_MARK,
135062306a36Sopenharmony_ci};
135162306a36Sopenharmony_cistatic const unsigned int intc_ex_irq4_pins[] = {
135262306a36Sopenharmony_ci	/* IRQ4 */
135362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 17),
135462306a36Sopenharmony_ci};
135562306a36Sopenharmony_cistatic const unsigned int intc_ex_irq4_mux[] = {
135662306a36Sopenharmony_ci	IRQ4_MARK,
135762306a36Sopenharmony_ci};
135862306a36Sopenharmony_cistatic const unsigned int intc_ex_irq5_pins[] = {
135962306a36Sopenharmony_ci	/* IRQ5 */
136062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 18),
136162306a36Sopenharmony_ci};
136262306a36Sopenharmony_cistatic const unsigned int intc_ex_irq5_mux[] = {
136362306a36Sopenharmony_ci	IRQ5_MARK,
136462306a36Sopenharmony_ci};
136562306a36Sopenharmony_ci
136662306a36Sopenharmony_ci/* - MMC -------------------------------------------------------------------- */
136762306a36Sopenharmony_cistatic const unsigned int mmc_data_pins[] = {
136862306a36Sopenharmony_ci	/* MMC_D[0:7] */
136962306a36Sopenharmony_ci	RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9),
137062306a36Sopenharmony_ci	RCAR_GP_PIN(3, 10), RCAR_GP_PIN(3, 11),
137162306a36Sopenharmony_ci	RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 14),
137262306a36Sopenharmony_ci	RCAR_GP_PIN(3, 15), RCAR_GP_PIN(3, 16),
137362306a36Sopenharmony_ci};
137462306a36Sopenharmony_cistatic const unsigned int mmc_data_mux[] = {
137562306a36Sopenharmony_ci	MMC_D0_MARK, MMC_D1_MARK,
137662306a36Sopenharmony_ci	MMC_D2_MARK, MMC_D3_MARK,
137762306a36Sopenharmony_ci	MMC_D4_MARK, MMC_D5_MARK,
137862306a36Sopenharmony_ci	MMC_D6_MARK, MMC_D7_MARK,
137962306a36Sopenharmony_ci};
138062306a36Sopenharmony_cistatic const unsigned int mmc_ctrl_pins[] = {
138162306a36Sopenharmony_ci	/* MMC_CLK, MMC_CMD */
138262306a36Sopenharmony_ci	RCAR_GP_PIN(3, 12), RCAR_GP_PIN(3, 7),
138362306a36Sopenharmony_ci};
138462306a36Sopenharmony_cistatic const unsigned int mmc_ctrl_mux[] = {
138562306a36Sopenharmony_ci	MMC_CLK_MARK, MMC_CMD_MARK,
138662306a36Sopenharmony_ci};
138762306a36Sopenharmony_cistatic const unsigned int mmc_cd_pins[] = {
138862306a36Sopenharmony_ci	/* MMC_CD */
138962306a36Sopenharmony_ci	RCAR_GP_PIN(3, 5),
139062306a36Sopenharmony_ci};
139162306a36Sopenharmony_cistatic const unsigned int mmc_cd_mux[] = {
139262306a36Sopenharmony_ci	MMC_CD_MARK,
139362306a36Sopenharmony_ci};
139462306a36Sopenharmony_cistatic const unsigned int mmc_wp_pins[] = {
139562306a36Sopenharmony_ci	/* MMC_WP */
139662306a36Sopenharmony_ci	RCAR_GP_PIN(3, 4),
139762306a36Sopenharmony_ci};
139862306a36Sopenharmony_cistatic const unsigned int mmc_wp_mux[] = {
139962306a36Sopenharmony_ci	MMC_WP_MARK,
140062306a36Sopenharmony_ci};
140162306a36Sopenharmony_cistatic const unsigned int mmc_ds_pins[] = {
140262306a36Sopenharmony_ci	/* MMC_DS */
140362306a36Sopenharmony_ci	RCAR_GP_PIN(3, 6),
140462306a36Sopenharmony_ci};
140562306a36Sopenharmony_cistatic const unsigned int mmc_ds_mux[] = {
140662306a36Sopenharmony_ci	MMC_DS_MARK,
140762306a36Sopenharmony_ci};
140862306a36Sopenharmony_ci
140962306a36Sopenharmony_ci/* - MSIOF0 ----------------------------------------------------------------- */
141062306a36Sopenharmony_cistatic const unsigned int msiof0_clk_pins[] = {
141162306a36Sopenharmony_ci	/* MSIOF0_SCK */
141262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 21),
141362306a36Sopenharmony_ci};
141462306a36Sopenharmony_cistatic const unsigned int msiof0_clk_mux[] = {
141562306a36Sopenharmony_ci	MSIOF0_SCK_MARK,
141662306a36Sopenharmony_ci};
141762306a36Sopenharmony_cistatic const unsigned int msiof0_sync_pins[] = {
141862306a36Sopenharmony_ci	/* MSIOF0_SYNC */
141962306a36Sopenharmony_ci	RCAR_GP_PIN(2, 22),
142062306a36Sopenharmony_ci};
142162306a36Sopenharmony_cistatic const unsigned int msiof0_sync_mux[] = {
142262306a36Sopenharmony_ci	MSIOF0_SYNC_MARK,
142362306a36Sopenharmony_ci};
142462306a36Sopenharmony_cistatic const unsigned int msiof0_ss1_pins[] = {
142562306a36Sopenharmony_ci	/* MSIOF0_SS1 */
142662306a36Sopenharmony_ci	RCAR_GP_PIN(2, 23),
142762306a36Sopenharmony_ci};
142862306a36Sopenharmony_cistatic const unsigned int msiof0_ss1_mux[] = {
142962306a36Sopenharmony_ci	MSIOF0_SS1_MARK,
143062306a36Sopenharmony_ci};
143162306a36Sopenharmony_cistatic const unsigned int msiof0_ss2_pins[] = {
143262306a36Sopenharmony_ci	/* MSIOF0_SS2 */
143362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 24),
143462306a36Sopenharmony_ci};
143562306a36Sopenharmony_cistatic const unsigned int msiof0_ss2_mux[] = {
143662306a36Sopenharmony_ci	MSIOF0_SS2_MARK,
143762306a36Sopenharmony_ci};
143862306a36Sopenharmony_cistatic const unsigned int msiof0_txd_pins[] = {
143962306a36Sopenharmony_ci	/* MSIOF0_TXD */
144062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 20),
144162306a36Sopenharmony_ci};
144262306a36Sopenharmony_cistatic const unsigned int msiof0_txd_mux[] = {
144362306a36Sopenharmony_ci	MSIOF0_TXD_MARK,
144462306a36Sopenharmony_ci};
144562306a36Sopenharmony_cistatic const unsigned int msiof0_rxd_pins[] = {
144662306a36Sopenharmony_ci	/* MSIOF0_RXD */
144762306a36Sopenharmony_ci	RCAR_GP_PIN(2, 19),
144862306a36Sopenharmony_ci};
144962306a36Sopenharmony_cistatic const unsigned int msiof0_rxd_mux[] = {
145062306a36Sopenharmony_ci	MSIOF0_RXD_MARK,
145162306a36Sopenharmony_ci};
145262306a36Sopenharmony_ci
145362306a36Sopenharmony_ci/* - MSIOF1 ----------------------------------------------------------------- */
145462306a36Sopenharmony_cistatic const unsigned int msiof1_clk_pins[] = {
145562306a36Sopenharmony_ci	/* MSIOF1_SCK */
145662306a36Sopenharmony_ci	RCAR_GP_PIN(3, 2),
145762306a36Sopenharmony_ci};
145862306a36Sopenharmony_cistatic const unsigned int msiof1_clk_mux[] = {
145962306a36Sopenharmony_ci	MSIOF1_SCK_MARK,
146062306a36Sopenharmony_ci};
146162306a36Sopenharmony_cistatic const unsigned int msiof1_sync_pins[] = {
146262306a36Sopenharmony_ci	/* MSIOF1_SYNC */
146362306a36Sopenharmony_ci	RCAR_GP_PIN(3, 3),
146462306a36Sopenharmony_ci};
146562306a36Sopenharmony_cistatic const unsigned int msiof1_sync_mux[] = {
146662306a36Sopenharmony_ci	MSIOF1_SYNC_MARK,
146762306a36Sopenharmony_ci};
146862306a36Sopenharmony_cistatic const unsigned int msiof1_ss1_pins[] = {
146962306a36Sopenharmony_ci	/* MSIOF1_SS1 */
147062306a36Sopenharmony_ci	RCAR_GP_PIN(3, 4),
147162306a36Sopenharmony_ci};
147262306a36Sopenharmony_cistatic const unsigned int msiof1_ss1_mux[] = {
147362306a36Sopenharmony_ci	MSIOF1_SS1_MARK,
147462306a36Sopenharmony_ci};
147562306a36Sopenharmony_cistatic const unsigned int msiof1_ss2_pins[] = {
147662306a36Sopenharmony_ci	/* MSIOF1_SS2 */
147762306a36Sopenharmony_ci	RCAR_GP_PIN(3, 5),
147862306a36Sopenharmony_ci};
147962306a36Sopenharmony_cistatic const unsigned int msiof1_ss2_mux[] = {
148062306a36Sopenharmony_ci	MSIOF1_SS2_MARK,
148162306a36Sopenharmony_ci};
148262306a36Sopenharmony_cistatic const unsigned int msiof1_txd_pins[] = {
148362306a36Sopenharmony_ci	/* MSIOF1_TXD */
148462306a36Sopenharmony_ci	RCAR_GP_PIN(3, 1),
148562306a36Sopenharmony_ci};
148662306a36Sopenharmony_cistatic const unsigned int msiof1_txd_mux[] = {
148762306a36Sopenharmony_ci	MSIOF1_TXD_MARK,
148862306a36Sopenharmony_ci};
148962306a36Sopenharmony_cistatic const unsigned int msiof1_rxd_pins[] = {
149062306a36Sopenharmony_ci	/* MSIOF1_RXD */
149162306a36Sopenharmony_ci	RCAR_GP_PIN(3, 0),
149262306a36Sopenharmony_ci};
149362306a36Sopenharmony_cistatic const unsigned int msiof1_rxd_mux[] = {
149462306a36Sopenharmony_ci	MSIOF1_RXD_MARK,
149562306a36Sopenharmony_ci};
149662306a36Sopenharmony_ci
149762306a36Sopenharmony_ci/* - MSIOF2 ----------------------------------------------------------------- */
149862306a36Sopenharmony_cistatic const unsigned int msiof2_clk_pins[] = {
149962306a36Sopenharmony_ci	/* MSIOF2_SCK */
150062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 0),
150162306a36Sopenharmony_ci};
150262306a36Sopenharmony_cistatic const unsigned int msiof2_clk_mux[] = {
150362306a36Sopenharmony_ci	MSIOF2_SCK_MARK,
150462306a36Sopenharmony_ci};
150562306a36Sopenharmony_cistatic const unsigned int msiof2_sync_pins[] = {
150662306a36Sopenharmony_ci	/* MSIOF2_SYNC */
150762306a36Sopenharmony_ci	RCAR_GP_PIN(2, 3),
150862306a36Sopenharmony_ci};
150962306a36Sopenharmony_cistatic const unsigned int msiof2_sync_mux[] = {
151062306a36Sopenharmony_ci	MSIOF2_SYNC_MARK,
151162306a36Sopenharmony_ci};
151262306a36Sopenharmony_cistatic const unsigned int msiof2_ss1_pins[] = {
151362306a36Sopenharmony_ci	/* MSIOF2_SS1 */
151462306a36Sopenharmony_ci	RCAR_GP_PIN(2, 4),
151562306a36Sopenharmony_ci};
151662306a36Sopenharmony_cistatic const unsigned int msiof2_ss1_mux[] = {
151762306a36Sopenharmony_ci	MSIOF2_SS1_MARK,
151862306a36Sopenharmony_ci};
151962306a36Sopenharmony_cistatic const unsigned int msiof2_ss2_pins[] = {
152062306a36Sopenharmony_ci	/* MSIOF2_SS2 */
152162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 5),
152262306a36Sopenharmony_ci};
152362306a36Sopenharmony_cistatic const unsigned int msiof2_ss2_mux[] = {
152462306a36Sopenharmony_ci	MSIOF2_SS2_MARK,
152562306a36Sopenharmony_ci};
152662306a36Sopenharmony_cistatic const unsigned int msiof2_txd_pins[] = {
152762306a36Sopenharmony_ci	/* MSIOF2_TXD */
152862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 2),
152962306a36Sopenharmony_ci};
153062306a36Sopenharmony_cistatic const unsigned int msiof2_txd_mux[] = {
153162306a36Sopenharmony_ci	MSIOF2_TXD_MARK,
153262306a36Sopenharmony_ci};
153362306a36Sopenharmony_cistatic const unsigned int msiof2_rxd_pins[] = {
153462306a36Sopenharmony_ci	/* MSIOF2_RXD */
153562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 1),
153662306a36Sopenharmony_ci};
153762306a36Sopenharmony_cistatic const unsigned int msiof2_rxd_mux[] = {
153862306a36Sopenharmony_ci	MSIOF2_RXD_MARK,
153962306a36Sopenharmony_ci};
154062306a36Sopenharmony_ci
154162306a36Sopenharmony_ci/* - MSIOF3 ----------------------------------------------------------------- */
154262306a36Sopenharmony_cistatic const unsigned int msiof3_clk_pins[] = {
154362306a36Sopenharmony_ci	/* MSIOF3_SCK */
154462306a36Sopenharmony_ci	RCAR_GP_PIN(0, 20),
154562306a36Sopenharmony_ci};
154662306a36Sopenharmony_cistatic const unsigned int msiof3_clk_mux[] = {
154762306a36Sopenharmony_ci	MSIOF3_SCK_MARK,
154862306a36Sopenharmony_ci};
154962306a36Sopenharmony_cistatic const unsigned int msiof3_sync_pins[] = {
155062306a36Sopenharmony_ci	/* MSIOF3_SYNC */
155162306a36Sopenharmony_ci	RCAR_GP_PIN(0, 21),
155262306a36Sopenharmony_ci};
155362306a36Sopenharmony_cistatic const unsigned int msiof3_sync_mux[] = {
155462306a36Sopenharmony_ci	MSIOF3_SYNC_MARK,
155562306a36Sopenharmony_ci};
155662306a36Sopenharmony_cistatic const unsigned int msiof3_ss1_pins[] = {
155762306a36Sopenharmony_ci	/* MSIOF3_SS1 */
155862306a36Sopenharmony_ci	RCAR_GP_PIN(0, 18),
155962306a36Sopenharmony_ci};
156062306a36Sopenharmony_cistatic const unsigned int msiof3_ss1_mux[] = {
156162306a36Sopenharmony_ci	MSIOF3_SS1_MARK,
156262306a36Sopenharmony_ci};
156362306a36Sopenharmony_cistatic const unsigned int msiof3_ss2_pins[] = {
156462306a36Sopenharmony_ci	/* MSIOF3_SS2 */
156562306a36Sopenharmony_ci	RCAR_GP_PIN(0, 19),
156662306a36Sopenharmony_ci};
156762306a36Sopenharmony_cistatic const unsigned int msiof3_ss2_mux[] = {
156862306a36Sopenharmony_ci	MSIOF3_SS2_MARK,
156962306a36Sopenharmony_ci};
157062306a36Sopenharmony_cistatic const unsigned int msiof3_txd_pins[] = {
157162306a36Sopenharmony_ci	/* MSIOF3_TXD */
157262306a36Sopenharmony_ci	RCAR_GP_PIN(0, 17),
157362306a36Sopenharmony_ci};
157462306a36Sopenharmony_cistatic const unsigned int msiof3_txd_mux[] = {
157562306a36Sopenharmony_ci	MSIOF3_TXD_MARK,
157662306a36Sopenharmony_ci};
157762306a36Sopenharmony_cistatic const unsigned int msiof3_rxd_pins[] = {
157862306a36Sopenharmony_ci	/* MSIOF3_RXD */
157962306a36Sopenharmony_ci	RCAR_GP_PIN(0, 16),
158062306a36Sopenharmony_ci};
158162306a36Sopenharmony_cistatic const unsigned int msiof3_rxd_mux[] = {
158262306a36Sopenharmony_ci	MSIOF3_RXD_MARK,
158362306a36Sopenharmony_ci};
158462306a36Sopenharmony_ci
158562306a36Sopenharmony_ci/* - PWM0 ------------------------------------------------------------------- */
158662306a36Sopenharmony_cistatic const unsigned int pwm0_a_pins[] = {
158762306a36Sopenharmony_ci	/* PWM0 */
158862306a36Sopenharmony_ci	RCAR_GP_PIN(0, 15),
158962306a36Sopenharmony_ci};
159062306a36Sopenharmony_cistatic const unsigned int pwm0_a_mux[] = {
159162306a36Sopenharmony_ci	PWM0_A_MARK,
159262306a36Sopenharmony_ci};
159362306a36Sopenharmony_cistatic const unsigned int pwm0_b_pins[] = {
159462306a36Sopenharmony_ci	/* PWM0 */
159562306a36Sopenharmony_ci	RCAR_GP_PIN(1, 21),
159662306a36Sopenharmony_ci};
159762306a36Sopenharmony_cistatic const unsigned int pwm0_b_mux[] = {
159862306a36Sopenharmony_ci	PWM0_B_MARK,
159962306a36Sopenharmony_ci};
160062306a36Sopenharmony_ci
160162306a36Sopenharmony_ci/* - PWM1 ------------------------------------------------------------------- */
160262306a36Sopenharmony_cistatic const unsigned int pwm1_a_pins[] = {
160362306a36Sopenharmony_ci	/* PWM1 */
160462306a36Sopenharmony_ci	RCAR_GP_PIN(2, 13),
160562306a36Sopenharmony_ci};
160662306a36Sopenharmony_cistatic const unsigned int pwm1_a_mux[] = {
160762306a36Sopenharmony_ci	PWM1_A_MARK,
160862306a36Sopenharmony_ci};
160962306a36Sopenharmony_cistatic const unsigned int pwm1_b_pins[] = {
161062306a36Sopenharmony_ci	/* PWM1 */
161162306a36Sopenharmony_ci	RCAR_GP_PIN(1, 22),
161262306a36Sopenharmony_ci};
161362306a36Sopenharmony_cistatic const unsigned int pwm1_b_mux[] = {
161462306a36Sopenharmony_ci	PWM1_B_MARK,
161562306a36Sopenharmony_ci};
161662306a36Sopenharmony_ci
161762306a36Sopenharmony_ci/* - PWM2 ------------------------------------------------------------------- */
161862306a36Sopenharmony_cistatic const unsigned int pwm2_a_pins[] = {
161962306a36Sopenharmony_ci	/* PWM2 */
162062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 14),
162162306a36Sopenharmony_ci};
162262306a36Sopenharmony_cistatic const unsigned int pwm2_a_mux[] = {
162362306a36Sopenharmony_ci	PWM2_A_MARK,
162462306a36Sopenharmony_ci};
162562306a36Sopenharmony_cistatic const unsigned int pwm2_b_pins[] = {
162662306a36Sopenharmony_ci	/* PWM2 */
162762306a36Sopenharmony_ci	RCAR_GP_PIN(1, 23),
162862306a36Sopenharmony_ci};
162962306a36Sopenharmony_cistatic const unsigned int pwm2_b_mux[] = {
163062306a36Sopenharmony_ci	PWM2_B_MARK,
163162306a36Sopenharmony_ci};
163262306a36Sopenharmony_ci
163362306a36Sopenharmony_ci/* - PWM3 ------------------------------------------------------------------- */
163462306a36Sopenharmony_cistatic const unsigned int pwm3_a_pins[] = {
163562306a36Sopenharmony_ci	/* PWM3 */
163662306a36Sopenharmony_ci	RCAR_GP_PIN(2, 15),
163762306a36Sopenharmony_ci};
163862306a36Sopenharmony_cistatic const unsigned int pwm3_a_mux[] = {
163962306a36Sopenharmony_ci	PWM3_A_MARK,
164062306a36Sopenharmony_ci};
164162306a36Sopenharmony_cistatic const unsigned int pwm3_b_pins[] = {
164262306a36Sopenharmony_ci	/* PWM3 */
164362306a36Sopenharmony_ci	RCAR_GP_PIN(1, 24),
164462306a36Sopenharmony_ci};
164562306a36Sopenharmony_cistatic const unsigned int pwm3_b_mux[] = {
164662306a36Sopenharmony_ci	PWM3_B_MARK,
164762306a36Sopenharmony_ci};
164862306a36Sopenharmony_ci
164962306a36Sopenharmony_ci/* - PWM4 ------------------------------------------------------------------- */
165062306a36Sopenharmony_cistatic const unsigned int pwm4_a_pins[] = {
165162306a36Sopenharmony_ci	/* PWM4 */
165262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 16),
165362306a36Sopenharmony_ci};
165462306a36Sopenharmony_cistatic const unsigned int pwm4_a_mux[] = {
165562306a36Sopenharmony_ci	PWM4_A_MARK,
165662306a36Sopenharmony_ci};
165762306a36Sopenharmony_cistatic const unsigned int pwm4_b_pins[] = {
165862306a36Sopenharmony_ci	/* PWM4 */
165962306a36Sopenharmony_ci	RCAR_GP_PIN(1, 25),
166062306a36Sopenharmony_ci};
166162306a36Sopenharmony_cistatic const unsigned int pwm4_b_mux[] = {
166262306a36Sopenharmony_ci	PWM4_B_MARK,
166362306a36Sopenharmony_ci};
166462306a36Sopenharmony_ci
166562306a36Sopenharmony_ci/* - QSPI0 ------------------------------------------------------------------ */
166662306a36Sopenharmony_cistatic const unsigned int qspi0_ctrl_pins[] = {
166762306a36Sopenharmony_ci	/* SPCLK, SSL */
166862306a36Sopenharmony_ci	RCAR_GP_PIN(5, 0), RCAR_GP_PIN(5, 5),
166962306a36Sopenharmony_ci};
167062306a36Sopenharmony_cistatic const unsigned int qspi0_ctrl_mux[] = {
167162306a36Sopenharmony_ci	QSPI0_SPCLK_MARK, QSPI0_SSL_MARK,
167262306a36Sopenharmony_ci};
167362306a36Sopenharmony_ci
167462306a36Sopenharmony_ci/* - QSPI1 ------------------------------------------------------------------ */
167562306a36Sopenharmony_cistatic const unsigned int qspi1_ctrl_pins[] = {
167662306a36Sopenharmony_ci	/* SPCLK, SSL */
167762306a36Sopenharmony_ci	RCAR_GP_PIN(5, 6), RCAR_GP_PIN(5, 11),
167862306a36Sopenharmony_ci};
167962306a36Sopenharmony_cistatic const unsigned int qspi1_ctrl_mux[] = {
168062306a36Sopenharmony_ci	QSPI1_SPCLK_MARK, QSPI1_SSL_MARK,
168162306a36Sopenharmony_ci};
168262306a36Sopenharmony_ci
168362306a36Sopenharmony_ci/* - RPC -------------------------------------------------------------------- */
168462306a36Sopenharmony_cistatic const unsigned int rpc_clk_pins[] = {
168562306a36Sopenharmony_ci	/* Octal-SPI flash: C/SCLK */
168662306a36Sopenharmony_ci	/* HyperFlash: CK, CK# */
168762306a36Sopenharmony_ci	RCAR_GP_PIN(5, 0), RCAR_GP_PIN(5, 6),
168862306a36Sopenharmony_ci};
168962306a36Sopenharmony_cistatic const unsigned int rpc_clk_mux[] = {
169062306a36Sopenharmony_ci	QSPI0_SPCLK_MARK, QSPI1_SPCLK_MARK,
169162306a36Sopenharmony_ci};
169262306a36Sopenharmony_cistatic const unsigned int rpc_ctrl_pins[] = {
169362306a36Sopenharmony_ci	/* Octal-SPI flash: S#/CS, DQS */
169462306a36Sopenharmony_ci	/* HyperFlash: CS#, RDS */
169562306a36Sopenharmony_ci	RCAR_GP_PIN(5, 5), RCAR_GP_PIN(5, 11),
169662306a36Sopenharmony_ci};
169762306a36Sopenharmony_cistatic const unsigned int rpc_ctrl_mux[] = {
169862306a36Sopenharmony_ci	QSPI0_SSL_MARK, QSPI1_SSL_MARK,
169962306a36Sopenharmony_ci};
170062306a36Sopenharmony_cistatic const unsigned int rpc_data_pins[] = {
170162306a36Sopenharmony_ci	/* DQ[0:7] */
170262306a36Sopenharmony_ci	RCAR_GP_PIN(5, 1), RCAR_GP_PIN(5, 2),
170362306a36Sopenharmony_ci	RCAR_GP_PIN(5, 3), RCAR_GP_PIN(5, 4),
170462306a36Sopenharmony_ci	RCAR_GP_PIN(5, 7), RCAR_GP_PIN(5, 8),
170562306a36Sopenharmony_ci	RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 10),
170662306a36Sopenharmony_ci};
170762306a36Sopenharmony_cistatic const unsigned int rpc_data_mux[] = {
170862306a36Sopenharmony_ci	QSPI0_MOSI_IO0_MARK, QSPI0_MISO_IO1_MARK,
170962306a36Sopenharmony_ci	QSPI0_IO2_MARK, QSPI0_IO3_MARK,
171062306a36Sopenharmony_ci	QSPI1_MOSI_IO0_MARK, QSPI1_MISO_IO1_MARK,
171162306a36Sopenharmony_ci	QSPI1_IO2_MARK, QSPI1_IO3_MARK,
171262306a36Sopenharmony_ci};
171362306a36Sopenharmony_cistatic const unsigned int rpc_reset_pins[] = {
171462306a36Sopenharmony_ci	/* RPC_RESET# */
171562306a36Sopenharmony_ci	RCAR_GP_PIN(5, 12),
171662306a36Sopenharmony_ci};
171762306a36Sopenharmony_cistatic const unsigned int rpc_reset_mux[] = {
171862306a36Sopenharmony_ci	RPC_RESET_N_MARK,
171962306a36Sopenharmony_ci};
172062306a36Sopenharmony_cistatic const unsigned int rpc_int_pins[] = {
172162306a36Sopenharmony_ci	/* RPC_INT# */
172262306a36Sopenharmony_ci	RCAR_GP_PIN(5, 14),
172362306a36Sopenharmony_ci};
172462306a36Sopenharmony_cistatic const unsigned int rpc_int_mux[] = {
172562306a36Sopenharmony_ci	RPC_INT_N_MARK,
172662306a36Sopenharmony_ci};
172762306a36Sopenharmony_cistatic const unsigned int rpc_wp_pins[] = {
172862306a36Sopenharmony_ci	/* RPC_WP# */
172962306a36Sopenharmony_ci	RCAR_GP_PIN(5, 13),
173062306a36Sopenharmony_ci};
173162306a36Sopenharmony_cistatic const unsigned int rpc_wp_mux[] = {
173262306a36Sopenharmony_ci	RPC_WP_N_MARK,
173362306a36Sopenharmony_ci};
173462306a36Sopenharmony_ci
173562306a36Sopenharmony_ci/* - SCIF0 ------------------------------------------------------------------ */
173662306a36Sopenharmony_cistatic const unsigned int scif0_data_pins[] = {
173762306a36Sopenharmony_ci	/* RX0, TX0 */
173862306a36Sopenharmony_ci	RCAR_GP_PIN(4, 4), RCAR_GP_PIN(4, 5),
173962306a36Sopenharmony_ci};
174062306a36Sopenharmony_cistatic const unsigned int scif0_data_mux[] = {
174162306a36Sopenharmony_ci	RX0_MARK, TX0_MARK,
174262306a36Sopenharmony_ci};
174362306a36Sopenharmony_cistatic const unsigned int scif0_clk_pins[] = {
174462306a36Sopenharmony_ci	/* SCK0 */
174562306a36Sopenharmony_ci	RCAR_GP_PIN(4, 1),
174662306a36Sopenharmony_ci};
174762306a36Sopenharmony_cistatic const unsigned int scif0_clk_mux[] = {
174862306a36Sopenharmony_ci	SCK0_MARK,
174962306a36Sopenharmony_ci};
175062306a36Sopenharmony_cistatic const unsigned int scif0_ctrl_pins[] = {
175162306a36Sopenharmony_ci	/* RTS0#, CTS0# */
175262306a36Sopenharmony_ci	RCAR_GP_PIN(4, 3), RCAR_GP_PIN(4, 2),
175362306a36Sopenharmony_ci};
175462306a36Sopenharmony_cistatic const unsigned int scif0_ctrl_mux[] = {
175562306a36Sopenharmony_ci	RTS0_N_MARK, CTS0_N_MARK,
175662306a36Sopenharmony_ci};
175762306a36Sopenharmony_ci
175862306a36Sopenharmony_ci/* - SCIF1 ------------------------------------------------------------------ */
175962306a36Sopenharmony_cistatic const unsigned int scif1_data_a_pins[] = {
176062306a36Sopenharmony_ci	/* RX1, TX1 */
176162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
176262306a36Sopenharmony_ci};
176362306a36Sopenharmony_cistatic const unsigned int scif1_data_a_mux[] = {
176462306a36Sopenharmony_ci	RX1_A_MARK, TX1_A_MARK,
176562306a36Sopenharmony_ci};
176662306a36Sopenharmony_cistatic const unsigned int scif1_clk_pins[] = {
176762306a36Sopenharmony_ci	/* SCK1 */
176862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 5),
176962306a36Sopenharmony_ci};
177062306a36Sopenharmony_cistatic const unsigned int scif1_clk_mux[] = {
177162306a36Sopenharmony_ci	SCK1_MARK,
177262306a36Sopenharmony_ci};
177362306a36Sopenharmony_cistatic const unsigned int scif1_ctrl_pins[] = {
177462306a36Sopenharmony_ci	/* RTS1#, CTS1# */
177562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 11), RCAR_GP_PIN(2, 10),
177662306a36Sopenharmony_ci};
177762306a36Sopenharmony_cistatic const unsigned int scif1_ctrl_mux[] = {
177862306a36Sopenharmony_ci	RTS1_N_MARK, CTS1_N_MARK,
177962306a36Sopenharmony_ci};
178062306a36Sopenharmony_cistatic const unsigned int scif1_data_b_pins[] = {
178162306a36Sopenharmony_ci	/* RX1, TX1 */
178262306a36Sopenharmony_ci	RCAR_GP_PIN(1, 24), RCAR_GP_PIN(1, 23),
178362306a36Sopenharmony_ci};
178462306a36Sopenharmony_cistatic const unsigned int scif1_data_b_mux[] = {
178562306a36Sopenharmony_ci	RX1_B_MARK, TX1_B_MARK,
178662306a36Sopenharmony_ci};
178762306a36Sopenharmony_ci
178862306a36Sopenharmony_ci/* - SCIF3 ------------------------------------------------------------------ */
178962306a36Sopenharmony_cistatic const unsigned int scif3_data_pins[] = {
179062306a36Sopenharmony_ci	/* RX3, TX3 */
179162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 1), RCAR_GP_PIN(2, 2),
179262306a36Sopenharmony_ci};
179362306a36Sopenharmony_cistatic const unsigned int scif3_data_mux[] = {
179462306a36Sopenharmony_ci	RX3_MARK, TX3_MARK,
179562306a36Sopenharmony_ci};
179662306a36Sopenharmony_cistatic const unsigned int scif3_clk_pins[] = {
179762306a36Sopenharmony_ci	/* SCK3 */
179862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 0),
179962306a36Sopenharmony_ci};
180062306a36Sopenharmony_cistatic const unsigned int scif3_clk_mux[] = {
180162306a36Sopenharmony_ci	SCK3_MARK,
180262306a36Sopenharmony_ci};
180362306a36Sopenharmony_cistatic const unsigned int scif3_ctrl_pins[] = {
180462306a36Sopenharmony_ci	/* RTS3#, CTS3# */
180562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 3),
180662306a36Sopenharmony_ci};
180762306a36Sopenharmony_cistatic const unsigned int scif3_ctrl_mux[] = {
180862306a36Sopenharmony_ci	RTS3_N_MARK, CTS3_N_MARK,
180962306a36Sopenharmony_ci};
181062306a36Sopenharmony_ci
181162306a36Sopenharmony_ci/* - SCIF4 ------------------------------------------------------------------ */
181262306a36Sopenharmony_cistatic const unsigned int scif4_data_pins[] = {
181362306a36Sopenharmony_ci	/* RX4, TX4 */
181462306a36Sopenharmony_ci	RCAR_GP_PIN(0, 1), RCAR_GP_PIN(0, 2),
181562306a36Sopenharmony_ci};
181662306a36Sopenharmony_cistatic const unsigned int scif4_data_mux[] = {
181762306a36Sopenharmony_ci	RX4_MARK, TX4_MARK,
181862306a36Sopenharmony_ci};
181962306a36Sopenharmony_cistatic const unsigned int scif4_clk_pins[] = {
182062306a36Sopenharmony_ci	/* SCK4 */
182162306a36Sopenharmony_ci	RCAR_GP_PIN(0, 0),
182262306a36Sopenharmony_ci};
182362306a36Sopenharmony_cistatic const unsigned int scif4_clk_mux[] = {
182462306a36Sopenharmony_ci	SCK4_MARK,
182562306a36Sopenharmony_ci};
182662306a36Sopenharmony_cistatic const unsigned int scif4_ctrl_pins[] = {
182762306a36Sopenharmony_ci	/* RTS4#, CTS4# */
182862306a36Sopenharmony_ci	RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 3),
182962306a36Sopenharmony_ci};
183062306a36Sopenharmony_cistatic const unsigned int scif4_ctrl_mux[] = {
183162306a36Sopenharmony_ci	RTS4_N_MARK, CTS4_N_MARK,
183262306a36Sopenharmony_ci};
183362306a36Sopenharmony_ci
183462306a36Sopenharmony_ci/* - SCIF Clock ------------------------------------------------------------- */
183562306a36Sopenharmony_cistatic const unsigned int scif_clk_a_pins[] = {
183662306a36Sopenharmony_ci	/* SCIF_CLK */
183762306a36Sopenharmony_ci	RCAR_GP_PIN(0, 10),
183862306a36Sopenharmony_ci};
183962306a36Sopenharmony_cistatic const unsigned int scif_clk_a_mux[] = {
184062306a36Sopenharmony_ci	SCIF_CLK_A_MARK,
184162306a36Sopenharmony_ci};
184262306a36Sopenharmony_cistatic const unsigned int scif_clk_b_pins[] = {
184362306a36Sopenharmony_ci	/* SCIF_CLK */
184462306a36Sopenharmony_ci	RCAR_GP_PIN(1, 25),
184562306a36Sopenharmony_ci};
184662306a36Sopenharmony_cistatic const unsigned int scif_clk_b_mux[] = {
184762306a36Sopenharmony_ci	SCIF_CLK_B_MARK,
184862306a36Sopenharmony_ci};
184962306a36Sopenharmony_ci
185062306a36Sopenharmony_ci/* - TMU -------------------------------------------------------------------- */
185162306a36Sopenharmony_cistatic const unsigned int tmu_tclk1_a_pins[] = {
185262306a36Sopenharmony_ci	/* TCLK1 */
185362306a36Sopenharmony_ci	RCAR_GP_PIN(3, 13),
185462306a36Sopenharmony_ci};
185562306a36Sopenharmony_cistatic const unsigned int tmu_tclk1_a_mux[] = {
185662306a36Sopenharmony_ci	TCLK1_A_MARK,
185762306a36Sopenharmony_ci};
185862306a36Sopenharmony_cistatic const unsigned int tmu_tclk1_b_pins[] = {
185962306a36Sopenharmony_ci	/* TCLK1 */
186062306a36Sopenharmony_ci	RCAR_GP_PIN(1, 23),
186162306a36Sopenharmony_ci};
186262306a36Sopenharmony_cistatic const unsigned int tmu_tclk1_b_mux[] = {
186362306a36Sopenharmony_ci	TCLK1_B_MARK,
186462306a36Sopenharmony_ci};
186562306a36Sopenharmony_cistatic const unsigned int tmu_tclk2_a_pins[] = {
186662306a36Sopenharmony_ci	/* TCLK2 */
186762306a36Sopenharmony_ci	RCAR_GP_PIN(3, 14),
186862306a36Sopenharmony_ci};
186962306a36Sopenharmony_cistatic const unsigned int tmu_tclk2_a_mux[] = {
187062306a36Sopenharmony_ci	TCLK2_A_MARK,
187162306a36Sopenharmony_ci};
187262306a36Sopenharmony_cistatic const unsigned int tmu_tclk2_b_pins[] = {
187362306a36Sopenharmony_ci	/* TCLK2 */
187462306a36Sopenharmony_ci	RCAR_GP_PIN(1, 24),
187562306a36Sopenharmony_ci};
187662306a36Sopenharmony_cistatic const unsigned int tmu_tclk2_b_mux[] = {
187762306a36Sopenharmony_ci	TCLK2_B_MARK,
187862306a36Sopenharmony_ci};
187962306a36Sopenharmony_ci
188062306a36Sopenharmony_ci/* - TPU ------------------------------------------------------------------- */
188162306a36Sopenharmony_cistatic const unsigned int tpu_to0_pins[] = {
188262306a36Sopenharmony_ci	/* TPU0TO0 */
188362306a36Sopenharmony_ci	RCAR_GP_PIN(1, 19),
188462306a36Sopenharmony_ci};
188562306a36Sopenharmony_cistatic const unsigned int tpu_to0_mux[] = {
188662306a36Sopenharmony_ci	TPU0TO0_MARK,
188762306a36Sopenharmony_ci};
188862306a36Sopenharmony_cistatic const unsigned int tpu_to1_pins[] = {
188962306a36Sopenharmony_ci	/* TPU0TO1 */
189062306a36Sopenharmony_ci	RCAR_GP_PIN(1, 20),
189162306a36Sopenharmony_ci};
189262306a36Sopenharmony_cistatic const unsigned int tpu_to1_mux[] = {
189362306a36Sopenharmony_ci	TPU0TO1_MARK,
189462306a36Sopenharmony_ci};
189562306a36Sopenharmony_cistatic const unsigned int tpu_to2_pins[] = {
189662306a36Sopenharmony_ci	/* TPU0TO2 */
189762306a36Sopenharmony_ci	RCAR_GP_PIN(4, 2),
189862306a36Sopenharmony_ci};
189962306a36Sopenharmony_cistatic const unsigned int tpu_to2_mux[] = {
190062306a36Sopenharmony_ci	TPU0TO2_MARK,
190162306a36Sopenharmony_ci};
190262306a36Sopenharmony_cistatic const unsigned int tpu_to3_pins[] = {
190362306a36Sopenharmony_ci	/* TPU0TO3 */
190462306a36Sopenharmony_ci	RCAR_GP_PIN(4, 3),
190562306a36Sopenharmony_ci};
190662306a36Sopenharmony_cistatic const unsigned int tpu_to3_mux[] = {
190762306a36Sopenharmony_ci	TPU0TO3_MARK,
190862306a36Sopenharmony_ci};
190962306a36Sopenharmony_ci
191062306a36Sopenharmony_ci/* - VIN0 ------------------------------------------------------------------- */
191162306a36Sopenharmony_cistatic const unsigned int vin0_data_pins[] = {
191262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 4), RCAR_GP_PIN(2, 5),
191362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 7),
191462306a36Sopenharmony_ci	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
191562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 10), RCAR_GP_PIN(2, 11),
191662306a36Sopenharmony_ci	RCAR_GP_PIN(2, 12), RCAR_GP_PIN(2, 13),
191762306a36Sopenharmony_ci	RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 15),
191862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 17), RCAR_GP_PIN(2, 18),
191962306a36Sopenharmony_ci	RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 20),
192062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 21), RCAR_GP_PIN(2, 22),
192162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 24),
192262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 25), RCAR_GP_PIN(2, 26),
192362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 27), RCAR_GP_PIN(2, 28),
192462306a36Sopenharmony_ci};
192562306a36Sopenharmony_cistatic const unsigned int vin0_data_mux[] = {
192662306a36Sopenharmony_ci	VI0_DATA0_MARK, VI0_DATA1_MARK,
192762306a36Sopenharmony_ci	VI0_DATA2_MARK, VI0_DATA3_MARK,
192862306a36Sopenharmony_ci	VI0_DATA4_MARK, VI0_DATA5_MARK,
192962306a36Sopenharmony_ci	VI0_DATA6_MARK, VI0_DATA7_MARK,
193062306a36Sopenharmony_ci	VI0_DATA8_MARK, VI0_DATA9_MARK,
193162306a36Sopenharmony_ci	VI0_DATA10_MARK, VI0_DATA11_MARK,
193262306a36Sopenharmony_ci	VI0_DATA12_MARK, VI0_DATA13_MARK,
193362306a36Sopenharmony_ci	VI0_DATA14_MARK, VI0_DATA15_MARK,
193462306a36Sopenharmony_ci	VI0_DATA16_MARK, VI0_DATA17_MARK,
193562306a36Sopenharmony_ci	VI0_DATA18_MARK, VI0_DATA19_MARK,
193662306a36Sopenharmony_ci	VI0_DATA20_MARK, VI0_DATA21_MARK,
193762306a36Sopenharmony_ci	VI0_DATA22_MARK, VI0_DATA23_MARK,
193862306a36Sopenharmony_ci};
193962306a36Sopenharmony_cistatic const unsigned int vin0_data18_pins[] = {
194062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 6), RCAR_GP_PIN(2, 7),
194162306a36Sopenharmony_ci	RCAR_GP_PIN(2, 8), RCAR_GP_PIN(2, 9),
194262306a36Sopenharmony_ci	RCAR_GP_PIN(2, 10), RCAR_GP_PIN(2, 11),
194362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 14), RCAR_GP_PIN(2, 15),
194462306a36Sopenharmony_ci	RCAR_GP_PIN(2, 17), RCAR_GP_PIN(2, 18),
194562306a36Sopenharmony_ci	RCAR_GP_PIN(2, 19), RCAR_GP_PIN(2, 20),
194662306a36Sopenharmony_ci	RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 24),
194762306a36Sopenharmony_ci	RCAR_GP_PIN(2, 25), RCAR_GP_PIN(2, 26),
194862306a36Sopenharmony_ci	RCAR_GP_PIN(2, 27), RCAR_GP_PIN(2, 28),
194962306a36Sopenharmony_ci};
195062306a36Sopenharmony_cistatic const unsigned int vin0_data18_mux[] = {
195162306a36Sopenharmony_ci	VI0_DATA2_MARK, VI0_DATA3_MARK,
195262306a36Sopenharmony_ci	VI0_DATA4_MARK, VI0_DATA5_MARK,
195362306a36Sopenharmony_ci	VI0_DATA6_MARK, VI0_DATA7_MARK,
195462306a36Sopenharmony_ci	VI0_DATA10_MARK, VI0_DATA11_MARK,
195562306a36Sopenharmony_ci	VI0_DATA12_MARK, VI0_DATA13_MARK,
195662306a36Sopenharmony_ci	VI0_DATA14_MARK, VI0_DATA15_MARK,
195762306a36Sopenharmony_ci	VI0_DATA18_MARK, VI0_DATA19_MARK,
195862306a36Sopenharmony_ci	VI0_DATA20_MARK, VI0_DATA21_MARK,
195962306a36Sopenharmony_ci	VI0_DATA22_MARK, VI0_DATA23_MARK,
196062306a36Sopenharmony_ci};
196162306a36Sopenharmony_cistatic const unsigned int vin0_sync_pins[] = {
196262306a36Sopenharmony_ci	/* VI0_VSYNC#, VI0_HSYNC# */
196362306a36Sopenharmony_ci	RCAR_GP_PIN(2, 3), RCAR_GP_PIN(2, 2),
196462306a36Sopenharmony_ci};
196562306a36Sopenharmony_cistatic const unsigned int vin0_sync_mux[] = {
196662306a36Sopenharmony_ci	VI0_VSYNC_N_MARK, VI0_HSYNC_N_MARK,
196762306a36Sopenharmony_ci};
196862306a36Sopenharmony_cistatic const unsigned int vin0_field_pins[] = {
196962306a36Sopenharmony_ci	/* VI0_FIELD */
197062306a36Sopenharmony_ci	RCAR_GP_PIN(2, 16),
197162306a36Sopenharmony_ci};
197262306a36Sopenharmony_cistatic const unsigned int vin0_field_mux[] = {
197362306a36Sopenharmony_ci	VI0_FIELD_MARK,
197462306a36Sopenharmony_ci};
197562306a36Sopenharmony_cistatic const unsigned int vin0_clkenb_pins[] = {
197662306a36Sopenharmony_ci	/* VI0_CLKENB */
197762306a36Sopenharmony_ci	RCAR_GP_PIN(2, 1),
197862306a36Sopenharmony_ci};
197962306a36Sopenharmony_cistatic const unsigned int vin0_clkenb_mux[] = {
198062306a36Sopenharmony_ci	VI0_CLKENB_MARK,
198162306a36Sopenharmony_ci};
198262306a36Sopenharmony_cistatic const unsigned int vin0_clk_pins[] = {
198362306a36Sopenharmony_ci	/* VI0_CLK */
198462306a36Sopenharmony_ci	RCAR_GP_PIN(2, 0),
198562306a36Sopenharmony_ci};
198662306a36Sopenharmony_cistatic const unsigned int vin0_clk_mux[] = {
198762306a36Sopenharmony_ci	VI0_CLK_MARK,
198862306a36Sopenharmony_ci};
198962306a36Sopenharmony_ci
199062306a36Sopenharmony_ci/* - VIN1 ------------------------------------------------------------------- */
199162306a36Sopenharmony_cistatic const unsigned int vin1_data_pins[] = {
199262306a36Sopenharmony_ci	RCAR_GP_PIN(3, 4), RCAR_GP_PIN(3, 5),
199362306a36Sopenharmony_ci	RCAR_GP_PIN(3, 6), RCAR_GP_PIN(3, 7),
199462306a36Sopenharmony_ci	RCAR_GP_PIN(3, 8), RCAR_GP_PIN(3, 9),
199562306a36Sopenharmony_ci	RCAR_GP_PIN(3, 10), RCAR_GP_PIN(3, 11),
199662306a36Sopenharmony_ci	RCAR_GP_PIN(3, 12), RCAR_GP_PIN(3, 13),
199762306a36Sopenharmony_ci	RCAR_GP_PIN(3, 14), RCAR_GP_PIN(3, 15),
199862306a36Sopenharmony_ci};
199962306a36Sopenharmony_cistatic const unsigned int vin1_data_mux[] = {
200062306a36Sopenharmony_ci	VI1_DATA0_MARK, VI1_DATA1_MARK,
200162306a36Sopenharmony_ci	VI1_DATA2_MARK, VI1_DATA3_MARK,
200262306a36Sopenharmony_ci	VI1_DATA4_MARK, VI1_DATA5_MARK,
200362306a36Sopenharmony_ci	VI1_DATA6_MARK, VI1_DATA7_MARK,
200462306a36Sopenharmony_ci	VI1_DATA8_MARK,  VI1_DATA9_MARK,
200562306a36Sopenharmony_ci	VI1_DATA10_MARK, VI1_DATA11_MARK,
200662306a36Sopenharmony_ci};
200762306a36Sopenharmony_cistatic const unsigned int vin1_sync_pins[] = {
200862306a36Sopenharmony_ci	/* VI1_VSYNC#, VI1_HSYNC# */
200962306a36Sopenharmony_ci	 RCAR_GP_PIN(3, 3), RCAR_GP_PIN(3, 2),
201062306a36Sopenharmony_ci};
201162306a36Sopenharmony_cistatic const unsigned int vin1_sync_mux[] = {
201262306a36Sopenharmony_ci	VI1_VSYNC_N_MARK, VI1_HSYNC_N_MARK,
201362306a36Sopenharmony_ci};
201462306a36Sopenharmony_cistatic const unsigned int vin1_field_pins[] = {
201562306a36Sopenharmony_ci	/* VI1_FIELD */
201662306a36Sopenharmony_ci	RCAR_GP_PIN(3, 16),
201762306a36Sopenharmony_ci};
201862306a36Sopenharmony_cistatic const unsigned int vin1_field_mux[] = {
201962306a36Sopenharmony_ci	VI1_FIELD_MARK,
202062306a36Sopenharmony_ci};
202162306a36Sopenharmony_cistatic const unsigned int vin1_clkenb_pins[] = {
202262306a36Sopenharmony_ci	/* VI1_CLKENB */
202362306a36Sopenharmony_ci	RCAR_GP_PIN(3, 1),
202462306a36Sopenharmony_ci};
202562306a36Sopenharmony_cistatic const unsigned int vin1_clkenb_mux[] = {
202662306a36Sopenharmony_ci	VI1_CLKENB_MARK,
202762306a36Sopenharmony_ci};
202862306a36Sopenharmony_cistatic const unsigned int vin1_clk_pins[] = {
202962306a36Sopenharmony_ci	/* VI1_CLK */
203062306a36Sopenharmony_ci	RCAR_GP_PIN(3, 0),
203162306a36Sopenharmony_ci};
203262306a36Sopenharmony_cistatic const unsigned int vin1_clk_mux[] = {
203362306a36Sopenharmony_ci	VI1_CLK_MARK,
203462306a36Sopenharmony_ci};
203562306a36Sopenharmony_ci
203662306a36Sopenharmony_cistatic const struct sh_pfc_pin_group pinmux_groups[] = {
203762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_link),
203862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_magic),
203962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_phy_int),
204062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_mdio),
204162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_rgmii),
204262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_txcrefclk),
204362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_avtp_pps),
204462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_avtp_capture),
204562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(avb_avtp_match),
204662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(canfd0_data_a),
204762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(canfd0_data_b),
204862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(canfd1_data),
204962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(canfd_clk_a),
205062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(canfd_clk_b),
205162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_rgb666),
205262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_rgb888),
205362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_clk_out),
205462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_sync),
205562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_oddf),
205662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_cde),
205762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(du_disp),
205862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_link_a),
205962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_phy_int_a),
206062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_mdio_a),
206162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_link_b),
206262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_phy_int_b),
206362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_mdio_b),
206462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_magic),
206562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_rgmii),
206662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_txcrefclk),
206762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_txcrefclk_mega),
206862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(gether_rmii),
206962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_data_a),
207062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_clk_a),
207162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_ctrl_a),
207262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_data_b),
207362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_clk_b),
207462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif0_ctrl_b),
207562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif1_data),
207662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif1_clk),
207762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif1_ctrl),
207862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif2_data),
207962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif2_clk),
208062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif2_ctrl),
208162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif3_data),
208262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif3_clk),
208362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(hscif3_ctrl),
208462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c0),
208562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c1),
208662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c2),
208762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c3),
208862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c4),
208962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(i2c5),
209062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq0),
209162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq1),
209262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq2),
209362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq3),
209462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq4),
209562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(intc_ex_irq5),
209662306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(mmc_data, 1),
209762306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(mmc_data, 4),
209862306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(mmc_data, 8),
209962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(mmc_ctrl),
210062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(mmc_cd),
210162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(mmc_wp),
210262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(mmc_ds),
210362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_clk),
210462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_sync),
210562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_ss1),
210662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_ss2),
210762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_txd),
210862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof0_rxd),
210962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_clk),
211062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_sync),
211162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_ss1),
211262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_ss2),
211362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_txd),
211462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof1_rxd),
211562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_clk),
211662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_sync),
211762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_ss1),
211862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_ss2),
211962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_txd),
212062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof2_rxd),
212162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_clk),
212262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_sync),
212362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_ss1),
212462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_ss2),
212562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_txd),
212662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(msiof3_rxd),
212762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm0_a),
212862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm0_b),
212962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm1_a),
213062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm1_b),
213162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm2_a),
213262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm2_b),
213362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm3_a),
213462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm3_b),
213562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm4_a),
213662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(pwm4_b),
213762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(qspi0_ctrl),
213862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP_SUBSET(qspi0_data2, rpc_data, 0, 2),
213962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP_SUBSET(qspi0_data4, rpc_data, 0, 4),
214062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(qspi1_ctrl),
214162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP_SUBSET(qspi1_data2, rpc_data, 4, 2),
214262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP_SUBSET(qspi1_data4, rpc_data, 4, 4),
214362306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(rpc_clk, 1),
214462306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(rpc_clk, 2),
214562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(rpc_ctrl),
214662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(rpc_data),
214762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(rpc_reset),
214862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(rpc_int),
214962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(rpc_wp),
215062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif0_data),
215162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif0_clk),
215262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif0_ctrl),
215362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif1_data_a),
215462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif1_clk),
215562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif1_ctrl),
215662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif1_data_b),
215762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif3_data),
215862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif3_clk),
215962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif3_ctrl),
216062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif4_data),
216162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif4_clk),
216262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif4_ctrl),
216362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif_clk_a),
216462306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(scif_clk_b),
216562306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tmu_tclk1_a),
216662306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tmu_tclk1_b),
216762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tmu_tclk2_a),
216862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tmu_tclk2_b),
216962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tpu_to0),
217062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tpu_to1),
217162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tpu_to2),
217262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(tpu_to3),
217362306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 8),
217462306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 10),
217562306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 12),
217662306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 16),
217762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin0_data18),
217862306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 20),
217962306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin0_data, 24),
218062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin0_sync),
218162306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin0_field),
218262306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin0_clkenb),
218362306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin0_clk),
218462306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin1_data, 8),
218562306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin1_data, 10),
218662306a36Sopenharmony_ci	BUS_DATA_PIN_GROUP(vin1_data, 12),
218762306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin1_sync),
218862306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin1_field),
218962306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin1_clkenb),
219062306a36Sopenharmony_ci	SH_PFC_PIN_GROUP(vin1_clk),
219162306a36Sopenharmony_ci};
219262306a36Sopenharmony_ci
219362306a36Sopenharmony_cistatic const char * const avb_groups[] = {
219462306a36Sopenharmony_ci	"avb_link",
219562306a36Sopenharmony_ci	"avb_magic",
219662306a36Sopenharmony_ci	"avb_phy_int",
219762306a36Sopenharmony_ci	"avb_mdio",
219862306a36Sopenharmony_ci	"avb_rgmii",
219962306a36Sopenharmony_ci	"avb_txcrefclk",
220062306a36Sopenharmony_ci	"avb_avtp_pps",
220162306a36Sopenharmony_ci	"avb_avtp_capture",
220262306a36Sopenharmony_ci	"avb_avtp_match",
220362306a36Sopenharmony_ci};
220462306a36Sopenharmony_ci
220562306a36Sopenharmony_cistatic const char * const canfd0_groups[] = {
220662306a36Sopenharmony_ci	"canfd0_data_a",
220762306a36Sopenharmony_ci	"canfd0_data_b",
220862306a36Sopenharmony_ci};
220962306a36Sopenharmony_ci
221062306a36Sopenharmony_cistatic const char * const canfd1_groups[] = {
221162306a36Sopenharmony_ci	"canfd1_data",
221262306a36Sopenharmony_ci};
221362306a36Sopenharmony_ci
221462306a36Sopenharmony_cistatic const char * const canfd_clk_groups[] = {
221562306a36Sopenharmony_ci	"canfd_clk_a",
221662306a36Sopenharmony_ci	"canfd_clk_b",
221762306a36Sopenharmony_ci};
221862306a36Sopenharmony_ci
221962306a36Sopenharmony_cistatic const char * const du_groups[] = {
222062306a36Sopenharmony_ci	"du_rgb666",
222162306a36Sopenharmony_ci	"du_rgb888",
222262306a36Sopenharmony_ci	"du_clk_out",
222362306a36Sopenharmony_ci	"du_sync",
222462306a36Sopenharmony_ci	"du_oddf",
222562306a36Sopenharmony_ci	"du_cde",
222662306a36Sopenharmony_ci	"du_disp",
222762306a36Sopenharmony_ci};
222862306a36Sopenharmony_ci
222962306a36Sopenharmony_cistatic const char * const gether_groups[] = {
223062306a36Sopenharmony_ci	"gether_link_a",
223162306a36Sopenharmony_ci	"gether_phy_int_a",
223262306a36Sopenharmony_ci	"gether_mdio_a",
223362306a36Sopenharmony_ci	"gether_link_b",
223462306a36Sopenharmony_ci	"gether_phy_int_b",
223562306a36Sopenharmony_ci	"gether_mdio_b",
223662306a36Sopenharmony_ci	"gether_magic",
223762306a36Sopenharmony_ci	"gether_rgmii",
223862306a36Sopenharmony_ci	"gether_txcrefclk",
223962306a36Sopenharmony_ci	"gether_txcrefclk_mega",
224062306a36Sopenharmony_ci	"gether_rmii",
224162306a36Sopenharmony_ci};
224262306a36Sopenharmony_ci
224362306a36Sopenharmony_cistatic const char * const hscif0_groups[] = {
224462306a36Sopenharmony_ci	"hscif0_data_a",
224562306a36Sopenharmony_ci	"hscif0_clk_a",
224662306a36Sopenharmony_ci	"hscif0_ctrl_a",
224762306a36Sopenharmony_ci	"hscif0_data_b",
224862306a36Sopenharmony_ci	"hscif0_clk_b",
224962306a36Sopenharmony_ci	"hscif0_ctrl_b",
225062306a36Sopenharmony_ci};
225162306a36Sopenharmony_ci
225262306a36Sopenharmony_cistatic const char * const hscif1_groups[] = {
225362306a36Sopenharmony_ci	"hscif1_data",
225462306a36Sopenharmony_ci	"hscif1_clk",
225562306a36Sopenharmony_ci	"hscif1_ctrl",
225662306a36Sopenharmony_ci};
225762306a36Sopenharmony_ci
225862306a36Sopenharmony_cistatic const char * const hscif2_groups[] = {
225962306a36Sopenharmony_ci	"hscif2_data",
226062306a36Sopenharmony_ci	"hscif2_clk",
226162306a36Sopenharmony_ci	"hscif2_ctrl",
226262306a36Sopenharmony_ci};
226362306a36Sopenharmony_ci
226462306a36Sopenharmony_cistatic const char * const hscif3_groups[] = {
226562306a36Sopenharmony_ci	"hscif3_data",
226662306a36Sopenharmony_ci	"hscif3_clk",
226762306a36Sopenharmony_ci	"hscif3_ctrl",
226862306a36Sopenharmony_ci};
226962306a36Sopenharmony_ci
227062306a36Sopenharmony_cistatic const char * const i2c0_groups[] = {
227162306a36Sopenharmony_ci	"i2c0",
227262306a36Sopenharmony_ci};
227362306a36Sopenharmony_ci
227462306a36Sopenharmony_cistatic const char * const i2c1_groups[] = {
227562306a36Sopenharmony_ci	"i2c1",
227662306a36Sopenharmony_ci};
227762306a36Sopenharmony_ci
227862306a36Sopenharmony_cistatic const char * const i2c2_groups[] = {
227962306a36Sopenharmony_ci	"i2c2",
228062306a36Sopenharmony_ci};
228162306a36Sopenharmony_ci
228262306a36Sopenharmony_cistatic const char * const i2c3_groups[] = {
228362306a36Sopenharmony_ci	"i2c3",
228462306a36Sopenharmony_ci};
228562306a36Sopenharmony_ci
228662306a36Sopenharmony_cistatic const char * const i2c4_groups[] = {
228762306a36Sopenharmony_ci	"i2c4",
228862306a36Sopenharmony_ci};
228962306a36Sopenharmony_ci
229062306a36Sopenharmony_cistatic const char * const i2c5_groups[] = {
229162306a36Sopenharmony_ci	"i2c5",
229262306a36Sopenharmony_ci};
229362306a36Sopenharmony_ci
229462306a36Sopenharmony_cistatic const char * const intc_ex_groups[] = {
229562306a36Sopenharmony_ci	"intc_ex_irq0",
229662306a36Sopenharmony_ci	"intc_ex_irq1",
229762306a36Sopenharmony_ci	"intc_ex_irq2",
229862306a36Sopenharmony_ci	"intc_ex_irq3",
229962306a36Sopenharmony_ci	"intc_ex_irq4",
230062306a36Sopenharmony_ci	"intc_ex_irq5",
230162306a36Sopenharmony_ci};
230262306a36Sopenharmony_ci
230362306a36Sopenharmony_cistatic const char * const mmc_groups[] = {
230462306a36Sopenharmony_ci	"mmc_data1",
230562306a36Sopenharmony_ci	"mmc_data4",
230662306a36Sopenharmony_ci	"mmc_data8",
230762306a36Sopenharmony_ci	"mmc_ctrl",
230862306a36Sopenharmony_ci	"mmc_cd",
230962306a36Sopenharmony_ci	"mmc_wp",
231062306a36Sopenharmony_ci	"mmc_ds",
231162306a36Sopenharmony_ci};
231262306a36Sopenharmony_ci
231362306a36Sopenharmony_cistatic const char * const msiof0_groups[] = {
231462306a36Sopenharmony_ci	"msiof0_clk",
231562306a36Sopenharmony_ci	"msiof0_sync",
231662306a36Sopenharmony_ci	"msiof0_ss1",
231762306a36Sopenharmony_ci	"msiof0_ss2",
231862306a36Sopenharmony_ci	"msiof0_txd",
231962306a36Sopenharmony_ci	"msiof0_rxd",
232062306a36Sopenharmony_ci};
232162306a36Sopenharmony_ci
232262306a36Sopenharmony_cistatic const char * const msiof1_groups[] = {
232362306a36Sopenharmony_ci	"msiof1_clk",
232462306a36Sopenharmony_ci	"msiof1_sync",
232562306a36Sopenharmony_ci	"msiof1_ss1",
232662306a36Sopenharmony_ci	"msiof1_ss2",
232762306a36Sopenharmony_ci	"msiof1_txd",
232862306a36Sopenharmony_ci	"msiof1_rxd",
232962306a36Sopenharmony_ci};
233062306a36Sopenharmony_ci
233162306a36Sopenharmony_cistatic const char * const msiof2_groups[] = {
233262306a36Sopenharmony_ci	"msiof2_clk",
233362306a36Sopenharmony_ci	"msiof2_sync",
233462306a36Sopenharmony_ci	"msiof2_ss1",
233562306a36Sopenharmony_ci	"msiof2_ss2",
233662306a36Sopenharmony_ci	"msiof2_txd",
233762306a36Sopenharmony_ci	"msiof2_rxd",
233862306a36Sopenharmony_ci};
233962306a36Sopenharmony_ci
234062306a36Sopenharmony_cistatic const char * const msiof3_groups[] = {
234162306a36Sopenharmony_ci	"msiof3_clk",
234262306a36Sopenharmony_ci	"msiof3_sync",
234362306a36Sopenharmony_ci	"msiof3_ss1",
234462306a36Sopenharmony_ci	"msiof3_ss2",
234562306a36Sopenharmony_ci	"msiof3_txd",
234662306a36Sopenharmony_ci	"msiof3_rxd",
234762306a36Sopenharmony_ci};
234862306a36Sopenharmony_ci
234962306a36Sopenharmony_cistatic const char * const pwm0_groups[] = {
235062306a36Sopenharmony_ci	"pwm0_a",
235162306a36Sopenharmony_ci	"pwm0_b",
235262306a36Sopenharmony_ci};
235362306a36Sopenharmony_ci
235462306a36Sopenharmony_cistatic const char * const pwm1_groups[] = {
235562306a36Sopenharmony_ci	"pwm1_a",
235662306a36Sopenharmony_ci	"pwm1_b",
235762306a36Sopenharmony_ci};
235862306a36Sopenharmony_ci
235962306a36Sopenharmony_cistatic const char * const pwm2_groups[] = {
236062306a36Sopenharmony_ci	"pwm2_a",
236162306a36Sopenharmony_ci	"pwm2_b",
236262306a36Sopenharmony_ci};
236362306a36Sopenharmony_ci
236462306a36Sopenharmony_cistatic const char * const pwm3_groups[] = {
236562306a36Sopenharmony_ci	"pwm3_a",
236662306a36Sopenharmony_ci	"pwm3_b",
236762306a36Sopenharmony_ci};
236862306a36Sopenharmony_ci
236962306a36Sopenharmony_cistatic const char * const pwm4_groups[] = {
237062306a36Sopenharmony_ci	"pwm4_a",
237162306a36Sopenharmony_ci	"pwm4_b",
237262306a36Sopenharmony_ci};
237362306a36Sopenharmony_ci
237462306a36Sopenharmony_cistatic const char * const qspi0_groups[] = {
237562306a36Sopenharmony_ci	"qspi0_ctrl",
237662306a36Sopenharmony_ci	"qspi0_data2",
237762306a36Sopenharmony_ci	"qspi0_data4",
237862306a36Sopenharmony_ci};
237962306a36Sopenharmony_ci
238062306a36Sopenharmony_cistatic const char * const qspi1_groups[] = {
238162306a36Sopenharmony_ci	"qspi1_ctrl",
238262306a36Sopenharmony_ci	"qspi1_data2",
238362306a36Sopenharmony_ci	"qspi1_data4",
238462306a36Sopenharmony_ci};
238562306a36Sopenharmony_ci
238662306a36Sopenharmony_cistatic const char * const rpc_groups[] = {
238762306a36Sopenharmony_ci	"rpc_clk1",
238862306a36Sopenharmony_ci	"rpc_clk2",
238962306a36Sopenharmony_ci	"rpc_ctrl",
239062306a36Sopenharmony_ci	"rpc_data",
239162306a36Sopenharmony_ci	"rpc_reset",
239262306a36Sopenharmony_ci	"rpc_int",
239362306a36Sopenharmony_ci	"rpc_wp",
239462306a36Sopenharmony_ci};
239562306a36Sopenharmony_ci
239662306a36Sopenharmony_cistatic const char * const scif0_groups[] = {
239762306a36Sopenharmony_ci	"scif0_data",
239862306a36Sopenharmony_ci	"scif0_clk",
239962306a36Sopenharmony_ci	"scif0_ctrl",
240062306a36Sopenharmony_ci};
240162306a36Sopenharmony_ci
240262306a36Sopenharmony_cistatic const char * const scif1_groups[] = {
240362306a36Sopenharmony_ci	"scif1_data_a",
240462306a36Sopenharmony_ci	"scif1_clk",
240562306a36Sopenharmony_ci	"scif1_ctrl",
240662306a36Sopenharmony_ci	"scif1_data_b",
240762306a36Sopenharmony_ci};
240862306a36Sopenharmony_ci
240962306a36Sopenharmony_cistatic const char * const scif3_groups[] = {
241062306a36Sopenharmony_ci	"scif3_data",
241162306a36Sopenharmony_ci	"scif3_clk",
241262306a36Sopenharmony_ci	"scif3_ctrl",
241362306a36Sopenharmony_ci};
241462306a36Sopenharmony_ci
241562306a36Sopenharmony_cistatic const char * const scif4_groups[] = {
241662306a36Sopenharmony_ci	"scif4_data",
241762306a36Sopenharmony_ci	"scif4_clk",
241862306a36Sopenharmony_ci	"scif4_ctrl",
241962306a36Sopenharmony_ci};
242062306a36Sopenharmony_ci
242162306a36Sopenharmony_cistatic const char * const scif_clk_groups[] = {
242262306a36Sopenharmony_ci	"scif_clk_a",
242362306a36Sopenharmony_ci	"scif_clk_b",
242462306a36Sopenharmony_ci};
242562306a36Sopenharmony_ci
242662306a36Sopenharmony_cistatic const char * const tmu_groups[] = {
242762306a36Sopenharmony_ci	"tmu_tclk1_a",
242862306a36Sopenharmony_ci	"tmu_tclk1_b",
242962306a36Sopenharmony_ci	"tmu_tclk2_a",
243062306a36Sopenharmony_ci	"tmu_tclk2_b",
243162306a36Sopenharmony_ci};
243262306a36Sopenharmony_ci
243362306a36Sopenharmony_cistatic const char * const tpu_groups[] = {
243462306a36Sopenharmony_ci	"tpu_to0",
243562306a36Sopenharmony_ci	"tpu_to1",
243662306a36Sopenharmony_ci	"tpu_to2",
243762306a36Sopenharmony_ci	"tpu_to3",
243862306a36Sopenharmony_ci};
243962306a36Sopenharmony_ci
244062306a36Sopenharmony_cistatic const char * const vin0_groups[] = {
244162306a36Sopenharmony_ci	"vin0_data8",
244262306a36Sopenharmony_ci	"vin0_data10",
244362306a36Sopenharmony_ci	"vin0_data12",
244462306a36Sopenharmony_ci	"vin0_data16",
244562306a36Sopenharmony_ci	"vin0_data18",
244662306a36Sopenharmony_ci	"vin0_data20",
244762306a36Sopenharmony_ci	"vin0_data24",
244862306a36Sopenharmony_ci	"vin0_sync",
244962306a36Sopenharmony_ci	"vin0_field",
245062306a36Sopenharmony_ci	"vin0_clkenb",
245162306a36Sopenharmony_ci	"vin0_clk",
245262306a36Sopenharmony_ci};
245362306a36Sopenharmony_ci
245462306a36Sopenharmony_cistatic const char * const vin1_groups[] = {
245562306a36Sopenharmony_ci	"vin1_data8",
245662306a36Sopenharmony_ci	"vin1_data10",
245762306a36Sopenharmony_ci	"vin1_data12",
245862306a36Sopenharmony_ci	"vin1_sync",
245962306a36Sopenharmony_ci	"vin1_field",
246062306a36Sopenharmony_ci	"vin1_clkenb",
246162306a36Sopenharmony_ci	"vin1_clk",
246262306a36Sopenharmony_ci};
246362306a36Sopenharmony_ci
246462306a36Sopenharmony_cistatic const struct sh_pfc_function pinmux_functions[] = {
246562306a36Sopenharmony_ci	SH_PFC_FUNCTION(avb),
246662306a36Sopenharmony_ci	SH_PFC_FUNCTION(canfd0),
246762306a36Sopenharmony_ci	SH_PFC_FUNCTION(canfd1),
246862306a36Sopenharmony_ci	SH_PFC_FUNCTION(canfd_clk),
246962306a36Sopenharmony_ci	SH_PFC_FUNCTION(du),
247062306a36Sopenharmony_ci	SH_PFC_FUNCTION(gether),
247162306a36Sopenharmony_ci	SH_PFC_FUNCTION(hscif0),
247262306a36Sopenharmony_ci	SH_PFC_FUNCTION(hscif1),
247362306a36Sopenharmony_ci	SH_PFC_FUNCTION(hscif2),
247462306a36Sopenharmony_ci	SH_PFC_FUNCTION(hscif3),
247562306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c0),
247662306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c1),
247762306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c2),
247862306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c3),
247962306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c4),
248062306a36Sopenharmony_ci	SH_PFC_FUNCTION(i2c5),
248162306a36Sopenharmony_ci	SH_PFC_FUNCTION(intc_ex),
248262306a36Sopenharmony_ci	SH_PFC_FUNCTION(mmc),
248362306a36Sopenharmony_ci	SH_PFC_FUNCTION(msiof0),
248462306a36Sopenharmony_ci	SH_PFC_FUNCTION(msiof1),
248562306a36Sopenharmony_ci	SH_PFC_FUNCTION(msiof2),
248662306a36Sopenharmony_ci	SH_PFC_FUNCTION(msiof3),
248762306a36Sopenharmony_ci	SH_PFC_FUNCTION(pwm0),
248862306a36Sopenharmony_ci	SH_PFC_FUNCTION(pwm1),
248962306a36Sopenharmony_ci	SH_PFC_FUNCTION(pwm2),
249062306a36Sopenharmony_ci	SH_PFC_FUNCTION(pwm3),
249162306a36Sopenharmony_ci	SH_PFC_FUNCTION(pwm4),
249262306a36Sopenharmony_ci	SH_PFC_FUNCTION(qspi0),
249362306a36Sopenharmony_ci	SH_PFC_FUNCTION(qspi1),
249462306a36Sopenharmony_ci	SH_PFC_FUNCTION(rpc),
249562306a36Sopenharmony_ci	SH_PFC_FUNCTION(scif0),
249662306a36Sopenharmony_ci	SH_PFC_FUNCTION(scif1),
249762306a36Sopenharmony_ci	SH_PFC_FUNCTION(scif3),
249862306a36Sopenharmony_ci	SH_PFC_FUNCTION(scif4),
249962306a36Sopenharmony_ci	SH_PFC_FUNCTION(scif_clk),
250062306a36Sopenharmony_ci	SH_PFC_FUNCTION(tmu),
250162306a36Sopenharmony_ci	SH_PFC_FUNCTION(tpu),
250262306a36Sopenharmony_ci	SH_PFC_FUNCTION(vin0),
250362306a36Sopenharmony_ci	SH_PFC_FUNCTION(vin1),
250462306a36Sopenharmony_ci};
250562306a36Sopenharmony_ci
250662306a36Sopenharmony_cistatic const struct pinmux_cfg_reg pinmux_config_regs[] = {
250762306a36Sopenharmony_ci#define F_(x, y)	FN_##y
250862306a36Sopenharmony_ci#define FM(x)		FN_##x
250962306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("GPSR0", 0xe6060100, 32,
251062306a36Sopenharmony_ci			     GROUP(-10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
251162306a36Sopenharmony_ci				   1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
251262306a36Sopenharmony_ci			     GROUP(
251362306a36Sopenharmony_ci		/* GP0_31_22 RESERVED */
251462306a36Sopenharmony_ci		GP_0_21_FN,	GPSR0_21,
251562306a36Sopenharmony_ci		GP_0_20_FN,	GPSR0_20,
251662306a36Sopenharmony_ci		GP_0_19_FN,	GPSR0_19,
251762306a36Sopenharmony_ci		GP_0_18_FN,	GPSR0_18,
251862306a36Sopenharmony_ci		GP_0_17_FN,	GPSR0_17,
251962306a36Sopenharmony_ci		GP_0_16_FN,	GPSR0_16,
252062306a36Sopenharmony_ci		GP_0_15_FN,	GPSR0_15,
252162306a36Sopenharmony_ci		GP_0_14_FN,	GPSR0_14,
252262306a36Sopenharmony_ci		GP_0_13_FN,	GPSR0_13,
252362306a36Sopenharmony_ci		GP_0_12_FN,	GPSR0_12,
252462306a36Sopenharmony_ci		GP_0_11_FN,	GPSR0_11,
252562306a36Sopenharmony_ci		GP_0_10_FN,	GPSR0_10,
252662306a36Sopenharmony_ci		GP_0_9_FN,	GPSR0_9,
252762306a36Sopenharmony_ci		GP_0_8_FN,	GPSR0_8,
252862306a36Sopenharmony_ci		GP_0_7_FN,	GPSR0_7,
252962306a36Sopenharmony_ci		GP_0_6_FN,	GPSR0_6,
253062306a36Sopenharmony_ci		GP_0_5_FN,	GPSR0_5,
253162306a36Sopenharmony_ci		GP_0_4_FN,	GPSR0_4,
253262306a36Sopenharmony_ci		GP_0_3_FN,	GPSR0_3,
253362306a36Sopenharmony_ci		GP_0_2_FN,	GPSR0_2,
253462306a36Sopenharmony_ci		GP_0_1_FN,	GPSR0_1,
253562306a36Sopenharmony_ci		GP_0_0_FN,	GPSR0_0, ))
253662306a36Sopenharmony_ci	},
253762306a36Sopenharmony_ci	{ PINMUX_CFG_REG("GPSR1", 0xe6060104, 32, 1, GROUP(
253862306a36Sopenharmony_ci		0, 0,
253962306a36Sopenharmony_ci		0, 0,
254062306a36Sopenharmony_ci		0, 0,
254162306a36Sopenharmony_ci		0, 0,
254262306a36Sopenharmony_ci		GP_1_27_FN,	GPSR1_27,
254362306a36Sopenharmony_ci		GP_1_26_FN,	GPSR1_26,
254462306a36Sopenharmony_ci		GP_1_25_FN,	GPSR1_25,
254562306a36Sopenharmony_ci		GP_1_24_FN,	GPSR1_24,
254662306a36Sopenharmony_ci		GP_1_23_FN,	GPSR1_23,
254762306a36Sopenharmony_ci		GP_1_22_FN,	GPSR1_22,
254862306a36Sopenharmony_ci		GP_1_21_FN,	GPSR1_21,
254962306a36Sopenharmony_ci		GP_1_20_FN,	GPSR1_20,
255062306a36Sopenharmony_ci		GP_1_19_FN,	GPSR1_19,
255162306a36Sopenharmony_ci		GP_1_18_FN,	GPSR1_18,
255262306a36Sopenharmony_ci		GP_1_17_FN,	GPSR1_17,
255362306a36Sopenharmony_ci		GP_1_16_FN,	GPSR1_16,
255462306a36Sopenharmony_ci		GP_1_15_FN,	GPSR1_15,
255562306a36Sopenharmony_ci		GP_1_14_FN,	GPSR1_14,
255662306a36Sopenharmony_ci		GP_1_13_FN,	GPSR1_13,
255762306a36Sopenharmony_ci		GP_1_12_FN,	GPSR1_12,
255862306a36Sopenharmony_ci		GP_1_11_FN,	GPSR1_11,
255962306a36Sopenharmony_ci		GP_1_10_FN,	GPSR1_10,
256062306a36Sopenharmony_ci		GP_1_9_FN,	GPSR1_9,
256162306a36Sopenharmony_ci		GP_1_8_FN,	GPSR1_8,
256262306a36Sopenharmony_ci		GP_1_7_FN,	GPSR1_7,
256362306a36Sopenharmony_ci		GP_1_6_FN,	GPSR1_6,
256462306a36Sopenharmony_ci		GP_1_5_FN,	GPSR1_5,
256562306a36Sopenharmony_ci		GP_1_4_FN,	GPSR1_4,
256662306a36Sopenharmony_ci		GP_1_3_FN,	GPSR1_3,
256762306a36Sopenharmony_ci		GP_1_2_FN,	GPSR1_2,
256862306a36Sopenharmony_ci		GP_1_1_FN,	GPSR1_1,
256962306a36Sopenharmony_ci		GP_1_0_FN,	GPSR1_0, ))
257062306a36Sopenharmony_ci	},
257162306a36Sopenharmony_ci	{ PINMUX_CFG_REG("GPSR2", 0xe6060108, 32, 1, GROUP(
257262306a36Sopenharmony_ci		0, 0,
257362306a36Sopenharmony_ci		0, 0,
257462306a36Sopenharmony_ci		GP_2_29_FN,	GPSR2_29,
257562306a36Sopenharmony_ci		GP_2_28_FN,	GPSR2_28,
257662306a36Sopenharmony_ci		GP_2_27_FN,	GPSR2_27,
257762306a36Sopenharmony_ci		GP_2_26_FN,	GPSR2_26,
257862306a36Sopenharmony_ci		GP_2_25_FN,	GPSR2_25,
257962306a36Sopenharmony_ci		GP_2_24_FN,	GPSR2_24,
258062306a36Sopenharmony_ci		GP_2_23_FN,	GPSR2_23,
258162306a36Sopenharmony_ci		GP_2_22_FN,	GPSR2_22,
258262306a36Sopenharmony_ci		GP_2_21_FN,	GPSR2_21,
258362306a36Sopenharmony_ci		GP_2_20_FN,	GPSR2_20,
258462306a36Sopenharmony_ci		GP_2_19_FN,	GPSR2_19,
258562306a36Sopenharmony_ci		GP_2_18_FN,	GPSR2_18,
258662306a36Sopenharmony_ci		GP_2_17_FN,	GPSR2_17,
258762306a36Sopenharmony_ci		GP_2_16_FN,	GPSR2_16,
258862306a36Sopenharmony_ci		GP_2_15_FN,	GPSR2_15,
258962306a36Sopenharmony_ci		GP_2_14_FN,	GPSR2_14,
259062306a36Sopenharmony_ci		GP_2_13_FN,	GPSR2_13,
259162306a36Sopenharmony_ci		GP_2_12_FN,	GPSR2_12,
259262306a36Sopenharmony_ci		GP_2_11_FN,	GPSR2_11,
259362306a36Sopenharmony_ci		GP_2_10_FN,	GPSR2_10,
259462306a36Sopenharmony_ci		GP_2_9_FN,	GPSR2_9,
259562306a36Sopenharmony_ci		GP_2_8_FN,	GPSR2_8,
259662306a36Sopenharmony_ci		GP_2_7_FN,	GPSR2_7,
259762306a36Sopenharmony_ci		GP_2_6_FN,	GPSR2_6,
259862306a36Sopenharmony_ci		GP_2_5_FN,	GPSR2_5,
259962306a36Sopenharmony_ci		GP_2_4_FN,	GPSR2_4,
260062306a36Sopenharmony_ci		GP_2_3_FN,	GPSR2_3,
260162306a36Sopenharmony_ci		GP_2_2_FN,	GPSR2_2,
260262306a36Sopenharmony_ci		GP_2_1_FN,	GPSR2_1,
260362306a36Sopenharmony_ci		GP_2_0_FN,	GPSR2_0, ))
260462306a36Sopenharmony_ci	},
260562306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("GPSR3", 0xe606010c, 32,
260662306a36Sopenharmony_ci			     GROUP(-15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
260762306a36Sopenharmony_ci				   1, 1, 1, 1, 1, 1),
260862306a36Sopenharmony_ci			     GROUP(
260962306a36Sopenharmony_ci		/* GP3_31_17 RESERVED */
261062306a36Sopenharmony_ci		GP_3_16_FN,	GPSR3_16,
261162306a36Sopenharmony_ci		GP_3_15_FN,	GPSR3_15,
261262306a36Sopenharmony_ci		GP_3_14_FN,	GPSR3_14,
261362306a36Sopenharmony_ci		GP_3_13_FN,	GPSR3_13,
261462306a36Sopenharmony_ci		GP_3_12_FN,	GPSR3_12,
261562306a36Sopenharmony_ci		GP_3_11_FN,	GPSR3_11,
261662306a36Sopenharmony_ci		GP_3_10_FN,	GPSR3_10,
261762306a36Sopenharmony_ci		GP_3_9_FN,	GPSR3_9,
261862306a36Sopenharmony_ci		GP_3_8_FN,	GPSR3_8,
261962306a36Sopenharmony_ci		GP_3_7_FN,	GPSR3_7,
262062306a36Sopenharmony_ci		GP_3_6_FN,	GPSR3_6,
262162306a36Sopenharmony_ci		GP_3_5_FN,	GPSR3_5,
262262306a36Sopenharmony_ci		GP_3_4_FN,	GPSR3_4,
262362306a36Sopenharmony_ci		GP_3_3_FN,	GPSR3_3,
262462306a36Sopenharmony_ci		GP_3_2_FN,	GPSR3_2,
262562306a36Sopenharmony_ci		GP_3_1_FN,	GPSR3_1,
262662306a36Sopenharmony_ci		GP_3_0_FN,	GPSR3_0, ))
262762306a36Sopenharmony_ci	},
262862306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("GPSR4", 0xe6060110, 32,
262962306a36Sopenharmony_ci			     GROUP(-7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
263062306a36Sopenharmony_ci				   1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
263162306a36Sopenharmony_ci				   1, 1),
263262306a36Sopenharmony_ci			     GROUP(
263362306a36Sopenharmony_ci		/* GP4_31_25 RESERVED */
263462306a36Sopenharmony_ci		GP_4_24_FN,	GPSR4_24,
263562306a36Sopenharmony_ci		GP_4_23_FN,	GPSR4_23,
263662306a36Sopenharmony_ci		GP_4_22_FN,	GPSR4_22,
263762306a36Sopenharmony_ci		GP_4_21_FN,	GPSR4_21,
263862306a36Sopenharmony_ci		GP_4_20_FN,	GPSR4_20,
263962306a36Sopenharmony_ci		GP_4_19_FN,	GPSR4_19,
264062306a36Sopenharmony_ci		GP_4_18_FN,	GPSR4_18,
264162306a36Sopenharmony_ci		GP_4_17_FN,	GPSR4_17,
264262306a36Sopenharmony_ci		GP_4_16_FN,	GPSR4_16,
264362306a36Sopenharmony_ci		GP_4_15_FN,	GPSR4_15,
264462306a36Sopenharmony_ci		GP_4_14_FN,	GPSR4_14,
264562306a36Sopenharmony_ci		GP_4_13_FN,	GPSR4_13,
264662306a36Sopenharmony_ci		GP_4_12_FN,	GPSR4_12,
264762306a36Sopenharmony_ci		GP_4_11_FN,	GPSR4_11,
264862306a36Sopenharmony_ci		GP_4_10_FN,	GPSR4_10,
264962306a36Sopenharmony_ci		GP_4_9_FN,	GPSR4_9,
265062306a36Sopenharmony_ci		GP_4_8_FN,	GPSR4_8,
265162306a36Sopenharmony_ci		GP_4_7_FN,	GPSR4_7,
265262306a36Sopenharmony_ci		GP_4_6_FN,	GPSR4_6,
265362306a36Sopenharmony_ci		GP_4_5_FN,	GPSR4_5,
265462306a36Sopenharmony_ci		GP_4_4_FN,	GPSR4_4,
265562306a36Sopenharmony_ci		GP_4_3_FN,	GPSR4_3,
265662306a36Sopenharmony_ci		GP_4_2_FN,	GPSR4_2,
265762306a36Sopenharmony_ci		GP_4_1_FN,	GPSR4_1,
265862306a36Sopenharmony_ci		GP_4_0_FN,	GPSR4_0, ))
265962306a36Sopenharmony_ci	},
266062306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("GPSR5", 0xe6060114, 32,
266162306a36Sopenharmony_ci			     GROUP(-17, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
266262306a36Sopenharmony_ci				   1, 1, 1, 1),
266362306a36Sopenharmony_ci			     GROUP(
266462306a36Sopenharmony_ci		/* GP5_31_15 RESERVED */
266562306a36Sopenharmony_ci		GP_5_14_FN,	GPSR5_14,
266662306a36Sopenharmony_ci		GP_5_13_FN,	GPSR5_13,
266762306a36Sopenharmony_ci		GP_5_12_FN,	GPSR5_12,
266862306a36Sopenharmony_ci		GP_5_11_FN,	GPSR5_11,
266962306a36Sopenharmony_ci		GP_5_10_FN,	GPSR5_10,
267062306a36Sopenharmony_ci		GP_5_9_FN,	GPSR5_9,
267162306a36Sopenharmony_ci		GP_5_8_FN,	GPSR5_8,
267262306a36Sopenharmony_ci		GP_5_7_FN,	GPSR5_7,
267362306a36Sopenharmony_ci		GP_5_6_FN,	GPSR5_6,
267462306a36Sopenharmony_ci		GP_5_5_FN,	GPSR5_5,
267562306a36Sopenharmony_ci		GP_5_4_FN,	GPSR5_4,
267662306a36Sopenharmony_ci		GP_5_3_FN,	GPSR5_3,
267762306a36Sopenharmony_ci		GP_5_2_FN,	GPSR5_2,
267862306a36Sopenharmony_ci		GP_5_1_FN,	GPSR5_1,
267962306a36Sopenharmony_ci		GP_5_0_FN,	GPSR5_0, ))
268062306a36Sopenharmony_ci	},
268162306a36Sopenharmony_ci#undef F_
268262306a36Sopenharmony_ci#undef FM
268362306a36Sopenharmony_ci
268462306a36Sopenharmony_ci#define F_(x, y)	x,
268562306a36Sopenharmony_ci#define FM(x)		FN_##x,
268662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR0", 0xe6060200, 32, 4, GROUP(
268762306a36Sopenharmony_ci		IP0_31_28
268862306a36Sopenharmony_ci		IP0_27_24
268962306a36Sopenharmony_ci		IP0_23_20
269062306a36Sopenharmony_ci		IP0_19_16
269162306a36Sopenharmony_ci		IP0_15_12
269262306a36Sopenharmony_ci		IP0_11_8
269362306a36Sopenharmony_ci		IP0_7_4
269462306a36Sopenharmony_ci		IP0_3_0 ))
269562306a36Sopenharmony_ci	},
269662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR1", 0xe6060204, 32, 4, GROUP(
269762306a36Sopenharmony_ci		IP1_31_28
269862306a36Sopenharmony_ci		IP1_27_24
269962306a36Sopenharmony_ci		IP1_23_20
270062306a36Sopenharmony_ci		IP1_19_16
270162306a36Sopenharmony_ci		IP1_15_12
270262306a36Sopenharmony_ci		IP1_11_8
270362306a36Sopenharmony_ci		IP1_7_4
270462306a36Sopenharmony_ci		IP1_3_0 ))
270562306a36Sopenharmony_ci	},
270662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR2", 0xe6060208, 32, 4, GROUP(
270762306a36Sopenharmony_ci		IP2_31_28
270862306a36Sopenharmony_ci		IP2_27_24
270962306a36Sopenharmony_ci		IP2_23_20
271062306a36Sopenharmony_ci		IP2_19_16
271162306a36Sopenharmony_ci		IP2_15_12
271262306a36Sopenharmony_ci		IP2_11_8
271362306a36Sopenharmony_ci		IP2_7_4
271462306a36Sopenharmony_ci		IP2_3_0 ))
271562306a36Sopenharmony_ci	},
271662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR3", 0xe606020c, 32, 4, GROUP(
271762306a36Sopenharmony_ci		IP3_31_28
271862306a36Sopenharmony_ci		IP3_27_24
271962306a36Sopenharmony_ci		IP3_23_20
272062306a36Sopenharmony_ci		IP3_19_16
272162306a36Sopenharmony_ci		IP3_15_12
272262306a36Sopenharmony_ci		IP3_11_8
272362306a36Sopenharmony_ci		IP3_7_4
272462306a36Sopenharmony_ci		IP3_3_0 ))
272562306a36Sopenharmony_ci	},
272662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR4", 0xe6060210, 32, 4, GROUP(
272762306a36Sopenharmony_ci		IP4_31_28
272862306a36Sopenharmony_ci		IP4_27_24
272962306a36Sopenharmony_ci		IP4_23_20
273062306a36Sopenharmony_ci		IP4_19_16
273162306a36Sopenharmony_ci		IP4_15_12
273262306a36Sopenharmony_ci		IP4_11_8
273362306a36Sopenharmony_ci		IP4_7_4
273462306a36Sopenharmony_ci		IP4_3_0 ))
273562306a36Sopenharmony_ci	},
273662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR5", 0xe6060214, 32, 4, GROUP(
273762306a36Sopenharmony_ci		IP5_31_28
273862306a36Sopenharmony_ci		IP5_27_24
273962306a36Sopenharmony_ci		IP5_23_20
274062306a36Sopenharmony_ci		IP5_19_16
274162306a36Sopenharmony_ci		IP5_15_12
274262306a36Sopenharmony_ci		IP5_11_8
274362306a36Sopenharmony_ci		IP5_7_4
274462306a36Sopenharmony_ci		IP5_3_0 ))
274562306a36Sopenharmony_ci	},
274662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR6", 0xe6060218, 32, 4, GROUP(
274762306a36Sopenharmony_ci		IP6_31_28
274862306a36Sopenharmony_ci		IP6_27_24
274962306a36Sopenharmony_ci		IP6_23_20
275062306a36Sopenharmony_ci		IP6_19_16
275162306a36Sopenharmony_ci		IP6_15_12
275262306a36Sopenharmony_ci		IP6_11_8
275362306a36Sopenharmony_ci		IP6_7_4
275462306a36Sopenharmony_ci		IP6_3_0 ))
275562306a36Sopenharmony_ci	},
275662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR7", 0xe606021c, 32, 4, GROUP(
275762306a36Sopenharmony_ci		IP7_31_28
275862306a36Sopenharmony_ci		IP7_27_24
275962306a36Sopenharmony_ci		IP7_23_20
276062306a36Sopenharmony_ci		IP7_19_16
276162306a36Sopenharmony_ci		IP7_15_12
276262306a36Sopenharmony_ci		IP7_11_8
276362306a36Sopenharmony_ci		IP7_7_4
276462306a36Sopenharmony_ci		IP7_3_0 ))
276562306a36Sopenharmony_ci	},
276662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR8", 0xe6060220, 32, 4, GROUP(
276762306a36Sopenharmony_ci		IP8_31_28
276862306a36Sopenharmony_ci		IP8_27_24
276962306a36Sopenharmony_ci		IP8_23_20
277062306a36Sopenharmony_ci		IP8_19_16
277162306a36Sopenharmony_ci		IP8_15_12
277262306a36Sopenharmony_ci		IP8_11_8
277362306a36Sopenharmony_ci		IP8_7_4
277462306a36Sopenharmony_ci		IP8_3_0 ))
277562306a36Sopenharmony_ci	},
277662306a36Sopenharmony_ci	{ PINMUX_CFG_REG("IPSR9", 0xe6060224, 32, 4, GROUP(
277762306a36Sopenharmony_ci		IP9_31_28
277862306a36Sopenharmony_ci		IP9_27_24
277962306a36Sopenharmony_ci		IP9_23_20
278062306a36Sopenharmony_ci		IP9_19_16
278162306a36Sopenharmony_ci		IP9_15_12
278262306a36Sopenharmony_ci		IP9_11_8
278362306a36Sopenharmony_ci		IP9_7_4
278462306a36Sopenharmony_ci		IP9_3_0 ))
278562306a36Sopenharmony_ci	},
278662306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("IPSR10", 0xe6060228, 32,
278762306a36Sopenharmony_ci			     GROUP(-12, 4, 4, 4, 4, 4),
278862306a36Sopenharmony_ci			     GROUP(
278962306a36Sopenharmony_ci		/* IP10_31_20 RESERVED */
279062306a36Sopenharmony_ci		IP10_19_16
279162306a36Sopenharmony_ci		IP10_15_12
279262306a36Sopenharmony_ci		IP10_11_8
279362306a36Sopenharmony_ci		IP10_7_4
279462306a36Sopenharmony_ci		IP10_3_0 ))
279562306a36Sopenharmony_ci	},
279662306a36Sopenharmony_ci#undef F_
279762306a36Sopenharmony_ci#undef FM
279862306a36Sopenharmony_ci
279962306a36Sopenharmony_ci#define F_(x, y)	x,
280062306a36Sopenharmony_ci#define FM(x)		FN_##x,
280162306a36Sopenharmony_ci	{ PINMUX_CFG_REG_VAR("MOD_SEL0", 0xe6060500, 32,
280262306a36Sopenharmony_ci			     GROUP(-20, 1, 1, 1, 1, 1, 1, 1, 1, -1, 1, 1, 1),
280362306a36Sopenharmony_ci			     GROUP(
280462306a36Sopenharmony_ci		/* RESERVED 31-12 */
280562306a36Sopenharmony_ci		MOD_SEL0_11
280662306a36Sopenharmony_ci		MOD_SEL0_10
280762306a36Sopenharmony_ci		MOD_SEL0_9
280862306a36Sopenharmony_ci		MOD_SEL0_8
280962306a36Sopenharmony_ci		MOD_SEL0_7
281062306a36Sopenharmony_ci		MOD_SEL0_6
281162306a36Sopenharmony_ci		MOD_SEL0_5
281262306a36Sopenharmony_ci		MOD_SEL0_4
281362306a36Sopenharmony_ci		/* RESERVED 3 */
281462306a36Sopenharmony_ci		MOD_SEL0_2
281562306a36Sopenharmony_ci		MOD_SEL0_1
281662306a36Sopenharmony_ci		MOD_SEL0_0 ))
281762306a36Sopenharmony_ci	},
281862306a36Sopenharmony_ci	{ /* sentinel */ }
281962306a36Sopenharmony_ci};
282062306a36Sopenharmony_ci
282162306a36Sopenharmony_cienum ioctrl_regs {
282262306a36Sopenharmony_ci	POCCTRL0,
282362306a36Sopenharmony_ci	POCCTRL1,
282462306a36Sopenharmony_ci	POCCTRL2,
282562306a36Sopenharmony_ci	POCCTRL3,
282662306a36Sopenharmony_ci	TDSELCTRL,
282762306a36Sopenharmony_ci};
282862306a36Sopenharmony_ci
282962306a36Sopenharmony_cistatic const struct pinmux_ioctrl_reg pinmux_ioctrl_regs[] = {
283062306a36Sopenharmony_ci	[POCCTRL0] = { 0xe6060380, },
283162306a36Sopenharmony_ci	[POCCTRL1] = { 0xe6060384, },
283262306a36Sopenharmony_ci	[POCCTRL2] = { 0xe6060388, },
283362306a36Sopenharmony_ci	[POCCTRL3] = { 0xe606038c, },
283462306a36Sopenharmony_ci	[TDSELCTRL] = { 0xe60603c0, },
283562306a36Sopenharmony_ci	{ /* sentinel */ }
283662306a36Sopenharmony_ci};
283762306a36Sopenharmony_ci
283862306a36Sopenharmony_cistatic int r8a77980_pin_to_pocctrl(unsigned int pin, u32 *pocctrl)
283962306a36Sopenharmony_ci{
284062306a36Sopenharmony_ci	int bit = pin & 0x1f;
284162306a36Sopenharmony_ci
284262306a36Sopenharmony_ci	switch (pin) {
284362306a36Sopenharmony_ci	case RCAR_GP_PIN(0, 0) ... RCAR_GP_PIN(0, 21):
284462306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL0].reg;
284562306a36Sopenharmony_ci		return bit;
284662306a36Sopenharmony_ci
284762306a36Sopenharmony_ci	case RCAR_GP_PIN(2, 0) ... RCAR_GP_PIN(2, 9):
284862306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL0].reg;
284962306a36Sopenharmony_ci		return bit + 22;
285062306a36Sopenharmony_ci
285162306a36Sopenharmony_ci	case RCAR_GP_PIN(2, 10) ... RCAR_GP_PIN(2, 16):
285262306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL1].reg;
285362306a36Sopenharmony_ci		return bit - 10;
285462306a36Sopenharmony_ci
285562306a36Sopenharmony_ci	case RCAR_GP_PIN(2, 17) ... RCAR_GP_PIN(2, 24):
285662306a36Sopenharmony_ci	case RCAR_GP_PIN(3,  0) ... RCAR_GP_PIN(3, 16):
285762306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL1].reg;
285862306a36Sopenharmony_ci		return bit + 7;
285962306a36Sopenharmony_ci
286062306a36Sopenharmony_ci	case RCAR_GP_PIN(2, 25) ... RCAR_GP_PIN(2, 29):
286162306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL2].reg;
286262306a36Sopenharmony_ci		return pin - 25;
286362306a36Sopenharmony_ci
286462306a36Sopenharmony_ci	case PIN_VDDQ_AVB:
286562306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL3].reg;
286662306a36Sopenharmony_ci		return 0;
286762306a36Sopenharmony_ci
286862306a36Sopenharmony_ci	case PIN_VDDQ_GE:
286962306a36Sopenharmony_ci		*pocctrl = pinmux_ioctrl_regs[POCCTRL3].reg;
287062306a36Sopenharmony_ci		return 1;
287162306a36Sopenharmony_ci
287262306a36Sopenharmony_ci	default:
287362306a36Sopenharmony_ci		return -EINVAL;
287462306a36Sopenharmony_ci	}
287562306a36Sopenharmony_ci}
287662306a36Sopenharmony_ci
287762306a36Sopenharmony_cistatic const struct pinmux_bias_reg pinmux_bias_regs[] = {
287862306a36Sopenharmony_ci	{ PINMUX_BIAS_REG("PUEN0", 0xe6060400, "PUD0", 0xe6060440) {
287962306a36Sopenharmony_ci		[ 0] = RCAR_GP_PIN(0, 0),	/* DU_DR2 */
288062306a36Sopenharmony_ci		[ 1] = RCAR_GP_PIN(0, 1),	/* DU_DR3 */
288162306a36Sopenharmony_ci		[ 2] = RCAR_GP_PIN(0, 2),	/* DU_DR4 */
288262306a36Sopenharmony_ci		[ 3] = RCAR_GP_PIN(0, 3),	/* DU_DR5 */
288362306a36Sopenharmony_ci		[ 4] = RCAR_GP_PIN(0, 4),	/* DU_DR6 */
288462306a36Sopenharmony_ci		[ 5] = RCAR_GP_PIN(0, 5),	/* DU_DR7 */
288562306a36Sopenharmony_ci		[ 6] = RCAR_GP_PIN(0, 6),	/* DU_DG2 */
288662306a36Sopenharmony_ci		[ 7] = RCAR_GP_PIN(0, 7),	/* DU_DG3 */
288762306a36Sopenharmony_ci		[ 8] = RCAR_GP_PIN(0, 8),	/* DU_DG4 */
288862306a36Sopenharmony_ci		[ 9] = RCAR_GP_PIN(0, 9),	/* DU_DG5 */
288962306a36Sopenharmony_ci		[10] = RCAR_GP_PIN(0, 10),	/* DU_DG6 */
289062306a36Sopenharmony_ci		[11] = RCAR_GP_PIN(0, 11),	/* DU_DG7 */
289162306a36Sopenharmony_ci		[12] = RCAR_GP_PIN(0, 12),	/* DU_DB2 */
289262306a36Sopenharmony_ci		[13] = RCAR_GP_PIN(0, 13),	/* DU_DB3 */
289362306a36Sopenharmony_ci		[14] = RCAR_GP_PIN(0, 14),	/* DU_DB4 */
289462306a36Sopenharmony_ci		[15] = RCAR_GP_PIN(0, 15),	/* DU_DB5 */
289562306a36Sopenharmony_ci		[16] = RCAR_GP_PIN(0, 16),	/* DU_DB6 */
289662306a36Sopenharmony_ci		[17] = RCAR_GP_PIN(0, 17),	/* DU_DB7 */
289762306a36Sopenharmony_ci		[18] = RCAR_GP_PIN(0, 18),	/* DU_DOTCLKOUT */
289862306a36Sopenharmony_ci		[19] = RCAR_GP_PIN(0, 19),	/* DU_EXHSYNC/DU_HSYNC */
289962306a36Sopenharmony_ci		[20] = RCAR_GP_PIN(0, 20),	/* DU_EXVSYNC/DU_VSYNC */
290062306a36Sopenharmony_ci		[21] = RCAR_GP_PIN(0, 21),	/* DU_EXODDF/DU_ODDF/DISP/CDE */
290162306a36Sopenharmony_ci		[22] = SH_PFC_PIN_NONE,
290262306a36Sopenharmony_ci		[23] = SH_PFC_PIN_NONE,
290362306a36Sopenharmony_ci		[24] = PIN_DU_DOTCLKIN,		/* DU_DOTCLKIN */
290462306a36Sopenharmony_ci		[25] = SH_PFC_PIN_NONE,
290562306a36Sopenharmony_ci		[26] = PIN_PRESETOUT_N,		/* PRESETOUT# */
290662306a36Sopenharmony_ci		[27] = SH_PFC_PIN_NONE,
290762306a36Sopenharmony_ci		[28] = SH_PFC_PIN_NONE,
290862306a36Sopenharmony_ci		[29] = SH_PFC_PIN_NONE,
290962306a36Sopenharmony_ci		[30] = PIN_EXTALR,		/* EXTALR */
291062306a36Sopenharmony_ci		[31] = PIN_FSCLKST_N,		/* FSCLKST# */
291162306a36Sopenharmony_ci	} },
291262306a36Sopenharmony_ci	{ PINMUX_BIAS_REG("PUEN1", 0xe6060404, "PUD1", 0xe6060444) {
291362306a36Sopenharmony_ci		[ 0] = PIN_FSCLKST,		/* FSCLKST */
291462306a36Sopenharmony_ci		[ 1] = SH_PFC_PIN_NONE,
291562306a36Sopenharmony_ci		[ 2] = RCAR_GP_PIN(1, 0),	/* IRQ0 */
291662306a36Sopenharmony_ci		[ 3] = PIN_DCUTRST_N,		/* DCUTRST# */
291762306a36Sopenharmony_ci		[ 4] = PIN_DCUTCK_LPDCLK,	/* DCUTCK_LPDCLK */
291862306a36Sopenharmony_ci		[ 5] = PIN_DCUTMS,		/* DCUTMS */
291962306a36Sopenharmony_ci		[ 6] = PIN_DCUTDI_LPDI,		/* DCUTDI_LPDI */
292062306a36Sopenharmony_ci		[ 7] = SH_PFC_PIN_NONE,
292162306a36Sopenharmony_ci		[ 8] = RCAR_GP_PIN(2, 0),	/* VI0_CLK */
292262306a36Sopenharmony_ci		[ 9] = RCAR_GP_PIN(2, 1),	/* VI0_CLKENB */
292362306a36Sopenharmony_ci		[10] = RCAR_GP_PIN(2, 2),	/* VI0_HSYNC# */
292462306a36Sopenharmony_ci		[11] = RCAR_GP_PIN(2, 3),	/* VI0_VSYNC# */
292562306a36Sopenharmony_ci		[12] = RCAR_GP_PIN(2, 4),	/* VI0_DATA0 */
292662306a36Sopenharmony_ci		[13] = RCAR_GP_PIN(2, 5),	/* VI0_DATA1 */
292762306a36Sopenharmony_ci		[14] = RCAR_GP_PIN(2, 6),	/* VI0_DATA2 */
292862306a36Sopenharmony_ci		[15] = RCAR_GP_PIN(2, 7),	/* VI0_DATA3 */
292962306a36Sopenharmony_ci		[16] = RCAR_GP_PIN(2, 8),	/* VI0_DATA4 */
293062306a36Sopenharmony_ci		[17] = RCAR_GP_PIN(2, 9),	/* VI0_DATA5 */
293162306a36Sopenharmony_ci		[18] = RCAR_GP_PIN(2, 10),	/* VI0_DATA6 */
293262306a36Sopenharmony_ci		[19] = RCAR_GP_PIN(2, 11),	/* VI0_DATA7 */
293362306a36Sopenharmony_ci		[20] = RCAR_GP_PIN(2, 12),	/* VI0_DATA8 */
293462306a36Sopenharmony_ci		[21] = RCAR_GP_PIN(2, 13),	/* VI0_DATA9 */
293562306a36Sopenharmony_ci		[22] = RCAR_GP_PIN(2, 14),	/* VI0_DATA10 */
293662306a36Sopenharmony_ci		[23] = RCAR_GP_PIN(2, 15),	/* VI0_DATA11 */
293762306a36Sopenharmony_ci		[24] = RCAR_GP_PIN(2, 16),	/* VI0_FIELD */
293862306a36Sopenharmony_ci		[25] = RCAR_GP_PIN(3, 0),	/* VI1_CLK */
293962306a36Sopenharmony_ci		[26] = RCAR_GP_PIN(3, 1),	/* VI1_CLKENB */
294062306a36Sopenharmony_ci		[27] = RCAR_GP_PIN(3, 2),	/* VI1_HSYNC# */
294162306a36Sopenharmony_ci		[28] = RCAR_GP_PIN(3, 3),	/* VI1_VSYNC# */
294262306a36Sopenharmony_ci		[29] = RCAR_GP_PIN(3, 4),	/* VI1_DATA0 */
294362306a36Sopenharmony_ci		[30] = RCAR_GP_PIN(3, 5),	/* VI1_DATA1 */
294462306a36Sopenharmony_ci		[31] = RCAR_GP_PIN(3, 6),	/* VI1_DATA2 */
294562306a36Sopenharmony_ci	} },
294662306a36Sopenharmony_ci	{ PINMUX_BIAS_REG("PUEN2", 0xe6060408, "PUD2", 0xe6060448) {
294762306a36Sopenharmony_ci		[ 0] = RCAR_GP_PIN(3, 7),	/* VI1_DATA3 */
294862306a36Sopenharmony_ci		[ 1] = RCAR_GP_PIN(3, 8),	/* VI1_DATA4 */
294962306a36Sopenharmony_ci		[ 2] = RCAR_GP_PIN(3, 9),	/* VI1_DATA5 */
295062306a36Sopenharmony_ci		[ 3] = RCAR_GP_PIN(3, 10),	/* VI1_DATA6 */
295162306a36Sopenharmony_ci		[ 4] = RCAR_GP_PIN(3, 11),	/* VI1_DATA7 */
295262306a36Sopenharmony_ci		[ 5] = RCAR_GP_PIN(3, 12),	/* VI1_DATA8 */
295362306a36Sopenharmony_ci		[ 6] = RCAR_GP_PIN(3, 13),	/* VI1_DATA9 */
295462306a36Sopenharmony_ci		[ 7] = RCAR_GP_PIN(3, 14),	/* VI1_DATA10 */
295562306a36Sopenharmony_ci		[ 8] = RCAR_GP_PIN(3, 15),	/* VI1_DATA11 */
295662306a36Sopenharmony_ci		[ 9] = RCAR_GP_PIN(3, 16),	/* VI1_FIELD */
295762306a36Sopenharmony_ci		[10] = RCAR_GP_PIN(4, 0),	/* SCL0 */
295862306a36Sopenharmony_ci		[11] = RCAR_GP_PIN(4, 1),	/* SDA0 */
295962306a36Sopenharmony_ci		[12] = RCAR_GP_PIN(4, 2),	/* SCL1 */
296062306a36Sopenharmony_ci		[13] = RCAR_GP_PIN(4, 3),	/* SDA1 */
296162306a36Sopenharmony_ci		[14] = RCAR_GP_PIN(4, 4),	/* SCL2 */
296262306a36Sopenharmony_ci		[15] = RCAR_GP_PIN(4, 5),	/* SDA2 */
296362306a36Sopenharmony_ci		[16] = RCAR_GP_PIN(1, 1),	/* AVB_RX_CTL */
296462306a36Sopenharmony_ci		[17] = RCAR_GP_PIN(1, 2),	/* AVB_RXC */
296562306a36Sopenharmony_ci		[18] = RCAR_GP_PIN(1, 3),	/* AVB_RD0 */
296662306a36Sopenharmony_ci		[19] = RCAR_GP_PIN(1, 4),	/* AVB_RD1 */
296762306a36Sopenharmony_ci		[20] = RCAR_GP_PIN(1, 5),	/* AVB_RD2 */
296862306a36Sopenharmony_ci		[21] = RCAR_GP_PIN(1, 6),	/* AVB_RD3 */
296962306a36Sopenharmony_ci		[22] = RCAR_GP_PIN(1, 7),	/* AVB_TX_CTL */
297062306a36Sopenharmony_ci		[23] = RCAR_GP_PIN(1, 8),	/* AVB_TXC */
297162306a36Sopenharmony_ci		[24] = RCAR_GP_PIN(1, 9),	/* AVB_TD0 */
297262306a36Sopenharmony_ci		[25] = RCAR_GP_PIN(1, 10),	/* AVB_TD1 */
297362306a36Sopenharmony_ci		[26] = RCAR_GP_PIN(1, 11),	/* AVB_TD2 */
297462306a36Sopenharmony_ci		[27] = RCAR_GP_PIN(1, 12),	/* AVB_TD3 */
297562306a36Sopenharmony_ci		[28] = RCAR_GP_PIN(1, 13),	/* AVB_TXCREFCLK */
297662306a36Sopenharmony_ci		[29] = RCAR_GP_PIN(1, 14),	/* AVB_MDIO */
297762306a36Sopenharmony_ci		[30] = RCAR_GP_PIN(1, 15),	/* AVB_MDC */
297862306a36Sopenharmony_ci		[31] = RCAR_GP_PIN(1, 16),	/* AVB_MAGIC */
297962306a36Sopenharmony_ci	} },
298062306a36Sopenharmony_ci	{ PINMUX_BIAS_REG("PUEN3", 0xe606040c, "PUD3", 0xe606044c) {
298162306a36Sopenharmony_ci		[ 0] = RCAR_GP_PIN(1, 17),	/* AVB_PHY_INT */
298262306a36Sopenharmony_ci		[ 1] = RCAR_GP_PIN(1, 18),	/* AVB_LINK */
298362306a36Sopenharmony_ci		[ 2] = RCAR_GP_PIN(1, 19),	/* AVB_AVTP_MATCH */
298462306a36Sopenharmony_ci		[ 3] = RCAR_GP_PIN(1, 20),	/* AVTP_CAPTURE */
298562306a36Sopenharmony_ci		[ 4] = RCAR_GP_PIN(4, 6),	/* GETHER_RX_CTL */
298662306a36Sopenharmony_ci		[ 5] = RCAR_GP_PIN(4, 7),	/* GETHER_RXC */
298762306a36Sopenharmony_ci		[ 6] = RCAR_GP_PIN(4, 8),	/* GETHER_RD0 */
298862306a36Sopenharmony_ci		[ 7] = RCAR_GP_PIN(4, 9),	/* GETHER_RD1 */
298962306a36Sopenharmony_ci		[ 8] = RCAR_GP_PIN(4, 10),	/* GETHER_RD2 */
299062306a36Sopenharmony_ci		[ 9] = RCAR_GP_PIN(4, 11),	/* GETHER_RD3 */
299162306a36Sopenharmony_ci		[10] = RCAR_GP_PIN(4, 12),	/* GETHER_TX_CTL */
299262306a36Sopenharmony_ci		[11] = RCAR_GP_PIN(4, 13),	/* GETHER_TXC */
299362306a36Sopenharmony_ci		[12] = RCAR_GP_PIN(4, 14),	/* GETHER_TD0 */
299462306a36Sopenharmony_ci		[13] = RCAR_GP_PIN(4, 15),	/* GETHER_TD1 */
299562306a36Sopenharmony_ci		[14] = RCAR_GP_PIN(4, 16),	/* GETHER_TD2 */
299662306a36Sopenharmony_ci		[15] = RCAR_GP_PIN(4, 17),	/* GETHER_TD3 */
299762306a36Sopenharmony_ci		[16] = RCAR_GP_PIN(4, 18),	/* GETHER_TXCREFCLK */
299862306a36Sopenharmony_ci		[17] = RCAR_GP_PIN(4, 19),	/* GETHER_TXCREFCLK_MEGA */
299962306a36Sopenharmony_ci		[18] = RCAR_GP_PIN(4, 20),	/* GETHER_MDIO_A */
300062306a36Sopenharmony_ci		[19] = RCAR_GP_PIN(4, 21),	/* GETHER_MDC_A */
300162306a36Sopenharmony_ci		[20] = RCAR_GP_PIN(4, 22),	/* GETHER_MAGIC */
300262306a36Sopenharmony_ci		[21] = RCAR_GP_PIN(4, 23),	/* GETHER_PHY_INT_A */
300362306a36Sopenharmony_ci		[22] = RCAR_GP_PIN(4, 24),	/* GETHER_LINK_A */
300462306a36Sopenharmony_ci		[23] = RCAR_GP_PIN(1, 21),	/* CANFD0_TX_A */
300562306a36Sopenharmony_ci		[24] = RCAR_GP_PIN(1, 22),	/* CANFD0_RX_A */
300662306a36Sopenharmony_ci		[25] = RCAR_GP_PIN(1, 23),	/* CANFD1_TX */
300762306a36Sopenharmony_ci		[26] = RCAR_GP_PIN(1, 24),	/* CANFD1_RX */
300862306a36Sopenharmony_ci		[27] = RCAR_GP_PIN(1, 25),	/* CAN_CLK_A */
300962306a36Sopenharmony_ci		[28] = RCAR_GP_PIN(5, 0),	/* QSPI0_SPCLK */
301062306a36Sopenharmony_ci		[29] = RCAR_GP_PIN(5, 1),	/* QSPI0_MOSI_IO0 */
301162306a36Sopenharmony_ci		[30] = RCAR_GP_PIN(5, 2),	/* QSPI0_MISO_IO1 */
301262306a36Sopenharmony_ci		[31] = RCAR_GP_PIN(5, 3),	/* QSPI0_IO2 */
301362306a36Sopenharmony_ci	} },
301462306a36Sopenharmony_ci	{ PINMUX_BIAS_REG("PUEN4", 0xe6060410, "PUD4", 0xe6060450) {
301562306a36Sopenharmony_ci		[ 0] = RCAR_GP_PIN(5, 4),	/* QSPI0_IO3 */
301662306a36Sopenharmony_ci		[ 1] = RCAR_GP_PIN(5, 5),	/* QSPI0_SSL */
301762306a36Sopenharmony_ci		[ 2] = RCAR_GP_PIN(5, 6),	/* QSPI1_SPCLK */
301862306a36Sopenharmony_ci		[ 3] = RCAR_GP_PIN(5, 7),	/* QSPI1_MOSI_IO0 */
301962306a36Sopenharmony_ci		[ 4] = RCAR_GP_PIN(5, 8),	/* QSPI1_MISO_IO1 */
302062306a36Sopenharmony_ci		[ 5] = RCAR_GP_PIN(5, 9),	/* QSPI1_IO2 */
302162306a36Sopenharmony_ci		[ 6] = RCAR_GP_PIN(5, 10),	/* QSPI1_IO3 */
302262306a36Sopenharmony_ci		[ 7] = RCAR_GP_PIN(5, 11),	/* QSPI1_SSL */
302362306a36Sopenharmony_ci		[ 8] = RCAR_GP_PIN(5, 12),	/* RPC_RESET# */
302462306a36Sopenharmony_ci		[ 9] = RCAR_GP_PIN(5, 13),	/* RPC_WP# */
302562306a36Sopenharmony_ci		[10] = RCAR_GP_PIN(5, 14),	/* RPC_INT# */
302662306a36Sopenharmony_ci		[11] = RCAR_GP_PIN(1, 26),	/* DIGRF_CLKIN */
302762306a36Sopenharmony_ci		[12] = RCAR_GP_PIN(1, 27),	/* DIGRF_CLKOUT */
302862306a36Sopenharmony_ci		[13] = RCAR_GP_PIN(2, 17),	/* IRQ4 */
302962306a36Sopenharmony_ci		[14] = RCAR_GP_PIN(2, 18),	/* IRQ5 */
303062306a36Sopenharmony_ci		[15] = RCAR_GP_PIN(2, 25),	/* SCL3 */
303162306a36Sopenharmony_ci		[16] = RCAR_GP_PIN(2, 26),	/* SDA3 */
303262306a36Sopenharmony_ci		[17] = RCAR_GP_PIN(2, 19),	/* MSIOF0_RXD */
303362306a36Sopenharmony_ci		[18] = RCAR_GP_PIN(2, 20),	/* MSIOF0_TXD */
303462306a36Sopenharmony_ci		[19] = RCAR_GP_PIN(2, 21),	/* MSIOF0_SCK */
303562306a36Sopenharmony_ci		[20] = RCAR_GP_PIN(2, 22),	/* MSIOF0_SYNC */
303662306a36Sopenharmony_ci		[21] = RCAR_GP_PIN(2, 23),	/* MSIOF0_SS1 */
303762306a36Sopenharmony_ci		[22] = RCAR_GP_PIN(2, 24),	/* MSIOF0_SS2 */
303862306a36Sopenharmony_ci		[23] = RCAR_GP_PIN(2, 27),	/* FSO_CFE_0# */
303962306a36Sopenharmony_ci		[24] = RCAR_GP_PIN(2, 28),	/* FSO_CFE_1# */
304062306a36Sopenharmony_ci		[25] = RCAR_GP_PIN(2, 29),	/* FSO_TOE# */
304162306a36Sopenharmony_ci		[26] = SH_PFC_PIN_NONE,
304262306a36Sopenharmony_ci		[27] = SH_PFC_PIN_NONE,
304362306a36Sopenharmony_ci		[28] = SH_PFC_PIN_NONE,
304462306a36Sopenharmony_ci		[29] = SH_PFC_PIN_NONE,
304562306a36Sopenharmony_ci		[30] = SH_PFC_PIN_NONE,
304662306a36Sopenharmony_ci		[31] = SH_PFC_PIN_NONE,
304762306a36Sopenharmony_ci	} },
304862306a36Sopenharmony_ci	{ /* sentinel */ }
304962306a36Sopenharmony_ci};
305062306a36Sopenharmony_ci
305162306a36Sopenharmony_cistatic const struct sh_pfc_soc_operations r8a77980_pfc_ops = {
305262306a36Sopenharmony_ci	.pin_to_pocctrl = r8a77980_pin_to_pocctrl,
305362306a36Sopenharmony_ci	.get_bias = rcar_pinmux_get_bias,
305462306a36Sopenharmony_ci	.set_bias = rcar_pinmux_set_bias,
305562306a36Sopenharmony_ci};
305662306a36Sopenharmony_ci
305762306a36Sopenharmony_ciconst struct sh_pfc_soc_info r8a77980_pinmux_info = {
305862306a36Sopenharmony_ci	.name = "r8a77980_pfc",
305962306a36Sopenharmony_ci	.ops = &r8a77980_pfc_ops,
306062306a36Sopenharmony_ci	.unlock_reg = 0xe6060000, /* PMMR */
306162306a36Sopenharmony_ci
306262306a36Sopenharmony_ci	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
306362306a36Sopenharmony_ci
306462306a36Sopenharmony_ci	.pins = pinmux_pins,
306562306a36Sopenharmony_ci	.nr_pins = ARRAY_SIZE(pinmux_pins),
306662306a36Sopenharmony_ci	.groups = pinmux_groups,
306762306a36Sopenharmony_ci	.nr_groups = ARRAY_SIZE(pinmux_groups),
306862306a36Sopenharmony_ci	.functions = pinmux_functions,
306962306a36Sopenharmony_ci	.nr_functions = ARRAY_SIZE(pinmux_functions),
307062306a36Sopenharmony_ci
307162306a36Sopenharmony_ci	.cfg_regs = pinmux_config_regs,
307262306a36Sopenharmony_ci	.bias_regs = pinmux_bias_regs,
307362306a36Sopenharmony_ci	.ioctrl_regs = pinmux_ioctrl_regs,
307462306a36Sopenharmony_ci
307562306a36Sopenharmony_ci	.pinmux_data = pinmux_data,
307662306a36Sopenharmony_ci	.pinmux_data_size = ARRAY_SIZE(pinmux_data),
307762306a36Sopenharmony_ci};
3078