linux/drivers/pinctrl/renesas/pfc-r8a779g0.c

// SPDX-License-Identifier: GPL-2.0
/*
 * R8A779A0 processor support - PFC hardware block.
 *
 * Copyright (C) 2021 Renesas Electronics Corp.
 *
 * This file is based on the drivers/pinctrl/renesas/pfc-r8a779a0.c
 */

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

#include "sh_pfc.h"

#define CFG_FLAGS

#define CPU_ALL_GP(fn, sfx)

#define CPU_ALL_NOGP(fn)

/* GPSR0 */
#define GPSR0_18
#define GPSR0_17
#define GPSR0_16
#define GPSR0_15
#define GPSR0_14
#define GPSR0_13
#define GPSR0_12
#define GPSR0_11
#define GPSR0_10
#define GPSR0_9
#define GPSR0_8
#define GPSR0_7
#define GPSR0_6
#define GPSR0_5
#define GPSR0_4
#define GPSR0_3
#define GPSR0_2
#define GPSR0_1
#define GPSR0_0

/* GPSR1 */
#define GPSR1_28
#define GPSR1_27
#define GPSR1_26
#define GPSR1_25
#define GPSR1_24
#define GPSR1_23
#define GPSR1_22
#define GPSR1_21
#define GPSR1_20
#define GPSR1_19
#define GPSR1_18
#define GPSR1_17
#define GPSR1_16
#define GPSR1_15
#define GPSR1_14
#define GPSR1_13
#define GPSR1_12
#define GPSR1_11
#define GPSR1_10
#define GPSR1_9
#define GPSR1_8
#define GPSR1_7
#define GPSR1_6
#define GPSR1_5
#define GPSR1_4
#define GPSR1_3
#define GPSR1_2
#define GPSR1_1
#define GPSR1_0

/* GPSR2 */
#define GPSR2_19
#define GPSR2_18
#define GPSR2_17
#define GPSR2_16
#define GPSR2_15
#define GPSR2_14
#define GPSR2_13
#define GPSR2_12
#define GPSR2_11
#define GPSR2_10
#define GPSR2_9
#define GPSR2_8
#define GPSR2_7
#define GPSR2_6
#define GPSR2_5
#define GPSR2_4
#define GPSR2_3
#define GPSR2_2
#define GPSR2_1
#define GPSR2_0

/* GPSR3 */
#define GPSR3_29
#define GPSR3_28
#define GPSR3_27
#define GPSR3_26
#define GPSR3_25
#define GPSR3_24
#define GPSR3_23
#define GPSR3_22
#define GPSR3_21
#define GPSR3_20
#define GPSR3_19
#define GPSR3_18
#define GPSR3_17
#define GPSR3_16
#define GPSR3_15
#define GPSR3_14
#define GPSR3_13
#define GPSR3_12
#define GPSR3_11
#define GPSR3_10
#define GPSR3_9
#define GPSR3_8
#define GPSR3_7
#define GPSR3_6
#define GPSR3_5
#define GPSR3_4
#define GPSR3_3
#define GPSR3_2
#define GPSR3_1
#define GPSR3_0

/* GPSR4 */
#define GPSR4_24
#define GPSR4_23
#define GPSR4_22
#define GPSR4_21
#define GPSR4_20
#define GPSR4_19
#define GPSR4_18
#define GPSR4_17
#define GPSR4_16
#define GPSR4_15
#define GPSR4_14
#define GPSR4_13
#define GPSR4_12
#define GPSR4_11
#define GPSR4_10
#define GPSR4_9
#define GPSR4_8
#define GPSR4_7
#define GPSR4_6
#define GPSR4_5
#define GPSR4_4
#define GPSR4_3
#define GPSR4_2
#define GPSR4_1
#define GPSR4_0

/* GPSR 5 */
#define GPSR5_20
#define GPSR5_19
#define GPSR5_18
#define GPSR5_17
#define GPSR5_16
#define GPSR5_15
#define GPSR5_14
#define GPSR5_13
#define GPSR5_12
#define GPSR5_11
#define GPSR5_10
#define GPSR5_9
#define GPSR5_8
#define GPSR5_7
#define GPSR5_6
#define GPSR5_5
#define GPSR5_4
#define GPSR5_3
#define GPSR5_2
#define GPSR5_1
#define GPSR5_0

/* GPSR 6 */
#define GPSR6_20
#define GPSR6_19
#define GPSR6_18
#define GPSR6_17
#define GPSR6_16
#define GPSR6_15
#define GPSR6_14
#define GPSR6_13
#define GPSR6_12
#define GPSR6_11
#define GPSR6_10
#define GPSR6_9
#define GPSR6_8
#define GPSR6_7
#define GPSR6_6
#define GPSR6_5
#define GPSR6_4
#define GPSR6_3
#define GPSR6_2
#define GPSR6_1
#define GPSR6_0

/* GPSR7 */
#define GPSR7_20
#define GPSR7_19
#define GPSR7_18
#define GPSR7_17
#define GPSR7_16
#define GPSR7_15
#define GPSR7_14
#define GPSR7_13
#define GPSR7_12
#define GPSR7_11
#define GPSR7_10
#define GPSR7_9
#define GPSR7_8
#define GPSR7_7
#define GPSR7_6
#define GPSR7_5
#define GPSR7_4
#define GPSR7_3
#define GPSR7_2
#define GPSR7_1
#define GPSR7_0

/* GPSR8 */
#define GPSR8_13
#define GPSR8_12
#define GPSR8_11
#define GPSR8_10
#define GPSR8_9
#define GPSR8_8
#define GPSR8_7
#define GPSR8_6
#define GPSR8_5
#define GPSR8_4
#define GPSR8_3
#define GPSR8_2
#define GPSR8_1
#define GPSR8_0

/* SR0 */
/* IP0SR0 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR0_3_0
#define IP0SR0_7_4
#define IP0SR0_11_8
#define IP0SR0_15_12
#define IP0SR0_19_16
#define IP0SR0_23_20
#define IP0SR0_27_24
#define IP0SR0_31_28

/* IP1SR0 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR0_3_0
#define IP1SR0_7_4
#define IP1SR0_11_8
#define IP1SR0_15_12
#define IP1SR0_19_16
#define IP1SR0_23_20
#define IP1SR0_27_24
#define IP1SR0_31_28

/* IP2SR0 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR0_3_0
#define IP2SR0_7_4
#define IP2SR0_11_8

/* SR1 */
/* IP0SR1 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR1_3_0
#define IP0SR1_7_4
#define IP0SR1_11_8
#define IP0SR1_15_12
#define IP0SR1_19_16
#define IP0SR1_23_20
#define IP0SR1_27_24
#define IP0SR1_31_28

/* IP1SR1 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR1_3_0
#define IP1SR1_7_4
#define IP1SR1_11_8
#define IP1SR1_15_12
#define IP1SR1_19_16
#define IP1SR1_23_20
#define IP1SR1_27_24
#define IP1SR1_31_28

/* IP2SR1 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR1_3_0
#define IP2SR1_7_4
#define IP2SR1_11_8
#define IP2SR1_15_12
#define IP2SR1_19_16
#define IP2SR1_23_20
#define IP2SR1_27_24
#define IP2SR1_31_28

/* IP3SR1 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP3SR1_3_0
#define IP3SR1_7_4
#define IP3SR1_11_8
#define IP3SR1_15_12
#define IP3SR1_19_16

/* SR2 */
/* IP0SR2 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR2_3_0
#define IP0SR2_7_4
#define IP0SR2_11_8
#define IP0SR2_15_12
#define IP0SR2_19_16
#define IP0SR2_23_20
#define IP0SR2_27_24
#define IP0SR2_31_28

/* IP1SR2 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR2_3_0
#define IP1SR2_7_4
#define IP1SR2_11_8
#define IP1SR2_15_12
#define IP1SR2_19_16
#define IP1SR2_23_20
#define IP1SR2_27_24
#define IP1SR2_31_28

/* IP2SR2 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR2_3_0
#define IP2SR2_7_4
#define IP2SR2_11_8
#define IP2SR2_15_12

/* SR3 */
/* IP0SR3 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR3_3_0
#define IP0SR3_7_4
#define IP0SR3_11_8
#define IP0SR3_15_12
#define IP0SR3_19_16
#define IP0SR3_23_20
#define IP0SR3_27_24
#define IP0SR3_31_28

/* IP1SR3 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR3_3_0
#define IP1SR3_7_4
#define IP1SR3_11_8
#define IP1SR3_15_12
#define IP1SR3_19_16
#define IP1SR3_23_20
#define IP1SR3_27_24
#define IP1SR3_31_28

/* IP2SR3 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR3_3_0
#define IP2SR3_7_4
#define IP2SR3_11_8
#define IP2SR3_15_12
#define IP2SR3_19_16
#define IP2SR3_23_20
#define IP2SR3_27_24
#define IP2SR3_31_28

/* IP3SR3 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP3SR3_3_0
#define IP3SR3_7_4
#define IP3SR3_11_8
#define IP3SR3_15_12
#define IP3SR3_19_16
#define IP3SR3_23_20

/* SR4 */
/* IP0SR4 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR4_3_0
#define IP0SR4_7_4
#define IP0SR4_11_8
#define IP0SR4_15_12
#define IP0SR4_19_16
#define IP0SR4_23_20
#define IP0SR4_27_24
#define IP0SR4_31_28

/* IP1SR4 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR4_3_0
#define IP1SR4_7_4
#define IP1SR4_11_8
#define IP1SR4_15_12
#define IP1SR4_19_16
#define IP1SR4_23_20
#define IP1SR4_27_24
#define IP1SR4_31_28

/* IP2SR4 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR4_3_0
#define IP2SR4_7_4
#define IP2SR4_11_8
#define IP2SR4_15_12
#define IP2SR4_19_16
#define IP2SR4_23_20
#define IP2SR4_27_24
#define IP2SR4_31_28

/* IP3SR4 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP3SR4_3_0

/* SR5 */
/* IP0SR5 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR5_3_0
#define IP0SR5_7_4
#define IP0SR5_11_8
#define IP0SR5_15_12
#define IP0SR5_19_16
#define IP0SR5_23_20
#define IP0SR5_27_24
#define IP0SR5_31_28

/* IP1SR5 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR5_3_0
#define IP1SR5_7_4
#define IP1SR5_11_8
#define IP1SR5_15_12
#define IP1SR5_19_16
#define IP1SR5_23_20
#define IP1SR5_27_24
#define IP1SR5_31_28

/* IP2SR5 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR5_3_0
#define IP2SR5_7_4
#define IP2SR5_11_8
#define IP2SR5_15_12
#define IP2SR5_19_16

/* SR6 */
/* IP0SR6 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR6_3_0
#define IP0SR6_7_4
#define IP0SR6_11_8
#define IP0SR6_15_12
#define IP0SR6_19_16
#define IP0SR6_23_20
#define IP0SR6_27_24
#define IP0SR6_31_28

/* IP1SR6 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR6_3_0
#define IP1SR6_7_4
#define IP1SR6_11_8
#define IP1SR6_15_12
#define IP1SR6_19_16
#define IP1SR6_23_20
#define IP1SR6_27_24
#define IP1SR6_31_28

/* IP2SR6 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR6_3_0
#define IP2SR6_7_4
#define IP2SR6_11_8
#define IP2SR6_15_12
#define IP2SR6_19_16

/* SR7 */
/* IP0SR7 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR7_3_0
#define IP0SR7_7_4
#define IP0SR7_11_8
#define IP0SR7_15_12
#define IP0SR7_19_16
#define IP0SR7_23_20
#define IP0SR7_27_24
#define IP0SR7_31_28

/* IP1SR7 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR7_3_0
#define IP1SR7_7_4
#define IP1SR7_11_8
#define IP1SR7_15_12
#define IP1SR7_19_16
#define IP1SR7_23_20
#define IP1SR7_27_24
#define IP1SR7_31_28

/* IP2SR7 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP2SR7_3_0
#define IP2SR7_7_4
#define IP2SR7_11_8
#define IP2SR7_15_12
#define IP2SR7_19_16

/* SR8 */
/* IP0SR8 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP0SR8_3_0
#define IP0SR8_7_4
#define IP0SR8_11_8
#define IP0SR8_15_12
#define IP0SR8_19_16
#define IP0SR8_23_20
#define IP0SR8_27_24
#define IP0SR8_31_28

/* IP1SR8 */		/* 0 */			/* 1 */			/* 2 */			/* 3		4	 5	  6	   7	    8	     9	      A	       B	C	 D	  E	   F */
#define IP1SR8_3_0
#define IP1SR8_7_4
#define IP1SR8_11_8
#define IP1SR8_15_12
#define IP1SR8_19_16
#define IP1SR8_23_20

#define PINMUX_GPSR

#define PINMUX_IPSR

/* MOD_SEL8 */			/* 0 */				/* 1 */
#define MOD_SEL8_11
#define MOD_SEL8_10
#define MOD_SEL8_9
#define MOD_SEL8_8
#define MOD_SEL8_7
#define MOD_SEL8_6
#define MOD_SEL8_5
#define MOD_SEL8_4
#define MOD_SEL8_3
#define MOD_SEL8_2
#define MOD_SEL8_1
#define MOD_SEL8_0

#define PINMUX_MOD_SELS

enum {};

static const u16 pinmux_data[] =;

/*
 * Pins not associated with a GPIO port.
 */
enum {};

static const struct sh_pfc_pin pinmux_pins[] =;

/* - AUDIO CLOCK ----------------------------------------- */
static const unsigned int audio_clkin_pins[] =;
static const unsigned int audio_clkin_mux[] =;
static const unsigned int audio_clkout_pins[] =;
static const unsigned int audio_clkout_mux[] =;

/* - AVB0 ------------------------------------------------ */
static const unsigned int avb0_link_pins[] =;
static const unsigned int avb0_link_mux[] =;
static const unsigned int avb0_magic_pins[] =;
static const unsigned int avb0_magic_mux[] =;
static const unsigned int avb0_phy_int_pins[] =;
static const unsigned int avb0_phy_int_mux[] =;
static const unsigned int avb0_mdio_pins[] =;
static const unsigned int avb0_mdio_mux[] =;
static const unsigned int avb0_rgmii_pins[] =;
static const unsigned int avb0_rgmii_mux[] =;
static const unsigned int avb0_txcrefclk_pins[] =;
static const unsigned int avb0_txcrefclk_mux[] =;
static const unsigned int avb0_avtp_pps_pins[] =;
static const unsigned int avb0_avtp_pps_mux[] =;
static const unsigned int avb0_avtp_capture_pins[] =;
static const unsigned int avb0_avtp_capture_mux[] =;
static const unsigned int avb0_avtp_match_pins[] =;
static const unsigned int avb0_avtp_match_mux[] =;

/* - AVB1 ------------------------------------------------ */
static const unsigned int avb1_link_pins[] =;
static const unsigned int avb1_link_mux[] =;
static const unsigned int avb1_magic_pins[] =;
static const unsigned int avb1_magic_mux[] =;
static const unsigned int avb1_phy_int_pins[] =;
static const unsigned int avb1_phy_int_mux[] =;
static const unsigned int avb1_mdio_pins[] =;
static const unsigned int avb1_mdio_mux[] =;
static const unsigned int avb1_rgmii_pins[] =;
static const unsigned int avb1_rgmii_mux[] =;
static const unsigned int avb1_txcrefclk_pins[] =;
static const unsigned int avb1_txcrefclk_mux[] =;
static const unsigned int avb1_avtp_pps_pins[] =;
static const unsigned int avb1_avtp_pps_mux[] =;
static const unsigned int avb1_avtp_capture_pins[] =;
static const unsigned int avb1_avtp_capture_mux[] =;
static const unsigned int avb1_avtp_match_pins[] =;
static const unsigned int avb1_avtp_match_mux[] =;

/* - AVB2 ------------------------------------------------ */
static const unsigned int avb2_link_pins[] =;
static const unsigned int avb2_link_mux[] =;
static const unsigned int avb2_magic_pins[] =;
static const unsigned int avb2_magic_mux[] =;
static const unsigned int avb2_phy_int_pins[] =;
static const unsigned int avb2_phy_int_mux[] =;
static const unsigned int avb2_mdio_pins[] =;
static const unsigned int avb2_mdio_mux[] =;
static const unsigned int avb2_rgmii_pins[] =;
static const unsigned int avb2_rgmii_mux[] =;
static const unsigned int avb2_txcrefclk_pins[] =;
static const unsigned int avb2_txcrefclk_mux[] =;
static const unsigned int avb2_avtp_pps_pins[] =;
static const unsigned int avb2_avtp_pps_mux[] =;
static const unsigned int avb2_avtp_capture_pins[] =;
static const unsigned int avb2_avtp_capture_mux[] =;
static const unsigned int avb2_avtp_match_pins[] =;
static const unsigned int avb2_avtp_match_mux[] =;

/* - CANFD0 ----------------------------------------------------------------- */
static const unsigned int canfd0_data_pins[] =;
static const unsigned int canfd0_data_mux[] =;

/* - CANFD1 ----------------------------------------------------------------- */
static const unsigned int canfd1_data_pins[] =;
static const unsigned int canfd1_data_mux[] =;

/* - CANFD2 ----------------------------------------------------------------- */
static const unsigned int canfd2_data_pins[] =;
static const unsigned int canfd2_data_mux[] =;

/* - CANFD3 ----------------------------------------------------------------- */
static const unsigned int canfd3_data_pins[] =;
static const unsigned int canfd3_data_mux[] =;

/* - CANFD4 ----------------------------------------------------------------- */
static const unsigned int canfd4_data_pins[] =;
static const unsigned int canfd4_data_mux[] =;

/* - CANFD5 ----------------------------------------------------------------- */
static const unsigned int canfd5_data_a_pins[] =;
static const unsigned int canfd5_data_a_mux[] =;

static const unsigned int canfd5_data_b_pins[] =;
static const unsigned int canfd5_data_b_mux[] =;

/* - CANFD6 ----------------------------------------------------------------- */
static const unsigned int canfd6_data_pins[] =;
static const unsigned int canfd6_data_mux[] =;

/* - CANFD7 ----------------------------------------------------------------- */
static const unsigned int canfd7_data_pins[] =;
static const unsigned int canfd7_data_mux[] =;

/* - CANFD Clock ------------------------------------------------------------ */
static const unsigned int can_clk_pins[] =;
static const unsigned int can_clk_mux[] =;

/* - HSCIF0 ----------------------------------------------------------------- */
static const unsigned int hscif0_data_pins[] =;
static const unsigned int hscif0_data_mux[] =;
static const unsigned int hscif0_clk_pins[] =;
static const unsigned int hscif0_clk_mux[] =;
static const unsigned int hscif0_ctrl_pins[] =;
static const unsigned int hscif0_ctrl_mux[] =;

/* - HSCIF1 ----------------------------------------------------------------- */
static const unsigned int hscif1_data_a_pins[] =;
static const unsigned int hscif1_data_a_mux[] =;
static const unsigned int hscif1_clk_a_pins[] =;
static const unsigned int hscif1_clk_a_mux[] =;
static const unsigned int hscif1_ctrl_a_pins[] =;
static const unsigned int hscif1_ctrl_a_mux[] =;

static const unsigned int hscif1_data_b_pins[] =;
static const unsigned int hscif1_data_b_mux[] =;
static const unsigned int hscif1_clk_b_pins[] =;
static const unsigned int hscif1_clk_b_mux[] =;
static const unsigned int hscif1_ctrl_b_pins[] =;
static const unsigned int hscif1_ctrl_b_mux[] =;

/* - HSCIF2 ----------------------------------------------------------------- */
static const unsigned int hscif2_data_pins[] =;
static const unsigned int hscif2_data_mux[] =;
static const unsigned int hscif2_clk_pins[] =;
static const unsigned int hscif2_clk_mux[] =;
static const unsigned int hscif2_ctrl_pins[] =;
static const unsigned int hscif2_ctrl_mux[] =;

/* - HSCIF3 ----------------------------------------------------------------- */
static const unsigned int hscif3_data_a_pins[] =;
static const unsigned int hscif3_data_a_mux[] =;
static const unsigned int hscif3_clk_a_pins[] =;
static const unsigned int hscif3_clk_a_mux[] =;
static const unsigned int hscif3_ctrl_a_pins[] =;
static const unsigned int hscif3_ctrl_a_mux[] =;

static const unsigned int hscif3_data_b_pins[] =;
static const unsigned int hscif3_data_b_mux[] =;
static const unsigned int hscif3_clk_b_pins[] =;
static const unsigned int hscif3_clk_b_mux[] =;
static const unsigned int hscif3_ctrl_b_pins[] =;
static const unsigned int hscif3_ctrl_b_mux[] =;

/* - I2C0 ------------------------------------------------------------------- */
static const unsigned int i2c0_pins[] =;
static const unsigned int i2c0_mux[] =;

/* - I2C1 ------------------------------------------------------------------- */
static const unsigned int i2c1_pins[] =;
static const unsigned int i2c1_mux[] =;

/* - I2C2 ------------------------------------------------------------------- */
static const unsigned int i2c2_pins[] =;
static const unsigned int i2c2_mux[] =;

/* - I2C3 ------------------------------------------------------------------- */
static const unsigned int i2c3_pins[] =;
static const unsigned int i2c3_mux[] =;

/* - I2C4 ------------------------------------------------------------------- */
static const unsigned int i2c4_pins[] =;
static const unsigned int i2c4_mux[] =;

/* - I2C5 ------------------------------------------------------------------- */
static const unsigned int i2c5_pins[] =;
static const unsigned int i2c5_mux[] =;

/* - INTC-EX ---------------------------------------------------------------- */
static const unsigned int intc_ex_irq0_a_pins[] =;
static const unsigned int intc_ex_irq0_a_mux[] =;
static const unsigned int intc_ex_irq0_b_pins[] =;
static const unsigned int intc_ex_irq0_b_mux[] =;

static const unsigned int intc_ex_irq1_a_pins[] =;
static const unsigned int intc_ex_irq1_a_mux[] =;
static const unsigned int intc_ex_irq1_b_pins[] =;
static const unsigned int intc_ex_irq1_b_mux[] =;

static const unsigned int intc_ex_irq2_a_pins[] =;
static const unsigned int intc_ex_irq2_a_mux[] =;
static const unsigned int intc_ex_irq2_b_pins[] =;
static const unsigned int intc_ex_irq2_b_mux[] =;

static const unsigned int intc_ex_irq3_a_pins[] =;
static const unsigned int intc_ex_irq3_a_mux[] =;
static const unsigned int intc_ex_irq3_b_pins[] =;
static const unsigned int intc_ex_irq3_b_mux[] =;

static const unsigned int intc_ex_irq4_a_pins[] =;
static const unsigned int intc_ex_irq4_a_mux[] =;
static const unsigned int intc_ex_irq4_b_pins[] =;
static const unsigned int intc_ex_irq4_b_mux[] =;

static const unsigned int intc_ex_irq5_pins[] =;
static const unsigned int intc_ex_irq5_mux[] =;

/* - MMC -------------------------------------------------------------------- */
static const unsigned int mmc_data_pins[] =;
static const unsigned int mmc_data_mux[] =;
static const unsigned int mmc_ctrl_pins[] =;
static const unsigned int mmc_ctrl_mux[] =;
static const unsigned int mmc_cd_pins[] =;
static const unsigned int mmc_cd_mux[] =;
static const unsigned int mmc_wp_pins[] =;
static const unsigned int mmc_wp_mux[] =;
static const unsigned int mmc_ds_pins[] =;
static const unsigned int mmc_ds_mux[] =;

/* - MSIOF0 ----------------------------------------------------------------- */
static const unsigned int msiof0_clk_pins[] =;
static const unsigned int msiof0_clk_mux[] =;
static const unsigned int msiof0_sync_pins[] =;
static const unsigned int msiof0_sync_mux[] =;
static const unsigned int msiof0_ss1_pins[] =;
static const unsigned int msiof0_ss1_mux[] =;
static const unsigned int msiof0_ss2_pins[] =;
static const unsigned int msiof0_ss2_mux[] =;
static const unsigned int msiof0_txd_pins[] =;
static const unsigned int msiof0_txd_mux[] =;
static const unsigned int msiof0_rxd_pins[] =;
static const unsigned int msiof0_rxd_mux[] =;

/* - MSIOF1 ----------------------------------------------------------------- */
static const unsigned int msiof1_clk_pins[] =;
static const unsigned int msiof1_clk_mux[] =;
static const unsigned int msiof1_sync_pins[] =;
static const unsigned int msiof1_sync_mux[] =;
static const unsigned int msiof1_ss1_pins[] =;
static const unsigned int msiof1_ss1_mux[] =;
static const unsigned int msiof1_ss2_pins[] =;
static const unsigned int msiof1_ss2_mux[] =;
static const unsigned int msiof1_txd_pins[] =;
static const unsigned int msiof1_txd_mux[] =;
static const unsigned int msiof1_rxd_pins[] =;
static const unsigned int msiof1_rxd_mux[] =;

/* - MSIOF2 ----------------------------------------------------------------- */
static const unsigned int msiof2_clk_pins[] =;
static const unsigned int msiof2_clk_mux[] =;
static const unsigned int msiof2_sync_pins[] =;
static const unsigned int msiof2_sync_mux[] =;
static const unsigned int msiof2_ss1_pins[] =;
static const unsigned int msiof2_ss1_mux[] =;
static const unsigned int msiof2_ss2_pins[] =;
static const unsigned int msiof2_ss2_mux[] =;
static const unsigned int msiof2_txd_pins[] =;
static const unsigned int msiof2_txd_mux[] =;
static const unsigned int msiof2_rxd_pins[] =;
static const unsigned int msiof2_rxd_mux[] =;

/* - MSIOF3 ----------------------------------------------------------------- */
static const unsigned int msiof3_clk_pins[] =;
static const unsigned int msiof3_clk_mux[] =;
static const unsigned int msiof3_sync_pins[] =;
static const unsigned int msiof3_sync_mux[] =;
static const unsigned int msiof3_ss1_pins[] =;
static const unsigned int msiof3_ss1_mux[] =;
static const unsigned int msiof3_ss2_pins[] =;
static const unsigned int msiof3_ss2_mux[] =;
static const unsigned int msiof3_txd_pins[] =;
static const unsigned int msiof3_txd_mux[] =;
static const unsigned int msiof3_rxd_pins[] =;
static const unsigned int msiof3_rxd_mux[] =;

/* - MSIOF4 ----------------------------------------------------------------- */
static const unsigned int msiof4_clk_pins[] =;
static const unsigned int msiof4_clk_mux[] =;
static const unsigned int msiof4_sync_pins[] =;
static const unsigned int msiof4_sync_mux[] =;
static const unsigned int msiof4_ss1_pins[] =;
static const unsigned int msiof4_ss1_mux[] =;
static const unsigned int msiof4_ss2_pins[] =;
static const unsigned int msiof4_ss2_mux[] =;
static const unsigned int msiof4_txd_pins[] =;
static const unsigned int msiof4_txd_mux[] =;
static const unsigned int msiof4_rxd_pins[] =;
static const unsigned int msiof4_rxd_mux[] =;

/* - MSIOF5 ----------------------------------------------------------------- */
static const unsigned int msiof5_clk_pins[] =;
static const unsigned int msiof5_clk_mux[] =;
static const unsigned int msiof5_sync_pins[] =;
static const unsigned int msiof5_sync_mux[] =;
static const unsigned int msiof5_ss1_pins[] =;
static const unsigned int msiof5_ss1_mux[] =;
static const unsigned int msiof5_ss2_pins[] =;
static const unsigned int msiof5_ss2_mux[] =;
static const unsigned int msiof5_txd_pins[] =;
static const unsigned int msiof5_txd_mux[] =;
static const unsigned int msiof5_rxd_pins[] =;
static const unsigned int msiof5_rxd_mux[] =;

/* - PCIE ------------------------------------------------------------------- */
static const unsigned int pcie0_clkreq_n_pins[] =;

static const unsigned int pcie0_clkreq_n_mux[] =;

static const unsigned int pcie1_clkreq_n_pins[] =;

static const unsigned int pcie1_clkreq_n_mux[] =;

/* - PWM0 ------------------------------------------------------------------- */
static const unsigned int pwm0_pins[] =;
static const unsigned int pwm0_mux[] =;

/* - PWM1 ------------------------------------------------------------------- */
static const unsigned int pwm1_a_pins[] =;
static const unsigned int pwm1_a_mux[] =;

static const unsigned int pwm1_b_pins[] =;
static const unsigned int pwm1_b_mux[] =;

/* - PWM2 ------------------------------------------------------------------- */
static const unsigned int pwm2_pins[] =;
static const unsigned int pwm2_mux[] =;

/* - PWM3 ------------------------------------------------------------------- */
static const unsigned int pwm3_a_pins[] =;
static const unsigned int pwm3_a_mux[] =;

static const unsigned int pwm3_b_pins[] =;
static const unsigned int pwm3_b_mux[] =;

/* - PWM4 ------------------------------------------------------------------- */
static const unsigned int pwm4_pins[] =;
static const unsigned int pwm4_mux[] =;

/* - PWM5 ------------------------------------------------------------------- */
static const unsigned int pwm5_pins[] =;
static const unsigned int pwm5_mux[] =;

/* - PWM6 ------------------------------------------------------------------- */
static const unsigned int pwm6_pins[] =;
static const unsigned int pwm6_mux[] =;

/* - PWM7 ------------------------------------------------------------------- */
static const unsigned int pwm7_pins[] =;
static const unsigned int pwm7_mux[] =;

/* - PWM8 ------------------------------------------------------------------- */
static const unsigned int pwm8_pins[] =;
static const unsigned int pwm8_mux[] =;

/* - PWM9 ------------------------------------------------------------------- */
static const unsigned int pwm9_pins[] =;
static const unsigned int pwm9_mux[] =;

/* - QSPI0 ------------------------------------------------------------------ */
static const unsigned int qspi0_ctrl_pins[] =;
static const unsigned int qspi0_ctrl_mux[] =;
static const unsigned int qspi0_data_pins[] =;
static const unsigned int qspi0_data_mux[] =;

/* - QSPI1 ------------------------------------------------------------------ */
static const unsigned int qspi1_ctrl_pins[] =;
static const unsigned int qspi1_ctrl_mux[] =;
static const unsigned int qspi1_data_pins[] =;
static const unsigned int qspi1_data_mux[] =;

/* - SCIF0 ------------------------------------------------------------------ */
static const unsigned int scif0_data_pins[] =;
static const unsigned int scif0_data_mux[] =;
static const unsigned int scif0_clk_pins[] =;
static const unsigned int scif0_clk_mux[] =;
static const unsigned int scif0_ctrl_pins[] =;
static const unsigned int scif0_ctrl_mux[] =;

/* - SCIF1 ------------------------------------------------------------------ */
static const unsigned int scif1_data_a_pins[] =;
static const unsigned int scif1_data_a_mux[] =;
static const unsigned int scif1_clk_a_pins[] =;
static const unsigned int scif1_clk_a_mux[] =;
static const unsigned int scif1_ctrl_a_pins[] =;
static const unsigned int scif1_ctrl_a_mux[] =;

static const unsigned int scif1_data_b_pins[] =;
static const unsigned int scif1_data_b_mux[] =;
static const unsigned int scif1_clk_b_pins[] =;
static const unsigned int scif1_clk_b_mux[] =;
static const unsigned int scif1_ctrl_b_pins[] =;
static const unsigned int scif1_ctrl_b_mux[] =;

/* - SCIF3 ------------------------------------------------------------------ */
static const unsigned int scif3_data_a_pins[] =;
static const unsigned int scif3_data_a_mux[] =;
static const unsigned int scif3_clk_a_pins[] =;
static const unsigned int scif3_clk_a_mux[] =;
static const unsigned int scif3_ctrl_a_pins[] =;
static const unsigned int scif3_ctrl_a_mux[] =;

static const unsigned int scif3_data_b_pins[] =;
static const unsigned int scif3_data_b_mux[] =;
static const unsigned int scif3_clk_b_pins[] =;
static const unsigned int scif3_clk_b_mux[] =;
static const unsigned int scif3_ctrl_b_pins[] =;
static const unsigned int scif3_ctrl_b_mux[] =;

/* - SCIF4 ------------------------------------------------------------------ */
static const unsigned int scif4_data_pins[] =;
static const unsigned int scif4_data_mux[] =;
static const unsigned int scif4_clk_pins[] =;
static const unsigned int scif4_clk_mux[] =;
static const unsigned int scif4_ctrl_pins[] =;
static const unsigned int scif4_ctrl_mux[] =;

/* - SCIF Clock ------------------------------------------------------------- */
static const unsigned int scif_clk_pins[] =;
static const unsigned int scif_clk_mux[] =;

static const unsigned int scif_clk2_pins[] =;
static const unsigned int scif_clk2_mux[] =;

/* - SSI ------------------------------------------------- */
static const unsigned int ssi_data_pins[] =;
static const unsigned int ssi_data_mux[] =;
static const unsigned int ssi_ctrl_pins[] =;
static const unsigned int ssi_ctrl_mux[] =;

/* - TPU -------------------------------------------------------------------- */
static const unsigned int tpu_to0_a_pins[] =;
static const unsigned int tpu_to0_a_mux[] =;
static const unsigned int tpu_to1_a_pins[] =;
static const unsigned int tpu_to1_a_mux[] =;
static const unsigned int tpu_to2_a_pins[] =;
static const unsigned int tpu_to2_a_mux[] =;
static const unsigned int tpu_to3_a_pins[] =;
static const unsigned int tpu_to3_a_mux[] =;

static const unsigned int tpu_to0_b_pins[] =;
static const unsigned int tpu_to0_b_mux[] =;
static const unsigned int tpu_to1_b_pins[] =;
static const unsigned int tpu_to1_b_mux[] =;
static const unsigned int tpu_to2_b_pins[] =;
static const unsigned int tpu_to2_b_mux[] =;
static const unsigned int tpu_to3_b_pins[] =;
static const unsigned int tpu_to3_b_mux[] =;

/* - TSN0 ------------------------------------------------ */
static const unsigned int tsn0_link_pins[] =;
static const unsigned int tsn0_link_mux[] =;
static const unsigned int tsn0_phy_int_pins[] =;
static const unsigned int tsn0_phy_int_mux[] =;
static const unsigned int tsn0_mdio_pins[] =;
static const unsigned int tsn0_mdio_mux[] =;
static const unsigned int tsn0_rgmii_pins[] =;
static const unsigned int tsn0_rgmii_mux[] =;
static const unsigned int tsn0_txcrefclk_pins[] =;
static const unsigned int tsn0_txcrefclk_mux[] =;
static const unsigned int tsn0_avtp_pps_pins[] =;
static const unsigned int tsn0_avtp_pps_mux[] =;
static const unsigned int tsn0_avtp_capture_pins[] =;
static const unsigned int tsn0_avtp_capture_mux[] =;
static const unsigned int tsn0_avtp_match_pins[] =;
static const unsigned int tsn0_avtp_match_mux[] =;

static const struct sh_pfc_pin_group pinmux_groups[] =;

static const char * const audio_clk_groups[] =;

static const char * const avb0_groups[] =;

static const char * const avb1_groups[] =;

static const char * const avb2_groups[] =;

static const char * const canfd0_groups[] =;

static const char * const canfd1_groups[] =;

static const char * const canfd2_groups[] =;

static const char * const canfd3_groups[] =;

static const char * const canfd4_groups[] =;

static const char * const canfd5_groups[] =;

static const char * const canfd6_groups[] =;

static const char * const canfd7_groups[] =;

static const char * const can_clk_groups[] =;

static const char * const hscif0_groups[] =;

static const char * const hscif1_groups[] =;

static const char * const hscif2_groups[] =;

static const char * const hscif3_groups[] =;

static const char * const i2c0_groups[] =;

static const char * const i2c1_groups[] =;

static const char * const i2c2_groups[] =;

static const char * const i2c3_groups[] =;

static const char * const i2c4_groups[] =;

static const char * const i2c5_groups[] =;

static const char * const intc_ex_groups[] =;

static const char * const mmc_groups[] =;

static const char * const msiof0_groups[] =;

static const char * const msiof1_groups[] =;

static const char * const msiof2_groups[] =;

static const char * const msiof3_groups[] =;

static const char * const msiof4_groups[] =;

static const char * const msiof5_groups[] =;

static const char * const pcie_groups[] =;

static const char * const pwm0_groups[] =;

static const char * const pwm1_groups[] =;

static const char * const pwm2_groups[] =;

static const char * const pwm3_groups[] =;

static const char * const pwm4_groups[] =;

static const char * const pwm5_groups[] =;

static const char * const pwm6_groups[] =;

static const char * const pwm7_groups[] =;

static const char * const pwm8_groups[] =;

static const char * const pwm9_groups[] =;

static const char * const qspi0_groups[] =;

static const char * const qspi1_groups[] =;

static const char * const scif0_groups[] =;

static const char * const scif1_groups[] =;

static const char * const scif3_groups[] =;

static const char * const scif4_groups[] =;

static const char * const scif_clk_groups[] =;

static const char * const scif_clk2_groups[] =;

static const char * const ssi_groups[] =;

static const char * const tpu_groups[] =;

static const char * const tsn0_groups[] =;

static const struct sh_pfc_function pinmux_functions[] =;

static const struct pinmux_cfg_reg pinmux_config_regs[] =;

static const struct pinmux_drive_reg pinmux_drive_regs[] =;

enum ioctrl_regs {};

static const struct pinmux_ioctrl_reg pinmux_ioctrl_regs[] =;

static int r8a779g0_pin_to_pocctrl(unsigned int pin, u32 *pocctrl)
{}

static const struct pinmux_bias_reg pinmux_bias_regs[] =;

static const struct sh_pfc_soc_operations r8a779g0_pin_ops =;

const struct sh_pfc_soc_info r8a779g0_pinmux_info =;