cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

pfc-sh7203.c (43723B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * SH7203 Pinmux
      4 *
      5 *  Copyright (C) 2008  Magnus Damm
      6 */
      7
      8#include <linux/kernel.h>
      9#include <cpu/sh7203.h>
     10
     11#include "sh_pfc.h"
     12
     13enum {
     14	PINMUX_RESERVED = 0,
     15
     16	PINMUX_DATA_BEGIN,
     17	PA7_DATA, PA6_DATA, PA5_DATA, PA4_DATA,
     18	PA3_DATA, PA2_DATA, PA1_DATA, PA0_DATA,
     19	PB12_DATA,
     20	PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
     21	PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
     22	PB3_DATA, PB2_DATA, PB1_DATA, PB0_DATA,
     23	PC14_DATA, PC13_DATA, PC12_DATA,
     24	PC11_DATA, PC10_DATA, PC9_DATA, PC8_DATA,
     25	PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
     26	PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA,
     27	PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
     28	PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
     29	PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
     30	PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA,
     31	PE15_DATA, PE14_DATA, PE13_DATA, PE12_DATA,
     32	PE11_DATA, PE10_DATA, PE9_DATA, PE8_DATA,
     33	PE7_DATA, PE6_DATA, PE5_DATA, PE4_DATA,
     34	PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA,
     35	PF30_DATA, PF29_DATA, PF28_DATA,
     36	PF27_DATA, PF26_DATA, PF25_DATA, PF24_DATA,
     37	PF23_DATA, PF22_DATA, PF21_DATA, PF20_DATA,
     38	PF19_DATA, PF18_DATA, PF17_DATA, PF16_DATA,
     39	PF15_DATA, PF14_DATA, PF13_DATA, PF12_DATA,
     40	PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
     41	PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
     42	PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA,
     43	PINMUX_DATA_END,
     44
     45	PINMUX_INPUT_BEGIN,
     46	FORCE_IN,
     47	PA7_IN, PA6_IN, PA5_IN, PA4_IN,
     48	PA3_IN, PA2_IN, PA1_IN, PA0_IN,
     49	PB11_IN, PB10_IN, PB9_IN, PB8_IN,
     50	PC14_IN, PC13_IN, PC12_IN,
     51	PC11_IN, PC10_IN, PC9_IN, PC8_IN,
     52	PC7_IN, PC6_IN, PC5_IN, PC4_IN,
     53	PC3_IN, PC2_IN, PC1_IN, PC0_IN,
     54	PD15_IN, PD14_IN, PD13_IN, PD12_IN,
     55	PD11_IN, PD10_IN, PD9_IN, PD8_IN,
     56	PD7_IN, PD6_IN, PD5_IN, PD4_IN,
     57	PD3_IN, PD2_IN, PD1_IN, PD0_IN,
     58	PE15_IN, PE14_IN, PE13_IN, PE12_IN,
     59	PE11_IN, PE10_IN, PE9_IN, PE8_IN,
     60	PE7_IN, PE6_IN, PE5_IN, PE4_IN,
     61	PE3_IN, PE2_IN, PE1_IN, PE0_IN,
     62	PF30_IN, PF29_IN, PF28_IN,
     63	PF27_IN, PF26_IN, PF25_IN, PF24_IN,
     64	PF23_IN, PF22_IN, PF21_IN, PF20_IN,
     65	PF19_IN, PF18_IN, PF17_IN, PF16_IN,
     66	PF15_IN, PF14_IN, PF13_IN, PF12_IN,
     67	PF11_IN, PF10_IN, PF9_IN, PF8_IN,
     68	PF7_IN, PF6_IN, PF5_IN, PF4_IN,
     69	PF3_IN, PF2_IN, PF1_IN, PF0_IN,
     70	PINMUX_INPUT_END,
     71
     72	PINMUX_OUTPUT_BEGIN,
     73	FORCE_OUT,
     74	PB11_OUT, PB10_OUT, PB9_OUT, PB8_OUT,
     75	PC14_OUT, PC13_OUT, PC12_OUT,
     76	PC11_OUT, PC10_OUT, PC9_OUT, PC8_OUT,
     77	PC7_OUT, PC6_OUT, PC5_OUT, PC4_OUT,
     78	PC3_OUT, PC2_OUT, PC1_OUT, PC0_OUT,
     79	PD15_OUT, PD14_OUT, PD13_OUT, PD12_OUT,
     80	PD11_OUT, PD10_OUT, PD9_OUT, PD8_OUT,
     81	PD7_OUT, PD6_OUT, PD5_OUT, PD4_OUT,
     82	PD3_OUT, PD2_OUT, PD1_OUT, PD0_OUT,
     83	PE15_OUT, PE14_OUT, PE13_OUT, PE12_OUT,
     84	PE11_OUT, PE10_OUT, PE9_OUT, PE8_OUT,
     85	PE7_OUT, PE6_OUT, PE5_OUT, PE4_OUT,
     86	PE3_OUT, PE2_OUT, PE1_OUT, PE0_OUT,
     87	PF30_OUT, PF29_OUT, PF28_OUT,
     88	PF27_OUT, PF26_OUT, PF25_OUT, PF24_OUT,
     89	PF23_OUT, PF22_OUT, PF21_OUT, PF20_OUT,
     90	PF19_OUT, PF18_OUT, PF17_OUT, PF16_OUT,
     91	PF15_OUT, PF14_OUT, PF13_OUT, PF12_OUT,
     92	PF11_OUT, PF10_OUT, PF9_OUT, PF8_OUT,
     93	PF7_OUT, PF6_OUT, PF5_OUT, PF4_OUT,
     94	PF3_OUT, PF2_OUT, PF1_OUT, PF0_OUT,
     95	PINMUX_OUTPUT_END,
     96
     97	PINMUX_FUNCTION_BEGIN,
     98	PB11_IOR_IN, PB11_IOR_OUT,
     99	PB10_IOR_IN, PB10_IOR_OUT,
    100	PB9_IOR_IN, PB9_IOR_OUT,
    101	PB8_IOR_IN, PB8_IOR_OUT,
    102	PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,
    103	PB11MD_0, PB11MD_1,
    104	PB10MD_0, PB10MD_1,
    105	PB9MD_00, PB9MD_01, PB9MD_10,
    106	PB8MD_00, PB8MD_01, PB8MD_10,
    107	PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,
    108	PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,
    109	PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,
    110	PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,
    111	PB3MD_00, PB3MD_01, PB3MD_10, PB3MD_11,
    112	PB2MD_00, PB2MD_01, PB2MD_10, PB2MD_11,
    113	PB1MD_00, PB1MD_01, PB1MD_10, PB1MD_11,
    114	PB0MD_00, PB0MD_01, PB0MD_10, PB0MD_11,
    115
    116	PB12IRQ_00, PB12IRQ_01, PB12IRQ_10,
    117
    118	PC14MD_0, PC14MD_1,
    119	PC13MD_0, PC13MD_1,
    120	PC12MD_0, PC12MD_1,
    121	PC11MD_00, PC11MD_01, PC11MD_10,
    122	PC10MD_00, PC10MD_01, PC10MD_10,
    123	PC9MD_0, PC9MD_1,
    124	PC8MD_0, PC8MD_1,
    125	PC7MD_0, PC7MD_1,
    126	PC6MD_0, PC6MD_1,
    127	PC5MD_0, PC5MD_1,
    128	PC4MD_0, PC4MD_1,
    129	PC3MD_0, PC3MD_1,
    130	PC2MD_0, PC2MD_1,
    131	PC1MD_0, PC1MD_1,
    132	PC0MD_00, PC0MD_01, PC0MD_10,
    133
    134	PD15MD_000, PD15MD_001, PD15MD_010, PD15MD_100, PD15MD_101,
    135	PD14MD_000, PD14MD_001, PD14MD_010, PD14MD_101,
    136	PD13MD_000, PD13MD_001, PD13MD_010, PD13MD_100, PD13MD_101,
    137	PD12MD_000, PD12MD_001, PD12MD_010, PD12MD_100, PD12MD_101,
    138	PD11MD_000, PD11MD_001, PD11MD_010, PD11MD_100, PD11MD_101,
    139	PD10MD_000, PD10MD_001, PD10MD_010, PD10MD_100, PD10MD_101,
    140	PD9MD_000, PD9MD_001, PD9MD_010, PD9MD_100, PD9MD_101,
    141	PD8MD_000, PD8MD_001, PD8MD_010, PD8MD_100, PD8MD_101,
    142	PD7MD_000, PD7MD_001, PD7MD_010, PD7MD_011, PD7MD_100, PD7MD_101,
    143	PD6MD_000, PD6MD_001, PD6MD_010, PD6MD_011, PD6MD_100, PD6MD_101,
    144	PD5MD_000, PD5MD_001, PD5MD_010, PD5MD_011, PD5MD_100, PD5MD_101,
    145	PD4MD_000, PD4MD_001, PD4MD_010, PD4MD_011, PD4MD_100, PD4MD_101,
    146	PD3MD_000, PD3MD_001, PD3MD_010, PD3MD_011, PD3MD_100, PD3MD_101,
    147	PD2MD_000, PD2MD_001, PD2MD_010, PD2MD_011, PD2MD_100, PD2MD_101,
    148	PD1MD_000, PD1MD_001, PD1MD_010, PD1MD_011, PD1MD_100, PD1MD_101,
    149	PD0MD_000, PD0MD_001, PD0MD_010, PD0MD_011, PD0MD_100, PD0MD_101,
    150
    151	PE15MD_00, PE15MD_01, PE15MD_11,
    152	PE14MD_00, PE14MD_01, PE14MD_11,
    153	PE13MD_00, PE13MD_11,
    154	PE12MD_00, PE12MD_11,
    155	PE11MD_000, PE11MD_001, PE11MD_010, PE11MD_100,
    156	PE10MD_000, PE10MD_001, PE10MD_010, PE10MD_100,
    157	PE9MD_00, PE9MD_01, PE9MD_10, PE9MD_11,
    158	PE8MD_00, PE8MD_01, PE8MD_10, PE8MD_11,
    159	PE7MD_000, PE7MD_001, PE7MD_010, PE7MD_011, PE7MD_100,
    160	PE6MD_000, PE6MD_001, PE6MD_010, PE6MD_011, PE6MD_100,
    161	PE5MD_000, PE5MD_001, PE5MD_010, PE5MD_011, PE5MD_100,
    162	PE4MD_000, PE4MD_001, PE4MD_010, PE4MD_011, PE4MD_100,
    163	PE3MD_00, PE3MD_01, PE3MD_11,
    164	PE2MD_00, PE2MD_01, PE2MD_11,
    165	PE1MD_00, PE1MD_01, PE1MD_10, PE1MD_11,
    166	PE0MD_000, PE0MD_001, PE0MD_011, PE0MD_100,
    167
    168	PF30MD_0, PF30MD_1,
    169	PF29MD_0, PF29MD_1,
    170	PF28MD_0, PF28MD_1,
    171	PF27MD_0, PF27MD_1,
    172	PF26MD_0, PF26MD_1,
    173	PF25MD_0, PF25MD_1,
    174	PF24MD_0, PF24MD_1,
    175	PF23MD_00, PF23MD_01, PF23MD_10,
    176	PF22MD_00, PF22MD_01, PF22MD_10,
    177	PF21MD_00, PF21MD_01, PF21MD_10,
    178	PF20MD_00, PF20MD_01, PF20MD_10,
    179	PF19MD_00, PF19MD_01, PF19MD_10,
    180	PF18MD_00, PF18MD_01, PF18MD_10,
    181	PF17MD_00, PF17MD_01, PF17MD_10,
    182	PF16MD_00, PF16MD_01, PF16MD_10,
    183	PF15MD_00, PF15MD_01, PF15MD_10,
    184	PF14MD_00, PF14MD_01, PF14MD_10,
    185	PF13MD_00, PF13MD_01, PF13MD_10,
    186	PF12MD_00, PF12MD_01, PF12MD_10,
    187	PF11MD_00, PF11MD_01, PF11MD_10,
    188	PF10MD_00, PF10MD_01, PF10MD_10,
    189	PF9MD_00, PF9MD_01, PF9MD_10,
    190	PF8MD_00, PF8MD_01, PF8MD_10,
    191	PF7MD_00, PF7MD_01, PF7MD_10, PF7MD_11,
    192	PF6MD_00, PF6MD_01, PF6MD_10, PF6MD_11,
    193	PF5MD_00, PF5MD_01, PF5MD_10, PF5MD_11,
    194	PF4MD_00, PF4MD_01, PF4MD_10, PF4MD_11,
    195	PF3MD_00, PF3MD_01, PF3MD_10, PF3MD_11,
    196	PF2MD_00, PF2MD_01, PF2MD_10, PF2MD_11,
    197	PF1MD_00, PF1MD_01, PF1MD_10, PF1MD_11,
    198	PF0MD_00, PF0MD_01, PF0MD_10, PF0MD_11,
    199	PINMUX_FUNCTION_END,
    200
    201	PINMUX_MARK_BEGIN,
    202	PINT7_PB_MARK, PINT6_PB_MARK, PINT5_PB_MARK, PINT4_PB_MARK,
    203	PINT3_PB_MARK, PINT2_PB_MARK, PINT1_PB_MARK, PINT0_PB_MARK,
    204	PINT7_PD_MARK, PINT6_PD_MARK, PINT5_PD_MARK, PINT4_PD_MARK,
    205	PINT3_PD_MARK, PINT2_PD_MARK, PINT1_PD_MARK, PINT0_PD_MARK,
    206	IRQ7_PB_MARK, IRQ6_PB_MARK, IRQ5_PB_MARK, IRQ4_PB_MARK,
    207	IRQ3_PB_MARK, IRQ2_PB_MARK, IRQ1_PB_MARK, IRQ0_PB_MARK,
    208	IRQ7_PD_MARK, IRQ6_PD_MARK, IRQ5_PD_MARK, IRQ4_PD_MARK,
    209	IRQ3_PD_MARK, IRQ2_PD_MARK, IRQ1_PD_MARK, IRQ0_PD_MARK,
    210	IRQ7_PE_MARK, IRQ6_PE_MARK, IRQ5_PE_MARK, IRQ4_PE_MARK,
    211	IRQ3_PE_MARK, IRQ2_PE_MARK, IRQ1_PE_MARK, IRQ0_PE_MARK,
    212	WDTOVF_MARK, IRQOUT_MARK, REFOUT_MARK, IRQOUT_REFOUT_MARK,
    213	UBCTRG_MARK,
    214	CTX1_MARK, CRX1_MARK, CTX0_MARK, CTX0_CTX1_MARK,
    215	CRX0_MARK, CRX0_CRX1_MARK,
    216	SDA3_MARK, SCL3_MARK,
    217	SDA2_MARK, SCL2_MARK,
    218	SDA1_MARK, SCL1_MARK,
    219	SDA0_MARK, SCL0_MARK,
    220	TEND0_PD_MARK, TEND0_PE_MARK, DACK0_PD_MARK, DACK0_PE_MARK,
    221	DREQ0_PD_MARK, DREQ0_PE_MARK, TEND1_PD_MARK, TEND1_PE_MARK,
    222	DACK1_PD_MARK, DACK1_PE_MARK, DREQ1_PD_MARK, DREQ1_PE_MARK,
    223	DACK2_MARK, DREQ2_MARK, DACK3_MARK, DREQ3_MARK,
    224	ADTRG_PD_MARK, ADTRG_PE_MARK,
    225	D31_MARK, D30_MARK, D29_MARK, D28_MARK,
    226	D27_MARK, D26_MARK, D25_MARK, D24_MARK,
    227	D23_MARK, D22_MARK, D21_MARK, D20_MARK,
    228	D19_MARK, D18_MARK, D17_MARK, D16_MARK,
    229	A25_MARK, A24_MARK, A23_MARK, A22_MARK,
    230	A21_MARK, CS4_MARK, MRES_MARK, BS_MARK,
    231	IOIS16_MARK, CS1_MARK, CS6_CE1B_MARK, CE2B_MARK,
    232	CS5_CE1A_MARK, CE2A_MARK, FRAME_MARK, WAIT_MARK,
    233	RDWR_MARK, CKE_MARK, CASU_MARK,	BREQ_MARK,
    234	RASU_MARK, BACK_MARK, CASL_MARK, RASL_MARK,
    235	WE3_DQMUU_AH_ICIO_WR_MARK, WE2_DQMUL_ICIORD_MARK,
    236	WE1_DQMLU_WE_MARK, WE0_DQMLL_MARK,
    237	CS3_MARK, CS2_MARK, A1_MARK, A0_MARK, CS7_MARK,
    238	TIOC4D_MARK, TIOC4C_MARK, TIOC4B_MARK, TIOC4A_MARK,
    239	TIOC3D_MARK, TIOC3C_MARK, TIOC3B_MARK, TIOC3A_MARK,
    240	TIOC2B_MARK, TIOC1B_MARK, TIOC2A_MARK, TIOC1A_MARK,
    241	TIOC0D_MARK, TIOC0C_MARK, TIOC0B_MARK, TIOC0A_MARK,
    242	TCLKD_PD_MARK, TCLKC_PD_MARK, TCLKB_PD_MARK, TCLKA_PD_MARK,
    243	TCLKD_PF_MARK, TCLKC_PF_MARK, TCLKB_PF_MARK, TCLKA_PF_MARK,
    244	SCS0_PD_MARK, SSO0_PD_MARK, SSI0_PD_MARK, SSCK0_PD_MARK,
    245	SCS0_PF_MARK, SSO0_PF_MARK, SSI0_PF_MARK, SSCK0_PF_MARK,
    246	SCS1_PD_MARK, SSO1_PD_MARK, SSI1_PD_MARK, SSCK1_PD_MARK,
    247	SCS1_PF_MARK, SSO1_PF_MARK, SSI1_PF_MARK, SSCK1_PF_MARK,
    248	TXD0_MARK, RXD0_MARK, SCK0_MARK,
    249	TXD1_MARK, RXD1_MARK, SCK1_MARK,
    250	TXD2_MARK, RXD2_MARK, SCK2_MARK,
    251	RTS3_MARK, CTS3_MARK, TXD3_MARK,
    252	RXD3_MARK, SCK3_MARK,
    253	AUDIO_CLK_MARK,
    254	SSIDATA3_MARK, SSIWS3_MARK, SSISCK3_MARK,
    255	SSIDATA2_MARK, SSIWS2_MARK, SSISCK2_MARK,
    256	SSIDATA1_MARK, SSIWS1_MARK, SSISCK1_MARK,
    257	SSIDATA0_MARK, SSIWS0_MARK, SSISCK0_MARK,
    258	FCE_MARK, FRB_MARK,
    259	NAF7_MARK, NAF6_MARK, NAF5_MARK, NAF4_MARK,
    260	NAF3_MARK, NAF2_MARK, NAF1_MARK, NAF0_MARK,
    261	FSC_MARK, FOE_MARK, FCDE_MARK, FWE_MARK,
    262	LCD_VEPWC_MARK, LCD_VCPWC_MARK,	LCD_CLK_MARK, LCD_FLM_MARK,
    263	LCD_M_DISP_MARK, LCD_CL2_MARK, LCD_CL1_MARK, LCD_DON_MARK,
    264	LCD_DATA15_MARK, LCD_DATA14_MARK, LCD_DATA13_MARK, LCD_DATA12_MARK,
    265	LCD_DATA11_MARK, LCD_DATA10_MARK, LCD_DATA9_MARK, LCD_DATA8_MARK,
    266	LCD_DATA7_MARK, LCD_DATA6_MARK, LCD_DATA5_MARK, LCD_DATA4_MARK,
    267	LCD_DATA3_MARK, LCD_DATA2_MARK, LCD_DATA1_MARK, LCD_DATA0_MARK,
    268	PINMUX_MARK_END,
    269};
    270
    271static const u16 pinmux_data[] = {
    272	/* PA */
    273	PINMUX_DATA(PA7_DATA, PA7_IN),
    274	PINMUX_DATA(PA6_DATA, PA6_IN),
    275	PINMUX_DATA(PA5_DATA, PA5_IN),
    276	PINMUX_DATA(PA4_DATA, PA4_IN),
    277	PINMUX_DATA(PA3_DATA, PA3_IN),
    278	PINMUX_DATA(PA2_DATA, PA2_IN),
    279	PINMUX_DATA(PA1_DATA, PA1_IN),
    280	PINMUX_DATA(PA0_DATA, PA0_IN),
    281
    282	/* PB */
    283	PINMUX_DATA(PB12_DATA, PB12MD_00, FORCE_OUT),
    284	PINMUX_DATA(WDTOVF_MARK, PB12MD_01),
    285	PINMUX_DATA(IRQOUT_MARK, PB12MD_10, PB12IRQ_00),
    286	PINMUX_DATA(REFOUT_MARK, PB12MD_10, PB12IRQ_01),
    287	PINMUX_DATA(IRQOUT_REFOUT_MARK, PB12MD_10, PB12IRQ_10),
    288	PINMUX_DATA(UBCTRG_MARK, PB12MD_11),
    289
    290	PINMUX_DATA(PB11_DATA, PB11MD_0, PB11_IN, PB11_OUT),
    291	PINMUX_DATA(CTX1_MARK, PB11MD_1),
    292
    293	PINMUX_DATA(PB10_DATA, PB10MD_0, PB10_IN, PB10_OUT),
    294	PINMUX_DATA(CRX1_MARK, PB10MD_1),
    295
    296	PINMUX_DATA(PB9_DATA, PB9MD_00, PB9_IN, PB9_OUT),
    297	PINMUX_DATA(CTX0_MARK, PB9MD_01),
    298	PINMUX_DATA(CTX0_CTX1_MARK, PB9MD_10),
    299
    300	PINMUX_DATA(PB8_DATA, PB8MD_00, PB8_IN, PB8_OUT),
    301	PINMUX_DATA(CRX0_MARK, PB8MD_01),
    302	PINMUX_DATA(CRX0_CRX1_MARK, PB8MD_10),
    303
    304	PINMUX_DATA(PB7_DATA, PB7MD_00, FORCE_IN),
    305	PINMUX_DATA(SDA3_MARK, PB7MD_01),
    306	PINMUX_DATA(PINT7_PB_MARK, PB7MD_10),
    307	PINMUX_DATA(IRQ7_PB_MARK, PB7MD_11),
    308
    309	PINMUX_DATA(PB6_DATA, PB6MD_00, FORCE_IN),
    310	PINMUX_DATA(SCL3_MARK, PB6MD_01),
    311	PINMUX_DATA(PINT6_PB_MARK, PB6MD_10),
    312	PINMUX_DATA(IRQ6_PB_MARK, PB6MD_11),
    313
    314	PINMUX_DATA(PB5_DATA, PB5MD_00, FORCE_IN),
    315	PINMUX_DATA(SDA2_MARK, PB6MD_01),
    316	PINMUX_DATA(PINT5_PB_MARK, PB6MD_10),
    317	PINMUX_DATA(IRQ5_PB_MARK, PB6MD_11),
    318
    319	PINMUX_DATA(PB4_DATA, PB4MD_00, FORCE_IN),
    320	PINMUX_DATA(SCL2_MARK, PB4MD_01),
    321	PINMUX_DATA(PINT4_PB_MARK, PB4MD_10),
    322	PINMUX_DATA(IRQ4_PB_MARK, PB4MD_11),
    323
    324	PINMUX_DATA(PB3_DATA, PB3MD_00, FORCE_IN),
    325	PINMUX_DATA(SDA1_MARK, PB3MD_01),
    326	PINMUX_DATA(PINT3_PB_MARK, PB3MD_10),
    327	PINMUX_DATA(IRQ3_PB_MARK, PB3MD_11),
    328
    329	PINMUX_DATA(PB2_DATA, PB2MD_00, FORCE_IN),
    330	PINMUX_DATA(SCL1_MARK, PB2MD_01),
    331	PINMUX_DATA(PINT2_PB_MARK, PB2MD_10),
    332	PINMUX_DATA(IRQ2_PB_MARK, PB2MD_11),
    333
    334	PINMUX_DATA(PB1_DATA, PB1MD_00, FORCE_IN),
    335	PINMUX_DATA(SDA0_MARK, PB1MD_01),
    336	PINMUX_DATA(PINT1_PB_MARK, PB1MD_10),
    337	PINMUX_DATA(IRQ1_PB_MARK, PB1MD_11),
    338
    339	PINMUX_DATA(PB0_DATA, PB0MD_00, FORCE_IN),
    340	PINMUX_DATA(SCL0_MARK, PB0MD_01),
    341	PINMUX_DATA(PINT0_PB_MARK, PB0MD_10),
    342	PINMUX_DATA(IRQ0_PB_MARK, PB0MD_11),
    343
    344	/* PC */
    345	PINMUX_DATA(PC14_DATA, PC14MD_0, PC14_IN, PC14_OUT),
    346	PINMUX_DATA(WAIT_MARK, PC14MD_1),
    347
    348	PINMUX_DATA(PC13_DATA, PC13MD_0, PC13_IN, PC13_OUT),
    349	PINMUX_DATA(RDWR_MARK, PC13MD_1),
    350
    351	PINMUX_DATA(PC12_DATA, PC12MD_0, PC12_IN, PC12_OUT),
    352	PINMUX_DATA(CKE_MARK, PC12MD_1),
    353
    354	PINMUX_DATA(PC11_DATA, PC11MD_00, PC11_IN, PC11_OUT),
    355	PINMUX_DATA(CASU_MARK, PC11MD_01),
    356	PINMUX_DATA(BREQ_MARK, PC11MD_10),
    357
    358	PINMUX_DATA(PC10_DATA, PC10MD_00, PC10_IN, PC10_OUT),
    359	PINMUX_DATA(RASU_MARK, PC10MD_01),
    360	PINMUX_DATA(BACK_MARK, PC10MD_10),
    361
    362	PINMUX_DATA(PC9_DATA, PC9MD_0, PC9_IN, PC9_OUT),
    363	PINMUX_DATA(CASL_MARK, PC9MD_1),
    364
    365	PINMUX_DATA(PC8_DATA, PC8MD_0, PC8_IN, PC8_OUT),
    366	PINMUX_DATA(RASL_MARK, PC8MD_1),
    367
    368	PINMUX_DATA(PC7_DATA, PC7MD_0, PC7_IN, PC7_OUT),
    369	PINMUX_DATA(WE3_DQMUU_AH_ICIO_WR_MARK, PC7MD_1),
    370
    371	PINMUX_DATA(PC6_DATA, PC6MD_0, PC6_IN, PC6_OUT),
    372	PINMUX_DATA(WE2_DQMUL_ICIORD_MARK, PC6MD_1),
    373
    374	PINMUX_DATA(PC5_DATA, PC5MD_0, PC5_IN, PC5_OUT),
    375	PINMUX_DATA(WE1_DQMLU_WE_MARK, PC5MD_1),
    376
    377	PINMUX_DATA(PC4_DATA, PC4MD_0, PC4_IN, PC4_OUT),
    378	PINMUX_DATA(WE0_DQMLL_MARK, PC4MD_1),
    379
    380	PINMUX_DATA(PC3_DATA, PC3MD_0, PC3_IN, PC3_OUT),
    381	PINMUX_DATA(CS3_MARK, PC3MD_1),
    382
    383	PINMUX_DATA(PC2_DATA, PC2MD_0, PC2_IN, PC2_OUT),
    384	PINMUX_DATA(CS2_MARK, PC2MD_1),
    385
    386	PINMUX_DATA(PC1_DATA, PC1MD_0, PC1_IN, PC1_OUT),
    387	PINMUX_DATA(A1_MARK, PC1MD_1),
    388
    389	PINMUX_DATA(PC0_DATA, PC0MD_00, PC0_IN, PC0_OUT),
    390	PINMUX_DATA(A0_MARK, PC0MD_01),
    391	PINMUX_DATA(CS7_MARK, PC0MD_10),
    392
    393	/* PD */
    394	PINMUX_DATA(PD15_DATA, PD15MD_000, PD15_IN, PD15_OUT),
    395	PINMUX_DATA(D31_MARK, PD15MD_001),
    396	PINMUX_DATA(PINT7_PD_MARK, PD15MD_010),
    397	PINMUX_DATA(ADTRG_PD_MARK, PD15MD_100),
    398	PINMUX_DATA(TIOC4D_MARK, PD15MD_101),
    399
    400	PINMUX_DATA(PD14_DATA, PD14MD_000, PD14_IN, PD14_OUT),
    401	PINMUX_DATA(D30_MARK, PD14MD_001),
    402	PINMUX_DATA(PINT6_PD_MARK, PD14MD_010),
    403	PINMUX_DATA(TIOC4C_MARK, PD14MD_101),
    404
    405	PINMUX_DATA(PD13_DATA, PD13MD_000, PD13_IN, PD13_OUT),
    406	PINMUX_DATA(D29_MARK, PD13MD_001),
    407	PINMUX_DATA(PINT5_PD_MARK, PD13MD_010),
    408	PINMUX_DATA(TEND1_PD_MARK, PD13MD_100),
    409	PINMUX_DATA(TIOC4B_MARK, PD13MD_101),
    410
    411	PINMUX_DATA(PD12_DATA, PD12MD_000, PD12_IN, PD12_OUT),
    412	PINMUX_DATA(D28_MARK, PD12MD_001),
    413	PINMUX_DATA(PINT4_PD_MARK, PD12MD_010),
    414	PINMUX_DATA(DACK1_PD_MARK, PD12MD_100),
    415	PINMUX_DATA(TIOC4A_MARK, PD12MD_101),
    416
    417	PINMUX_DATA(PD11_DATA, PD11MD_000, PD11_IN, PD11_OUT),
    418	PINMUX_DATA(D27_MARK, PD11MD_001),
    419	PINMUX_DATA(PINT3_PD_MARK, PD11MD_010),
    420	PINMUX_DATA(DREQ1_PD_MARK, PD11MD_100),
    421	PINMUX_DATA(TIOC3D_MARK, PD11MD_101),
    422
    423	PINMUX_DATA(PD10_DATA, PD10MD_000, PD10_IN, PD10_OUT),
    424	PINMUX_DATA(D26_MARK, PD10MD_001),
    425	PINMUX_DATA(PINT2_PD_MARK, PD10MD_010),
    426	PINMUX_DATA(TEND0_PD_MARK, PD10MD_100),
    427	PINMUX_DATA(TIOC3C_MARK, PD10MD_101),
    428
    429	PINMUX_DATA(PD9_DATA, PD9MD_000, PD9_IN, PD9_OUT),
    430	PINMUX_DATA(D25_MARK, PD9MD_001),
    431	PINMUX_DATA(PINT1_PD_MARK, PD9MD_010),
    432	PINMUX_DATA(DACK0_PD_MARK, PD9MD_100),
    433	PINMUX_DATA(TIOC3B_MARK, PD9MD_101),
    434
    435	PINMUX_DATA(PD8_DATA, PD8MD_000, PD8_IN, PD8_OUT),
    436	PINMUX_DATA(D24_MARK, PD8MD_001),
    437	PINMUX_DATA(PINT0_PD_MARK, PD8MD_010),
    438	PINMUX_DATA(DREQ0_PD_MARK, PD8MD_100),
    439	PINMUX_DATA(TIOC3A_MARK, PD8MD_101),
    440
    441	PINMUX_DATA(PD7_DATA, PD7MD_000, PD7_IN, PD7_OUT),
    442	PINMUX_DATA(D23_MARK, PD7MD_001),
    443	PINMUX_DATA(IRQ7_PD_MARK, PD7MD_010),
    444	PINMUX_DATA(SCS1_PD_MARK, PD7MD_011),
    445	PINMUX_DATA(TCLKD_PD_MARK, PD7MD_100),
    446	PINMUX_DATA(TIOC2B_MARK, PD7MD_101),
    447
    448	PINMUX_DATA(PD6_DATA, PD6MD_000, PD6_IN, PD6_OUT),
    449	PINMUX_DATA(D22_MARK, PD6MD_001),
    450	PINMUX_DATA(IRQ6_PD_MARK, PD6MD_010),
    451	PINMUX_DATA(SSO1_PD_MARK, PD6MD_011),
    452	PINMUX_DATA(TCLKC_PD_MARK, PD6MD_100),
    453	PINMUX_DATA(TIOC2A_MARK, PD6MD_101),
    454
    455	PINMUX_DATA(PD5_DATA, PD5MD_000, PD5_IN, PD5_OUT),
    456	PINMUX_DATA(D21_MARK, PD5MD_001),
    457	PINMUX_DATA(IRQ5_PD_MARK, PD5MD_010),
    458	PINMUX_DATA(SSI1_PD_MARK, PD5MD_011),
    459	PINMUX_DATA(TCLKB_PD_MARK, PD5MD_100),
    460	PINMUX_DATA(TIOC1B_MARK, PD5MD_101),
    461
    462	PINMUX_DATA(PD4_DATA, PD4MD_000, PD4_IN, PD4_OUT),
    463	PINMUX_DATA(D20_MARK, PD4MD_001),
    464	PINMUX_DATA(IRQ4_PD_MARK, PD4MD_010),
    465	PINMUX_DATA(SSCK1_PD_MARK, PD4MD_011),
    466	PINMUX_DATA(TCLKA_PD_MARK, PD4MD_100),
    467	PINMUX_DATA(TIOC1A_MARK, PD4MD_101),
    468
    469	PINMUX_DATA(PD3_DATA, PD3MD_000, PD3_IN, PD3_OUT),
    470	PINMUX_DATA(D19_MARK, PD3MD_001),
    471	PINMUX_DATA(IRQ3_PD_MARK, PD3MD_010),
    472	PINMUX_DATA(SCS0_PD_MARK, PD3MD_011),
    473	PINMUX_DATA(DACK3_MARK, PD3MD_100),
    474	PINMUX_DATA(TIOC0D_MARK, PD3MD_101),
    475
    476	PINMUX_DATA(PD2_DATA, PD2MD_000, PD2_IN, PD2_OUT),
    477	PINMUX_DATA(D18_MARK, PD2MD_001),
    478	PINMUX_DATA(IRQ2_PD_MARK, PD2MD_010),
    479	PINMUX_DATA(SSO0_PD_MARK, PD2MD_011),
    480	PINMUX_DATA(DREQ3_MARK, PD2MD_100),
    481	PINMUX_DATA(TIOC0C_MARK, PD2MD_101),
    482
    483	PINMUX_DATA(PD1_DATA, PD1MD_000, PD1_IN, PD1_OUT),
    484	PINMUX_DATA(D17_MARK, PD1MD_001),
    485	PINMUX_DATA(IRQ1_PD_MARK, PD1MD_010),
    486	PINMUX_DATA(SSI0_PD_MARK, PD1MD_011),
    487	PINMUX_DATA(DACK2_MARK, PD1MD_100),
    488	PINMUX_DATA(TIOC0B_MARK, PD1MD_101),
    489
    490	PINMUX_DATA(PD0_DATA, PD0MD_000, PD0_IN, PD0_OUT),
    491	PINMUX_DATA(D16_MARK, PD0MD_001),
    492	PINMUX_DATA(IRQ0_PD_MARK, PD0MD_010),
    493	PINMUX_DATA(SSCK0_PD_MARK, PD0MD_011),
    494	PINMUX_DATA(DREQ2_MARK, PD0MD_100),
    495	PINMUX_DATA(TIOC0A_MARK, PD0MD_101),
    496
    497	/* PE */
    498	PINMUX_DATA(PE15_DATA, PE15MD_00, PE15_IN, PE15_OUT),
    499	PINMUX_DATA(IOIS16_MARK, PE15MD_01),
    500	PINMUX_DATA(RTS3_MARK, PE15MD_11),
    501
    502	PINMUX_DATA(PE14_DATA, PE14MD_00, PE14_IN, PE14_OUT),
    503	PINMUX_DATA(CS1_MARK, PE14MD_01),
    504	PINMUX_DATA(CTS3_MARK, PE14MD_11),
    505
    506	PINMUX_DATA(PE13_DATA, PE13MD_00, PE13_IN, PE13_OUT),
    507	PINMUX_DATA(TXD3_MARK, PE13MD_11),
    508
    509	PINMUX_DATA(PE12_DATA, PE12MD_00, PE12_IN, PE12_OUT),
    510	PINMUX_DATA(RXD3_MARK, PE12MD_11),
    511
    512	PINMUX_DATA(PE11_DATA, PE11MD_000, PE11_IN, PE11_OUT),
    513	PINMUX_DATA(CS6_CE1B_MARK, PE11MD_001),
    514	PINMUX_DATA(IRQ7_PE_MARK, PE11MD_010),
    515	PINMUX_DATA(TEND1_PE_MARK, PE11MD_100),
    516
    517	PINMUX_DATA(PE10_DATA, PE10MD_000, PE10_IN, PE10_OUT),
    518	PINMUX_DATA(CE2B_MARK, PE10MD_001),
    519	PINMUX_DATA(IRQ6_PE_MARK, PE10MD_010),
    520	PINMUX_DATA(TEND0_PE_MARK, PE10MD_100),
    521
    522	PINMUX_DATA(PE9_DATA, PE9MD_00, PE9_IN, PE9_OUT),
    523	PINMUX_DATA(CS5_CE1A_MARK, PE9MD_01),
    524	PINMUX_DATA(IRQ5_PE_MARK, PE9MD_10),
    525	PINMUX_DATA(SCK3_MARK, PE9MD_11),
    526
    527	PINMUX_DATA(PE8_DATA, PE8MD_00, PE8_IN, PE8_OUT),
    528	PINMUX_DATA(CE2A_MARK, PE8MD_01),
    529	PINMUX_DATA(IRQ4_PE_MARK, PE8MD_10),
    530	PINMUX_DATA(SCK2_MARK, PE8MD_11),
    531
    532	PINMUX_DATA(PE7_DATA, PE7MD_000, PE7_IN, PE7_OUT),
    533	PINMUX_DATA(FRAME_MARK, PE7MD_001),
    534	PINMUX_DATA(IRQ3_PE_MARK, PE7MD_010),
    535	PINMUX_DATA(TXD2_MARK, PE7MD_011),
    536	PINMUX_DATA(DACK1_PE_MARK, PE7MD_100),
    537
    538	PINMUX_DATA(PE6_DATA, PE6MD_000, PE6_IN, PE6_OUT),
    539	PINMUX_DATA(A25_MARK, PE6MD_001),
    540	PINMUX_DATA(IRQ2_PE_MARK, PE6MD_010),
    541	PINMUX_DATA(RXD2_MARK, PE6MD_011),
    542	PINMUX_DATA(DREQ1_PE_MARK, PE6MD_100),
    543
    544	PINMUX_DATA(PE5_DATA, PE5MD_000, PE5_IN, PE5_OUT),
    545	PINMUX_DATA(A24_MARK, PE5MD_001),
    546	PINMUX_DATA(IRQ1_PE_MARK, PE5MD_010),
    547	PINMUX_DATA(TXD1_MARK, PE5MD_011),
    548	PINMUX_DATA(DACK0_PE_MARK, PE5MD_100),
    549
    550	PINMUX_DATA(PE4_DATA, PE4MD_000, PE4_IN, PE4_OUT),
    551	PINMUX_DATA(A23_MARK, PE4MD_001),
    552	PINMUX_DATA(IRQ0_PE_MARK, PE4MD_010),
    553	PINMUX_DATA(RXD1_MARK, PE4MD_011),
    554	PINMUX_DATA(DREQ0_PE_MARK, PE4MD_100),
    555
    556	PINMUX_DATA(PE3_DATA, PE3MD_00, PE3_IN, PE3_OUT),
    557	PINMUX_DATA(A22_MARK, PE3MD_01),
    558	PINMUX_DATA(SCK1_MARK, PE3MD_11),
    559
    560	PINMUX_DATA(PE2_DATA, PE2MD_00, PE2_IN, PE2_OUT),
    561	PINMUX_DATA(A21_MARK, PE2MD_01),
    562	PINMUX_DATA(SCK0_MARK, PE2MD_11),
    563
    564	PINMUX_DATA(PE1_DATA, PE1MD_00, PE1_IN, PE1_OUT),
    565	PINMUX_DATA(CS4_MARK, PE1MD_01),
    566	PINMUX_DATA(MRES_MARK, PE1MD_10),
    567	PINMUX_DATA(TXD0_MARK, PE1MD_11),
    568
    569	PINMUX_DATA(PE0_DATA, PE0MD_000, PE0_IN, PE0_OUT),
    570	PINMUX_DATA(BS_MARK, PE0MD_001),
    571	PINMUX_DATA(RXD0_MARK, PE0MD_011),
    572	PINMUX_DATA(ADTRG_PE_MARK, PE0MD_100),
    573
    574	/* PF */
    575	PINMUX_DATA(PF30_DATA, PF30MD_0, PF30_IN, PF30_OUT),
    576	PINMUX_DATA(AUDIO_CLK_MARK, PF30MD_1),
    577
    578	PINMUX_DATA(PF29_DATA, PF29MD_0, PF29_IN, PF29_OUT),
    579	PINMUX_DATA(SSIDATA3_MARK, PF29MD_1),
    580
    581	PINMUX_DATA(PF28_DATA, PF28MD_0, PF28_IN, PF28_OUT),
    582	PINMUX_DATA(SSIWS3_MARK, PF28MD_1),
    583
    584	PINMUX_DATA(PF27_DATA, PF27MD_0, PF27_IN, PF27_OUT),
    585	PINMUX_DATA(SSISCK3_MARK, PF27MD_1),
    586
    587	PINMUX_DATA(PF26_DATA, PF26MD_0, PF26_IN, PF26_OUT),
    588	PINMUX_DATA(SSIDATA2_MARK, PF26MD_1),
    589
    590	PINMUX_DATA(PF25_DATA, PF25MD_0, PF25_IN, PF25_OUT),
    591	PINMUX_DATA(SSIWS2_MARK, PF25MD_1),
    592
    593	PINMUX_DATA(PF24_DATA, PF24MD_0, PF24_IN, PF24_OUT),
    594	PINMUX_DATA(SSISCK2_MARK, PF24MD_1),
    595
    596	PINMUX_DATA(PF23_DATA, PF23MD_00, PF23_IN, PF23_OUT),
    597	PINMUX_DATA(SSIDATA1_MARK, PF23MD_01),
    598	PINMUX_DATA(LCD_VEPWC_MARK, PF23MD_10),
    599
    600	PINMUX_DATA(PF22_DATA, PF22MD_00, PF22_IN, PF22_OUT),
    601	PINMUX_DATA(SSIWS1_MARK, PF22MD_01),
    602	PINMUX_DATA(LCD_VCPWC_MARK, PF22MD_10),
    603
    604	PINMUX_DATA(PF21_DATA, PF21MD_00, PF21_IN, PF21_OUT),
    605	PINMUX_DATA(SSISCK1_MARK, PF21MD_01),
    606	PINMUX_DATA(LCD_CLK_MARK, PF21MD_10),
    607
    608	PINMUX_DATA(PF20_DATA, PF20MD_00, PF20_IN, PF20_OUT),
    609	PINMUX_DATA(SSIDATA0_MARK, PF20MD_01),
    610	PINMUX_DATA(LCD_FLM_MARK, PF20MD_10),
    611
    612	PINMUX_DATA(PF19_DATA, PF19MD_00, PF19_IN, PF19_OUT),
    613	PINMUX_DATA(SSIWS0_MARK, PF19MD_01),
    614	PINMUX_DATA(LCD_M_DISP_MARK, PF19MD_10),
    615
    616	PINMUX_DATA(PF18_DATA, PF18MD_00, PF18_IN, PF18_OUT),
    617	PINMUX_DATA(SSISCK0_MARK, PF18MD_01),
    618	PINMUX_DATA(LCD_CL2_MARK, PF18MD_10),
    619
    620	PINMUX_DATA(PF17_DATA, PF17MD_00, PF17_IN, PF17_OUT),
    621	PINMUX_DATA(FCE_MARK, PF17MD_01),
    622	PINMUX_DATA(LCD_CL1_MARK, PF17MD_10),
    623
    624	PINMUX_DATA(PF16_DATA, PF16MD_00, PF16_IN, PF16_OUT),
    625	PINMUX_DATA(FRB_MARK, PF16MD_01),
    626	PINMUX_DATA(LCD_DON_MARK, PF16MD_10),
    627
    628	PINMUX_DATA(PF15_DATA, PF15MD_00, PF15_IN, PF15_OUT),
    629	PINMUX_DATA(NAF7_MARK, PF15MD_01),
    630	PINMUX_DATA(LCD_DATA15_MARK, PF15MD_10),
    631
    632	PINMUX_DATA(PF14_DATA, PF14MD_00, PF14_IN, PF14_OUT),
    633	PINMUX_DATA(NAF6_MARK, PF14MD_01),
    634	PINMUX_DATA(LCD_DATA14_MARK, PF14MD_10),
    635
    636	PINMUX_DATA(PF13_DATA, PF13MD_00, PF13_IN, PF13_OUT),
    637	PINMUX_DATA(NAF5_MARK, PF13MD_01),
    638	PINMUX_DATA(LCD_DATA13_MARK, PF13MD_10),
    639
    640	PINMUX_DATA(PF12_DATA, PF12MD_00, PF12_IN, PF12_OUT),
    641	PINMUX_DATA(NAF4_MARK, PF12MD_01),
    642	PINMUX_DATA(LCD_DATA12_MARK, PF12MD_10),
    643
    644	PINMUX_DATA(PF11_DATA, PF11MD_00, PF11_IN, PF11_OUT),
    645	PINMUX_DATA(NAF3_MARK, PF11MD_01),
    646	PINMUX_DATA(LCD_DATA11_MARK, PF11MD_10),
    647
    648	PINMUX_DATA(PF10_DATA, PF10MD_00, PF10_IN, PF10_OUT),
    649	PINMUX_DATA(NAF2_MARK, PF10MD_01),
    650	PINMUX_DATA(LCD_DATA10_MARK, PF10MD_10),
    651
    652	PINMUX_DATA(PF9_DATA, PF9MD_00, PF9_IN, PF9_OUT),
    653	PINMUX_DATA(NAF1_MARK, PF9MD_01),
    654	PINMUX_DATA(LCD_DATA9_MARK, PF9MD_10),
    655
    656	PINMUX_DATA(PF8_DATA, PF8MD_00, PF8_IN, PF8_OUT),
    657	PINMUX_DATA(NAF0_MARK, PF8MD_01),
    658	PINMUX_DATA(LCD_DATA8_MARK, PF8MD_10),
    659
    660	PINMUX_DATA(PF7_DATA, PF7MD_00, PF7_IN, PF7_OUT),
    661	PINMUX_DATA(FSC_MARK, PF7MD_01),
    662	PINMUX_DATA(LCD_DATA7_MARK, PF7MD_10),
    663	PINMUX_DATA(SCS1_PF_MARK, PF7MD_11),
    664
    665	PINMUX_DATA(PF6_DATA, PF6MD_00, PF6_IN, PF6_OUT),
    666	PINMUX_DATA(FOE_MARK, PF6MD_01),
    667	PINMUX_DATA(LCD_DATA6_MARK, PF6MD_10),
    668	PINMUX_DATA(SSO1_PF_MARK, PF6MD_11),
    669
    670	PINMUX_DATA(PF5_DATA, PF5MD_00, PF5_IN, PF5_OUT),
    671	PINMUX_DATA(FCDE_MARK, PF5MD_01),
    672	PINMUX_DATA(LCD_DATA5_MARK, PF5MD_10),
    673	PINMUX_DATA(SSI1_PF_MARK, PF5MD_11),
    674
    675	PINMUX_DATA(PF4_DATA, PF4MD_00, PF4_IN, PF4_OUT),
    676	PINMUX_DATA(FWE_MARK, PF4MD_01),
    677	PINMUX_DATA(LCD_DATA4_MARK, PF4MD_10),
    678	PINMUX_DATA(SSCK1_PF_MARK, PF4MD_11),
    679
    680	PINMUX_DATA(PF3_DATA, PF3MD_00, PF3_IN, PF3_OUT),
    681	PINMUX_DATA(TCLKD_PF_MARK, PF3MD_01),
    682	PINMUX_DATA(LCD_DATA3_MARK, PF3MD_10),
    683	PINMUX_DATA(SCS0_PF_MARK, PF3MD_11),
    684
    685	PINMUX_DATA(PF2_DATA, PF2MD_00, PF2_IN, PF2_OUT),
    686	PINMUX_DATA(TCLKC_PF_MARK, PF2MD_01),
    687	PINMUX_DATA(LCD_DATA2_MARK, PF2MD_10),
    688	PINMUX_DATA(SSO0_PF_MARK, PF2MD_11),
    689
    690	PINMUX_DATA(PF1_DATA, PF1MD_00, PF1_IN, PF1_OUT),
    691	PINMUX_DATA(TCLKB_PF_MARK, PF1MD_01),
    692	PINMUX_DATA(LCD_DATA1_MARK, PF1MD_10),
    693	PINMUX_DATA(SSI0_PF_MARK, PF1MD_11),
    694
    695	PINMUX_DATA(PF0_DATA, PF0MD_00, PF0_IN, PF0_OUT),
    696	PINMUX_DATA(TCLKA_PF_MARK, PF0MD_01),
    697	PINMUX_DATA(LCD_DATA0_MARK, PF0MD_10),
    698	PINMUX_DATA(SSCK0_PF_MARK, PF0MD_11),
    699};
    700
    701static const struct sh_pfc_pin pinmux_pins[] = {
    702	/* PA */
    703	PINMUX_GPIO(PA7),
    704	PINMUX_GPIO(PA6),
    705	PINMUX_GPIO(PA5),
    706	PINMUX_GPIO(PA4),
    707	PINMUX_GPIO(PA3),
    708	PINMUX_GPIO(PA2),
    709	PINMUX_GPIO(PA1),
    710	PINMUX_GPIO(PA0),
    711
    712	/* PB */
    713	PINMUX_GPIO(PB12),
    714	PINMUX_GPIO(PB11),
    715	PINMUX_GPIO(PB10),
    716	PINMUX_GPIO(PB9),
    717	PINMUX_GPIO(PB8),
    718	PINMUX_GPIO(PB7),
    719	PINMUX_GPIO(PB6),
    720	PINMUX_GPIO(PB5),
    721	PINMUX_GPIO(PB4),
    722	PINMUX_GPIO(PB3),
    723	PINMUX_GPIO(PB2),
    724	PINMUX_GPIO(PB1),
    725	PINMUX_GPIO(PB0),
    726
    727	/* PC */
    728	PINMUX_GPIO(PC14),
    729	PINMUX_GPIO(PC13),
    730	PINMUX_GPIO(PC12),
    731	PINMUX_GPIO(PC11),
    732	PINMUX_GPIO(PC10),
    733	PINMUX_GPIO(PC9),
    734	PINMUX_GPIO(PC8),
    735	PINMUX_GPIO(PC7),
    736	PINMUX_GPIO(PC6),
    737	PINMUX_GPIO(PC5),
    738	PINMUX_GPIO(PC4),
    739	PINMUX_GPIO(PC3),
    740	PINMUX_GPIO(PC2),
    741	PINMUX_GPIO(PC1),
    742	PINMUX_GPIO(PC0),
    743
    744	/* PD */
    745	PINMUX_GPIO(PD15),
    746	PINMUX_GPIO(PD14),
    747	PINMUX_GPIO(PD13),
    748	PINMUX_GPIO(PD12),
    749	PINMUX_GPIO(PD11),
    750	PINMUX_GPIO(PD10),
    751	PINMUX_GPIO(PD9),
    752	PINMUX_GPIO(PD8),
    753	PINMUX_GPIO(PD7),
    754	PINMUX_GPIO(PD6),
    755	PINMUX_GPIO(PD5),
    756	PINMUX_GPIO(PD4),
    757	PINMUX_GPIO(PD3),
    758	PINMUX_GPIO(PD2),
    759	PINMUX_GPIO(PD1),
    760	PINMUX_GPIO(PD0),
    761
    762	/* PE */
    763	PINMUX_GPIO(PE15),
    764	PINMUX_GPIO(PE14),
    765	PINMUX_GPIO(PE13),
    766	PINMUX_GPIO(PE12),
    767	PINMUX_GPIO(PE11),
    768	PINMUX_GPIO(PE10),
    769	PINMUX_GPIO(PE9),
    770	PINMUX_GPIO(PE8),
    771	PINMUX_GPIO(PE7),
    772	PINMUX_GPIO(PE6),
    773	PINMUX_GPIO(PE5),
    774	PINMUX_GPIO(PE4),
    775	PINMUX_GPIO(PE3),
    776	PINMUX_GPIO(PE2),
    777	PINMUX_GPIO(PE1),
    778	PINMUX_GPIO(PE0),
    779
    780	/* PF */
    781	PINMUX_GPIO(PF30),
    782	PINMUX_GPIO(PF29),
    783	PINMUX_GPIO(PF28),
    784	PINMUX_GPIO(PF27),
    785	PINMUX_GPIO(PF26),
    786	PINMUX_GPIO(PF25),
    787	PINMUX_GPIO(PF24),
    788	PINMUX_GPIO(PF23),
    789	PINMUX_GPIO(PF22),
    790	PINMUX_GPIO(PF21),
    791	PINMUX_GPIO(PF20),
    792	PINMUX_GPIO(PF19),
    793	PINMUX_GPIO(PF18),
    794	PINMUX_GPIO(PF17),
    795	PINMUX_GPIO(PF16),
    796	PINMUX_GPIO(PF15),
    797	PINMUX_GPIO(PF14),
    798	PINMUX_GPIO(PF13),
    799	PINMUX_GPIO(PF12),
    800	PINMUX_GPIO(PF11),
    801	PINMUX_GPIO(PF10),
    802	PINMUX_GPIO(PF9),
    803	PINMUX_GPIO(PF8),
    804	PINMUX_GPIO(PF7),
    805	PINMUX_GPIO(PF6),
    806	PINMUX_GPIO(PF5),
    807	PINMUX_GPIO(PF4),
    808	PINMUX_GPIO(PF3),
    809	PINMUX_GPIO(PF2),
    810	PINMUX_GPIO(PF1),
    811	PINMUX_GPIO(PF0),
    812};
    813
    814#define PINMUX_FN_BASE	ARRAY_SIZE(pinmux_pins)
    815
    816static const struct pinmux_func pinmux_func_gpios[] = {
    817	/* INTC */
    818	GPIO_FN(PINT7_PB),
    819	GPIO_FN(PINT6_PB),
    820	GPIO_FN(PINT5_PB),
    821	GPIO_FN(PINT4_PB),
    822	GPIO_FN(PINT3_PB),
    823	GPIO_FN(PINT2_PB),
    824	GPIO_FN(PINT1_PB),
    825	GPIO_FN(PINT0_PB),
    826	GPIO_FN(PINT7_PD),
    827	GPIO_FN(PINT6_PD),
    828	GPIO_FN(PINT5_PD),
    829	GPIO_FN(PINT4_PD),
    830	GPIO_FN(PINT3_PD),
    831	GPIO_FN(PINT2_PD),
    832	GPIO_FN(PINT1_PD),
    833	GPIO_FN(PINT0_PD),
    834	GPIO_FN(IRQ7_PB),
    835	GPIO_FN(IRQ6_PB),
    836	GPIO_FN(IRQ5_PB),
    837	GPIO_FN(IRQ4_PB),
    838	GPIO_FN(IRQ3_PB),
    839	GPIO_FN(IRQ2_PB),
    840	GPIO_FN(IRQ1_PB),
    841	GPIO_FN(IRQ0_PB),
    842	GPIO_FN(IRQ7_PD),
    843	GPIO_FN(IRQ6_PD),
    844	GPIO_FN(IRQ5_PD),
    845	GPIO_FN(IRQ4_PD),
    846	GPIO_FN(IRQ3_PD),
    847	GPIO_FN(IRQ2_PD),
    848	GPIO_FN(IRQ1_PD),
    849	GPIO_FN(IRQ0_PD),
    850	GPIO_FN(IRQ7_PE),
    851	GPIO_FN(IRQ6_PE),
    852	GPIO_FN(IRQ5_PE),
    853	GPIO_FN(IRQ4_PE),
    854	GPIO_FN(IRQ3_PE),
    855	GPIO_FN(IRQ2_PE),
    856	GPIO_FN(IRQ1_PE),
    857	GPIO_FN(IRQ0_PE),
    858
    859	GPIO_FN(WDTOVF),
    860	GPIO_FN(IRQOUT),
    861	GPIO_FN(REFOUT),
    862	GPIO_FN(IRQOUT_REFOUT),
    863	GPIO_FN(UBCTRG),
    864
    865	/* CAN */
    866	GPIO_FN(CTX1),
    867	GPIO_FN(CRX1),
    868	GPIO_FN(CTX0),
    869	GPIO_FN(CTX0_CTX1),
    870	GPIO_FN(CRX0),
    871	GPIO_FN(CRX0_CRX1),
    872
    873	/* IIC3 */
    874	GPIO_FN(SDA3),
    875	GPIO_FN(SCL3),
    876	GPIO_FN(SDA2),
    877	GPIO_FN(SCL2),
    878	GPIO_FN(SDA1),
    879	GPIO_FN(SCL1),
    880	GPIO_FN(SDA0),
    881	GPIO_FN(SCL0),
    882
    883	/* DMAC */
    884	GPIO_FN(TEND0_PD),
    885	GPIO_FN(TEND0_PE),
    886	GPIO_FN(DACK0_PD),
    887	GPIO_FN(DACK0_PE),
    888	GPIO_FN(DREQ0_PD),
    889	GPIO_FN(DREQ0_PE),
    890	GPIO_FN(TEND1_PD),
    891	GPIO_FN(TEND1_PE),
    892	GPIO_FN(DACK1_PD),
    893	GPIO_FN(DACK1_PE),
    894	GPIO_FN(DREQ1_PD),
    895	GPIO_FN(DREQ1_PE),
    896	GPIO_FN(DACK2),
    897	GPIO_FN(DREQ2),
    898	GPIO_FN(DACK3),
    899	GPIO_FN(DREQ3),
    900
    901	/* ADC */
    902	GPIO_FN(ADTRG_PD),
    903	GPIO_FN(ADTRG_PE),
    904
    905	/* BSC */
    906	GPIO_FN(D31),
    907	GPIO_FN(D30),
    908	GPIO_FN(D29),
    909	GPIO_FN(D28),
    910	GPIO_FN(D27),
    911	GPIO_FN(D26),
    912	GPIO_FN(D25),
    913	GPIO_FN(D24),
    914	GPIO_FN(D23),
    915	GPIO_FN(D22),
    916	GPIO_FN(D21),
    917	GPIO_FN(D20),
    918	GPIO_FN(D19),
    919	GPIO_FN(D18),
    920	GPIO_FN(D17),
    921	GPIO_FN(D16),
    922	GPIO_FN(A25),
    923	GPIO_FN(A24),
    924	GPIO_FN(A23),
    925	GPIO_FN(A22),
    926	GPIO_FN(A21),
    927	GPIO_FN(CS4),
    928	GPIO_FN(MRES),
    929	GPIO_FN(BS),
    930	GPIO_FN(IOIS16),
    931	GPIO_FN(CS1),
    932	GPIO_FN(CS6_CE1B),
    933	GPIO_FN(CE2B),
    934	GPIO_FN(CS5_CE1A),
    935	GPIO_FN(CE2A),
    936	GPIO_FN(FRAME),
    937	GPIO_FN(WAIT),
    938	GPIO_FN(RDWR),
    939	GPIO_FN(CKE),
    940	GPIO_FN(CASU),
    941	GPIO_FN(BREQ),
    942	GPIO_FN(RASU),
    943	GPIO_FN(BACK),
    944	GPIO_FN(CASL),
    945	GPIO_FN(RASL),
    946	GPIO_FN(WE3_DQMUU_AH_ICIO_WR),
    947	GPIO_FN(WE2_DQMUL_ICIORD),
    948	GPIO_FN(WE1_DQMLU_WE),
    949	GPIO_FN(WE0_DQMLL),
    950	GPIO_FN(CS3),
    951	GPIO_FN(CS2),
    952	GPIO_FN(A1),
    953	GPIO_FN(A0),
    954	GPIO_FN(CS7),
    955
    956	/* TMU */
    957	GPIO_FN(TIOC4D),
    958	GPIO_FN(TIOC4C),
    959	GPIO_FN(TIOC4B),
    960	GPIO_FN(TIOC4A),
    961	GPIO_FN(TIOC3D),
    962	GPIO_FN(TIOC3C),
    963	GPIO_FN(TIOC3B),
    964	GPIO_FN(TIOC3A),
    965	GPIO_FN(TIOC2B),
    966	GPIO_FN(TIOC1B),
    967	GPIO_FN(TIOC2A),
    968	GPIO_FN(TIOC1A),
    969	GPIO_FN(TIOC0D),
    970	GPIO_FN(TIOC0C),
    971	GPIO_FN(TIOC0B),
    972	GPIO_FN(TIOC0A),
    973	GPIO_FN(TCLKD_PD),
    974	GPIO_FN(TCLKC_PD),
    975	GPIO_FN(TCLKB_PD),
    976	GPIO_FN(TCLKA_PD),
    977	GPIO_FN(TCLKD_PF),
    978	GPIO_FN(TCLKC_PF),
    979	GPIO_FN(TCLKB_PF),
    980	GPIO_FN(TCLKA_PF),
    981
    982	/* SSU */
    983	GPIO_FN(SCS0_PD),
    984	GPIO_FN(SSO0_PD),
    985	GPIO_FN(SSI0_PD),
    986	GPIO_FN(SSCK0_PD),
    987	GPIO_FN(SCS0_PF),
    988	GPIO_FN(SSO0_PF),
    989	GPIO_FN(SSI0_PF),
    990	GPIO_FN(SSCK0_PF),
    991	GPIO_FN(SCS1_PD),
    992	GPIO_FN(SSO1_PD),
    993	GPIO_FN(SSI1_PD),
    994	GPIO_FN(SSCK1_PD),
    995	GPIO_FN(SCS1_PF),
    996	GPIO_FN(SSO1_PF),
    997	GPIO_FN(SSI1_PF),
    998	GPIO_FN(SSCK1_PF),
    999
   1000	/* SCIF */
   1001	GPIO_FN(TXD0),
   1002	GPIO_FN(RXD0),
   1003	GPIO_FN(SCK0),
   1004	GPIO_FN(TXD1),
   1005	GPIO_FN(RXD1),
   1006	GPIO_FN(SCK1),
   1007	GPIO_FN(TXD2),
   1008	GPIO_FN(RXD2),
   1009	GPIO_FN(SCK2),
   1010	GPIO_FN(RTS3),
   1011	GPIO_FN(CTS3),
   1012	GPIO_FN(TXD3),
   1013	GPIO_FN(RXD3),
   1014	GPIO_FN(SCK3),
   1015
   1016	/* SSI */
   1017	GPIO_FN(AUDIO_CLK),
   1018	GPIO_FN(SSIDATA3),
   1019	GPIO_FN(SSIWS3),
   1020	GPIO_FN(SSISCK3),
   1021	GPIO_FN(SSIDATA2),
   1022	GPIO_FN(SSIWS2),
   1023	GPIO_FN(SSISCK2),
   1024	GPIO_FN(SSIDATA1),
   1025	GPIO_FN(SSIWS1),
   1026	GPIO_FN(SSISCK1),
   1027	GPIO_FN(SSIDATA0),
   1028	GPIO_FN(SSIWS0),
   1029	GPIO_FN(SSISCK0),
   1030
   1031	/* FLCTL */
   1032	GPIO_FN(FCE),
   1033	GPIO_FN(FRB),
   1034	GPIO_FN(NAF7),
   1035	GPIO_FN(NAF6),
   1036	GPIO_FN(NAF5),
   1037	GPIO_FN(NAF4),
   1038	GPIO_FN(NAF3),
   1039	GPIO_FN(NAF2),
   1040	GPIO_FN(NAF1),
   1041	GPIO_FN(NAF0),
   1042	GPIO_FN(FSC),
   1043	GPIO_FN(FOE),
   1044	GPIO_FN(FCDE),
   1045	GPIO_FN(FWE),
   1046
   1047	/* LCDC */
   1048	GPIO_FN(LCD_VEPWC),
   1049	GPIO_FN(LCD_VCPWC),
   1050	GPIO_FN(LCD_CLK),
   1051	GPIO_FN(LCD_FLM),
   1052	GPIO_FN(LCD_M_DISP),
   1053	GPIO_FN(LCD_CL2),
   1054	GPIO_FN(LCD_CL1),
   1055	GPIO_FN(LCD_DON),
   1056	GPIO_FN(LCD_DATA15),
   1057	GPIO_FN(LCD_DATA14),
   1058	GPIO_FN(LCD_DATA13),
   1059	GPIO_FN(LCD_DATA12),
   1060	GPIO_FN(LCD_DATA11),
   1061	GPIO_FN(LCD_DATA10),
   1062	GPIO_FN(LCD_DATA9),
   1063	GPIO_FN(LCD_DATA8),
   1064	GPIO_FN(LCD_DATA7),
   1065	GPIO_FN(LCD_DATA6),
   1066	GPIO_FN(LCD_DATA5),
   1067	GPIO_FN(LCD_DATA4),
   1068	GPIO_FN(LCD_DATA3),
   1069	GPIO_FN(LCD_DATA2),
   1070	GPIO_FN(LCD_DATA1),
   1071	GPIO_FN(LCD_DATA0),
   1072};
   1073
   1074static const struct pinmux_cfg_reg pinmux_config_regs[] = {
   1075	{ PINMUX_CFG_REG_VAR("PBIORL", 0xfffe3886, 16,
   1076			     GROUP(-4, 1, 1, 1, 1, -8),
   1077			     GROUP(
   1078		/* RESERVED [4] */
   1079		PB11_IN, PB11_OUT,
   1080		PB10_IN, PB10_OUT,
   1081		PB9_IN, PB9_OUT,
   1082		PB8_IN, PB8_OUT,
   1083		/* RESERVED [8] */ ))
   1084	},
   1085	{ PINMUX_CFG_REG_VAR("PBCRL4", 0xfffe3890, 16,
   1086			     GROUP(-12, 4),
   1087			     GROUP(
   1088		/* RESERVED [12] */
   1089		PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,
   1090		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1091	},
   1092	{ PINMUX_CFG_REG("PBCRL3", 0xfffe3892, 16, 4, GROUP(
   1093		PB11MD_0, PB11MD_1,
   1094		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1095
   1096		PB10MD_0, PB10MD_1,
   1097		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1098
   1099		PB9MD_00, PB9MD_01, PB9MD_10, 0,
   1100		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1101
   1102		PB8MD_00, PB8MD_01, PB8MD_10, 0,
   1103		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1104	},
   1105	{ PINMUX_CFG_REG("PBCRL2", 0xfffe3894, 16, 4, GROUP(
   1106		PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,
   1107		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1108
   1109		PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,
   1110		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1111
   1112		PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,
   1113		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1114
   1115		PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,
   1116		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1117	},
   1118	{ PINMUX_CFG_REG("PBCRL1", 0xfffe3896, 16, 4, GROUP(
   1119		PB3MD_00, PB3MD_01, PB3MD_10, PB3MD_11,
   1120		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1121
   1122		PB2MD_00, PB2MD_01, PB2MD_10, PB2MD_11,
   1123		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1124
   1125		PB1MD_00, PB1MD_01, PB1MD_10, PB1MD_11,
   1126		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1127
   1128		PB0MD_00, PB0MD_01, PB0MD_10, PB0MD_11,
   1129		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1130	},
   1131	{ PINMUX_CFG_REG_VAR("IFCR", 0xfffe38a2, 16,
   1132			     GROUP(-12, 4),
   1133			     GROUP(
   1134		/* RESERVED [12] */
   1135		PB12IRQ_00, PB12IRQ_01, PB12IRQ_10, 0,
   1136		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1137	},
   1138	{ PINMUX_CFG_REG("PCIORL", 0xfffe3906, 16, 1, GROUP(
   1139		0, 0,
   1140		PC14_IN, PC14_OUT,
   1141		PC13_IN, PC13_OUT,
   1142		PC12_IN, PC12_OUT,
   1143		PC11_IN, PC11_OUT,
   1144		PC10_IN, PC10_OUT,
   1145		PC9_IN, PC9_OUT,
   1146		PC8_IN, PC8_OUT,
   1147		PC7_IN, PC7_OUT,
   1148		PC6_IN, PC6_OUT,
   1149		PC5_IN, PC5_OUT,
   1150		PC4_IN, PC4_OUT,
   1151		PC3_IN, PC3_OUT,
   1152		PC2_IN, PC2_OUT,
   1153		PC1_IN, PC1_OUT,
   1154		PC0_IN, PC0_OUT ))
   1155	},
   1156	{ PINMUX_CFG_REG_VAR("PCCRL4", 0xfffe3910, 16,
   1157			     GROUP(-4, 4, 4, 4),
   1158			     GROUP(
   1159		/* RESERVED [4] */
   1160		PC14MD_0, PC14MD_1,
   1161		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1162
   1163		PC13MD_0, PC13MD_1,
   1164		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1165
   1166		PC12MD_0, PC12MD_1,
   1167		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1168	},
   1169	{ PINMUX_CFG_REG("PCCRL3", 0xfffe3912, 16, 4, GROUP(
   1170		PC11MD_00, PC11MD_01, PC11MD_10, 0,
   1171		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1172
   1173		PC10MD_00, PC10MD_01, PC10MD_10, 0,
   1174		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1175
   1176		PC9MD_0, PC9MD_1,
   1177		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1178
   1179		PC8MD_0, PC8MD_1,
   1180		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1181	},
   1182	{ PINMUX_CFG_REG("PCCRL2", 0xfffe3914, 16, 4, GROUP(
   1183		PC7MD_0, PC7MD_1,
   1184		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1185
   1186		PC6MD_0, PC6MD_1,
   1187		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1188
   1189		PC5MD_0, PC5MD_1,
   1190		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1191
   1192		PC4MD_0, PC4MD_1,
   1193		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1194	},
   1195	{ PINMUX_CFG_REG("PCCRL1", 0xfffe3916, 16, 4, GROUP(
   1196		PC3MD_0, PC3MD_1,
   1197		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1198
   1199		PC2MD_0, PC2MD_1,
   1200		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1201
   1202		PC1MD_0, PC1MD_1,
   1203		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1204
   1205		PC0MD_00, PC0MD_01, PC0MD_10, 0,
   1206		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1207	},
   1208	{ PINMUX_CFG_REG("PDIORL", 0xfffe3986, 16, 1, GROUP(
   1209		PD15_IN, PD15_OUT,
   1210		PD14_IN, PD14_OUT,
   1211		PD13_IN, PD13_OUT,
   1212		PD12_IN, PD12_OUT,
   1213		PD11_IN, PD11_OUT,
   1214		PD10_IN, PD10_OUT,
   1215		PD9_IN, PD9_OUT,
   1216		PD8_IN, PD8_OUT,
   1217		PD7_IN, PD7_OUT,
   1218		PD6_IN, PD6_OUT,
   1219		PD5_IN, PD5_OUT,
   1220		PD4_IN, PD4_OUT,
   1221		PD3_IN, PD3_OUT,
   1222		PD2_IN, PD2_OUT,
   1223		PD1_IN, PD1_OUT,
   1224		PD0_IN, PD0_OUT ))
   1225	},
   1226	{ PINMUX_CFG_REG("PDCRL4", 0xfffe3990, 16, 4, GROUP(
   1227		PD15MD_000, PD15MD_001, PD15MD_010, 0,
   1228		PD15MD_100, PD15MD_101, 0, 0,
   1229		0, 0, 0, 0, 0, 0, 0, 0,
   1230
   1231		PD14MD_000, PD14MD_001, PD14MD_010, 0,
   1232		0, PD14MD_101, 0, 0,
   1233		0, 0, 0, 0, 0, 0, 0, 0,
   1234
   1235		PD13MD_000, PD13MD_001, PD13MD_010, 0,
   1236		PD13MD_100, PD13MD_101, 0, 0,
   1237		0, 0, 0, 0, 0, 0, 0, 0,
   1238
   1239		PD12MD_000, PD12MD_001, PD12MD_010, 0,
   1240		PD12MD_100, PD12MD_101, 0, 0,
   1241		0, 0, 0, 0, 0, 0, 0, 0 ))
   1242	},
   1243	{ PINMUX_CFG_REG("PDCRL3", 0xfffe3992, 16, 4, GROUP(
   1244		PD11MD_000, PD11MD_001, PD11MD_010, 0,
   1245		PD11MD_100, PD11MD_101, 0, 0,
   1246		0, 0, 0, 0, 0, 0, 0, 0,
   1247
   1248		PD10MD_000, PD10MD_001, PD10MD_010, 0,
   1249		PD10MD_100, PD10MD_101, 0, 0,
   1250		0, 0, 0, 0, 0, 0, 0, 0,
   1251
   1252		PD9MD_000, PD9MD_001, PD9MD_010, 0,
   1253		PD9MD_100, PD9MD_101, 0, 0,
   1254		0, 0, 0, 0, 0, 0, 0, 0,
   1255
   1256		PD8MD_000, PD8MD_001, PD8MD_010, 0,
   1257		PD8MD_100, PD8MD_101, 0, 0,
   1258		0, 0, 0, 0, 0, 0, 0, 0 ))
   1259	},
   1260	{ PINMUX_CFG_REG("PDCRL2", 0xfffe3994, 16, 4, GROUP(
   1261		PD7MD_000, PD7MD_001, PD7MD_010, PD7MD_011,
   1262		PD7MD_100, PD7MD_101, 0, 0,
   1263		0, 0, 0, 0, 0, 0, 0, 0,
   1264
   1265		PD6MD_000, PD6MD_001, PD6MD_010, PD6MD_011,
   1266		PD6MD_100, PD6MD_101, 0, 0,
   1267		0, 0, 0, 0, 0, 0, 0, 0,
   1268
   1269		PD5MD_000, PD5MD_001, PD5MD_010, PD5MD_011,
   1270		PD5MD_100, PD5MD_101, 0, 0,
   1271		0, 0, 0, 0, 0, 0, 0, 0,
   1272
   1273		PD4MD_000, PD4MD_001, PD4MD_010, PD4MD_011,
   1274		PD4MD_100, PD4MD_101, 0, 0,
   1275		0, 0, 0, 0, 0, 0, 0, 0 ))
   1276	},
   1277	{ PINMUX_CFG_REG("PDCRL1", 0xfffe3996, 16, 4, GROUP(
   1278		PD3MD_000, PD3MD_001, PD3MD_010, PD3MD_011,
   1279		PD3MD_100, PD3MD_101, 0, 0,
   1280		0, 0, 0, 0, 0, 0, 0, 0,
   1281
   1282		PD2MD_000, PD2MD_001, PD2MD_010, PD2MD_011,
   1283		PD2MD_100, PD2MD_101, 0, 0,
   1284		0, 0, 0, 0, 0, 0, 0, 0,
   1285
   1286		PD1MD_000, PD1MD_001, PD1MD_010, PD1MD_011,
   1287		PD1MD_100, PD1MD_101, 0, 0,
   1288		0, 0, 0, 0, 0, 0, 0, 0,
   1289
   1290		PD0MD_000, PD0MD_001, PD0MD_010, PD0MD_011,
   1291		PD0MD_100, PD0MD_101, 0, 0,
   1292		0, 0, 0, 0, 0, 0, 0, 0 ))
   1293	},
   1294	{ PINMUX_CFG_REG("PEIORL", 0xfffe3a06, 16, 1, GROUP(
   1295		PE15_IN, PE15_OUT,
   1296		PE14_IN, PE14_OUT,
   1297		PE13_IN, PE13_OUT,
   1298		PE12_IN, PE12_OUT,
   1299		PE11_IN, PE11_OUT,
   1300		PE10_IN, PE10_OUT,
   1301		PE9_IN, PE9_OUT,
   1302		PE8_IN, PE8_OUT,
   1303		PE7_IN, PE7_OUT,
   1304		PE6_IN, PE6_OUT,
   1305		PE5_IN, PE5_OUT,
   1306		PE4_IN, PE4_OUT,
   1307		PE3_IN, PE3_OUT,
   1308		PE2_IN, PE2_OUT,
   1309		PE1_IN, PE1_OUT,
   1310		PE0_IN, PE0_OUT ))
   1311	},
   1312	{ PINMUX_CFG_REG("PECRL4", 0xfffe3a10, 16, 4, GROUP(
   1313		PE15MD_00, PE15MD_01, 0, PE15MD_11,
   1314		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1315
   1316		PE14MD_00, PE14MD_01, 0, PE14MD_11,
   1317		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1318
   1319		PE13MD_00, 0, 0, PE13MD_11,
   1320		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1321
   1322		PE12MD_00, 0, 0, PE12MD_11,
   1323		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1324	},
   1325	{ PINMUX_CFG_REG("PECRL3", 0xfffe3a12, 16, 4, GROUP(
   1326		PE11MD_000, PE11MD_001, PE11MD_010, 0,
   1327		PE11MD_100, 0, 0, 0,
   1328		0, 0, 0, 0, 0, 0, 0, 0,
   1329
   1330		PE10MD_000, PE10MD_001, PE10MD_010, 0,
   1331		PE10MD_100, 0, 0, 0,
   1332		0, 0, 0, 0, 0, 0, 0, 0,
   1333
   1334		PE9MD_00, PE9MD_01, PE9MD_10, PE9MD_11,
   1335		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1336
   1337		PE8MD_00, PE8MD_01, PE8MD_10, PE8MD_11,
   1338		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1339	},
   1340	{ PINMUX_CFG_REG("PECRL2", 0xfffe3a14, 16, 4, GROUP(
   1341		PE7MD_000, PE7MD_001, PE7MD_010, PE7MD_011,
   1342		PE7MD_100, 0, 0, 0,
   1343		0, 0, 0, 0, 0, 0, 0, 0,
   1344
   1345		PE6MD_000, PE6MD_001, PE6MD_010, PE6MD_011,
   1346		PE6MD_100, 0, 0, 0,
   1347		0, 0, 0, 0, 0, 0, 0, 0,
   1348
   1349		PE5MD_000, PE5MD_001, PE5MD_010, PE5MD_011,
   1350		PE5MD_100, 0, 0, 0,
   1351		0, 0, 0, 0, 0, 0, 0, 0,
   1352
   1353		PE4MD_000, PE4MD_001, PE4MD_010, PE4MD_011,
   1354		PE4MD_100, 0, 0, 0,
   1355		0, 0, 0, 0, 0, 0, 0, 0 ))
   1356	},
   1357	{ PINMUX_CFG_REG("PECRL1", 0xfffe3a16, 16, 4, GROUP(
   1358		PE3MD_00, PE3MD_01, 0, PE3MD_11,
   1359		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1360
   1361		PE2MD_00, PE2MD_01, 0, PE2MD_11,
   1362		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1363
   1364		PE1MD_00, PE1MD_01, PE1MD_10, PE1MD_11,
   1365		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1366
   1367		PE0MD_000, PE0MD_001, 0, PE0MD_011,
   1368		PE0MD_100, 0, 0, 0,
   1369		0, 0, 0, 0, 0, 0, 0, 0 ))
   1370	},
   1371	{ PINMUX_CFG_REG("PFIORH", 0xfffe3a84, 16, 1, GROUP(
   1372		0, 0,
   1373		PF30_IN, PF30_OUT,
   1374		PF29_IN, PF29_OUT,
   1375		PF28_IN, PF28_OUT,
   1376		PF27_IN, PF27_OUT,
   1377		PF26_IN, PF26_OUT,
   1378		PF25_IN, PF25_OUT,
   1379		PF24_IN, PF24_OUT,
   1380		PF23_IN, PF23_OUT,
   1381		PF22_IN, PF22_OUT,
   1382		PF21_IN, PF21_OUT,
   1383		PF20_IN, PF20_OUT,
   1384		PF19_IN, PF19_OUT,
   1385		PF18_IN, PF18_OUT,
   1386		PF17_IN, PF17_OUT,
   1387		PF16_IN, PF16_OUT ))
   1388	},
   1389	{ PINMUX_CFG_REG("PFIORL", 0xfffe3a86, 16, 1, GROUP(
   1390		PF15_IN, PF15_OUT,
   1391		PF14_IN, PF14_OUT,
   1392		PF13_IN, PF13_OUT,
   1393		PF12_IN, PF12_OUT,
   1394		PF11_IN, PF11_OUT,
   1395		PF10_IN, PF10_OUT,
   1396		PF9_IN, PF9_OUT,
   1397		PF8_IN, PF8_OUT,
   1398		PF7_IN, PF7_OUT,
   1399		PF6_IN, PF6_OUT,
   1400		PF5_IN, PF5_OUT,
   1401		PF4_IN, PF4_OUT,
   1402		PF3_IN, PF3_OUT,
   1403		PF2_IN, PF2_OUT,
   1404		PF1_IN, PF1_OUT,
   1405		PF0_IN, PF0_OUT ))
   1406	},
   1407	{ PINMUX_CFG_REG_VAR("PFCRH4", 0xfffe3a88, 16,
   1408			     GROUP(-4, 4, 4, 4),
   1409			     GROUP(
   1410		/* RESERVED [4] */
   1411
   1412		PF30MD_0, PF30MD_1,
   1413		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1414
   1415		PF29MD_0, PF29MD_1,
   1416		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1417
   1418		PF28MD_0, PF28MD_1,
   1419		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1420	},
   1421	{ PINMUX_CFG_REG("PFCRH3", 0xfffe3a8a, 16, 4, GROUP(
   1422		PF27MD_0, PF27MD_1,
   1423		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1424
   1425		PF26MD_0, PF26MD_1,
   1426		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1427
   1428		PF25MD_0, PF25MD_1,
   1429		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1430
   1431		PF24MD_0, PF24MD_1,
   1432		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1433	},
   1434	{ PINMUX_CFG_REG("PFCRH2", 0xfffe3a8c, 16, 4, GROUP(
   1435		PF23MD_00, PF23MD_01, PF23MD_10, 0,
   1436		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1437
   1438		PF22MD_00, PF22MD_01, PF22MD_10, 0,
   1439		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1440
   1441		PF21MD_00, PF21MD_01, PF21MD_10, 0,
   1442		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1443
   1444		PF20MD_00, PF20MD_01, PF20MD_10, 0,
   1445		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1446	},
   1447	{ PINMUX_CFG_REG("PFCRH1", 0xfffe3a8e, 16, 4, GROUP(
   1448		PF19MD_00, PF19MD_01, PF19MD_10, 0,
   1449		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1450
   1451		PF18MD_00, PF18MD_01, PF18MD_10, 0,
   1452		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1453
   1454		PF17MD_00, PF17MD_01, PF17MD_10, 0,
   1455		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1456
   1457		PF16MD_00, PF16MD_01, PF16MD_10, 0,
   1458		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1459	},
   1460	{ PINMUX_CFG_REG("PFCRL4", 0xfffe3a90, 16, 4, GROUP(
   1461		PF15MD_00, PF15MD_01, PF15MD_10, 0,
   1462		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1463
   1464		PF14MD_00, PF14MD_01, PF14MD_10, 0,
   1465		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1466
   1467		PF13MD_00, PF13MD_01, PF13MD_10, 0,
   1468		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1469
   1470		PF12MD_00, PF12MD_01, PF12MD_10, 0,
   1471		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1472	},
   1473	{ PINMUX_CFG_REG("PFCRL3", 0xfffe3a92, 16, 4, GROUP(
   1474		PF11MD_00, PF11MD_01, PF11MD_10, 0,
   1475		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1476
   1477		PF10MD_00, PF10MD_01, PF10MD_10, 0,
   1478		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1479
   1480		PF9MD_00, PF9MD_01, PF9MD_10, 0,
   1481		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1482
   1483		PF8MD_00, PF8MD_01, PF8MD_10, 0,
   1484		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1485	},
   1486	{ PINMUX_CFG_REG("PFCRL2", 0xfffe3a94, 16, 4, GROUP(
   1487		PF7MD_00, PF7MD_01, PF7MD_10, PF7MD_11,
   1488		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1489
   1490		PF6MD_00, PF6MD_01, PF6MD_10, PF6MD_11,
   1491		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1492
   1493		PF5MD_00, PF5MD_01, PF5MD_10, PF5MD_11,
   1494		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1495
   1496		PF4MD_00, PF4MD_01, PF4MD_10, PF4MD_11,
   1497		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1498	},
   1499	{ PINMUX_CFG_REG("PFCRL1", 0xfffe3a96, 16, 4, GROUP(
   1500		PF3MD_00, PF3MD_01, PF3MD_10, PF3MD_11,
   1501		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1502
   1503		PF2MD_00, PF2MD_01, PF2MD_10, PF2MD_11,
   1504		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1505
   1506		PF1MD_00, PF1MD_01, PF1MD_10, PF1MD_11,
   1507		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   1508
   1509		PF0MD_00, PF0MD_01, PF0MD_10, PF0MD_11,
   1510		0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ))
   1511	},
   1512	{}
   1513};
   1514
   1515static const struct pinmux_data_reg pinmux_data_regs[] = {
   1516	{ PINMUX_DATA_REG("PADRL", 0xfffe3802, 16, GROUP(
   1517		0, 0, 0, 0,
   1518		0, 0, 0, 0,
   1519		PA7_DATA, PA6_DATA, PA5_DATA, PA4_DATA,
   1520		PA3_DATA, PA2_DATA, PA1_DATA, PA0_DATA ))
   1521	},
   1522	{ PINMUX_DATA_REG("PBDRL", 0xfffe3882, 16, GROUP(
   1523		0, 0, 0, PB12_DATA,
   1524		PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
   1525		PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
   1526		PB3_DATA, PB2_DATA, PB1_DATA, PB0_DATA ))
   1527	},
   1528	{ PINMUX_DATA_REG("PCDRL", 0xfffe3902, 16, GROUP(
   1529		0, PC14_DATA, PC13_DATA, PC12_DATA,
   1530		PC11_DATA, PC10_DATA, PC9_DATA, PC8_DATA,
   1531		PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
   1532		PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA ))
   1533	},
   1534	{ PINMUX_DATA_REG("PDDRL", 0xfffe3982, 16, GROUP(
   1535		PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
   1536		PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
   1537		PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
   1538		PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA ))
   1539	},
   1540	{ PINMUX_DATA_REG("PEDRL", 0xfffe3a02, 16, GROUP(
   1541		PE15_DATA, PE14_DATA, PE13_DATA, PE12_DATA,
   1542		PE11_DATA, PE10_DATA, PE9_DATA, PE8_DATA,
   1543		PE7_DATA, PE6_DATA, PE5_DATA, PE4_DATA,
   1544		PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA ))
   1545	},
   1546	{ PINMUX_DATA_REG("PFDRH", 0xfffe3a80, 16, GROUP(
   1547		0, PF30_DATA, PF29_DATA, PF28_DATA,
   1548		PF27_DATA, PF26_DATA, PF25_DATA, PF24_DATA,
   1549		PF23_DATA, PF22_DATA, PF21_DATA, PF20_DATA,
   1550		PF19_DATA, PF18_DATA, PF17_DATA, PF16_DATA ))
   1551	},
   1552	{ PINMUX_DATA_REG("PFDRL", 0xfffe3a82, 16, GROUP(
   1553		PF15_DATA, PF14_DATA, PF13_DATA, PF12_DATA,
   1554		PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
   1555		PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
   1556		PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA ))
   1557	},
   1558	{ },
   1559};
   1560
   1561const struct sh_pfc_soc_info sh7203_pinmux_info = {
   1562	.name = "sh7203_pfc",
   1563	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },
   1564	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },
   1565	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
   1566
   1567	.pins = pinmux_pins,
   1568	.nr_pins = ARRAY_SIZE(pinmux_pins),
   1569	.func_gpios = pinmux_func_gpios,
   1570	.nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
   1571
   1572	.cfg_regs = pinmux_config_regs,
   1573	.data_regs = pinmux_data_regs,
   1574
   1575	.pinmux_data = pinmux_data,
   1576	.pinmux_data_size = ARRAY_SIZE(pinmux_data),
   1577};