// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2012-2013  Renesas Solutions Corp.
 * Copyright (C) 2013  Magnus Damm
 * Copyright (C) 2012  Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
 */
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/pinctrl/pinconf-generic.h>

#include "sh_pfc.h"

#define CPU_ALL_PORT(fn, pfx, sfx)					\
	/*  Port0 - Port30 */						\
	PORT_10(0, fn, pfx, sfx),					\
	PORT_10(10, fn, pfx##1, sfx),					\
	PORT_10(20, fn, pfx##2, sfx),					\
	PORT_1(30, fn, pfx##30, sfx),					\
	/* Port32 - Port40 */						\
	PORT_1(32, fn, pfx##32, sfx),	PORT_1(33, fn, pfx##33, sfx),	\
	PORT_1(34, fn, pfx##34, sfx),	PORT_1(35, fn, pfx##35, sfx),	\
	PORT_1(36, fn, pfx##36, sfx),	PORT_1(37, fn, pfx##37, sfx),	\
	PORT_1(38, fn, pfx##38, sfx),	PORT_1(39, fn, pfx##39, sfx),	\
	PORT_1(40, fn, pfx##40, sfx),					\
	/* Port64  - Port85 */						\
	PORT_1(64, fn, pfx##64, sfx),	PORT_1(65, fn, pfx##65, sfx),	\
	PORT_1(66, fn, pfx##66, sfx),	PORT_1(67, fn, pfx##67, sfx),	\
	PORT_1(68, fn, pfx##68, sfx),	PORT_1(69, fn, pfx##69, sfx),	\
	PORT_10(70, fn, pfx##7, sfx),					\
	PORT_1(80, fn, pfx##80, sfx),	PORT_1(81, fn, pfx##81, sfx),	\
	PORT_1(82, fn, pfx##82, sfx),	PORT_1(83, fn, pfx##83, sfx),	\
	PORT_1(84, fn, pfx##84, sfx),	PORT_1(85, fn, pfx##85, sfx),	\
	/* Port96  - Port126 */						\
	PORT_1(96, fn, pfx##96, sfx),	PORT_1(97, fn, pfx##97, sfx),	\
	PORT_1(98, fn, pfx##98, sfx),	PORT_1(99, fn, pfx##99, sfx),	\
	PORT_10(100, fn, pfx##10, sfx),					\
	PORT_10(110, fn, pfx##11, sfx),					\
	PORT_1(120, fn, pfx##120, sfx),	PORT_1(121, fn, pfx##121, sfx),	\
	PORT_1(122, fn, pfx##122, sfx),	PORT_1(123, fn, pfx##123, sfx),	\
	PORT_1(124, fn, pfx##124, sfx),	PORT_1(125, fn, pfx##125, sfx),	\
	PORT_1(126, fn, pfx##126, sfx),					\
	/* Port128 - Port134 */						\
	PORT_1(128, fn, pfx##128, sfx),	PORT_1(129, fn, pfx##129, sfx),	\
	PORT_1(130, fn, pfx##130, sfx),	PORT_1(131, fn, pfx##131, sfx),	\
	PORT_1(132, fn, pfx##132, sfx),	PORT_1(133, fn, pfx##133, sfx),	\
	PORT_1(134, fn, pfx##134, sfx),					\
	/* Port160 - Port178 */						\
	PORT_10(160, fn, pfx##16, sfx),					\
	PORT_1(170, fn, pfx##170, sfx),	PORT_1(171, fn, pfx##171, sfx),	\
	PORT_1(172, fn, pfx##172, sfx),	PORT_1(173, fn, pfx##173, sfx),	\
	PORT_1(174, fn, pfx##174, sfx),	PORT_1(175, fn, pfx##175, sfx),	\
	PORT_1(176, fn, pfx##176, sfx),	PORT_1(177, fn, pfx##177, sfx),	\
	PORT_1(178, fn, pfx##178, sfx),					\
	/* Port192 - Port222 */						\
	PORT_1(192, fn, pfx##192, sfx),	PORT_1(193, fn, pfx##193, sfx),	\
	PORT_1(194, fn, pfx##194, sfx),	PORT_1(195, fn, pfx##195, sfx),	\
	PORT_1(196, fn, pfx##196, sfx),	PORT_1(197, fn, pfx##197, sfx),	\
	PORT_1(198, fn, pfx##198, sfx),	PORT_1(199, fn, pfx##199, sfx),	\
	PORT_10(200, fn, pfx##20, sfx),					\
	PORT_10(210, fn, pfx##21, sfx),					\
	PORT_1(220, fn, pfx##220, sfx),	PORT_1(221, fn, pfx##221, sfx),	\
	PORT_1(222, fn, pfx##222, sfx),					\
	/* Port224 - Port250 */						\
	PORT_1(224, fn, pfx##224, sfx),	PORT_1(225, fn, pfx##225, sfx),	\
	PORT_1(226, fn, pfx##226, sfx),	PORT_1(227, fn, pfx##227, sfx),	\
	PORT_1(228, fn, pfx##228, sfx),	PORT_1(229, fn, pfx##229, sfx),	\
	PORT_10(230, fn, pfx##23, sfx),					\
	PORT_10(240, fn, pfx##24, sfx),					\
	PORT_1(250, fn, pfx##250, sfx),					\
	/* Port256 - Port283 */						\
	PORT_1(256, fn, pfx##256, sfx),	PORT_1(257, fn, pfx##257, sfx),	\
	PORT_1(258, fn, pfx##258, sfx),	PORT_1(259, fn, pfx##259, sfx),	\
	PORT_10(260, fn, pfx##26, sfx),					\
	PORT_10(270, fn, pfx##27, sfx),					\
	PORT_1(280, fn, pfx##280, sfx),	PORT_1(281, fn, pfx##281, sfx),	\
	PORT_1(282, fn, pfx##282, sfx),	PORT_1(283, fn, pfx##283, sfx),	\
	/* Port288 - Port308 */						\
	PORT_1(288, fn, pfx##288, sfx),	PORT_1(289, fn, pfx##289, sfx),	\
	PORT_10(290, fn, pfx##29, sfx),					\
	PORT_1(300, fn, pfx##300, sfx),	PORT_1(301, fn, pfx##301, sfx),	\
	PORT_1(302, fn, pfx##302, sfx),	PORT_1(303, fn, pfx##303, sfx),	\
	PORT_1(304, fn, pfx##304, sfx),	PORT_1(305, fn, pfx##305, sfx),	\
	PORT_1(306, fn, pfx##306, sfx),	PORT_1(307, fn, pfx##307, sfx),	\
	PORT_1(308, fn, pfx##308, sfx),					\
	/* Port320 - Port329 */						\
	PORT_10(320, fn, pfx##32, sfx)


enum {
	PINMUX_RESERVED = 0,

	/* PORT0_DATA -> PORT329_DATA */
	PINMUX_DATA_BEGIN,
	PORT_ALL(DATA),
	PINMUX_DATA_END,

	/* PORT0_IN -> PORT329_IN */
	PINMUX_INPUT_BEGIN,
	PORT_ALL(IN),
	PINMUX_INPUT_END,

	/* PORT0_OUT -> PORT329_OUT */
	PINMUX_OUTPUT_BEGIN,
	PORT_ALL(OUT),
	PINMUX_OUTPUT_END,

	PINMUX_FUNCTION_BEGIN,
	PORT_ALL(FN_IN), /* PORT0_FN_IN -> PORT329_FN_IN */
	PORT_ALL(FN_OUT), /* PORT0_FN_OUT -> PORT329_FN_OUT */
	PORT_ALL(FN0), /* PORT0_FN0 -> PORT329_FN0 */
	PORT_ALL(FN1), /* PORT0_FN1 -> PORT329_FN1 */
	PORT_ALL(FN2), /* PORT0_FN2 -> PORT329_FN2 */
	PORT_ALL(FN3), /* PORT0_FN3 -> PORT329_FN3 */
	PORT_ALL(FN4), /* PORT0_FN4 -> PORT329_FN4 */
	PORT_ALL(FN5), /* PORT0_FN5 -> PORT329_FN5 */
	PORT_ALL(FN6), /* PORT0_FN6 -> PORT329_FN6 */
	PORT_ALL(FN7), /* PORT0_FN7 -> PORT329_FN7 */

	MSEL1CR_31_0, MSEL1CR_31_1,
	MSEL1CR_27_0, MSEL1CR_27_1,
	MSEL1CR_25_0, MSEL1CR_25_1,
	MSEL1CR_24_0, MSEL1CR_24_1,
	MSEL1CR_22_0, MSEL1CR_22_1,
	MSEL1CR_21_0, MSEL1CR_21_1,
	MSEL1CR_20_0, MSEL1CR_20_1,
	MSEL1CR_19_0, MSEL1CR_19_1,
	MSEL1CR_18_0, MSEL1CR_18_1,
	MSEL1CR_17_0, MSEL1CR_17_1,
	MSEL1CR_16_0, MSEL1CR_16_1,
	MSEL1CR_15_0, MSEL1CR_15_1,
	MSEL1CR_14_0, MSEL1CR_14_1,
	MSEL1CR_13_0, MSEL1CR_13_1,
	MSEL1CR_12_0, MSEL1CR_12_1,
	MSEL1CR_11_0, MSEL1CR_11_1,
	MSEL1CR_10_0, MSEL1CR_10_1,
	MSEL1CR_09_0, MSEL1CR_09_1,
	MSEL1CR_08_0, MSEL1CR_08_1,
	MSEL1CR_07_0, MSEL1CR_07_1,
	MSEL1CR_06_0, MSEL1CR_06_1,
	MSEL1CR_05_0, MSEL1CR_05_1,
	MSEL1CR_04_0, MSEL1CR_04_1,
	MSEL1CR_03_0, MSEL1CR_03_1,
	MSEL1CR_02_0, MSEL1CR_02_1,
	MSEL1CR_01_0, MSEL1CR_01_1,
	MSEL1CR_00_0, MSEL1CR_00_1,

	MSEL3CR_31_0, MSEL3CR_31_1,
	MSEL3CR_28_0, MSEL3CR_28_1,
	MSEL3CR_27_0, MSEL3CR_27_1,
	MSEL3CR_26_0, MSEL3CR_26_1,
	MSEL3CR_23_0, MSEL3CR_23_1,
	MSEL3CR_22_0, MSEL3CR_22_1,
	MSEL3CR_21_0, MSEL3CR_21_1,
	MSEL3CR_20_0, MSEL3CR_20_1,
	MSEL3CR_19_0, MSEL3CR_19_1,
	MSEL3CR_18_0, MSEL3CR_18_1,
	MSEL3CR_17_0, MSEL3CR_17_1,
	MSEL3CR_16_0, MSEL3CR_16_1,
	MSEL3CR_15_0, MSEL3CR_15_1,
	MSEL3CR_12_0, MSEL3CR_12_1,
	MSEL3CR_11_0, MSEL3CR_11_1,
	MSEL3CR_10_0, MSEL3CR_10_1,
	MSEL3CR_09_0, MSEL3CR_09_1,
	MSEL3CR_06_0, MSEL3CR_06_1,
	MSEL3CR_03_0, MSEL3CR_03_1,
	MSEL3CR_01_0, MSEL3CR_01_1,
	MSEL3CR_00_0, MSEL3CR_00_1,

	MSEL4CR_30_0, MSEL4CR_30_1,
	MSEL4CR_29_0, MSEL4CR_29_1,
	MSEL4CR_28_0, MSEL4CR_28_1,
	MSEL4CR_27_0, MSEL4CR_27_1,
	MSEL4CR_26_0, MSEL4CR_26_1,
	MSEL4CR_25_0, MSEL4CR_25_1,
	MSEL4CR_24_0, MSEL4CR_24_1,
	MSEL4CR_23_0, MSEL4CR_23_1,
	MSEL4CR_22_0, MSEL4CR_22_1,
	MSEL4CR_21_0, MSEL4CR_21_1,
	MSEL4CR_20_0, MSEL4CR_20_1,
	MSEL4CR_19_0, MSEL4CR_19_1,
	MSEL4CR_18_0, MSEL4CR_18_1,
	MSEL4CR_17_0, MSEL4CR_17_1,
	MSEL4CR_16_0, MSEL4CR_16_1,
	MSEL4CR_15_0, MSEL4CR_15_1,
	MSEL4CR_14_0, MSEL4CR_14_1,
	MSEL4CR_13_0, MSEL4CR_13_1,
	MSEL4CR_12_0, MSEL4CR_12_1,
	MSEL4CR_11_0, MSEL4CR_11_1,
	MSEL4CR_10_0, MSEL4CR_10_1,
	MSEL4CR_09_0, MSEL4CR_09_1,
	MSEL4CR_07_0, MSEL4CR_07_1,
	MSEL4CR_04_0, MSEL4CR_04_1,
	MSEL4CR_01_0, MSEL4CR_01_1,

	MSEL5CR_31_0, MSEL5CR_31_1,
	MSEL5CR_30_0, MSEL5CR_30_1,
	MSEL5CR_29_0, MSEL5CR_29_1,
	MSEL5CR_28_0, MSEL5CR_28_1,
	MSEL5CR_27_0, MSEL5CR_27_1,
	MSEL5CR_26_0, MSEL5CR_26_1,
	MSEL5CR_25_0, MSEL5CR_25_1,
	MSEL5CR_24_0, MSEL5CR_24_1,
	MSEL5CR_23_0, MSEL5CR_23_1,
	MSEL5CR_22_0, MSEL5CR_22_1,
	MSEL5CR_21_0, MSEL5CR_21_1,
	MSEL5CR_20_0, MSEL5CR_20_1,
	MSEL5CR_19_0, MSEL5CR_19_1,
	MSEL5CR_18_0, MSEL5CR_18_1,
	MSEL5CR_17_0, MSEL5CR_17_1,
	MSEL5CR_16_0, MSEL5CR_16_1,
	MSEL5CR_15_0, MSEL5CR_15_1,
	MSEL5CR_14_0, MSEL5CR_14_1,
	MSEL5CR_13_0, MSEL5CR_13_1,
	MSEL5CR_12_0, MSEL5CR_12_1,
	MSEL5CR_11_0, MSEL5CR_11_1,
	MSEL5CR_10_0, MSEL5CR_10_1,
	MSEL5CR_09_0, MSEL5CR_09_1,
	MSEL5CR_08_0, MSEL5CR_08_1,
	MSEL5CR_07_0, MSEL5CR_07_1,
	MSEL5CR_06_0, MSEL5CR_06_1,

	MSEL8CR_16_0, MSEL8CR_16_1,
	MSEL8CR_01_0, MSEL8CR_01_1,
	MSEL8CR_00_0, MSEL8CR_00_1,

	PINMUX_FUNCTION_END,

	PINMUX_MARK_BEGIN,


#define F1(a)	a##_MARK
#define F2(a)	a##_MARK
#define F3(a)	a##_MARK
#define F4(a)	a##_MARK
#define F5(a)	a##_MARK
#define F6(a)	a##_MARK
#define F7(a)	a##_MARK
#define IRQ(a)	IRQ##a##_MARK

	F1(LCDD0), F3(PDM2_CLK_0), F7(DU0_DR0), IRQ(0), /* Port0 */
	F1(LCDD1), F3(PDM2_DATA_1), F7(DU0_DR19), IRQ(1),
	F1(LCDD2), F3(PDM3_CLK_2), F7(DU0_DR2), IRQ(2),
	F1(LCDD3), F3(PDM3_DATA_3), F7(DU0_DR3), IRQ(3),
	F1(LCDD4), F3(PDM4_CLK_4), F7(DU0_DR4), IRQ(4),
	F1(LCDD5), F3(PDM4_DATA_5), F7(DU0_DR5), IRQ(5),
	F1(LCDD6), F3(PDM0_OUTCLK_6), F7(DU0_DR6), IRQ(6),
	F1(LCDD7), F3(PDM0_OUTDATA_7), F7(DU0_DR7), IRQ(7),
	F1(LCDD8), F3(PDM1_OUTCLK_8), F7(DU0_DG0), IRQ(8),
	F1(LCDD9), F3(PDM1_OUTDATA_9), F7(DU0_DG1), IRQ(9),
	F1(LCDD10), F3(FSICCK), F7(DU0_DG2), IRQ(10), /* Port10 */
	F1(LCDD11), F3(FSICISLD), F7(DU0_DG3), IRQ(11),
	F1(LCDD12), F3(FSICOMC), F7(DU0_DG4), IRQ(12),
	F1(LCDD13), F3(FSICOLR), F4(FSICILR), F7(DU0_DG5), IRQ(13),
	F1(LCDD14), F3(FSICOBT), F4(FSICIBT), F7(DU0_DG6), IRQ(14),
	F1(LCDD15), F3(FSICOSLD), F7(DU0_DG7), IRQ(15),
	F1(LCDD16), F4(TPU1TO1), F7(DU0_DB0),
	F1(LCDD17), F4(SF_IRQ_00), F7(DU0_DB1),
	F1(LCDD18), F4(SF_IRQ_01), F7(DU0_DB2),
	F1(LCDD19), F3(SCIFB3_RTS_19), F7(DU0_DB3),
	F1(LCDD20), F3(SCIFB3_CTS_20), F7(DU0_DB4), /* Port20 */
	F1(LCDD21), F3(SCIFB3_TXD_21), F7(DU0_DB5),
	F1(LCDD22), F3(SCIFB3_RXD_22), F7(DU0_DB6),
	F1(LCDD23), F3(SCIFB3_SCK_23), F7(DU0_DB7),
	F1(LCDHSYN), F2(LCDCS), F3(SCIFB1_RTS_24),
	F7(DU0_EXHSYNC_N_CSYNC_N_HSYNC_N),
	F1(LCDVSYN), F3(SCIFB1_CTS_25), F7(DU0_EXVSYNC_N_VSYNC_N_CSYNC_N),
	F1(LCDDCK), F2(LCDWR), F3(SCIFB1_TXD_26), F7(DU0_DOTCLKIN),
	F1(LCDDISP), F2(LCDRS), F3(SCIFB1_RXD_27), F7(DU0_DOTCLKOUT),
	F1(LCDRD_N), F3(SCIFB1_SCK_28), F7(DU0_DOTCLKOUTB),
	F1(LCDLCLK), F4(SF_IRQ_02), F7(DU0_DISP_CSYNC_N_DE),
	F1(LCDDON), F4(SF_IRQ_03), F7(DU0_ODDF_N_CLAMP), /* Port30 */

	F1(SCIFA0_RTS), F5(SIM0_DET), F7(CSCIF0_RTS), /* Port32 */
	F1(SCIFA0_CTS), F5(SIM1_DET), F7(CSCIF0_CTS),
	F1(SCIFA0_SCK), F5(SIM0_PWRON), F7(CSCIF0_SCK),
	F1(SCIFA1_RTS), F7(CSCIF1_RTS),
	F1(SCIFA1_CTS), F7(CSCIF1_CTS),
	F1(SCIFA1_SCK), F7(CSCIF1_SCK),
	F1(SCIFB0_RTS), F3(TPU0TO1), F4(SCIFB3_RTS_38), F7(CHSCIF0_HRTS),
	F1(SCIFB0_CTS), F3(TPU0TO2), F4(SCIFB3_CTS_39), F7(CHSCIF0_HCTS),
	F1(SCIFB0_SCK), F3(TPU0TO3), F4(SCIFB3_SCK_40),
	F7(CHSCIF0_HSCK), /* Port40 */

	F1(PDM0_DATA), /* Port64 */
	F1(PDM1_DATA),
	F1(HSI_RX_WAKE), F2(SCIFB2_CTS_66), F3(MSIOF3_SYNC), F5(GenIO4),
	IRQ(40),
	F1(HSI_RX_READY), F2(SCIFB1_TXD_67), F5(GIO_OUT3_67), F7(CHSCIF1_HTX),
	F1(HSI_RX_FLAG), F2(SCIFB2_TXD_68), F3(MSIOF3_TXD), F5(GIO_OUT4_68),
	F1(HSI_RX_DATA), F2(SCIFB2_RXD_69), F3(MSIOF3_RXD), F5(GIO_OUT5_69),
	F1(HSI_TX_FLAG), F2(SCIFB1_RTS_70), F5(GIO_OUT1_70), F6(HSIC_TSTCLK0),
	F7(CHSCIF1_HRTS), /* Port70 */
	F1(HSI_TX_DATA), F2(SCIFB1_CTS_71), F5(GIO_OUT2_71), F6(HSIC_TSTCLK1),
	F7(CHSCIF1_HCTS),
	F1(HSI_TX_WAKE), F2(SCIFB1_RXD_72), F5(GenIO8), F7(CHSCIF1_HRX),
	F1(HSI_TX_READY), F2(SCIFB2_RTS_73), F3(MSIOF3_SCK), F5(GIO_OUT0_73),
	F1(IRDA_OUT), F1(IRDA_IN), F1(IRDA_FIRSEL), F1(TPU0TO0),
	F1(DIGRFEN), F1(GPS_TIMESTAMP), F1(TXP), /* Port80 */
	F1(TXP2), F1(COEX_0), F1(COEX_1), IRQ(19), IRQ(18), /* Port85 */

	F1(KEYIN0), /* Port96 */
	F1(KEYIN1), F1(KEYIN2), F1(KEYIN3), F1(KEYIN4), /* Port100 */
	F1(KEYIN5), F1(KEYIN6), IRQ(41), F1(KEYIN7), IRQ(42),
	F2(KEYOUT0), F2(KEYOUT1), F2(KEYOUT2), F2(KEYOUT3),
	F2(KEYOUT4), F2(KEYOUT5), IRQ(43), F2(KEYOUT6), IRQ(44), /* Port110 */
	F2(KEYOUT7), F5(RFANAEN), IRQ(45),
	F1(KEYIN8), F2(KEYOUT8), F4(SF_IRQ_04), IRQ(46),
	F1(KEYIN9), F2(KEYOUT9), F4(SF_IRQ_05), IRQ(47),
	F1(KEYIN10), F2(KEYOUT10), F4(SF_IRQ_06), IRQ(48),
	F1(KEYIN11), F2(KEYOUT11), F4(SF_IRQ_07), IRQ(49),
	F1(SCIFA0_TXD), F7(CSCIF0_TX), F1(SCIFA0_RXD), F7(CSCIF0_RX),
	F1(SCIFA1_TXD), F7(CSCIF1_TX), F1(SCIFA1_RXD), F7(CSCIF1_RX),
	F3(SF_PORT_1_120), F4(SCIFB3_RXD_120), F7(DU0_CDE), /* Port120 */
	F3(SF_PORT_0_121), F4(SCIFB3_TXD_121),
	F1(SCIFB0_TXD), F7(CHSCIF0_HTX),
	F1(SCIFB0_RXD), F7(CHSCIF0_HRX), F3(ISP_STROBE_124),
	F1(STP_ISD_0), F2(PDM4_CLK_125), F3(MSIOF2_TXD), F5(SIM0_VOLTSEL0),
	F1(TS_SDEN), F2(MSIOF7_SYNC), F3(STP_ISEN_1),
	F1(STP_ISEN_0), F2(PDM1_OUTDATA_128), F3(MSIOF2_SYNC),
	F5(SIM1_VOLTSEL1), F1(TS_SPSYNC), F2(MSIOF7_RXD), F3(STP_ISSYNC_1),
	F1(STP_ISSYNC_0), F2(PDM4_DATA_130), F3(MSIOF2_RXD),
	F5(SIM0_VOLTSEL1), /* Port130 */
	F1(STP_OPWM_0), F5(SIM1_PWRON), F1(TS_SCK), F2(MSIOF7_SCK),
	F3(STP_ISCLK_1), F1(STP_ISCLK_0), F2(PDM1_OUTCLK_133), F3(MSIOF2_SCK),
	F5(SIM1_VOLTSEL0), F1(TS_SDAT), F2(MSIOF7_TXD), F3(STP_ISD_1),
	IRQ(20), /* Port160 */
	IRQ(21), IRQ(22), IRQ(23),
	F1(MMCD0_0), F1(MMCD0_1), F1(MMCD0_2), F1(MMCD0_3),
	F1(MMCD0_4), F1(MMCD0_5), F1(MMCD0_6), /* Port170 */
	F1(MMCD0_7), F1(MMCCMD0), F1(MMCCLK0), F1(MMCRST),
	IRQ(24), IRQ(25), IRQ(26), IRQ(27),
	F1(A10), F2(MMCD1_7), IRQ(31), /* Port192 */
	F1(A9), F2(MMCD1_6), IRQ(32),
	F1(A8), F2(MMCD1_5), IRQ(33),
	F1(A7), F2(MMCD1_4), IRQ(34),
	F1(A6), F2(MMCD1_3), IRQ(35),
	F1(A5), F2(MMCD1_2), IRQ(36),
	F1(A4), F2(MMCD1_1), IRQ(37),
	F1(A3), F2(MMCD1_0), IRQ(38),
	F1(A2), F2(MMCCMD1), IRQ(39), /* Port200 */
	F1(A1),
	F1(A0), F2(BS),
	F1(CKO), F2(MMCCLK1),
	F1(CS0_N), F5(SIM0_GPO1),
	F1(CS2_N), F5(SIM0_GPO2),
	F1(CS4_N), F2(VIO_VD), F5(SIM1_GPO0),
	F1(D15), F5(GIO_OUT15),
	F1(D14), F5(GIO_OUT14),
	F1(D13), F5(GIO_OUT13),
	F1(D12), F5(GIO_OUT12), /* Port210 */
	F1(D11), F5(WGM_TXP2),
	F1(D10), F5(WGM_GPS_TIMEM_ASK_RFCLK),
	F1(D9), F2(VIO_D9), F5(GIO_OUT9),
	F1(D8), F2(VIO_D8), F5(GIO_OUT8),
	F1(D7), F2(VIO_D7), F5(GIO_OUT7),
	F1(D6), F2(VIO_D6), F5(GIO_OUT6),
	F1(D5), F2(VIO_D5), F5(GIO_OUT5_217),
	F1(D4), F2(VIO_D4), F5(GIO_OUT4_218),
	F1(D3), F2(VIO_D3), F5(GIO_OUT3_219),
	F1(D2), F2(VIO_D2), F5(GIO_OUT2_220), /* Port220 */
	F1(D1), F2(VIO_D1), F5(GIO_OUT1_221),
	F1(D0), F2(VIO_D0), F5(GIO_OUT0_222),
	F1(RDWR_224), F2(VIO_HD), F5(SIM1_GPO2),
	F1(RD_N), F1(WAIT_N), F2(VIO_CLK), F5(SIM1_GPO1),
	F1(WE0_N), F2(RDWR_227),
	F1(WE1_N), F5(SIM0_GPO0),
	F1(PWMO), F2(VIO_CKO1_229),
	F1(SLIM_CLK), F2(VIO_CKO4_230), /* Port230 */
	F1(SLIM_DATA), F2(VIO_CKO5_231), F2(VIO_CKO2_232), F4(SF_PORT_0_232),
	F2(VIO_CKO3_233), F4(SF_PORT_1_233),
	F1(FSIACK), F2(PDM3_CLK_234), F3(ISP_IRIS1_234),
	F1(FSIAISLD), F2(PDM3_DATA_235),
	F1(FSIAOMC), F2(PDM0_OUTCLK_236), F3(ISP_IRIS0_236),
	F1(FSIAOLR), F2(FSIAILR), F1(FSIAOBT), F2(FSIAIBT),
	F1(FSIAOSLD), F2(PDM0_OUTDATA_239),
	F1(FSIBISLD), /* Port240 */
	F1(FSIBOLR), F2(FSIBILR), F1(FSIBOMC), F3(ISP_SHUTTER1_242),
	F1(FSIBOBT), F2(FSIBIBT), F1(FSIBOSLD), F2(FSIASPDIF),
	F1(FSIBCK), F3(ISP_SHUTTER0_245),
	F1(ISP_IRIS1_246), F1(ISP_IRIS0_247), F1(ISP_SHUTTER1_248),
	F1(ISP_SHUTTER0_249), F1(ISP_STROBE_250), /* Port250 */
	F1(MSIOF0_SYNC), F1(MSIOF0_RXD), F1(MSIOF0_SCK), F1(MSIOF0_SS2),
	F3(VIO_CKO3_259), F1(MSIOF0_TXD), /* Port260 */
	F2(SCIFB1_SCK_261), F7(CHSCIF1_HSCK), F2(SCIFB2_SCK_262),
	F1(MSIOF1_SS2), F4(MSIOF5_SS2), F1(MSIOF1_TXD), F4(MSIOF5_TXD),
	F1(MSIOF1_RXD), F4(MSIOF5_RXD), F1(MSIOF1_SS1), F4(MSIOF5_SS1),
	F1(MSIOF0_SS1), F1(MSIOF1_SCK), F4(MSIOF5_SCK),
	F1(MSIOF1_SYNC), F4(MSIOF5_SYNC),
	F1(MSIOF2_SS1), F3(VIO_CKO5_270), /* Port270 */
	F1(MSIOF2_SS2), F3(VIO_CKO2_271), F1(MSIOF3_SS2), F3(VIO_CKO1_272),
	F1(MSIOF3_SS1), F3(VIO_CKO4_273), F1(MSIOF4_SS2), F4(TPU1TO0),
	F1(IC_DP), F1(SIM0_RST), F1(IC_DM), F1(SIM0_BSICOMP),
	F1(SIM0_CLK), F1(SIM0_IO), /* Port280 */
	F1(SIM1_IO), F2(PDM2_DATA_281), F1(SIM1_CLK), F2(PDM2_CLK_282),
	F1(SIM1_RST), F1(SDHID1_0), F3(STMDATA0_2),
	F1(SDHID1_1), F3(STMDATA1_2), IRQ(51), /* Port290 */
	F1(SDHID1_2), F3(STMDATA2_2), F1(SDHID1_3), F3(STMDATA3_2),
	F1(SDHICLK1), F3(STMCLK_2), F1(SDHICMD1), F3(STMSIDI_2),
	F1(SDHID2_0), F2(MSIOF4_TXD), F3(SCIFB2_TXD_295), F4(MSIOF6_TXD),
	F1(SDHID2_1), F4(MSIOF6_SS2), IRQ(52),
	F1(SDHID2_2), F2(MSIOF4_RXD), F3(SCIFB2_RXD_297), F4(MSIOF6_RXD),
	F1(SDHID2_3), F2(MSIOF4_SYNC), F3(SCIFB2_CTS_298), F4(MSIOF6_SYNC),
	F1(SDHICLK2), F2(MSIOF4_SCK), F3(SCIFB2_SCK_299), F4(MSIOF6_SCK),
	F1(SDHICMD2), F2(MSIOF4_SS1), F3(SCIFB2_RTS_300),
	F4(MSIOF6_SS1), /* Port300 */
	F1(SDHICD0), IRQ(50), F1(SDHID0_0), F3(STMDATA0_1),
	F1(SDHID0_1), F3(STMDATA1_1), F1(SDHID0_2), F3(STMDATA2_1),
	F1(SDHID0_3), F3(STMDATA3_1), F1(SDHICMD0), F3(STMSIDI_1),
	F1(SDHIWP0), F1(SDHICLK0), F3(STMCLK_1), IRQ(16), /* Port320 */
	IRQ(17), IRQ(28), IRQ(29), IRQ(30), IRQ(53), IRQ(54),
	IRQ(55), IRQ(56), IRQ(57),
	PINMUX_MARK_END,
};

static const u16 pinmux_data[] = {
	/* specify valid pin states for each pin in GPIO mode */
	PINMUX_DATA_ALL(),

	/* Port0 */
	PINMUX_DATA(LCDD0_MARK,		PORT0_FN1),
	PINMUX_DATA(PDM2_CLK_0_MARK,	PORT0_FN3),
	PINMUX_DATA(DU0_DR0_MARK,	PORT0_FN7),
	PINMUX_DATA(IRQ0_MARK,		PORT0_FN0),

	/* Port1 */
	PINMUX_DATA(LCDD1_MARK,		PORT1_FN1),
	PINMUX_DATA(PDM2_DATA_1_MARK,	PORT1_FN3,	MSEL3CR_12_0),
	PINMUX_DATA(DU0_DR19_MARK,	PORT1_FN7),
	PINMUX_DATA(IRQ1_MARK,		PORT1_FN0),

	/* Port2 */
	PINMUX_DATA(LCDD2_MARK,		PORT2_FN1),
	PINMUX_DATA(PDM3_CLK_2_MARK,	PORT2_FN3),
	PINMUX_DATA(DU0_DR2_MARK,	PORT2_FN7),
	PINMUX_DATA(IRQ2_MARK,		PORT2_FN0),

	/* Port3 */
	PINMUX_DATA(LCDD3_MARK,		PORT3_FN1),
	PINMUX_DATA(PDM3_DATA_3_MARK,	PORT3_FN3,	MSEL3CR_12_0),
	PINMUX_DATA(DU0_DR3_MARK,	PORT3_FN7),
	PINMUX_DATA(IRQ3_MARK,		PORT3_FN0),

	/* Port4 */
	PINMUX_DATA(LCDD4_MARK,		PORT4_FN1),
	PINMUX_DATA(PDM4_CLK_4_MARK,	PORT4_FN3),
	PINMUX_DATA(DU0_DR4_MARK,	PORT4_FN7),
	PINMUX_DATA(IRQ4_MARK,		PORT4_FN0),

	/* Port5 */
	PINMUX_DATA(LCDD5_MARK,		PORT5_FN1),
	PINMUX_DATA(PDM4_DATA_5_MARK,	PORT5_FN3,	MSEL3CR_12_0),
	PINMUX_DATA(DU0_DR5_MARK,	PORT5_FN7),
	PINMUX_DATA(IRQ5_MARK,		PORT5_FN0),

	/* Port6 */
	PINMUX_DATA(LCDD6_MARK,		PORT6_FN1),
	PINMUX_DATA(PDM0_OUTCLK_6_MARK,	PORT6_FN3),
	PINMUX_DATA(DU0_DR6_MARK,	PORT6_FN7),
	PINMUX_DATA(IRQ6_MARK,		PORT6_FN0),

	/* Port7 */
	PINMUX_DATA(LCDD7_MARK,			PORT7_FN1),
	PINMUX_DATA(PDM0_OUTDATA_7_MARK,	PORT7_FN3),
	PINMUX_DATA(DU0_DR7_MARK,		PORT7_FN7),
	PINMUX_DATA(IRQ7_MARK,			PORT7_FN0),

	/* Port8 */
	PINMUX_DATA(LCDD8_MARK,		PORT8_FN1),
	PINMUX_DATA(PDM1_OUTCLK_8_MARK,	PORT8_FN3),
	PINMUX_DATA(DU0_DG0_MARK,	PORT8_FN7),
	PINMUX_DATA(IRQ8_MARK,		PORT8_FN0),

	/* Port9 */
	PINMUX_DATA(LCDD9_MARK,		PORT9_FN1),
	PINMUX_DATA(PDM1_OUTDATA_9_MARK, PORT9_FN3),
	PINMUX_DATA(DU0_DG1_MARK,	PORT9_FN7),
	PINMUX_DATA(IRQ9_MARK,		PORT9_FN0),

	/* Port10 */
	PINMUX_DATA(LCDD10_MARK,		PORT10_FN1),
	PINMUX_DATA(FSICCK_MARK,		PORT10_FN3),
	PINMUX_DATA(DU0_DG2_MARK,		PORT10_FN7),
	PINMUX_DATA(IRQ10_MARK,			PORT10_FN0),

	/* Port11 */
	PINMUX_DATA(LCDD11_MARK,		PORT11_FN1),
	PINMUX_DATA(FSICISLD_MARK,		PORT11_FN3),
	PINMUX_DATA(DU0_DG3_MARK,		PORT11_FN7),
	PINMUX_DATA(IRQ11_MARK,			PORT11_FN0),

	/* Port12 */
	PINMUX_DATA(LCDD12_MARK,		PORT12_FN1),
	PINMUX_DATA(FSICOMC_MARK,		PORT12_FN3),
	PINMUX_DATA(DU0_DG4_MARK,		PORT12_FN7),
	PINMUX_DATA(IRQ12_MARK,			PORT12_FN0),

	/* Port13 */
	PINMUX_DATA(LCDD13_MARK,		PORT13_FN1),
	PINMUX_DATA(FSICOLR_MARK,		PORT13_FN3),
	PINMUX_DATA(FSICILR_MARK,		PORT13_FN4),
	PINMUX_DATA(DU0_DG5_MARK,		PORT13_FN7),
	PINMUX_DATA(IRQ13_MARK,			PORT13_FN0),

	/* Port14 */
	PINMUX_DATA(LCDD14_MARK,		PORT14_FN1),
	PINMUX_DATA(FSICOBT_MARK,		PORT14_FN3),
	PINMUX_DATA(FSICIBT_MARK,		PORT14_FN4),
	PINMUX_DATA(DU0_DG6_MARK,		PORT14_FN7),
	PINMUX_DATA(IRQ14_MARK,			PORT14_FN0),

	/* Port15 */
	PINMUX_DATA(LCDD15_MARK,		PORT15_FN1),
	PINMUX_DATA(FSICOSLD_MARK,		PORT15_FN3),
	PINMUX_DATA(DU0_DG7_MARK,		PORT15_FN7),
	PINMUX_DATA(IRQ15_MARK,			PORT15_FN0),

	/* Port16 */
	PINMUX_DATA(LCDD16_MARK,		PORT16_FN1),
	PINMUX_DATA(TPU1TO1_MARK,		PORT16_FN4),
	PINMUX_DATA(DU0_DB0_MARK,		PORT16_FN7),

	/* Port17 */
	PINMUX_DATA(LCDD17_MARK,		PORT17_FN1),
	PINMUX_DATA(SF_IRQ_00_MARK,		PORT17_FN4),
	PINMUX_DATA(DU0_DB1_MARK,		PORT17_FN7),

	/* Port18 */
	PINMUX_DATA(LCDD18_MARK,		PORT18_FN1),
	PINMUX_DATA(SF_IRQ_01_MARK,		PORT18_FN4),
	PINMUX_DATA(DU0_DB2_MARK,		PORT18_FN7),

	/* Port19 */
	PINMUX_DATA(LCDD19_MARK,		PORT19_FN1),
	PINMUX_DATA(SCIFB3_RTS_19_MARK,		PORT19_FN3),
	PINMUX_DATA(DU0_DB3_MARK,		PORT19_FN7),

	/* Port20 */
	PINMUX_DATA(LCDD20_MARK,		PORT20_FN1),
	PINMUX_DATA(SCIFB3_CTS_20_MARK,		PORT20_FN3,	MSEL3CR_09_0),
	PINMUX_DATA(DU0_DB4_MARK,		PORT20_FN7),

	/* Port21 */
	PINMUX_DATA(LCDD21_MARK,		PORT21_FN1),
	PINMUX_DATA(SCIFB3_TXD_21_MARK,		PORT21_FN3,	MSEL3CR_09_0),
	PINMUX_DATA(DU0_DB5_MARK,		PORT21_FN7),

	/* Port22 */
	PINMUX_DATA(LCDD22_MARK,		PORT22_FN1),
	PINMUX_DATA(SCIFB3_RXD_22_MARK,		PORT22_FN3,	MSEL3CR_09_0),
	PINMUX_DATA(DU0_DB6_MARK,		PORT22_FN7),

	/* Port23 */
	PINMUX_DATA(LCDD23_MARK,		PORT23_FN1),
	PINMUX_DATA(SCIFB3_SCK_23_MARK,		PORT23_FN3),
	PINMUX_DATA(DU0_DB7_MARK,		PORT23_FN7),

	/* Port24 */
	PINMUX_DATA(LCDHSYN_MARK,			PORT24_FN1),
	PINMUX_DATA(LCDCS_MARK,				PORT24_FN2),
	PINMUX_DATA(SCIFB1_RTS_24_MARK,			PORT24_FN3),
	PINMUX_DATA(DU0_EXHSYNC_N_CSYNC_N_HSYNC_N_MARK,	PORT24_FN7),

	/* Port25 */
	PINMUX_DATA(LCDVSYN_MARK,			PORT25_FN1),
	PINMUX_DATA(SCIFB1_CTS_25_MARK, PORT25_FN3, MSEL3CR_11_0),
	PINMUX_DATA(DU0_EXVSYNC_N_VSYNC_N_CSYNC_N_MARK,	PORT25_FN7),

	/* Port26 */
	PINMUX_DATA(LCDDCK_MARK,		PORT26_FN1),
	PINMUX_DATA(LCDWR_MARK,			PORT26_FN2),
	PINMUX_DATA(SCIFB1_TXD_26_MARK,		PORT26_FN3,	MSEL3CR_11_0),
	PINMUX_DATA(DU0_DOTCLKIN_MARK,		PORT26_FN7),

	/* Port27 */
	PINMUX_DATA(LCDDISP_MARK,		PORT27_FN1),
	PINMUX_DATA(LCDRS_MARK,			PORT27_FN2),
	PINMUX_DATA(SCIFB1_RXD_27_MARK,		PORT27_FN3,	MSEL3CR_11_0),
	PINMUX_DATA(DU0_DOTCLKOUT_MARK,		PORT27_FN7),

	/* Port28 */
	PINMUX_DATA(LCDRD_N_MARK,		PORT28_FN1),
	PINMUX_DATA(SCIFB1_SCK_28_MARK,		PORT28_FN3),
	PINMUX_DATA(DU0_DOTCLKOUTB_MARK,	PORT28_FN7),

	/* Port29 */
	PINMUX_DATA(LCDLCLK_MARK,		PORT29_FN1),
	PINMUX_DATA(SF_IRQ_02_MARK,		PORT29_FN4),
	PINMUX_DATA(DU0_DISP_CSYNC_N_DE_MARK,	PORT29_FN7),

	/* Port30 */
	PINMUX_DATA(LCDDON_MARK,		PORT30_FN1),
	PINMUX_DATA(SF_IRQ_03_MARK,		PORT30_FN4),
	PINMUX_DATA(DU0_ODDF_N_CLAMP_MARK,	PORT30_FN7),

	/* Port32 */
	PINMUX_DATA(SCIFA0_RTS_MARK,		PORT32_FN1),
	PINMUX_DATA(SIM0_DET_MARK,		PORT32_FN5),
	PINMUX_DATA(CSCIF0_RTS_MARK,		PORT32_FN7),

	/* Port33 */
	PINMUX_DATA(SCIFA0_CTS_MARK,		PORT33_FN1),
	PINMUX_DATA(SIM1_DET_MARK,		PORT33_FN5),
	PINMUX_DATA(CSCIF0_CTS_MARK,		PORT33_FN7),

	/* Port34 */
	PINMUX_DATA(SCIFA0_SCK_MARK,		PORT34_FN1),
	PINMUX_DATA(SIM0_PWRON_MARK,		PORT34_FN5),
	PINMUX_DATA(CSCIF0_SCK_MARK,		PORT34_FN7),

	/* Port35 */
	PINMUX_DATA(SCIFA1_RTS_MARK,		PORT35_FN1),
	PINMUX_DATA(CSCIF1_RTS_MARK,		PORT35_FN7),

	/* Port36 */
	PINMUX_DATA(SCIFA1_CTS_MARK,		PORT36_FN1),
	PINMUX_DATA(CSCIF1_CTS_MARK,		PORT36_FN7),

	/* Port37 */
	PINMUX_DATA(SCIFA1_SCK_MARK,		PORT37_FN1),
	PINMUX_DATA(CSCIF1_SCK_MARK,		PORT37_FN7),

	/* Port38 */
	PINMUX_DATA(SCIFB0_RTS_MARK,		PORT38_FN1),
	PINMUX_DATA(TPU0TO1_MARK,		PORT38_FN3),
	PINMUX_DATA(SCIFB3_RTS_38_MARK,		PORT38_FN4),
	PINMUX_DATA(CHSCIF0_HRTS_MARK,		PORT38_FN7),

	/* Port39 */
	PINMUX_DATA(SCIFB0_CTS_MARK,		PORT39_FN1),
	PINMUX_DATA(TPU0TO2_MARK,		PORT39_FN3),
	PINMUX_DATA(SCIFB3_CTS_39_MARK,		PORT39_FN4,	MSEL3CR_09_1),
	PINMUX_DATA(CHSCIF0_HCTS_MARK,		PORT39_FN7),

	/* Port40 */
	PINMUX_DATA(SCIFB0_SCK_MARK,		PORT40_FN1),
	PINMUX_DATA(TPU0TO3_MARK,		PORT40_FN3),
	PINMUX_DATA(SCIFB3_SCK_40_MARK,		PORT40_FN4),
	PINMUX_DATA(CHSCIF0_HSCK_MARK,		PORT40_FN7),

	/* Port64 */
	PINMUX_DATA(PDM0_DATA_MARK,		PORT64_FN1),

	/* Port65 */
	PINMUX_DATA(PDM1_DATA_MARK,		PORT65_FN1),

	/* Port66 */
	PINMUX_DATA(HSI_RX_WAKE_MARK,		PORT66_FN1),
	PINMUX_DATA(SCIFB2_CTS_66_MARK,		PORT66_FN2,	MSEL3CR_10_0),
	PINMUX_DATA(MSIOF3_SYNC_MARK,		PORT66_FN3),
	PINMUX_DATA(GenIO4_MARK,		PORT66_FN5),
	PINMUX_DATA(IRQ40_MARK,			PORT66_FN0),

	/* Port67 */
	PINMUX_DATA(HSI_RX_READY_MARK,		PORT67_FN1),
	PINMUX_DATA(SCIFB1_TXD_67_MARK,		PORT67_FN2,	MSEL3CR_11_1),
	PINMUX_DATA(GIO_OUT3_67_MARK,		PORT67_FN5),
	PINMUX_DATA(CHSCIF1_HTX_MARK,		PORT67_FN7),

	/* Port68 */
	PINMUX_DATA(HSI_RX_FLAG_MARK,		PORT68_FN1),
	PINMUX_DATA(SCIFB2_TXD_68_MARK,		PORT68_FN2,	MSEL3CR_10_0),
	PINMUX_DATA(MSIOF3_TXD_MARK,		PORT68_FN3),
	PINMUX_DATA(GIO_OUT4_68_MARK,		PORT68_FN5),

	/* Port69 */
	PINMUX_DATA(HSI_RX_DATA_MARK,		PORT69_FN1),
	PINMUX_DATA(SCIFB2_RXD_69_MARK,		PORT69_FN2,	MSEL3CR_10_0),
	PINMUX_DATA(MSIOF3_RXD_MARK,		PORT69_FN3),
	PINMUX_DATA(GIO_OUT5_69_MARK,		PORT69_FN5),

	/* Port70 */
	PINMUX_DATA(HSI_TX_FLAG_MARK,		PORT70_FN1),
	PINMUX_DATA(SCIFB1_RTS_70_MARK,		PORT70_FN2),
	PINMUX_DATA(GIO_OUT1_70_MARK,		PORT70_FN5),
	PINMUX_DATA(HSIC_TSTCLK0_MARK,		PORT70_FN6),
	PINMUX_DATA(CHSCIF1_HRTS_MARK,		PORT70_FN7),

	/* Port71 */
	PINMUX_DATA(HSI_TX_DATA_MARK,		PORT71_FN1),
	PINMUX_DATA(SCIFB1_CTS_71_MARK,		PORT71_FN2,	MSEL3CR_11_1),
	PINMUX_DATA(GIO_OUT2_71_MARK,		PORT71_FN5),
	PINMUX_DATA(HSIC_TSTCLK1_MARK,		PORT71_FN6),
	PINMUX_DATA(CHSCIF1_HCTS_MARK,		PORT71_FN7),

	/* Port72 */
	PINMUX_DATA(HSI_TX_WAKE_MARK,		PORT72_FN1),
	PINMUX_DATA(SCIFB1_RXD_72_MARK,		PORT72_FN2,	MSEL3CR_11_1),
	PINMUX_DATA(GenIO8_MARK,		PORT72_FN5),
	PINMUX_DATA(CHSCIF1_HRX_MARK,		PORT72_FN7),

	/* Port73 */
	PINMUX_DATA(HSI_TX_READY_MARK,		PORT73_FN1),
	PINMUX_DATA(SCIFB2_RTS_73_MARK,		PORT73_FN2),
	PINMUX_DATA(MSIOF3_SCK_MARK,		PORT73_FN3),
	PINMUX_DATA(GIO_OUT0_73_MARK,		PORT73_FN5),

	/* Port74 - Port85 */
	PINMUX_DATA(IRDA_OUT_MARK,		PORT74_FN1),
	PINMUX_DATA(IRDA_IN_MARK,		PORT75_FN1),
	PINMUX_DATA(IRDA_FIRSEL_MARK,		PORT76_FN1),
	PINMUX_DATA(TPU0TO0_MARK,		PORT77_FN1),
	PINMUX_DATA(DIGRFEN_MARK,		PORT78_FN1),
	PINMUX_DATA(GPS_TIMESTAMP_MARK,		PORT79_FN1),
	PINMUX_DATA(TXP_MARK,			PORT80_FN1),
	PINMUX_DATA(TXP2_MARK,			PORT81_FN1),
	PINMUX_DATA(COEX_0_MARK,		PORT82_FN1),
	PINMUX_DATA(COEX_1_MARK,		PORT83_FN1),
	PINMUX_DATA(IRQ19_MARK,			PORT84_FN0),
	PINMUX_DATA(IRQ18_MARK,			PORT85_FN0),

	/* Port96 - Port101 */
	PINMUX_DATA(KEYIN0_MARK,		PORT96_FN1),
	PINMUX_DATA(KEYIN1_MARK,		PORT97_FN1),
	PINMUX_DATA(KEYIN2_MARK,		PORT98_FN1),
	PINMUX_DATA(KEYIN3_MARK,		PORT99_FN1),
	PINMUX_DATA(KEYIN4_MARK,		PORT100_FN1),
	PINMUX_DATA(KEYIN5_MARK,		PORT101_FN1),

	/* Port102 */
	PINMUX_DATA(KEYIN6_MARK,		PORT102_FN1),
	PINMUX_DATA(IRQ41_MARK,			PORT102_FN0),

	/* Port103 */
	PINMUX_DATA(KEYIN7_MARK,		PORT103_FN1),
	PINMUX_DATA(IRQ42_MARK,			PORT103_FN0),

	/* Port104 - Port108 */
	PINMUX_DATA(KEYOUT0_MARK,		PORT104_FN2),
	PINMUX_DATA(KEYOUT1_MARK,		PORT105_FN2),
	PINMUX_DATA(KEYOUT2_MARK,		PORT106_FN2),
	PINMUX_DATA(KEYOUT3_MARK,		PORT107_FN2),
	PINMUX_DATA(KEYOUT4_MARK,		PORT108_FN2),

	/* Port109 */
	PINMUX_DATA(KEYOUT5_MARK,		PORT109_FN2),
	PINMUX_DATA(IRQ43_MARK,			PORT109_FN0),

	/* Port110 */
	PINMUX_DATA(KEYOUT6_MARK,		PORT110_FN2),
	PINMUX_DATA(IRQ44_MARK,			PORT110_FN0),

	/* Port111 */
	PINMUX_DATA(KEYOUT7_MARK,		PORT111_FN2),
	PINMUX_DATA(RFANAEN_MARK,		PORT111_FN5),
	PINMUX_DATA(IRQ45_MARK,			PORT111_FN0),

	/* Port112 */
	PINMUX_DATA(KEYIN8_MARK,		PORT112_FN1),
	PINMUX_DATA(KEYOUT8_MARK,		PORT112_FN2),
	PINMUX_DATA(SF_IRQ_04_MARK,		PORT112_FN4),
	PINMUX_DATA(IRQ46_MARK,			PORT112_FN0),

	/* Port113 */
	PINMUX_DATA(KEYIN9_MARK,		PORT113_FN1),
	PINMUX_DATA(KEYOUT9_MARK,		PORT113_FN2),
	PINMUX_DATA(SF_IRQ_05_MARK,		PORT113_FN4),
	PINMUX_DATA(IRQ47_MARK,			PORT113_FN0),

	/* Port114 */
	PINMUX_DATA(KEYIN10_MARK,		PORT114_FN1),
	PINMUX_DATA(KEYOUT10_MARK,		PORT114_FN2),
	PINMUX_DATA(SF_IRQ_06_MARK,		PORT114_FN4),
	PINMUX_DATA(IRQ48_MARK,			PORT114_FN0),

	/* Port115 */
	PINMUX_DATA(KEYIN11_MARK,		PORT115_FN1),
	PINMUX_DATA(KEYOUT11_MARK,		PORT115_FN2),
	PINMUX_DATA(SF_IRQ_07_MARK,		PORT115_FN4),
	PINMUX_DATA(IRQ49_MARK,			PORT115_FN0),

	/* Port116 */
	PINMUX_DATA(SCIFA0_TXD_MARK,		PORT116_FN1),
	PINMUX_DATA(CSCIF0_TX_MARK,		PORT116_FN7),

	/* Port117 */
	PINMUX_DATA(SCIFA0_RXD_MARK,		PORT117_FN1),
	PINMUX_DATA(CSCIF0_RX_MARK,		PORT117_FN7),

	/* Port118 */
	PINMUX_DATA(SCIFA1_TXD_MARK,		PORT118_FN1),
	PINMUX_DATA(CSCIF1_TX_MARK,		PORT118_FN7),

	/* Port119 */
	PINMUX_DATA(SCIFA1_RXD_MARK,		PORT119_FN1),
	PINMUX_DATA(CSCIF1_RX_MARK,		PORT119_FN7),

	/* Port120 */
	PINMUX_DATA(SF_PORT_1_120_MARK,		PORT120_FN3),
	PINMUX_DATA(SCIFB3_RXD_120_MARK,	PORT120_FN4,	MSEL3CR_09_1),
	PINMUX_DATA(DU0_CDE_MARK,		PORT120_FN7),

	/* Port121 */
	PINMUX_DATA(SF_PORT_0_121_MARK,		PORT121_FN3),
	PINMUX_DATA(SCIFB3_TXD_121_MARK,	PORT121_FN4,	MSEL3CR_09_1),

	/* Port122 */
	PINMUX_DATA(SCIFB0_TXD_MARK,		PORT122_FN1),
	PINMUX_DATA(CHSCIF0_HTX_MARK,		PORT122_FN7),

	/* Port123 */
	PINMUX_DATA(SCIFB0_RXD_MARK,		PORT123_FN1),
	PINMUX_DATA(CHSCIF0_HRX_MARK,		PORT123_FN7),

	/* Port124 */
	PINMUX_DATA(ISP_STROBE_124_MARK,	PORT124_FN3),

	/* Port125 */
	PINMUX_DATA(STP_ISD_0_MARK,		PORT125_FN1),
	PINMUX_DATA(PDM4_CLK_125_MARK,		PORT125_FN2),
	PINMUX_DATA(MSIOF2_TXD_MARK,		PORT125_FN3),
	PINMUX_DATA(SIM0_VOLTSEL0_MARK,		PORT125_FN5),

	/* Port126 */
	PINMUX_DATA(TS_SDEN_MARK,		PORT126_FN1),
	PINMUX_DATA(MSIOF7_SYNC_MARK,		PORT126_FN2),
	PINMUX_DATA(STP_ISEN_1_MARK,		PORT126_FN3),

	/* Port128 */
	PINMUX_DATA(STP_ISEN_0_MARK,		PORT128_FN1),
	PINMUX_DATA(PDM1_OUTDATA_128_MARK,	PORT128_FN2),
	PINMUX_DATA(MSIOF2_SYNC_MARK,		PORT128_FN3),
	PINMUX_DATA(SIM1_VOLTSEL1_MARK,		PORT128_FN5),

	/* Port129 */
	PINMUX_DATA(TS_SPSYNC_MARK,		PORT129_FN1),
	PINMUX_DATA(MSIOF7_RXD_MARK,		PORT129_FN2),
	PINMUX_DATA(STP_ISSYNC_1_MARK,		PORT129_FN3),

	/* Port130 */
	PINMUX_DATA(STP_ISSYNC_0_MARK,		PORT130_FN1),
	PINMUX_DATA(PDM4_DATA_130_MARK,		PORT130_FN2,	MSEL3CR_12_1),
	PINMUX_DATA(MSIOF2_RXD_MARK,		PORT130_FN3),
	PINMUX_DATA(SIM0_VOLTSEL1_MARK,		PORT130_FN5),

	/* Port131 */
	PINMUX_DATA(STP_OPWM_0_MARK,		PORT131_FN1),
	PINMUX_DATA(SIM1_PWRON_MARK,		PORT131_FN5),

	/* Port132 */
	PINMUX_DATA(TS_SCK_MARK,		PORT132_FN1),
	PINMUX_DATA(MSIOF7_SCK_MARK,		PORT132_FN2),
	PINMUX_DATA(STP_ISCLK_1_MARK,		PORT132_FN3),

	/* Port133 */
	PINMUX_DATA(STP_ISCLK_0_MARK,		PORT133_FN1),
	PINMUX_DATA(PDM1_OUTCLK_133_MARK,	PORT133_FN2),
	PINMUX_DATA(MSIOF2_SCK_MARK,		PORT133_FN3),
	PINMUX_DATA(SIM1_VOLTSEL0_MARK,		PORT133_FN5),

	/* Port134 */
	PINMUX_DATA(TS_SDAT_MARK,		PORT134_FN1),
	PINMUX_DATA(MSIOF7_TXD_MARK,		PORT134_FN2),
	PINMUX_DATA(STP_ISD_1_MARK,		PORT134_FN3),

	/* Port160 - Port178 */
	PINMUX_DATA(IRQ20_MARK,			PORT160_FN0),
	PINMUX_DATA(IRQ21_MARK,			PORT161_FN0),
	PINMUX_DATA(IRQ22_MARK,			PORT162_FN0),
	PINMUX_DATA(IRQ23_MARK,			PORT163_FN0),
	PINMUX_DATA(MMCD0_0_MARK,		PORT164_FN1),
	PINMUX_DATA(MMCD0_1_MARK,		PORT165_FN1),
	PINMUX_DATA(MMCD0_2_MARK,		PORT166_FN1),
	PINMUX_DATA(MMCD0_3_MARK,		PORT167_FN1),
	PINMUX_DATA(MMCD0_4_MARK,		PORT168_FN1),
	PINMUX_DATA(MMCD0_5_MARK,		PORT169_FN1),
	PINMUX_DATA(MMCD0_6_MARK,		PORT170_FN1),
	PINMUX_DATA(MMCD0_7_MARK,		PORT171_FN1),
	PINMUX_DATA(MMCCMD0_MARK,		PORT172_FN1),
	PINMUX_DATA(MMCCLK0_MARK,		PORT173_FN1),
	PINMUX_DATA(MMCRST_MARK,		PORT174_FN1),
	PINMUX_DATA(IRQ24_MARK,			PORT175_FN0),
	PINMUX_DATA(IRQ25_MARK,			PORT176_FN0),
	PINMUX_DATA(IRQ26_MARK,			PORT177_FN0),
	PINMUX_DATA(IRQ27_MARK,			PORT178_FN0),

	/* Port192 - Port200 FN1 */
	PINMUX_DATA(A10_MARK,		PORT192_FN1),
	PINMUX_DATA(A9_MARK,		PORT193_FN1),
	PINMUX_DATA(A8_MARK,		PORT194_FN1),
	PINMUX_DATA(A7_MARK,		PORT195_FN1),
	PINMUX_DATA(A6_MARK,		PORT196_FN1),
	PINMUX_DATA(A5_MARK,		PORT197_FN1),
	PINMUX_DATA(A4_MARK,		PORT198_FN1),
	PINMUX_DATA(A3_MARK,		PORT199_FN1),
	PINMUX_DATA(A2_MARK,		PORT200_FN1),

	/* Port192 - Port200 FN2 */
	PINMUX_DATA(MMCD1_7_MARK,		PORT192_FN2),
	PINMUX_DATA(MMCD1_6_MARK,		PORT193_FN2),
	PINMUX_DATA(MMCD1_5_MARK,		PORT194_FN2),
	PINMUX_DATA(MMCD1_4_MARK,		PORT195_FN2),
	PINMUX_DATA(MMCD1_3_MARK,		PORT196_FN2),
	PINMUX_DATA(MMCD1_2_MARK,		PORT197_FN2),
	PINMUX_DATA(MMCD1_1_MARK,		PORT198_FN2),
	PINMUX_DATA(MMCD1_0_MARK,		PORT199_FN2),
	PINMUX_DATA(MMCCMD1_MARK,		PORT200_FN2),

	/* Port192 - Port200 IRQ */
	PINMUX_DATA(IRQ31_MARK,			PORT192_FN0),
	PINMUX_DATA(IRQ32_MARK,			PORT193_FN0),
	PINMUX_DATA(IRQ33_MARK,			PORT194_FN0),
	PINMUX_DATA(IRQ34_MARK,			PORT195_FN0),
	PINMUX_DATA(IRQ35_MARK,			PORT196_FN0),
	PINMUX_DATA(IRQ36_MARK,			PORT197_FN0),
	PINMUX_DATA(IRQ37_MARK,			PORT198_FN0),
	PINMUX_DATA(IRQ38_MARK,			PORT199_FN0),
	PINMUX_DATA(IRQ39_MARK,			PORT200_FN0),

	/* Port201 */
	PINMUX_DATA(A1_MARK,		PORT201_FN1),

	/* Port202 */
	PINMUX_DATA(A0_MARK,		PORT202_FN1),
	PINMUX_DATA(BS_MARK,		PORT202_FN2),

	/* Port203 */
	PINMUX_DATA(CKO_MARK,		PORT203_FN1),
	PINMUX_DATA(MMCCLK1_MARK,	PORT203_FN2),

	/* Port204 */
	PINMUX_DATA(CS0_N_MARK,		PORT204_FN1),
	PINMUX_DATA(SIM0_GPO1_MARK,	PORT204_FN5),

	/* Port205 */
	PINMUX_DATA(CS2_N_MARK,		PORT205_FN1),
	PINMUX_DATA(SIM0_GPO2_MARK,	PORT205_FN5),

	/* Port206 */
	PINMUX_DATA(CS4_N_MARK,		PORT206_FN1),
	PINMUX_DATA(VIO_VD_MARK,	PORT206_FN2),
	PINMUX_DATA(SIM1_GPO0_MARK,	PORT206_FN5),

	/* Port207 - Port212 FN1 */
	PINMUX_DATA(D15_MARK,		PORT207_FN1),
	PINMUX_DATA(D14_MARK,		PORT208_FN1),
	PINMUX_DATA(D13_MARK,		PORT209_FN1),
	PINMUX_DATA(D12_MARK,		PORT210_FN1),
	PINMUX_DATA(D11_MARK,		PORT211_FN1),
	PINMUX_DATA(D10_MARK,		PORT212_FN1),

	/* Port207 - Port212 FN5 */
	PINMUX_DATA(GIO_OUT15_MARK,			PORT207_FN5),
	PINMUX_DATA(GIO_OUT14_MARK,			PORT208_FN5),
	PINMUX_DATA(GIO_OUT13_MARK,			PORT209_FN5),
	PINMUX_DATA(GIO_OUT12_MARK,			PORT210_FN5),
	PINMUX_DATA(WGM_TXP2_MARK,			PORT211_FN5),
	PINMUX_DATA(WGM_GPS_TIMEM_ASK_RFCLK_MARK,	PORT212_FN5),

	/* Port213 - Port222 FN1 */
	PINMUX_DATA(D9_MARK,		PORT213_FN1),
	PINMUX_DATA(D8_MARK,		PORT214_FN1),
	PINMUX_DATA(D7_MARK,		PORT215_FN1),
	PINMUX_DATA(D6_MARK,		PORT216_FN1),
	PINMUX_DATA(D5_MARK,		PORT217_FN1),
	PINMUX_DATA(D4_MARK,		PORT218_FN1),
	PINMUX_DATA(D3_MARK,		PORT219_FN1),
	PINMUX_DATA(D2_MARK,		PORT220_FN1),
	PINMUX_DATA(D1_MARK,		PORT221_FN1),
	PINMUX_DATA(D0_MARK,		PORT222_FN1),

	/* Port213 - Port222 FN2 */
	PINMUX_DATA(VIO_D9_MARK,	PORT213_FN2),
	PINMUX_DATA(VIO_D8_MARK,	PORT214_FN2),
	PINMUX_DATA(VIO_D7_MARK,	PORT215_FN2),
	PINMUX_DATA(VIO_D6_MARK,	PORT216_FN2),
	PINMUX_DATA(VIO_D5_MARK,	PORT217_FN2),
	PINMUX_DATA(VIO_D4_MARK,	PORT218_FN2),
	PINMUX_DATA(VIO_D3_MARK,	PORT219_FN2),
	PINMUX_DATA(VIO_D2_MARK,	PORT220_FN2),
	PINMUX_DATA(VIO_D1_MARK,	PORT221_FN2),
	PINMUX_DATA(VIO_D0_MARK,	PORT222_FN2),

	/* Port213 - Port222 FN5 */
	PINMUX_DATA(GIO_OUT9_MARK,	PORT213_FN5),
	PINMUX_DATA(GIO_OUT8_MARK,	PORT214_FN5),
	PINMUX_DATA(GIO_OUT7_MARK,	PORT215_FN5),
	PINMUX_DATA(GIO_OUT6_MARK,	PORT216_FN5),
	PINMUX_DATA(GIO_OUT5_217_MARK,	PORT217_FN5),
	PINMUX_DATA(GIO_OUT4_218_MARK,	PORT218_FN5),
	PINMUX_DATA(GIO_OUT3_219_MARK,	PORT219_FN5),
	PINMUX_DATA(GIO_OUT2_220_MARK,	PORT220_FN5),
	PINMUX_DATA(GIO_OUT1_221_MARK,	PORT221_FN5),
	PINMUX_DATA(GIO_OUT0_222_MARK,	PORT222_FN5),

	/* Port224 */
	PINMUX_DATA(RDWR_224_MARK,	PORT224_FN1),
	PINMUX_DATA(VIO_HD_MARK,	PORT224_FN2),
	PINMUX_DATA(SIM1_GPO2_MARK,	PORT224_FN5),

	/* Port225 */
	PINMUX_DATA(RD_N_MARK,		PORT225_FN1),

	/* Port226 */
	PINMUX_DATA(WAIT_N_MARK,	PORT226_FN1),
	PINMUX_DATA(VIO_CLK_MARK,	PORT226_FN2),
	PINMUX_DATA(SIM1_GPO1_MARK,	PORT226_FN5),

	/* Port227 */
	PINMUX_DATA(WE0_N_MARK,		PORT227_FN1),
	PINMUX_DATA(RDWR_227_MARK,	PORT227_FN2),

	/* Port228 */
	PINMUX_DATA(WE1_N_MARK,		PORT228_FN1),
	PINMUX_DATA(SIM0_GPO0_MARK,	PORT228_FN5),

	/* Port229 */
	PINMUX_DATA(PWMO_MARK,		PORT229_FN1),
	PINMUX_DATA(VIO_CKO1_229_MARK,	PORT229_FN2),

	/* Port230 */
	PINMUX_DATA(SLIM_CLK_MARK,	PORT230_FN1),
	PINMUX_DATA(VIO_CKO4_230_MARK,	PORT230_FN2),

	/* Port231 */
	PINMUX_DATA(SLIM_DATA_MARK,	PORT231_FN1),
	PINMUX_DATA(VIO_CKO5_231_MARK,	PORT231_FN2),

	/* Port232 */
	PINMUX_DATA(VIO_CKO2_232_MARK,	PORT232_FN2),
	PINMUX_DATA(SF_PORT_0_232_MARK,	PORT232_FN4),

	/* Port233 */
	PINMUX_DATA(VIO_CKO3_233_MARK,	PORT233_FN2),
	PINMUX_DATA(SF_PORT_1_233_MARK,	PORT233_FN4),

	/* Port234 */
	PINMUX_DATA(FSIACK_MARK,	PORT234_FN1),
	PINMUX_DATA(PDM3_CLK_234_MARK,	PORT234_FN2),
	PINMUX_DATA(ISP_IRIS1_234_MARK,	PORT234_FN3),

	/* Port235 */
	PINMUX_DATA(FSIAISLD_MARK,	PORT235_FN1),
	PINMUX_DATA(PDM3_DATA_235_MARK,	PORT235_FN2,	MSEL3CR_12_1),

	/* Port236 */
	PINMUX_DATA(FSIAOMC_MARK,		PORT236_FN1),
	PINMUX_DATA(PDM0_OUTCLK_236_MARK,	PORT236_FN2),
	PINMUX_DATA(ISP_IRIS0_236_MARK,		PORT236_FN3),

	/* Port237 */
	PINMUX_DATA(FSIAOLR_MARK,	PORT237_FN1),
	PINMUX_DATA(FSIAILR_MARK,	PORT237_FN2),

	/* Port238 */
	PINMUX_DATA(FSIAOBT_MARK,	PORT238_FN1),
	PINMUX_DATA(FSIAIBT_MARK,	PORT238_FN2),

	/* Port239 */
	PINMUX_DATA(FSIAOSLD_MARK,		PORT239_FN1),
	PINMUX_DATA(PDM0_OUTDATA_239_MARK,	PORT239_FN2),

	/* Port240 */
	PINMUX_DATA(FSIBISLD_MARK,	PORT240_FN1),

	/* Port241 */
	PINMUX_DATA(FSIBOLR_MARK,	PORT241_FN1),
	PINMUX_DATA(FSIBILR_MARK,	PORT241_FN2),

	/* Port242 */
	PINMUX_DATA(FSIBOMC_MARK,		PORT242_FN1),
	PINMUX_DATA(ISP_SHUTTER1_242_MARK,	PORT242_FN3),

	/* Port243 */
	PINMUX_DATA(FSIBOBT_MARK,	PORT243_FN1),
	PINMUX_DATA(FSIBIBT_MARK,	PORT243_FN2),

	/* Port244 */
	PINMUX_DATA(FSIBOSLD_MARK,	PORT244_FN1),
	PINMUX_DATA(FSIASPDIF_MARK,	PORT244_FN2),

	/* Port245 */
	PINMUX_DATA(FSIBCK_MARK,		PORT245_FN1),
	PINMUX_DATA(ISP_SHUTTER0_245_MARK,	PORT245_FN3),

	/* Port246 - Port250 FN1 */
	PINMUX_DATA(ISP_IRIS1_246_MARK,		PORT246_FN1),
	PINMUX_DATA(ISP_IRIS0_247_MARK,		PORT247_FN1),
	PINMUX_DATA(ISP_SHUTTER1_248_MARK,	PORT248_FN1),
	PINMUX_DATA(ISP_SHUTTER0_249_MARK,	PORT249_FN1),
	PINMUX_DATA(ISP_STROBE_250_MARK,	PORT250_FN1),

	/* Port256 - Port258 */
	PINMUX_DATA(MSIOF0_SYNC_MARK,		PORT256_FN1),
	PINMUX_DATA(MSIOF0_RXD_MARK,		PORT257_FN1),
	PINMUX_DATA(MSIOF0_SCK_MARK,		PORT258_FN1),

	/* Port259 */
	PINMUX_DATA(MSIOF0_SS2_MARK,		PORT259_FN1),
	PINMUX_DATA(VIO_CKO3_259_MARK,		PORT259_FN3),

	/* Port260 */
	PINMUX_DATA(MSIOF0_TXD_MARK,		PORT260_FN1),

	/* Port261 */
	PINMUX_DATA(SCIFB1_SCK_261_MARK,	PORT261_FN2),
	PINMUX_DATA(CHSCIF1_HSCK_MARK,		PORT261_FN7),

	/* Port262 */
	PINMUX_DATA(SCIFB2_SCK_262_MARK,	PORT262_FN2),

	/* Port263 - Port266 FN1 */
	PINMUX_DATA(MSIOF1_SS2_MARK,		PORT263_FN1),
	PINMUX_DATA(MSIOF1_TXD_MARK,		PORT264_FN1),
	PINMUX_DATA(MSIOF1_RXD_MARK,		PORT265_FN1),
	PINMUX_DATA(MSIOF1_SS1_MARK,		PORT266_FN1),

	/* Port263 - Port266 FN4 */
	PINMUX_DATA(MSIOF5_SS2_MARK,		PORT263_FN4),
	PINMUX_DATA(MSIOF5_TXD_MARK,		PORT264_FN4),
	PINMUX_DATA(MSIOF5_RXD_MARK,		PORT265_FN4),
	PINMUX_DATA(MSIOF5_SS1_MARK,		PORT266_FN4),

	/* Port267 */
	PINMUX_DATA(MSIOF0_SS1_MARK,		PORT267_FN1),

	/* Port268 */
	PINMUX_DATA(MSIOF1_SCK_MARK,		PORT268_FN1),
	PINMUX_DATA(MSIOF5_SCK_MARK,		PORT268_FN4),

	/* Port269 */
	PINMUX_DATA(MSIOF1_SYNC_MARK,		PORT269_FN1),
	PINMUX_DATA(MSIOF5_SYNC_MARK,		PORT269_FN4),

	/* Port270 - Port273 FN1 */
	PINMUX_DATA(MSIOF2_SS1_MARK,		PORT270_FN1),
	PINMUX_DATA(MSIOF2_SS2_MARK,		PORT271_FN1),
	PINMUX_DATA(MSIOF3_SS2_MARK,		PORT272_FN1),
	PINMUX_DATA(MSIOF3_SS1_MARK,		PORT273_FN1),

	/* Port270 - Port273 FN3 */
	PINMUX_DATA(VIO_CKO5_270_MARK,		PORT270_FN3),
	PINMUX_DATA(VIO_CKO2_271_MARK,		PORT271_FN3),
	PINMUX_DATA(VIO_CKO1_272_MARK,		PORT272_FN3),
	PINMUX_DATA(VIO_CKO4_273_MARK,		PORT273_FN3),

	/* Port274 */
	PINMUX_DATA(MSIOF4_SS2_MARK,		PORT274_FN1),
	PINMUX_DATA(TPU1TO0_MARK,		PORT274_FN4),

	/* Port275 - Port280 */
	PINMUX_DATA(IC_DP_MARK,			PORT275_FN1),
	PINMUX_DATA(SIM0_RST_MARK,		PORT276_FN1),
	PINMUX_DATA(IC_DM_MARK,			PORT277_FN1),
	PINMUX_DATA(SIM0_BSICOMP_MARK,		PORT278_FN1),
	PINMUX_DATA(SIM0_CLK_MARK,		PORT279_FN1),
	PINMUX_DATA(SIM0_IO_MARK,		PORT280_FN1),

	/* Port281 */
	PINMUX_DATA(SIM1_IO_MARK,		PORT281_FN1),
	PINMUX_DATA(PDM2_DATA_281_MARK,		PORT281_FN2,	MSEL3CR_12_1),

	/* Port282 */
	PINMUX_DATA(SIM1_CLK_MARK,		PORT282_FN1),
	PINMUX_DATA(PDM2_CLK_282_MARK,		PORT282_FN2),

	/* Port283 */
	PINMUX_DATA(SIM1_RST_MARK,		PORT283_FN1),

	/* Port289 */
	PINMUX_DATA(SDHID1_0_MARK,		PORT289_FN1),
	PINMUX_DATA(STMDATA0_2_MARK,		PORT289_FN3),

	/* Port290 */
	PINMUX_DATA(SDHID1_1_MARK,		PORT290_FN1),
	PINMUX_DATA(STMDATA1_2_MARK,		PORT290_FN3),
	PINMUX_DATA(IRQ51_MARK,			PORT290_FN0),

	/* Port291 - Port294 FN1 */
	PINMUX_DATA(SDHID1_2_MARK,		PORT291_FN1),
	PINMUX_DATA(SDHID1_3_MARK,		PORT292_FN1),
	PINMUX_DATA(SDHICLK1_MARK,		PORT293_FN1),
	PINMUX_DATA(SDHICMD1_MARK,		PORT294_FN1),

	/* Port291 - Port294 FN3 */
	PINMUX_DATA(STMDATA2_2_MARK,		PORT291_FN3),
	PINMUX_DATA(STMDATA3_2_MARK,		PORT292_FN3),
	PINMUX_DATA(STMCLK_2_MARK,		PORT293_FN3),
	PINMUX_DATA(STMSIDI_2_MARK,		PORT294_FN3),

	/* Port295 */
	PINMUX_DATA(SDHID2_0_MARK,		PORT295_FN1),
	PINMUX_DATA(MSIOF4_TXD_MARK,		PORT295_FN2),
	PINMUX_DATA(SCIFB2_TXD_295_MARK,	PORT295_FN3,	MSEL3CR_10_1),
	PINMUX_DATA(MSIOF6_TXD_MARK,		PORT295_FN4),

	/* Port296 */
	PINMUX_DATA(SDHID2_1_MARK,		PORT296_FN1),
	PINMUX_DATA(MSIOF6_SS2_MARK,		PORT296_FN4),
	PINMUX_DATA(IRQ52_MARK,			PORT296_FN0),

	/* Port297 - Port300 FN1 */
	PINMUX_DATA(SDHID2_2_MARK,		PORT297_FN1),
	PINMUX_DATA(SDHID2_3_MARK,		PORT298_FN1),
	PINMUX_DATA(SDHICLK2_MARK,		PORT299_FN1),
	PINMUX_DATA(SDHICMD2_MARK,		PORT300_FN1),

	/* Port297 - Port300 FN2 */
	PINMUX_DATA(MSIOF4_RXD_MARK,		PORT297_FN2),
	PINMUX_DATA(MSIOF4_SYNC_MARK,		PORT298_FN2),
	PINMUX_DATA(MSIOF4_SCK_MARK,		PORT299_FN2),
	PINMUX_DATA(MSIOF4_SS1_MARK,		PORT300_FN2),

	/* Port297 - Port300 FN3 */
	PINMUX_DATA(SCIFB2_RXD_297_MARK,	PORT297_FN3,	MSEL3CR_10_1),
	PINMUX_DATA(SCIFB2_CTS_298_MARK,	PORT298_FN3,	MSEL3CR_10_1),
	PINMUX_DATA(SCIFB2_SCK_299_MARK,	PORT299_FN3),
	PINMUX_DATA(SCIFB2_RTS_300_MARK,	PORT300_FN3),

	/* Port297 - Port300 FN4 */
	PINMUX_DATA(MSIOF6_RXD_MARK,		PORT297_FN4),
	PINMUX_DATA(MSIOF6_SYNC_MARK,		PORT298_FN4),
	PINMUX_DATA(MSIOF6_SCK_MARK,		PORT299_FN4),
	PINMUX_DATA(MSIOF6_SS1_MARK,		PORT300_FN4),

	/* Port301 */
	PINMUX_DATA(SDHICD0_MARK,		PORT301_FN1),
	PINMUX_DATA(IRQ50_MARK,			PORT301_FN0),

	/* Port302 - Port306 FN1 */
	PINMUX_DATA(SDHID0_0_MARK,		PORT302_FN1),
	PINMUX_DATA(SDHID0_1_MARK,		PORT303_FN1),
	PINMUX_DATA(SDHID0_2_MARK,		PORT304_FN1),
	PINMUX_DATA(SDHID0_3_MARK,		PORT305_FN1),
	PINMUX_DATA(SDHICMD0_MARK,		PORT306_FN1),

	/* Port302 - Port306 FN3 */
	PINMUX_DATA(STMDATA0_1_MARK,		PORT302_FN3),
	PINMUX_DATA(STMDATA1_1_MARK,		PORT303_FN3),
	PINMUX_DATA(STMDATA2_1_MARK,		PORT304_FN3),
	PINMUX_DATA(STMDATA3_1_MARK,		PORT305_FN3),
	PINMUX_DATA(STMSIDI_1_MARK,		PORT306_FN3),

	/* Port307 */
	PINMUX_DATA(SDHIWP0_MARK,		PORT307_FN1),

	/* Port308 */
	PINMUX_DATA(SDHICLK0_MARK,		PORT308_FN1),
	PINMUX_DATA(STMCLK_1_MARK,		PORT308_FN3),

	/* Port320 - Port329 */
	PINMUX_DATA(IRQ16_MARK,			PORT320_FN0),
	PINMUX_DATA(IRQ17_MARK,			PORT321_FN0),
	PINMUX_DATA(IRQ28_MARK,			PORT322_FN0),
	PINMUX_DATA(IRQ29_MARK,			PORT323_FN0),
	PINMUX_DATA(IRQ30_MARK,			PORT324_FN0),
	PINMUX_DATA(IRQ53_MARK,			PORT325_FN0),
	PINMUX_DATA(IRQ54_MARK,			PORT326_FN0),
	PINMUX_DATA(IRQ55_MARK,			PORT327_FN0),
	PINMUX_DATA(IRQ56_MARK,			PORT328_FN0),
	PINMUX_DATA(IRQ57_MARK,			PORT329_FN0),
};

#define __O	(SH_PFC_PIN_CFG_OUTPUT)
#define __IO	(SH_PFC_PIN_CFG_INPUT | SH_PFC_PIN_CFG_OUTPUT)
#define __PUD	(SH_PFC_PIN_CFG_PULL_DOWN | SH_PFC_PIN_CFG_PULL_UP)

#define R8A73A4_PIN_IO_PU_PD(pin)       SH_PFC_PIN_CFG(pin, __IO | __PUD)
#define R8A73A4_PIN_O(pin)              SH_PFC_PIN_CFG(pin, __O)

static const struct sh_pfc_pin pinmux_pins[] = {
	R8A73A4_PIN_IO_PU_PD(0), R8A73A4_PIN_IO_PU_PD(1),
	R8A73A4_PIN_IO_PU_PD(2), R8A73A4_PIN_IO_PU_PD(3),
	R8A73A4_PIN_IO_PU_PD(4), R8A73A4_PIN_IO_PU_PD(5),
	R8A73A4_PIN_IO_PU_PD(6), R8A73A4_PIN_IO_PU_PD(7),
	R8A73A4_PIN_IO_PU_PD(8), R8A73A4_PIN_IO_PU_PD(9),
	R8A73A4_PIN_IO_PU_PD(10), R8A73A4_PIN_IO_PU_PD(11),
	R8A73A4_PIN_IO_PU_PD(12), R8A73A4_PIN_IO_PU_PD(13),
	R8A73A4_PIN_IO_PU_PD(14), R8A73A4_PIN_IO_PU_PD(15),
	R8A73A4_PIN_IO_PU_PD(16), R8A73A4_PIN_IO_PU_PD(17),
	R8A73A4_PIN_IO_PU_PD(18), R8A73A4_PIN_IO_PU_PD(19),
	R8A73A4_PIN_IO_PU_PD(20), R8A73A4_PIN_IO_PU_PD(21),
	R8A73A4_PIN_IO_PU_PD(22), R8A73A4_PIN_IO_PU_PD(23),
	R8A73A4_PIN_IO_PU_PD(24), R8A73A4_PIN_IO_PU_PD(25),
	R8A73A4_PIN_IO_PU_PD(26), R8A73A4_PIN_IO_PU_PD(27),
	R8A73A4_PIN_IO_PU_PD(28), R8A73A4_PIN_IO_PU_PD(29),
	R8A73A4_PIN_IO_PU_PD(30),
	R8A73A4_PIN_IO_PU_PD(32), R8A73A4_PIN_IO_PU_PD(33),
	R8A73A4_PIN_IO_PU_PD(34), R8A73A4_PIN_IO_PU_PD(35),
	R8A73A4_PIN_IO_PU_PD(36), R8A73A4_PIN_IO_PU_PD(37),
	R8A73A4_PIN_IO_PU_PD(38), R8A73A4_PIN_IO_PU_PD(39),
	R8A73A4_PIN_IO_PU_PD(40),
	R8A73A4_PIN_IO_PU_PD(64), R8A73A4_PIN_IO_PU_PD(65),
	R8A73A4_PIN_IO_PU_PD(66), R8A73A4_PIN_IO_PU_PD(67),
	R8A73A4_PIN_IO_PU_PD(68), R8A73A4_PIN_IO_PU_PD(69),
	R8A73A4_PIN_IO_PU_PD(70), R8A73A4_PIN_IO_PU_PD(71),
	R8A73A4_PIN_IO_PU_PD(72), R8A73A4_PIN_IO_PU_PD(73),
	R8A73A4_PIN_O(74), R8A73A4_PIN_IO_PU_PD(75),
	R8A73A4_PIN_IO_PU_PD(76), R8A73A4_PIN_IO_PU_PD(77),
	R8A73A4_PIN_IO_PU_PD(78), R8A73A4_PIN_IO_PU_PD(79),
	R8A73A4_PIN_IO_PU_PD(80), R8A73A4_PIN_IO_PU_PD(81),
	R8A73A4_PIN_IO_PU_PD(82), R8A73A4_PIN_IO_PU_PD(83),
	R8A73A4_PIN_IO_PU_PD(84), R8A73A4_PIN_IO_PU_PD(85),
	R8A73A4_PIN_IO_PU_PD(96), R8A73A4_PIN_IO_PU_PD(97),
	R8A73A4_PIN_IO_PU_PD(98), R8A73A4_PIN_IO_PU_PD(99),
	R8A73A4_PIN_IO_PU_PD(100), R8A73A4_PIN_IO_PU_PD(101),
	R8A73A4_PIN_IO_PU_PD(102), R8A73A4_PIN_IO_PU_PD(103),
	R8A73A4_PIN_IO_PU_PD(104), R8A73A4_PIN_IO_PU_PD(105),
	R8A73A4_PIN_IO_PU_PD(106), R8A73A4_PIN_IO_PU_PD(107),
	R8A73A4_PIN_IO_PU_PD(108), R8A73A4_PIN_IO_PU_PD(109),
	R8A73A4_PIN_IO_PU_PD(110), R8A73A4_PIN_IO_PU_PD(111),
	R8A73A4_PIN_IO_PU_PD(112), R8A73A4_PIN_IO_PU_PD(113),
	R8A73A4_PIN_IO_PU_PD(114), R8A73A4_PIN_IO_PU_PD(115),
	R8A73A4_PIN_IO_PU_PD(116), R8A73A4_PIN_IO_PU_PD(117),
	R8A73A4_PIN_IO_PU_PD(118), R8A73A4_PIN_IO_PU_PD(119),
	R8A73A4_PIN_IO_PU_PD(120), R8A73A4_PIN_IO_PU_PD(121),
	R8A73A4_PIN_IO_PU_PD(122), R8A73A4_PIN_IO_PU_PD(123),
	R8A73A4_PIN_IO_PU_PD(124), R8A73A4_PIN_IO_PU_PD(125),
	R8A73A4_PIN_IO_PU_PD(126),
	R8A73A4_PIN_IO_PU_PD(128), R8A73A4_PIN_IO_PU_PD(129),
	R8A73A4_PIN_IO_PU_PD(130), R8A73A4_PIN_IO_PU_PD(131),
	R8A73A4_PIN_IO_PU_PD(132), R8A73A4_PIN_IO_PU_PD(133),
	R8A73A4_PIN_IO_PU_PD(134),
	R8A73A4_PIN_IO_PU_PD(160), R8A73A4_PIN_IO_PU_PD(161),
	R8A73A4_PIN_IO_PU_PD(162), R8A73A4_PIN_IO_PU_PD(163),
	R8A73A4_PIN_IO_PU_PD(164), R8A73A4_PIN_IO_PU_PD(165),
	R8A73A4_PIN_IO_PU_PD(166), R8A73A4_PIN_IO_PU_PD(167),
	R8A73A4_PIN_IO_PU_PD(168), R8A73A4_PIN_IO_PU_PD(169),
	R8A73A4_PIN_IO_PU_PD(170), R8A73A4_PIN_IO_PU_PD(171),
	R8A73A4_PIN_IO_PU_PD(172), R8A73A4_PIN_IO_PU_PD(173),
	R8A73A4_PIN_IO_PU_PD(174), R8A73A4_PIN_IO_PU_PD(175),
	R8A73A4_PIN_IO_PU_PD(176), R8A73A4_PIN_IO_PU_PD(177),
	R8A73A4_PIN_IO_PU_PD(178),
	R8A73A4_PIN_IO_PU_PD(192), R8A73A4_PIN_IO_PU_PD(193),
	R8A73A4_PIN_IO_PU_PD(194), R8A73A4_PIN_IO_PU_PD(195),
	R8A73A4_PIN_IO_PU_PD(196), R8A73A4_PIN_IO_PU_PD(197),
	R8A73A4_PIN_IO_PU_PD(198), R8A73A4_PIN_IO_PU_PD(199),
	R8A73A4_PIN_IO_PU_PD(200), R8A73A4_PIN_IO_PU_PD(201),
	R8A73A4_PIN_IO_PU_PD(202), R8A73A4_PIN_IO_PU_PD(203),
	R8A73A4_PIN_IO_PU_PD(204), R8A73A4_PIN_IO_PU_PD(205),
	R8A73A4_PIN_IO_PU_PD(206), R8A73A4_PIN_IO_PU_PD(207),
	R8A73A4_PIN_IO_PU_PD(208), R8A73A4_PIN_IO_PU_PD(209),
	R8A73A4_PIN_IO_PU_PD(210), R8A73A4_PIN_IO_PU_PD(211),
	R8A73A4_PIN_IO_PU_PD(212), R8A73A4_PIN_IO_PU_PD(213),
	R8A73A4_PIN_IO_PU_PD(214), R8A73A4_PIN_IO_PU_PD(215),
	R8A73A4_PIN_IO_PU_PD(216), R8A73A4_PIN_IO_PU_PD(217),
	R8A73A4_PIN_IO_PU_PD(218), R8A73A4_PIN_IO_PU_PD(219),
	R8A73A4_PIN_IO_PU_PD(220), R8A73A4_PIN_IO_PU_PD(221),
	R8A73A4_PIN_IO_PU_PD(222),
	R8A73A4_PIN_IO_PU_PD(224), R8A73A4_PIN_IO_PU_PD(225),
	R8A73A4_PIN_IO_PU_PD(226), R8A73A4_PIN_IO_PU_PD(227),
	R8A73A4_PIN_IO_PU_PD(228), R8A73A4_PIN_IO_PU_PD(229),
	R8A73A4_PIN_IO_PU_PD(230), R8A73A4_PIN_IO_PU_PD(231),
	R8A73A4_PIN_IO_PU_PD(232), R8A73A4_PIN_IO_PU_PD(233),
	R8A73A4_PIN_IO_PU_PD(234), R8A73A4_PIN_IO_PU_PD(235),
	R8A73A4_PIN_IO_PU_PD(236), R8A73A4_PIN_IO_PU_PD(237),
	R8A73A4_PIN_IO_PU_PD(238), R8A73A4_PIN_IO_PU_PD(239),
	R8A73A4_PIN_IO_PU_PD(240), R8A73A4_PIN_IO_PU_PD(241),
	R8A73A4_PIN_IO_PU_PD(242), R8A73A4_PIN_IO_PU_PD(243),
	R8A73A4_PIN_IO_PU_PD(244), R8A73A4_PIN_IO_PU_PD(245),
	R8A73A4_PIN_IO_PU_PD(246), R8A73A4_PIN_IO_PU_PD(247),
	R8A73A4_PIN_IO_PU_PD(248), R8A73A4_PIN_IO_PU_PD(249),
	R8A73A4_PIN_IO_PU_PD(250),
	R8A73A4_PIN_IO_PU_PD(256), R8A73A4_PIN_IO_PU_PD(257),
	R8A73A4_PIN_IO_PU_PD(258), R8A73A4_PIN_IO_PU_PD(259),
	R8A73A4_PIN_IO_PU_PD(260), R8A73A4_PIN_IO_PU_PD(261),
	R8A73A4_PIN_IO_PU_PD(262), R8A73A4_PIN_IO_PU_PD(263),
	R8A73A4_PIN_IO_PU_PD(264), R8A73A4_PIN_IO_PU_PD(265),
	R8A73A4_PIN_IO_PU_PD(266), R8A73A4_PIN_IO_PU_PD(267),
	R8A73A4_PIN_IO_PU_PD(268), R8A73A4_PIN_IO_PU_PD(269),
	R8A73A4_PIN_IO_PU_PD(270), R8A73A4_PIN_IO_PU_PD(271),
	R8A73A4_PIN_IO_PU_PD(272), R8A73A4_PIN_IO_PU_PD(273),
	R8A73A4_PIN_IO_PU_PD(274), R8A73A4_PIN_IO_PU_PD(275),
	R8A73A4_PIN_IO_PU_PD(276), R8A73A4_PIN_IO_PU_PD(277),
	R8A73A4_PIN_IO_PU_PD(278), R8A73A4_PIN_IO_PU_PD(279),
	R8A73A4_PIN_IO_PU_PD(280), R8A73A4_PIN_IO_PU_PD(281),
	R8A73A4_PIN_IO_PU_PD(282), R8A73A4_PIN_IO_PU_PD(283),
	R8A73A4_PIN_O(288), R8A73A4_PIN_IO_PU_PD(289),
	R8A73A4_PIN_IO_PU_PD(290), R8A73A4_PIN_IO_PU_PD(291),
	R8A73A4_PIN_IO_PU_PD(292), R8A73A4_PIN_IO_PU_PD(293),
	R8A73A4_PIN_IO_PU_PD(294), R8A73A4_PIN_IO_PU_PD(295),
	R8A73A4_PIN_IO_PU_PD(296), R8A73A4_PIN_IO_PU_PD(297),
	R8A73A4_PIN_IO_PU_PD(298), R8A73A4_PIN_IO_PU_PD(299),
	R8A73A4_PIN_IO_PU_PD(300), R8A73A4_PIN_IO_PU_PD(301),
	R8A73A4_PIN_IO_PU_PD(302), R8A73A4_PIN_IO_PU_PD(303),
	R8A73A4_PIN_IO_PU_PD(304), R8A73A4_PIN_IO_PU_PD(305),
	R8A73A4_PIN_IO_PU_PD(306), R8A73A4_PIN_IO_PU_PD(307),
	R8A73A4_PIN_IO_PU_PD(308),
	R8A73A4_PIN_IO_PU_PD(320), R8A73A4_PIN_IO_PU_PD(321),
	R8A73A4_PIN_IO_PU_PD(322), R8A73A4_PIN_IO_PU_PD(323),
	R8A73A4_PIN_IO_PU_PD(324), R8A73A4_PIN_IO_PU_PD(325),
	R8A73A4_PIN_IO_PU_PD(326), R8A73A4_PIN_IO_PU_PD(327),
	R8A73A4_PIN_IO_PU_PD(328), R8A73A4_PIN_IO_PU_PD(329),
};

/* - IRQC ------------------------------------------------------------------- */
#define IRQC_PINS_MUX(pin, irq_mark)				\
static const unsigned int irqc_irq##irq_mark##_pins[] = {	\
	pin,							\
};								\
static const unsigned int irqc_irq##irq_mark##_mux[] = {	\
	IRQ##irq_mark##_MARK,					\
}
IRQC_PINS_MUX(0, 0);
IRQC_PINS_MUX(1, 1);
IRQC_PINS_MUX(2, 2);
IRQC_PINS_MUX(3, 3);
IRQC_PINS_MUX(4, 4);
IRQC_PINS_MUX(5, 5);
IRQC_PINS_MUX(6, 6);
IRQC_PINS_MUX(7, 7);
IRQC_PINS_MUX(8, 8);
IRQC_PINS_MUX(9, 9);
IRQC_PINS_MUX(10, 10);
IRQC_PINS_MUX(11, 11);
IRQC_PINS_MUX(12, 12);
IRQC_PINS_MUX(13, 13);
IRQC_PINS_MUX(14, 14);
IRQC_PINS_MUX(15, 15);
IRQC_PINS_MUX(66, 40);
IRQC_PINS_MUX(84, 19);
IRQC_PINS_MUX(85, 18);
IRQC_PINS_MUX(102, 41);
IRQC_PINS_MUX(103, 42);
IRQC_PINS_MUX(109, 43);
IRQC_PINS_MUX(110, 44);
IRQC_PINS_MUX(111, 45);
IRQC_PINS_MUX(112, 46);
IRQC_PINS_MUX(113, 47);
IRQC_PINS_MUX(114, 48);
IRQC_PINS_MUX(115, 49);
IRQC_PINS_MUX(160, 20);
IRQC_PINS_MUX(161, 21);
IRQC_PINS_MUX(162, 22);
IRQC_PINS_MUX(163, 23);
IRQC_PINS_MUX(175, 24);
IRQC_PINS_MUX(176, 25);
IRQC_PINS_MUX(177, 26);
IRQC_PINS_MUX(178, 27);
IRQC_PINS_MUX(192, 31);
IRQC_PINS_MUX(193, 32);
IRQC_PINS_MUX(194, 33);
IRQC_PINS_MUX(195, 34);
IRQC_PINS_MUX(196, 35);
IRQC_PINS_MUX(197, 36);
IRQC_PINS_MUX(198, 37);
IRQC_PINS_MUX(199, 38);
IRQC_PINS_MUX(200, 39);
IRQC_PINS_MUX(290, 51);
IRQC_PINS_MUX(296, 52);
IRQC_PINS_MUX(301, 50);
IRQC_PINS_MUX(320, 16);
IRQC_PINS_MUX(321, 17);
IRQC_PINS_MUX(322, 28);
IRQC_PINS_MUX(323, 29);
IRQC_PINS_MUX(324, 30);
IRQC_PINS_MUX(325, 53);
IRQC_PINS_MUX(326, 54);
IRQC_PINS_MUX(327, 55);
IRQC_PINS_MUX(328, 56);
IRQC_PINS_MUX(329, 57);
/* - MMCIF0 ----------------------------------------------------------------- */
static const unsigned int mmc0_data1_pins[] = {
	/* D[0] */
	164,
};
static const unsigned int mmc0_data1_mux[] = {
	MMCD0_0_MARK,
};
static const unsigned int mmc0_data4_pins[] = {
	/* D[0:3] */
	164, 165, 166, 167,
};
static const unsigned int mmc0_data4_mux[] = {
	MMCD0_0_MARK, MMCD0_1_MARK, MMCD0_2_MARK, MMCD0_3_MARK,
};
static const unsigned int mmc0_data8_pins[] = {
	/* D[0:7] */
	164, 165, 166, 167, 168, 169, 170, 171,
};
static const unsigned int mmc0_data8_mux[] = {
	MMCD0_0_MARK, MMCD0_1_MARK, MMCD0_2_MARK, MMCD0_3_MARK,
	MMCD0_4_MARK, MMCD0_5_MARK, MMCD0_6_MARK, MMCD0_7_MARK,
};
static const unsigned int mmc0_ctrl_pins[] = {
	/* CMD, CLK */
	172, 173,
};
static const unsigned int mmc0_ctrl_mux[] = {
	MMCCMD0_MARK, MMCCLK0_MARK,
};
/* - MMCIF1 ----------------------------------------------------------------- */
static const unsigned int mmc1_data1_pins[] = {
	/* D[0] */
	199,
};
static const unsigned int mmc1_data1_mux[] = {
	MMCD1_0_MARK,
};
static const unsigned int mmc1_data4_pins[] = {
	/* D[0:3] */
	199, 198, 197, 196,
};
static const unsigned int mmc1_data4_mux[] = {
	MMCD1_0_MARK, MMCD1_1_MARK, MMCD1_2_MARK, MMCD1_3_MARK,
};
static const unsigned int mmc1_data8_pins[] = {
	/* D[0:7] */
	199, 198, 197, 196, 195, 194, 193, 192,
};
static const unsigned int mmc1_data8_mux[] = {
	MMCD1_0_MARK, MMCD1_1_MARK, MMCD1_2_MARK, MMCD1_3_MARK,
	MMCD1_4_MARK, MMCD1_5_MARK, MMCD1_6_MARK, MMCD1_7_MARK,
};
static const unsigned int mmc1_ctrl_pins[] = {
	/* CMD, CLK */
	200, 203,
};
static const unsigned int mmc1_ctrl_mux[] = {
	MMCCMD1_MARK, MMCCLK1_MARK,
};
/* - SCIFA0 ----------------------------------------------------------------- */
static const unsigned int scifa0_data_pins[] = {
	/* SCIFA0_RXD, SCIFA0_TXD */
	117, 116,
};
static const unsigned int scifa0_data_mux[] = {
	SCIFA0_RXD_MARK, SCIFA0_TXD_MARK,
};
static const unsigned int scifa0_clk_pins[] = {
	/* SCIFA0_SCK */
	34,
};
static const unsigned int scifa0_clk_mux[] = {
	SCIFA0_SCK_MARK,
};
static const unsigned int scifa0_ctrl_pins[] = {
	/* SCIFA0_RTS, SCIFA0_CTS */
	32, 33,
};
static const unsigned int scifa0_ctrl_mux[] = {
	SCIFA0_RTS_MARK, SCIFA0_CTS_MARK,
};
/* - SCIFA1 ----------------------------------------------------------------- */
static const unsigned int scifa1_data_pins[] = {
	/* SCIFA1_RXD, SCIFA1_TXD */
	119, 118,
};
static const unsigned int scifa1_data_mux[] = {
	SCIFA1_RXD_MARK, SCIFA1_TXD_MARK,
};
static const unsigned int scifa1_clk_pins[] = {
	/* SCIFA1_SCK */
	37,
};
static const unsigned int scifa1_clk_mux[] = {
	SCIFA1_SCK_MARK,
};
static const unsigned int scifa1_ctrl_pins[] = {
	/* SCIFA1_RTS, SCIFA1_CTS */
	35, 36,
};
static const unsigned int scifa1_ctrl_mux[] = {
	SCIFA1_RTS_MARK, SCIFA1_CTS_MARK,
};
/* - SCIFB0 ----------------------------------------------------------------- */
static const unsigned int scifb0_data_pins[] = {
	/* SCIFB0_RXD, SCIFB0_TXD */
	123, 122,
};
static const unsigned int scifb0_data_mux[] = {
	SCIFB0_RXD_MARK, SCIFB0_TXD_MARK,
};
static const unsigned int scifb0_clk_pins[] = {
	/* SCIFB0_SCK */
	40,
};
static const unsigned int scifb0_clk_mux[] = {
	SCIFB0_SCK_MARK,
};
static const unsigned int scifb0_ctrl_pins[] = {
	/* SCIFB0_RTS, SCIFB0_CTS */
	38, 39,
};
static const unsigned int scifb0_ctrl_mux[] = {
	SCIFB0_RTS_MARK, SCIFB0_CTS_MARK,
};
/* - SCIFB1 ----------------------------------------------------------------- */
static const unsigned int scifb1_data_pins[] = {
	/* SCIFB1_RXD, SCIFB1_TXD */
	27, 26,
};
static const unsigned int scifb1_data_mux[] = {
	SCIFB1_RXD_27_MARK, SCIFB1_TXD_26_MARK,
};
static const unsigned int scifb1_clk_pins[] = {
	/* SCIFB1_SCK */
	28,
};
static const unsigned int scifb1_clk_mux[] = {
	SCIFB1_SCK_28_MARK,
};
static const unsigned int scifb1_ctrl_pins[] = {
	/* SCIFB1_RTS, SCIFB1_CTS */
	24, 25,
};
static const unsigned int scifb1_ctrl_mux[] = {
	SCIFB1_RTS_24_MARK, SCIFB1_CTS_25_MARK,
};
static const unsigned int scifb1_data_b_pins[] = {
	/* SCIFB1_RXD, SCIFB1_TXD */
	72, 67,
};
static const unsigned int scifb1_data_b_mux[] = {
	SCIFB1_RXD_72_MARK, SCIFB1_TXD_67_MARK,
};
static const unsigned int scifb1_clk_b_pins[] = {
	/* SCIFB1_SCK */
	261,
};
static const unsigned int scifb1_clk_b_mux[] = {
	SCIFB1_SCK_261_MARK,
};
static const unsigned int scifb1_ctrl_b_pins[] = {
	/* SCIFB1_RTS, SCIFB1_CTS */
	70, 71,
};
static const unsigned int scifb1_ctrl_b_mux[] = {
	SCIFB1_RTS_70_MARK, SCIFB1_CTS_71_MARK,
};
/* - SCIFB2 ----------------------------------------------------------------- */
static const unsigned int scifb2_data_pins[] = {
	/* SCIFB2_RXD, SCIFB2_TXD */
	69, 68,
};
static const unsigned int scifb2_data_mux[] = {
	SCIFB2_RXD_69_MARK, SCIFB2_TXD_68_MARK,
};
static const unsigned int scifb2_clk_pins[] = {
	/* SCIFB2_SCK */
	262,
};
static const unsigned int scifb2_clk_mux[] = {
	SCIFB2_SCK_262_MARK,
};
static const unsigned int scifb2_ctrl_pins[] = {
	/* SCIFB2_RTS, SCIFB2_CTS */
	73, 66,
};
static const unsigned int scifb2_ctrl_mux[] = {
	SCIFB2_RTS_73_MARK, SCIFB2_CTS_66_MARK,
};
static const unsigned int scifb2_data_b_pins[] = {
	/* SCIFB2_RXD, SCIFB2_TXD */
	297, 295,
};
static const unsigned int scifb2_data_b_mux[] = {
	SCIFB2_RXD_297_MARK, SCIFB2_TXD_295_MARK,
};
static const unsigned int scifb2_clk_b_pins[] = {
	/* SCIFB2_SCK */
	299,
};
static const unsigned int scifb2_clk_b_mux[] = {
	SCIFB2_SCK_299_MARK,
};
static const unsigned int scifb2_ctrl_b_pins[] = {
	/* SCIFB2_RTS, SCIFB2_CTS */
	300, 298,
};
static const unsigned int scifb2_ctrl_b_mux[] = {
	SCIFB2_RTS_300_MARK, SCIFB2_CTS_298_MARK,
};
/* - SCIFB3 ----------------------------------------------------------------- */
static const unsigned int scifb3_data_pins[] = {
	/* SCIFB3_RXD, SCIFB3_TXD */
	22, 21,
};
static const unsigned int scifb3_data_mux[] = {
	SCIFB3_RXD_22_MARK, SCIFB3_TXD_21_MARK,
};
static const unsigned int scifb3_clk_pins[] = {
	/* SCIFB3_SCK */
	23,
};
static const unsigned int scifb3_clk_mux[] = {
	SCIFB3_SCK_23_MARK,
};
static const unsigned int scifb3_ctrl_pins[] = {
	/* SCIFB3_RTS, SCIFB3_CTS */
	19, 20,
};
static const unsigned int scifb3_ctrl_mux[] = {
	SCIFB3_RTS_19_MARK, SCIFB3_CTS_20_MARK,
};
static const unsigned int scifb3_data_b_pins[] = {
	/* SCIFB3_RXD, SCIFB3_TXD */
	120, 121,
};
static const unsigned int scifb3_data_b_mux[] = {
	SCIFB3_RXD_120_MARK, SCIFB3_TXD_121_MARK,
};
static const unsigned int scifb3_clk_b_pins[] = {
	/* SCIFB3_SCK */
	40,
};
static const unsigned int scifb3_clk_b_mux[] = {
	SCIFB3_SCK_40_MARK,
};
static const unsigned int scifb3_ctrl_b_pins[] = {
	/* SCIFB3_RTS, SCIFB3_CTS */
	38, 39,
};
static const unsigned int scifb3_ctrl_b_mux[] = {
	SCIFB3_RTS_38_MARK, SCIFB3_CTS_39_MARK,
};
/* - SDHI0 ------------------------------------------------------------------ */
static const unsigned int sdhi0_data1_pins[] = {
	/* D0 */
	302,
};
static const unsigned int sdhi0_data1_mux[] = {
	SDHID0_0_MARK,
};
static const unsigned int sdhi0_data4_pins[] = {
	/* D[0:3] */
	302, 303, 304, 305,
};
static const unsigned int sdhi0_data4_mux[] = {
	SDHID0_0_MARK, SDHID0_1_MARK, SDHID0_2_MARK, SDHID0_3_MARK,
};
static const unsigned int sdhi0_ctrl_pins[] = {
	/* CLK, CMD */
	308, 306,
};
static const unsigned int sdhi0_ctrl_mux[] = {
	SDHICLK0_MARK, SDHICMD0_MARK,
};
static const unsigned int sdhi0_cd_pins[] = {
	/* CD */
	301,
};
static const unsigned int sdhi0_cd_mux[] = {
	SDHICD0_MARK,
};
static const unsigned int sdhi0_wp_pins[] = {
	/* WP */
	307,
};
static const unsigned int sdhi0_wp_mux[] = {
	SDHIWP0_MARK,
};
/* - SDHI1 ------------------------------------------------------------------ */
static const unsigned int sdhi1_data1_pins[] = {
	/* D0 */
	289,
};
static const unsigned int sdhi1_data1_mux[] = {
	SDHID1_0_MARK,
};
static const unsigned int sdhi1_data4_pins[] = {
	/* D[0:3] */
	289, 290, 291, 292,
};
static const unsigned int sdhi1_data4_mux[] = {
	SDHID1_0_MARK, SDHID1_1_MARK, SDHID1_2_MARK, SDHID1_3_MARK,
};
static const unsigned int sdhi1_ctrl_pins[] = {
	/* CLK, CMD */
	293, 294,
};
static const unsigned int sdhi1_ctrl_mux[] = {
	SDHICLK1_MARK, SDHICMD1_MARK,
};
/* - SDHI2 ------------------------------------------------------------------ */
static const unsigned int sdhi2_data1_pins[] = {
	/* D0 */
	295,
};
static const unsigned int sdhi2_data1_mux[] = {
	SDHID2_0_MARK,
};
static const unsigned int sdhi2_data4_pins[] = {
	/* D[0:3] */
	295, 296, 297, 298,
};
static const unsigned int sdhi2_data4_mux[] = {
	SDHID2_0_MARK, SDHID2_1_MARK, SDHID2_2_MARK, SDHID2_3_MARK,
};
static const unsigned int sdhi2_ctrl_pins[] = {
	/* CLK, CMD */
	299, 300,
};
static const unsigned int sdhi2_ctrl_mux[] = {
	SDHICLK2_MARK, SDHICMD2_MARK,
};

static const struct sh_pfc_pin_group pinmux_groups[] = {
	SH_PFC_PIN_GROUP(irqc_irq0),
	SH_PFC_PIN_GROUP(irqc_irq1),
	SH_PFC_PIN_GROUP(irqc_irq2),
	SH_PFC_PIN_GROUP(irqc_irq3),
	SH_PFC_PIN_GROUP(irqc_irq4),
	SH_PFC_PIN_GROUP(irqc_irq5),
	SH_PFC_PIN_GROUP(irqc_irq6),
	SH_PFC_PIN_GROUP(irqc_irq7),
	SH_PFC_PIN_GROUP(irqc_irq8),
	SH_PFC_PIN_GROUP(irqc_irq9),
	SH_PFC_PIN_GROUP(irqc_irq10),
	SH_PFC_PIN_GROUP(irqc_irq11),
	SH_PFC_PIN_GROUP(irqc_irq12),
	SH_PFC_PIN_GROUP(irqc_irq13),
	SH_PFC_PIN_GROUP(irqc_irq14),
	SH_PFC_PIN_GROUP(irqc_irq15),
	SH_PFC_PIN_GROUP(irqc_irq16),
	SH_PFC_PIN_GROUP(irqc_irq17),
	SH_PFC_PIN_GROUP(irqc_irq18),
	SH_PFC_PIN_GROUP(irqc_irq19),
	SH_PFC_PIN_GROUP(irqc_irq20),
	SH_PFC_PIN_GROUP(irqc_irq21),
	SH_PFC_PIN_GROUP(irqc_irq22),
	SH_PFC_PIN_GROUP(irqc_irq23),
	SH_PFC_PIN_GROUP(irqc_irq24),
	SH_PFC_PIN_GROUP(irqc_irq25),
	SH_PFC_PIN_GROUP(irqc_irq26),
	SH_PFC_PIN_GROUP(irqc_irq27),
	SH_PFC_PIN_GROUP(irqc_irq28),
	SH_PFC_PIN_GROUP(irqc_irq29),
	SH_PFC_PIN_GROUP(irqc_irq30),
	SH_PFC_PIN_GROUP(irqc_irq31),
	SH_PFC_PIN_GROUP(irqc_irq32),
	SH_PFC_PIN_GROUP(irqc_irq33),
	SH_PFC_PIN_GROUP(irqc_irq34),
	SH_PFC_PIN_GROUP(irqc_irq35),
	SH_PFC_PIN_GROUP(irqc_irq36),
	SH_PFC_PIN_GROUP(irqc_irq37),
	SH_PFC_PIN_GROUP(irqc_irq38),
	SH_PFC_PIN_GROUP(irqc_irq39),
	SH_PFC_PIN_GROUP(irqc_irq40),
	SH_PFC_PIN_GROUP(irqc_irq41),
	SH_PFC_PIN_GROUP(irqc_irq42),
	SH_PFC_PIN_GROUP(irqc_irq43),
	SH_PFC_PIN_GROUP(irqc_irq44),
	SH_PFC_PIN_GROUP(irqc_irq45),
	SH_PFC_PIN_GROUP(irqc_irq46),
	SH_PFC_PIN_GROUP(irqc_irq47),
	SH_PFC_PIN_GROUP(irqc_irq48),
	SH_PFC_PIN_GROUP(irqc_irq49),
	SH_PFC_PIN_GROUP(irqc_irq50),
	SH_PFC_PIN_GROUP(irqc_irq51),
	SH_PFC_PIN_GROUP(irqc_irq52),
	SH_PFC_PIN_GROUP(irqc_irq53),
	SH_PFC_PIN_GROUP(irqc_irq54),
	SH_PFC_PIN_GROUP(irqc_irq55),
	SH_PFC_PIN_GROUP(irqc_irq56),
	SH_PFC_PIN_GROUP(irqc_irq57),
	SH_PFC_PIN_GROUP(mmc0_data1),
	SH_PFC_PIN_GROUP(mmc0_data4),
	SH_PFC_PIN_GROUP(mmc0_data8),
	SH_PFC_PIN_GROUP(mmc0_ctrl),
	SH_PFC_PIN_GROUP(mmc1_data1),
	SH_PFC_PIN_GROUP(mmc1_data4),
	SH_PFC_PIN_GROUP(mmc1_data8),
	SH_PFC_PIN_GROUP(mmc1_ctrl),
	SH_PFC_PIN_GROUP(scifa0_data),
	SH_PFC_PIN_GROUP(scifa0_clk),
	SH_PFC_PIN_GROUP(scifa0_ctrl),
	SH_PFC_PIN_GROUP(scifa1_data),
	SH_PFC_PIN_GROUP(scifa1_clk),
	SH_PFC_PIN_GROUP(scifa1_ctrl),
	SH_PFC_PIN_GROUP(scifb0_data),
	SH_PFC_PIN_GROUP(scifb0_clk),
	SH_PFC_PIN_GROUP(scifb0_ctrl),
	SH_PFC_PIN_GROUP(scifb1_data),
	SH_PFC_PIN_GROUP(scifb1_clk),
	SH_PFC_PIN_GROUP(scifb1_ctrl),
	SH_PFC_PIN_GROUP(scifb1_data_b),
	SH_PFC_PIN_GROUP(scifb1_clk_b),
	SH_PFC_PIN_GROUP(scifb1_ctrl_b),
	SH_PFC_PIN_GROUP(scifb2_data),
	SH_PFC_PIN_GROUP(scifb2_clk),
	SH_PFC_PIN_GROUP(scifb2_ctrl),
	SH_PFC_PIN_GROUP(scifb2_data_b),
	SH_PFC_PIN_GROUP(scifb2_clk_b),
	SH_PFC_PIN_GROUP(scifb2_ctrl_b),
	SH_PFC_PIN_GROUP(scifb3_data),
	SH_PFC_PIN_GROUP(scifb3_clk),
	SH_PFC_PIN_GROUP(scifb3_ctrl),
	SH_PFC_PIN_GROUP(scifb3_data_b),
	SH_PFC_PIN_GROUP(scifb3_clk_b),
	SH_PFC_PIN_GROUP(scifb3_ctrl_b),
	SH_PFC_PIN_GROUP(sdhi0_data1),
	SH_PFC_PIN_GROUP(sdhi0_data4),
	SH_PFC_PIN_GROUP(sdhi0_ctrl),
	SH_PFC_PIN_GROUP(sdhi0_cd),
	SH_PFC_PIN_GROUP(sdhi0_wp),
	SH_PFC_PIN_GROUP(sdhi1_data1),
	SH_PFC_PIN_GROUP(sdhi1_data4),
	SH_PFC_PIN_GROUP(sdhi1_ctrl),
	SH_PFC_PIN_GROUP(sdhi2_data1),
	SH_PFC_PIN_GROUP(sdhi2_data4),
	SH_PFC_PIN_GROUP(sdhi2_ctrl),
};

static const char * const irqc_groups[] = {
	"irqc_irq0",
	"irqc_irq1",
	"irqc_irq2",
	"irqc_irq3",
	"irqc_irq4",
	"irqc_irq5",
	"irqc_irq6",
	"irqc_irq7",
	"irqc_irq8",
	"irqc_irq9",
	"irqc_irq10",
	"irqc_irq11",
	"irqc_irq12",
	"irqc_irq13",
	"irqc_irq14",
	"irqc_irq15",
	"irqc_irq16",
	"irqc_irq17",
	"irqc_irq18",
	"irqc_irq19",
	"irqc_irq20",
	"irqc_irq21",
	"irqc_irq22",
	"irqc_irq23",
	"irqc_irq24",
	"irqc_irq25",
	"irqc_irq26",
	"irqc_irq27",
	"irqc_irq28",
	"irqc_irq29",
	"irqc_irq30",
	"irqc_irq31",
	"irqc_irq32",
	"irqc_irq33",
	"irqc_irq34",
	"irqc_irq35",
	"irqc_irq36",
	"irqc_irq37",
	"irqc_irq38",
	"irqc_irq39",
	"irqc_irq40",
	"irqc_irq41",
	"irqc_irq42",
	"irqc_irq43",
	"irqc_irq44",
	"irqc_irq45",
	"irqc_irq46",
	"irqc_irq47",
	"irqc_irq48",
	"irqc_irq49",
	"irqc_irq50",
	"irqc_irq51",
	"irqc_irq52",
	"irqc_irq53",
	"irqc_irq54",
	"irqc_irq55",
	"irqc_irq56",
	"irqc_irq57",
};

static const char * const mmc0_groups[] = {
	"mmc0_data1",
	"mmc0_data4",
	"mmc0_data8",
	"mmc0_ctrl",
};

static const char * const mmc1_groups[] = {
	"mmc1_data1",
	"mmc1_data4",
	"mmc1_data8",
	"mmc1_ctrl",
};

static const char * const scifa0_groups[] = {
	"scifa0_data",
	"scifa0_clk",
	"scifa0_ctrl",
};

static const char * const scifa1_groups[] = {
	"scifa1_data",
	"scifa1_clk",
	"scifa1_ctrl",
};

static const char * const scifb0_groups[] = {
	"scifb0_data",
	"scifb0_clk",
	"scifb0_ctrl",
};

static const char * const scifb1_groups[] = {
	"scifb1_data",
	"scifb1_clk",
	"scifb1_ctrl",
	"scifb1_data_b",
	"scifb1_clk_b",
	"scifb1_ctrl_b",
};

static const char * const scifb2_groups[] = {
	"scifb2_data",
	"scifb2_clk",
	"scifb2_ctrl",
	"scifb2_data_b",
	"scifb2_clk_b",
	"scifb2_ctrl_b",
};

static const char * const scifb3_groups[] = {
	"scifb3_data",
	"scifb3_clk",
	"scifb3_ctrl",
	"scifb3_data_b",
	"scifb3_clk_b",
	"scifb3_ctrl_b",
};

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

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

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

static const struct sh_pfc_function pinmux_functions[] = {
	SH_PFC_FUNCTION(irqc),
	SH_PFC_FUNCTION(mmc0),
	SH_PFC_FUNCTION(mmc1),
	SH_PFC_FUNCTION(scifa0),
	SH_PFC_FUNCTION(scifa1),
	SH_PFC_FUNCTION(scifb0),
	SH_PFC_FUNCTION(scifb1),
	SH_PFC_FUNCTION(scifb2),
	SH_PFC_FUNCTION(scifb3),
	SH_PFC_FUNCTION(sdhi0),
	SH_PFC_FUNCTION(sdhi1),
	SH_PFC_FUNCTION(sdhi2),
};

static const struct pinmux_cfg_reg pinmux_config_regs[] = {
	PORTCR(0, 0xe6050000),
	PORTCR(1, 0xe6050001),
	PORTCR(2, 0xe6050002),
	PORTCR(3, 0xe6050003),
	PORTCR(4, 0xe6050004),
	PORTCR(5, 0xe6050005),
	PORTCR(6, 0xe6050006),
	PORTCR(7, 0xe6050007),
	PORTCR(8, 0xe6050008),
	PORTCR(9, 0xe6050009),
	PORTCR(10, 0xe605000A),
	PORTCR(11, 0xe605000B),
	PORTCR(12, 0xe605000C),
	PORTCR(13, 0xe605000D),
	PORTCR(14, 0xe605000E),
	PORTCR(15, 0xe605000F),
	PORTCR(16, 0xe6050010),
	PORTCR(17, 0xe6050011),
	PORTCR(18, 0xe6050012),
	PORTCR(19, 0xe6050013),
	PORTCR(20, 0xe6050014),
	PORTCR(21, 0xe6050015),
	PORTCR(22, 0xe6050016),
	PORTCR(23, 0xe6050017),
	PORTCR(24, 0xe6050018),
	PORTCR(25, 0xe6050019),
	PORTCR(26, 0xe605001A),
	PORTCR(27, 0xe605001B),
	PORTCR(28, 0xe605001C),
	PORTCR(29, 0xe605001D),
	PORTCR(30, 0xe605001E),
	PORTCR(32, 0xe6051020),
	PORTCR(33, 0xe6051021),
	PORTCR(34, 0xe6051022),
	PORTCR(35, 0xe6051023),
	PORTCR(36, 0xe6051024),
	PORTCR(37, 0xe6051025),
	PORTCR(38, 0xe6051026),
	PORTCR(39, 0xe6051027),
	PORTCR(40, 0xe6051028),
	PORTCR(64, 0xe6050040),
	PORTCR(65, 0xe6050041),
	PORTCR(66, 0xe6050042),
	PORTCR(67, 0xe6050043),
	PORTCR(68, 0xe6050044),
	PORTCR(69, 0xe6050045),
	PORTCR(70, 0xe6050046),
	PORTCR(71, 0xe6050047),
	PORTCR(72, 0xe6050048),
	PORTCR(73, 0xe6050049),
	PORTCR(74, 0xe605004A),
	PORTCR(75, 0xe605004B),
	PORTCR(76, 0xe605004C),
	PORTCR(77, 0xe605004D),
	PORTCR(78, 0xe605004E),
	PORTCR(79, 0xe605004F),
	PORTCR(80, 0xe6050050),
	PORTCR(81, 0xe6050051),
	PORTCR(82, 0xe6050052),
	PORTCR(83, 0xe6050053),
	PORTCR(84, 0xe6050054),
	PORTCR(85, 0xe6050055),
	PORTCR(96, 0xe6051060),
	PORTCR(97, 0xe6051061),
	PORTCR(98, 0xe6051062),
	PORTCR(99, 0xe6051063),
	PORTCR(100, 0xe6051064),
	PORTCR(101, 0xe6051065),
	PORTCR(102, 0xe6051066),
	PORTCR(103, 0xe6051067),
	PORTCR(104, 0xe6051068),
	PORTCR(105, 0xe6051069),
	PORTCR(106, 0xe605106A),
	PORTCR(107, 0xe605106B),
	PORTCR(108, 0xe605106C),
	PORTCR(109, 0xe605106D),
	PORTCR(110, 0xe605106E),
	PORTCR(111, 0xe605106F),
	PORTCR(112, 0xe6051070),
	PORTCR(113, 0xe6051071),
	PORTCR(114, 0xe6051072),
	PORTCR(115, 0xe6051073),
	PORTCR(116, 0xe6051074),
	PORTCR(117, 0xe6051075),
	PORTCR(118, 0xe6051076),
	PORTCR(119, 0xe6051077),
	PORTCR(120, 0xe6051078),
	PORTCR(121, 0xe6051079),
	PORTCR(122, 0xe605107A),
	PORTCR(123, 0xe605107B),
	PORTCR(124, 0xe605107C),
	PORTCR(125, 0xe605107D),
	PORTCR(126, 0xe605107E),
	PORTCR(128, 0xe6051080),
	PORTCR(129, 0xe6051081),
	PORTCR(130, 0xe6051082),
	PORTCR(131, 0xe6051083),
	PORTCR(132, 0xe6051084),
	PORTCR(133, 0xe6051085),
	PORTCR(134, 0xe6051086),
	PORTCR(160, 0xe60520A0),
	PORTCR(161, 0xe60520A1),
	PORTCR(162, 0xe60520A2),
	PORTCR(163, 0xe60520A3),
	PORTCR(164, 0xe60520A4),
	PORTCR(165, 0xe60520A5),
	PORTCR(166, 0xe60520A6),
	PORTCR(167, 0xe60520A7),
	PORTCR(168, 0xe60520A8),
	PORTCR(169, 0xe60520A9),
	PORTCR(170, 0xe60520AA),
	PORTCR(171, 0xe60520AB),
	PORTCR(172, 0xe60520AC),
	PORTCR(173, 0xe60520AD),
	PORTCR(174, 0xe60520AE),
	PORTCR(175, 0xe60520AF),
	PORTCR(176, 0xe60520B0),
	PORTCR(177, 0xe60520B1),
	PORTCR(178, 0xe60520B2),
	PORTCR(192, 0xe60520C0),
	PORTCR(193, 0xe60520C1),
	PORTCR(194, 0xe60520C2),
	PORTCR(195, 0xe60520C3),
	PORTCR(196, 0xe60520C4),
	PORTCR(197, 0xe60520C5),
	PORTCR(198, 0xe60520C6),
	PORTCR(199, 0xe60520C7),
	PORTCR(200, 0xe60520C8),
	PORTCR(201, 0xe60520C9),
	PORTCR(202, 0xe60520CA),
	PORTCR(203, 0xe60520CB),
	PORTCR(204, 0xe60520CC),
	PORTCR(205, 0xe60520CD),
	PORTCR(206, 0xe60520CE),
	PORTCR(207, 0xe60520CF),
	PORTCR(208, 0xe60520D0),
	PORTCR(209, 0xe60520D1),
	PORTCR(210, 0xe60520D2),
	PORTCR(211, 0xe60520D3),
	PORTCR(212, 0xe60520D4),
	PORTCR(213, 0xe60520D5),
	PORTCR(214, 0xe60520D6),
	PORTCR(215, 0xe60520D7),
	PORTCR(216, 0xe60520D8),
	PORTCR(217, 0xe60520D9),
	PORTCR(218, 0xe60520DA),
	PORTCR(219, 0xe60520DB),
	PORTCR(220, 0xe60520DC),
	PORTCR(221, 0xe60520DD),
	PORTCR(222, 0xe60520DE),
	PORTCR(224, 0xe60520E0),
	PORTCR(225, 0xe60520E1),
	PORTCR(226, 0xe60520E2),
	PORTCR(227, 0xe60520E3),
	PORTCR(228, 0xe60520E4),
	PORTCR(229, 0xe60520E5),
	PORTCR(230, 0xe60520e6),
	PORTCR(231, 0xe60520E7),
	PORTCR(232, 0xe60520E8),
	PORTCR(233, 0xe60520E9),
	PORTCR(234, 0xe60520EA),
	PORTCR(235, 0xe60520EB),
	PORTCR(236, 0xe60520EC),
	PORTCR(237, 0xe60520ED),
	PORTCR(238, 0xe60520EE),
	PORTCR(239, 0xe60520EF),
	PORTCR(240, 0xe60520F0),
	PORTCR(241, 0xe60520F1),
	PORTCR(242, 0xe60520F2),
	PORTCR(243, 0xe60520F3),
	PORTCR(244, 0xe60520F4),
	PORTCR(245, 0xe60520F5),
	PORTCR(246, 0xe60520F6),
	PORTCR(247, 0xe60520F7),
	PORTCR(248, 0xe60520F8),
	PORTCR(249, 0xe60520F9),
	PORTCR(250, 0xe60520FA),
	PORTCR(256, 0xe6052100),
	PORTCR(257, 0xe6052101),
	PORTCR(258, 0xe6052102),
	PORTCR(259, 0xe6052103),
	PORTCR(260, 0xe6052104),
	PORTCR(261, 0xe6052105),
	PORTCR(262, 0xe6052106),
	PORTCR(263, 0xe6052107),
	PORTCR(264, 0xe6052108),
	PORTCR(265, 0xe6052109),
	PORTCR(266, 0xe605210A),
	PORTCR(267, 0xe605210B),
	PORTCR(268, 0xe605210C),
	PORTCR(269, 0xe605210D),
	PORTCR(270, 0xe605210E),
	PORTCR(271, 0xe605210F),
	PORTCR(272, 0xe6052110),
	PORTCR(273, 0xe6052111),
	PORTCR(274, 0xe6052112),
	PORTCR(275, 0xe6052113),
	PORTCR(276, 0xe6052114),
	PORTCR(277, 0xe6052115),
	PORTCR(278, 0xe6052116),
	PORTCR(279, 0xe6052117),
	PORTCR(280, 0xe6052118),
	PORTCR(281, 0xe6052119),
	PORTCR(282, 0xe605211A),
	PORTCR(283, 0xe605211B),
	PORTCR(288, 0xe6053120),
	PORTCR(289, 0xe6053121),
	PORTCR(290, 0xe6053122),
	PORTCR(291, 0xe6053123),
	PORTCR(292, 0xe6053124),
	PORTCR(293, 0xe6053125),
	PORTCR(294, 0xe6053126),
	PORTCR(295, 0xe6053127),
	PORTCR(296, 0xe6053128),
	PORTCR(297, 0xe6053129),
	PORTCR(298, 0xe605312A),
	PORTCR(299, 0xe605312B),
	PORTCR(300, 0xe605312C),
	PORTCR(301, 0xe605312D),
	PORTCR(302, 0xe605312E),
	PORTCR(303, 0xe605312F),
	PORTCR(304, 0xe6053130),
	PORTCR(305, 0xe6053131),
	PORTCR(306, 0xe6053132),
	PORTCR(307, 0xe6053133),
	PORTCR(308, 0xe6053134),
	PORTCR(320, 0xe6053140),
	PORTCR(321, 0xe6053141),
	PORTCR(322, 0xe6053142),
	PORTCR(323, 0xe6053143),
	PORTCR(324, 0xe6053144),
	PORTCR(325, 0xe6053145),
	PORTCR(326, 0xe6053146),
	PORTCR(327, 0xe6053147),
	PORTCR(328, 0xe6053148),
	PORTCR(329, 0xe6053149),

	{ PINMUX_CFG_REG("MSEL1CR", 0xe605800c, 32, 1, GROUP(
			MSEL1CR_31_0, MSEL1CR_31_1,
			0, 0,
			0, 0,
			0, 0,
			MSEL1CR_27_0, MSEL1CR_27_1,
			0, 0,
			MSEL1CR_25_0, MSEL1CR_25_1,
			MSEL1CR_24_0, MSEL1CR_24_1,
			0, 0,
			MSEL1CR_22_0, MSEL1CR_22_1,
			MSEL1CR_21_0, MSEL1CR_21_1,
			MSEL1CR_20_0, MSEL1CR_20_1,
			MSEL1CR_19_0, MSEL1CR_19_1,
			MSEL1CR_18_0, MSEL1CR_18_1,
			MSEL1CR_17_0, MSEL1CR_17_1,
			MSEL1CR_16_0, MSEL1CR_16_1,
			MSEL1CR_15_0, MSEL1CR_15_1,
			MSEL1CR_14_0, MSEL1CR_14_1,
			MSEL1CR_13_0, MSEL1CR_13_1,
			MSEL1CR_12_0, MSEL1CR_12_1,
			MSEL1CR_11_0, MSEL1CR_11_1,
			MSEL1CR_10_0, MSEL1CR_10_1,
			MSEL1CR_09_0, MSEL1CR_09_1,
			MSEL1CR_08_0, MSEL1CR_08_1,
			MSEL1CR_07_0, MSEL1CR_07_1,
			MSEL1CR_06_0, MSEL1CR_06_1,
			MSEL1CR_05_0, MSEL1CR_05_1,
			MSEL1CR_04_0, MSEL1CR_04_1,
			MSEL1CR_03_0, MSEL1CR_03_1,
			MSEL1CR_02_0, MSEL1CR_02_1,
			MSEL1CR_01_0, MSEL1CR_01_1,
			MSEL1CR_00_0, MSEL1CR_00_1,
		))
	},
	{ PINMUX_CFG_REG("MSEL3CR", 0xe6058020, 32, 1, GROUP(
			MSEL3CR_31_0, MSEL3CR_31_1,
			0, 0,
			0, 0,
			MSEL3CR_28_0, MSEL3CR_28_1,
			MSEL3CR_27_0, MSEL3CR_27_1,
			MSEL3CR_26_0, MSEL3CR_26_1,
			0, 0,
			0, 0,
			MSEL3CR_23_0, MSEL3CR_23_1,
			MSEL3CR_22_0, MSEL3CR_22_1,
			MSEL3CR_21_0, MSEL3CR_21_1,
			MSEL3CR_20_0, MSEL3CR_20_1,
			MSEL3CR_19_0, MSEL3CR_19_1,
			MSEL3CR_18_0, MSEL3CR_18_1,
			MSEL3CR_17_0, MSEL3CR_17_1,
			MSEL3CR_16_0, MSEL3CR_16_1,
			MSEL3CR_15_0, MSEL3CR_15_1,
			0, 0,
			0, 0,
			MSEL3CR_12_0, MSEL3CR_12_1,
			MSEL3CR_11_0, MSEL3CR_11_1,
			MSEL3CR_10_0, MSEL3CR_10_1,
			MSEL3CR_09_0, MSEL3CR_09_1,
			0, 0,
			0, 0,
			MSEL3CR_06_0, MSEL3CR_06_1,
			0, 0,
			0, 0,
			MSEL3CR_03_0, MSEL3CR_03_1,
			0, 0,
			MSEL3CR_01_0, MSEL3CR_01_1,
			MSEL3CR_00_0, MSEL3CR_00_1,
			))
	},
	{ PINMUX_CFG_REG("MSEL4CR", 0xe6058024, 32, 1, GROUP(
			0, 0,
			MSEL4CR_30_0, MSEL4CR_30_1,
			MSEL4CR_29_0, MSEL4CR_29_1,
			MSEL4CR_28_0, MSEL4CR_28_1,
			MSEL4CR_27_0, MSEL4CR_27_1,
			MSEL4CR_26_0, MSEL4CR_26_1,
			MSEL4CR_25_0, MSEL4CR_25_1,
			MSEL4CR_24_0, MSEL4CR_24_1,
			MSEL4CR_23_0, MSEL4CR_23_1,
			MSEL4CR_22_0, MSEL4CR_22_1,
			MSEL4CR_21_0, MSEL4CR_21_1,
			MSEL4CR_20_0, MSEL4CR_20_1,
			MSEL4CR_19_0, MSEL4CR_19_1,
			MSEL4CR_18_0, MSEL4CR_18_1,
			MSEL4CR_17_0, MSEL4CR_17_1,
			MSEL4CR_16_0, MSEL4CR_16_1,
			MSEL4CR_15_0, MSEL4CR_15_1,
			MSEL4CR_14_0, MSEL4CR_14_1,
			MSEL4CR_13_0, MSEL4CR_13_1,
			MSEL4CR_12_0, MSEL4CR_12_1,
			MSEL4CR_11_0, MSEL4CR_11_1,
			MSEL4CR_10_0, MSEL4CR_10_1,
			MSEL4CR_09_0, MSEL4CR_09_1,
			0, 0,
			MSEL4CR_07_0, MSEL4CR_07_1,
			0, 0,
			0, 0,
			MSEL4CR_04_0, MSEL4CR_04_1,
			0, 0,
			0, 0,
			MSEL4CR_01_0, MSEL4CR_01_1,
			0, 0,
		))
	},
	{ PINMUX_CFG_REG("MSEL5CR", 0xe6058028, 32, 1, GROUP(
			MSEL5CR_31_0, MSEL5CR_31_1,
			MSEL5CR_30_0, MSEL5CR_30_1,
			MSEL5CR_29_0, MSEL5CR_29_1,
			MSEL5CR_28_0, MSEL5CR_28_1,
			MSEL5CR_27_0, MSEL5CR_27_1,
			MSEL5CR_26_0, MSEL5CR_26_1,
			MSEL5CR_25_0, MSEL5CR_25_1,
			MSEL5CR_24_0, MSEL5CR_24_1,
			MSEL5CR_23_0, MSEL5CR_23_1,
			MSEL5CR_22_0, MSEL5CR_22_1,
			MSEL5CR_21_0, MSEL5CR_21_1,
			MSEL5CR_20_0, MSEL5CR_20_1,
			MSEL5CR_19_0, MSEL5CR_19_1,
			MSEL5CR_18_0, MSEL5CR_18_1,
			MSEL5CR_17_0, MSEL5CR_17_1,
			MSEL5CR_16_0, MSEL5CR_16_1,
			MSEL5CR_15_0, MSEL5CR_15_1,
			MSEL5CR_14_0, MSEL5CR_14_1,
			MSEL5CR_13_0, MSEL5CR_13_1,
			MSEL5CR_12_0, MSEL5CR_12_1,
			MSEL5CR_11_0, MSEL5CR_11_1,
			MSEL5CR_10_0, MSEL5CR_10_1,
			MSEL5CR_09_0, MSEL5CR_09_1,
			MSEL5CR_08_0, MSEL5CR_08_1,
			MSEL5CR_07_0, MSEL5CR_07_1,
			MSEL5CR_06_0, MSEL5CR_06_1,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
		))
	},
	{ PINMUX_CFG_REG("MSEL8CR", 0xe6058034, 32, 1, GROUP(
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			MSEL8CR_16_0, MSEL8CR_16_1,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			0, 0,
			MSEL8CR_01_0, MSEL8CR_01_1,
			MSEL8CR_00_0, MSEL8CR_00_1,
		))
	},
	{ },
};

static const struct pinmux_data_reg pinmux_data_regs[] = {

	{ PINMUX_DATA_REG("PORTL031_000DR", 0xe6054000, 32, GROUP(
			0, PORT30_DATA, PORT29_DATA, PORT28_DATA,
			PORT27_DATA, PORT26_DATA, PORT25_DATA, PORT24_DATA,
			PORT23_DATA, PORT22_DATA, PORT21_DATA, PORT20_DATA,
			PORT19_DATA, PORT18_DATA, PORT17_DATA, PORT16_DATA,
			PORT15_DATA, PORT14_DATA, PORT13_DATA, PORT12_DATA,
			PORT11_DATA, PORT10_DATA, PORT9_DATA, PORT8_DATA,
			PORT7_DATA, PORT6_DATA, PORT5_DATA, PORT4_DATA,
			PORT3_DATA, PORT2_DATA, PORT1_DATA, PORT0_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTD063_032DR", 0xe6055000, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, PORT40_DATA,
			PORT39_DATA, PORT38_DATA, PORT37_DATA, PORT36_DATA,
			PORT35_DATA, PORT34_DATA, PORT33_DATA, PORT32_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTL095_064DR", 0xe6054004, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, PORT85_DATA, PORT84_DATA,
			PORT83_DATA, PORT82_DATA, PORT81_DATA, PORT80_DATA,
			PORT79_DATA, PORT78_DATA, PORT77_DATA, PORT76_DATA,
			PORT75_DATA, PORT74_DATA, PORT73_DATA, PORT72_DATA,
			PORT71_DATA, PORT70_DATA, PORT69_DATA, PORT68_DATA,
			PORT67_DATA, PORT66_DATA, PORT65_DATA, PORT64_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTD127_096DR", 0xe6055004, 32, GROUP(
			0, PORT126_DATA, PORT125_DATA, PORT124_DATA,
			PORT123_DATA, PORT122_DATA, PORT121_DATA, PORT120_DATA,
			PORT119_DATA, PORT118_DATA, PORT117_DATA, PORT116_DATA,
			PORT115_DATA, PORT114_DATA, PORT113_DATA, PORT112_DATA,
			PORT111_DATA, PORT110_DATA, PORT109_DATA, PORT108_DATA,
			PORT107_DATA, PORT106_DATA, PORT105_DATA, PORT104_DATA,
			PORT103_DATA, PORT102_DATA, PORT101_DATA, PORT100_DATA,
			PORT99_DATA, PORT98_DATA, PORT97_DATA, PORT96_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTD159_128DR", 0xe6055008, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, PORT134_DATA, PORT133_DATA, PORT132_DATA,
			PORT131_DATA, PORT130_DATA, PORT129_DATA, PORT128_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTR191_160DR", 0xe6056000, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, PORT178_DATA, PORT177_DATA, PORT176_DATA,
			PORT175_DATA, PORT174_DATA, PORT173_DATA, PORT172_DATA,
			PORT171_DATA, PORT170_DATA, PORT169_DATA, PORT168_DATA,
			PORT167_DATA, PORT166_DATA, PORT165_DATA, PORT164_DATA,
			PORT163_DATA, PORT162_DATA, PORT161_DATA, PORT160_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTR223_192DR", 0xe6056004, 32, GROUP(
			0, PORT222_DATA, PORT221_DATA, PORT220_DATA,
			PORT219_DATA, PORT218_DATA, PORT217_DATA, PORT216_DATA,
			PORT215_DATA, PORT214_DATA, PORT213_DATA, PORT212_DATA,
			PORT211_DATA, PORT210_DATA, PORT209_DATA, PORT208_DATA,
			PORT207_DATA, PORT206_DATA, PORT205_DATA, PORT204_DATA,
			PORT203_DATA, PORT202_DATA, PORT201_DATA, PORT200_DATA,
			PORT199_DATA, PORT198_DATA, PORT197_DATA, PORT196_DATA,
			PORT195_DATA, PORT194_DATA, PORT193_DATA, PORT192_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTR255_224DR", 0xe6056008, 32, GROUP(
			0, 0, 0, 0,
			0, PORT250_DATA, PORT249_DATA, PORT248_DATA,
			PORT247_DATA, PORT246_DATA, PORT245_DATA, PORT244_DATA,
			PORT243_DATA, PORT242_DATA, PORT241_DATA, PORT240_DATA,
			PORT239_DATA, PORT238_DATA, PORT237_DATA, PORT236_DATA,
			PORT235_DATA, PORT234_DATA, PORT233_DATA, PORT232_DATA,
			PORT231_DATA, PORT230_DATA, PORT229_DATA, PORT228_DATA,
			PORT227_DATA, PORT226_DATA, PORT225_DATA, PORT224_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTR287_256DR", 0xe605600C, 32, GROUP(
			0, 0, 0, 0,
			PORT283_DATA, PORT282_DATA, PORT281_DATA, PORT280_DATA,
			PORT279_DATA, PORT278_DATA, PORT277_DATA, PORT276_DATA,
			PORT275_DATA, PORT274_DATA, PORT273_DATA, PORT272_DATA,
			PORT271_DATA, PORT270_DATA, PORT269_DATA, PORT268_DATA,
			PORT267_DATA, PORT266_DATA, PORT265_DATA, PORT264_DATA,
			PORT263_DATA, PORT262_DATA, PORT261_DATA, PORT260_DATA,
			PORT259_DATA, PORT258_DATA, PORT257_DATA, PORT256_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTU319_288DR", 0xe6057000, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, PORT308_DATA,
			PORT307_DATA, PORT306_DATA, PORT305_DATA, PORT304_DATA,
			PORT303_DATA, PORT302_DATA, PORT301_DATA, PORT300_DATA,
			PORT299_DATA, PORT298_DATA, PORT297_DATA, PORT296_DATA,
			PORT295_DATA, PORT294_DATA, PORT293_DATA, PORT292_DATA,
			PORT291_DATA, PORT290_DATA, PORT289_DATA, PORT288_DATA,
		))
	},
	{ PINMUX_DATA_REG("PORTU351_320DR", 0xe6057004, 32, GROUP(
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, 0, 0,
			0, 0, PORT329_DATA, PORT328_DATA,
			PORT327_DATA, PORT326_DATA, PORT325_DATA, PORT324_DATA,
			PORT323_DATA, PORT322_DATA, PORT321_DATA, PORT320_DATA,
		))
	},
	{ },
};

static const struct pinmux_irq pinmux_irqs[] = {
	PINMUX_IRQ(0),		/* IRQ0 */
	PINMUX_IRQ(1),		/* IRQ1 */
	PINMUX_IRQ(2),		/* IRQ2 */
	PINMUX_IRQ(3),		/* IRQ3 */
	PINMUX_IRQ(4),		/* IRQ4 */
	PINMUX_IRQ(5),		/* IRQ5 */
	PINMUX_IRQ(6),		/* IRQ6 */
	PINMUX_IRQ(7),		/* IRQ7 */
	PINMUX_IRQ(8),		/* IRQ8 */
	PINMUX_IRQ(9),		/* IRQ9 */
	PINMUX_IRQ(10),		/* IRQ10 */
	PINMUX_IRQ(11),		/* IRQ11 */
	PINMUX_IRQ(12),		/* IRQ12 */
	PINMUX_IRQ(13),		/* IRQ13 */
	PINMUX_IRQ(14),		/* IRQ14 */
	PINMUX_IRQ(15),		/* IRQ15 */
	PINMUX_IRQ(320),	/* IRQ16 */
	PINMUX_IRQ(321),	/* IRQ17 */
	PINMUX_IRQ(85),		/* IRQ18 */
	PINMUX_IRQ(84),		/* IRQ19 */
	PINMUX_IRQ(160),	/* IRQ20 */
	PINMUX_IRQ(161),	/* IRQ21 */
	PINMUX_IRQ(162),	/* IRQ22 */
	PINMUX_IRQ(163),	/* IRQ23 */
	PINMUX_IRQ(175),	/* IRQ24 */
	PINMUX_IRQ(176),	/* IRQ25 */
	PINMUX_IRQ(177),	/* IRQ26 */
	PINMUX_IRQ(178),	/* IRQ27 */
	PINMUX_IRQ(322),	/* IRQ28 */
	PINMUX_IRQ(323),	/* IRQ29 */
	PINMUX_IRQ(324),	/* IRQ30 */
	PINMUX_IRQ(192),	/* IRQ31 */
	PINMUX_IRQ(193),	/* IRQ32 */
	PINMUX_IRQ(194),	/* IRQ33 */
	PINMUX_IRQ(195),	/* IRQ34 */
	PINMUX_IRQ(196),	/* IRQ35 */
	PINMUX_IRQ(197),	/* IRQ36 */
	PINMUX_IRQ(198),	/* IRQ37 */
	PINMUX_IRQ(199),	/* IRQ38 */
	PINMUX_IRQ(200),	/* IRQ39 */
	PINMUX_IRQ(66),		/* IRQ40 */
	PINMUX_IRQ(102),	/* IRQ41 */
	PINMUX_IRQ(103),	/* IRQ42 */
	PINMUX_IRQ(109),	/* IRQ43 */
	PINMUX_IRQ(110),	/* IRQ44 */
	PINMUX_IRQ(111),	/* IRQ45 */
	PINMUX_IRQ(112),	/* IRQ46 */
	PINMUX_IRQ(113),	/* IRQ47 */
	PINMUX_IRQ(114),	/* IRQ48 */
	PINMUX_IRQ(115),	/* IRQ49 */
	PINMUX_IRQ(301),	/* IRQ50 */
	PINMUX_IRQ(290),	/* IRQ51 */
	PINMUX_IRQ(296),	/* IRQ52 */
	PINMUX_IRQ(325),	/* IRQ53 */
	PINMUX_IRQ(326),	/* IRQ54 */
	PINMUX_IRQ(327),	/* IRQ55 */
	PINMUX_IRQ(328),	/* IRQ56 */
	PINMUX_IRQ(329),	/* IRQ57 */
};

#define PORTCR_PULMD_OFF (0 << 6)
#define PORTCR_PULMD_DOWN (2 << 6)
#define PORTCR_PULMD_UP (3 << 6)
#define PORTCR_PULMD_MASK (3 << 6)

static const unsigned int r8a73a4_portcr_offsets[] = {
	0x00000000, 0x00001000, 0x00000000, 0x00001000,
	0x00001000, 0x00002000, 0x00002000, 0x00002000,
	0x00002000, 0x00003000, 0x00003000,
};

static unsigned int r8a73a4_pinmux_get_bias(struct sh_pfc *pfc,
					    unsigned int pin)
{
	void __iomem *addr;

	addr = pfc->windows->virt + r8a73a4_portcr_offsets[pin >> 5] + pin;

	switch (ioread8(addr) & PORTCR_PULMD_MASK) {
	case PORTCR_PULMD_UP:
		return PIN_CONFIG_BIAS_PULL_UP;
	case PORTCR_PULMD_DOWN:
		return PIN_CONFIG_BIAS_PULL_DOWN;
	case PORTCR_PULMD_OFF:
	default:
		return PIN_CONFIG_BIAS_DISABLE;
	}
}

static void r8a73a4_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
				   unsigned int bias)
{
	void __iomem *addr;
	u32 value;

	addr = pfc->windows->virt + r8a73a4_portcr_offsets[pin >> 5] + pin;
	value = ioread8(addr) & ~PORTCR_PULMD_MASK;

	switch (bias) {
	case PIN_CONFIG_BIAS_PULL_UP:
		value |= PORTCR_PULMD_UP;
		break;
	case PIN_CONFIG_BIAS_PULL_DOWN:
		value |= PORTCR_PULMD_DOWN;
		break;
	}

	iowrite8(value, addr);
}

static const struct sh_pfc_soc_operations r8a73a4_pfc_ops = {
	.get_bias = r8a73a4_pinmux_get_bias,
	.set_bias = r8a73a4_pinmux_set_bias,
};

const struct sh_pfc_soc_info r8a73a4_pinmux_info = {
	.name		= "r8a73a4_pfc",
	.ops		= &r8a73a4_pfc_ops,

	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },

	.pins = pinmux_pins,
	.nr_pins = ARRAY_SIZE(pinmux_pins),

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

	.cfg_regs = pinmux_config_regs,
	.data_regs = pinmux_data_regs,

	.pinmux_data = pinmux_data,
	.pinmux_data_size = ARRAY_SIZE(pinmux_data),

	.gpio_irq = pinmux_irqs,
	.gpio_irq_size = ARRAY_SIZE(pinmux_irqs),
};
