brintos

brintos / linux-shallow public Read only

0
0
Text · 55.6 KiB · 8417c42 Raw
2132 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * SH7264 Pinmux4 *5 *  Copyright (C) 2012  Renesas Electronics Europe Ltd6 */7 8#include <linux/kernel.h>9#include <cpu/sh7264.h>10 11#include "sh_pfc.h"12 13enum {14	PINMUX_RESERVED = 0,15 16	PINMUX_DATA_BEGIN,17	/* Port A */18	PA3_DATA, PA2_DATA, PA1_DATA, PA0_DATA,19	/* Port B */20	PB22_DATA, PB21_DATA, PB20_DATA,21	PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA,22	PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,23	PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,24	PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,25	PB3_DATA, PB2_DATA, PB1_DATA,26	/* Port C */27	PC10_DATA, PC9_DATA, PC8_DATA,28	PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,29	PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA,30	/* Port D */31	PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,32	PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,33	PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,34	PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA,35	/* Port E */36	PE5_DATA, PE4_DATA,37	PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA,38	/* Port F */39	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	/* Port G */44	PG24_DATA,45	PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,46	PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA,47	PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,48	PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,49	PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,50	PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA,51	/* Port H */52	/* NOTE - Port H does not have a Data Register, but PH Data is53	   connected to PH Port Register */54	PH7_DATA, PH6_DATA, PH5_DATA, PH4_DATA,55	PH3_DATA, PH2_DATA, PH1_DATA, PH0_DATA,56	/* Port I - not on device */57	/* Port J */58	PJ12_DATA,59	PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,60	PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,61	PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA,62	/* Port K */63	PK12_DATA,64	PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,65	PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,66	PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA,67	PINMUX_DATA_END,68 69	PINMUX_INPUT_BEGIN,70	FORCE_IN,71	/* Port A */72	PA3_IN, PA2_IN, PA1_IN, PA0_IN,73	/* Port B */74	PB22_IN, PB21_IN, PB20_IN,75	PB19_IN, PB18_IN, PB17_IN, PB16_IN,76	PB15_IN, PB14_IN, PB13_IN, PB12_IN,77	PB11_IN, PB10_IN, PB9_IN, PB8_IN,78	PB7_IN, PB6_IN, PB5_IN, PB4_IN,79	PB3_IN, PB2_IN, PB1_IN,80	/* Port C */81	PC10_IN, PC9_IN, PC8_IN,82	PC7_IN, PC6_IN, PC5_IN, PC4_IN,83	PC3_IN, PC2_IN, PC1_IN, PC0_IN,84	/* Port D */85	PD15_IN, PD14_IN, PD13_IN, PD12_IN,86	PD11_IN, PD10_IN, PD9_IN, PD8_IN,87	PD7_IN, PD6_IN, PD5_IN, PD4_IN,88	PD3_IN, PD2_IN, PD1_IN, PD0_IN,89	/* Port E */90	PE5_IN, PE4_IN,91	PE3_IN, PE2_IN, PE1_IN, PE0_IN,92	/* Port F */93	PF12_IN,94	PF11_IN, PF10_IN, PF9_IN, PF8_IN,95	PF7_IN, PF6_IN, PF5_IN, PF4_IN,96	PF3_IN, PF2_IN, PF1_IN, PF0_IN,97	/* Port G */98	PG24_IN,99	PG23_IN, PG22_IN, PG21_IN, PG20_IN,100	PG19_IN, PG18_IN, PG17_IN, PG16_IN,101	PG15_IN, PG14_IN, PG13_IN, PG12_IN,102	PG11_IN, PG10_IN, PG9_IN, PG8_IN,103	PG7_IN, PG6_IN, PG5_IN, PG4_IN,104	PG3_IN, PG2_IN, PG1_IN, PG0_IN,105	/* Port H - Port H does not have a Data Register */106	/* Port I - not on device */107	/* Port J */108	PJ12_IN,109	PJ11_IN, PJ10_IN, PJ9_IN, PJ8_IN,110	PJ7_IN, PJ6_IN, PJ5_IN, PJ4_IN,111	PJ3_IN, PJ2_IN, PJ1_IN, PJ0_IN,112	/* Port K */113	PK12_IN,114	PK11_IN, PK10_IN, PK9_IN, PK8_IN,115	PK7_IN, PK6_IN, PK5_IN, PK4_IN,116	PK3_IN, PK2_IN, PK1_IN, PK0_IN,117	PINMUX_INPUT_END,118 119	PINMUX_OUTPUT_BEGIN,120	FORCE_OUT,121	/* Port A */122	PA3_OUT, PA2_OUT, PA1_OUT, PA0_OUT,123	/* Port B */124	PB22_OUT, PB21_OUT, PB20_OUT,125	PB19_OUT, PB18_OUT, PB17_OUT, PB16_OUT,126	PB15_OUT, PB14_OUT, PB13_OUT, PB12_OUT,127	PB11_OUT, PB10_OUT, PB9_OUT, PB8_OUT,128	PB7_OUT, PB6_OUT, PB5_OUT, PB4_OUT,129	PB3_OUT, PB2_OUT, PB1_OUT,130	/* Port C */131	PC10_OUT, PC9_OUT, PC8_OUT,132	PC7_OUT, PC6_OUT, PC5_OUT, PC4_OUT,133	PC3_OUT, PC2_OUT, PC1_OUT, PC0_OUT,134	/* Port D */135	PD15_OUT, PD14_OUT, PD13_OUT, PD12_OUT,136	PD11_OUT, PD10_OUT, PD9_OUT, PD8_OUT,137	PD7_OUT, PD6_OUT, PD5_OUT, PD4_OUT,138	PD3_OUT, PD2_OUT, PD1_OUT, PD0_OUT,139	/* Port E */140	PE5_OUT, PE4_OUT,141	PE3_OUT, PE2_OUT, PE1_OUT, PE0_OUT,142	/* Port F */143	PF12_OUT,144	PF11_OUT, PF10_OUT, PF9_OUT, PF8_OUT,145	PF7_OUT, PF6_OUT, PF5_OUT, PF4_OUT,146	PF3_OUT, PF2_OUT, PF1_OUT, PF0_OUT,147	/* Port G */148	PG24_OUT,149	PG23_OUT, PG22_OUT, PG21_OUT, PG20_OUT,150	PG19_OUT, PG18_OUT, PG17_OUT, PG16_OUT,151	PG15_OUT, PG14_OUT, PG13_OUT, PG12_OUT,152	PG11_OUT, PG10_OUT, PG9_OUT, PG8_OUT,153	PG7_OUT, PG6_OUT, PG5_OUT, PG4_OUT,154	PG3_OUT, PG2_OUT, PG1_OUT, PG0_OUT,155	/* Port H - Port H does not have a Data Register */156	/* Port I - not on device */157	/* Port J */158	PJ12_OUT,159	PJ11_OUT, PJ10_OUT, PJ9_OUT, PJ8_OUT,160	PJ7_OUT, PJ6_OUT, PJ5_OUT, PJ4_OUT,161	PJ3_OUT, PJ2_OUT, PJ1_OUT, PJ0_OUT,162	/* Port K */163	PK12_OUT,164	PK11_OUT, PK10_OUT, PK9_OUT, PK8_OUT,165	PK7_OUT, PK6_OUT, PK5_OUT, PK4_OUT,166	PK3_OUT, PK2_OUT, PK1_OUT, PK0_OUT,167	PINMUX_OUTPUT_END,168 169	PINMUX_FUNCTION_BEGIN,170	/* Port A */171	PA3_IOR_IN, PA3_IOR_OUT,172	PA2_IOR_IN, PA2_IOR_OUT,173	PA1_IOR_IN, PA1_IOR_OUT,174	PA0_IOR_IN, PA0_IOR_OUT,175 176	/* Port B */177	PB11_IOR_IN, PB11_IOR_OUT,178	PB10_IOR_IN, PB10_IOR_OUT,179	PB9_IOR_IN, PB9_IOR_OUT,180	PB8_IOR_IN, PB8_IOR_OUT,181 182	PB22MD_00, PB22MD_01, PB22MD_10,183	PB21MD_0, PB21MD_1,184	PB20MD_0, PB20MD_1,185	PB19MD_00, PB19MD_01, PB19MD_10, PB19MD_11,186	PB18MD_00, PB18MD_01, PB18MD_10, PB18MD_11,187	PB17MD_00, PB17MD_01, PB17MD_10, PB17MD_11,188	PB16MD_00, PB16MD_01, PB16MD_10, PB16MD_11,189	PB15MD_00, PB15MD_01, PB15MD_10, PB15MD_11,190	PB14MD_00, PB14MD_01, PB14MD_10, PB14MD_11,191	PB13MD_00, PB13MD_01, PB13MD_10, PB13MD_11,192	PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,193	PB11MD_00, PB11MD_01, PB11MD_10, PB11MD_11,194	PB10MD_00, PB10MD_01, PB10MD_10, PB10MD_11,195	PB9MD_00, PB9MD_01, PB9MD_10, PB9MD_11,196	PB8MD_00, PB8MD_01, PB8MD_10, PB8MD_11,197	PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,198	PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,199	PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,200	PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,201	PB3MD_0, PB3MD_1,202	PB2MD_0, PB2MD_1,203	PB1MD_0, PB1MD_1,204 205	/* Port C */206	PC14_IOR_IN, PC14_IOR_OUT,207	PC13_IOR_IN, PC13_IOR_OUT,208	PC12_IOR_IN, PC12_IOR_OUT,209	PC11_IOR_IN, PC11_IOR_OUT,210	PC10_IOR_IN, PC10_IOR_OUT,211	PC9_IOR_IN, PC9_IOR_OUT,212	PC8_IOR_IN, PC8_IOR_OUT,213	PC7_IOR_IN, PC7_IOR_OUT,214	PC6_IOR_IN, PC6_IOR_OUT,215	PC5_IOR_IN, PC5_IOR_OUT,216	PC4_IOR_IN, PC4_IOR_OUT,217	PC3_IOR_IN, PC3_IOR_OUT,218	PC2_IOR_IN, PC2_IOR_OUT,219	PC1_IOR_IN, PC1_IOR_OUT,220	PC0_IOR_IN, PC0_IOR_OUT,221 222	PC10MD_0, PC10MD_1,223	PC9MD_0, PC9MD_1,224	PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11,225	PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11,226	PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11,227	PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11,228	PC4MD_0, PC4MD_1,229	PC3MD_0, PC3MD_1,230	PC2MD_0, PC2MD_1,231	PC1MD_0, PC1MD_1,232	PC0MD_0, PC0MD_1,233 234	/* Port D */235	PD15_IOR_IN, PD15_IOR_OUT,236	PD14_IOR_IN, PD14_IOR_OUT,237	PD13_IOR_IN, PD13_IOR_OUT,238	PD12_IOR_IN, PD12_IOR_OUT,239	PD11_IOR_IN, PD11_IOR_OUT,240	PD10_IOR_IN, PD10_IOR_OUT,241	PD9_IOR_IN, PD9_IOR_OUT,242	PD8_IOR_IN, PD8_IOR_OUT,243	PD7_IOR_IN, PD7_IOR_OUT,244	PD6_IOR_IN, PD6_IOR_OUT,245	PD5_IOR_IN, PD5_IOR_OUT,246	PD4_IOR_IN, PD4_IOR_OUT,247	PD3_IOR_IN, PD3_IOR_OUT,248	PD2_IOR_IN, PD2_IOR_OUT,249	PD1_IOR_IN, PD1_IOR_OUT,250	PD0_IOR_IN, PD0_IOR_OUT,251 252	PD15MD_00, PD15MD_01, PD15MD_10, PD15MD_11,253	PD14MD_00, PD14MD_01, PD14MD_10, PD14MD_11,254	PD13MD_00, PD13MD_01, PD13MD_10, PD13MD_11,255	PD12MD_00, PD12MD_01, PD12MD_10, PD12MD_11,256	PD11MD_00, PD11MD_01, PD11MD_10, PD11MD_11,257	PD10MD_00, PD10MD_01, PD10MD_10, PD10MD_11,258	PD9MD_00, PD9MD_01, PD9MD_10, PD9MD_11,259	PD8MD_00, PD8MD_01, PD8MD_10, PD8MD_11,260	PD7MD_00, PD7MD_01, PD7MD_10, PD7MD_11,261	PD6MD_00, PD6MD_01, PD6MD_10, PD6MD_11,262	PD5MD_00, PD5MD_01, PD5MD_10, PD5MD_11,263	PD4MD_00, PD4MD_01, PD4MD_10, PD4MD_11,264	PD3MD_00, PD3MD_01, PD3MD_10, PD3MD_11,265	PD2MD_00, PD2MD_01, PD2MD_10, PD2MD_11,266	PD1MD_00, PD1MD_01, PD1MD_10, PD1MD_11,267	PD0MD_00, PD0MD_01, PD0MD_10, PD0MD_11,268 269	/* Port E */270	PE5_IOR_IN, PE5_IOR_OUT,271	PE4_IOR_IN, PE4_IOR_OUT,272	PE3_IOR_IN, PE3_IOR_OUT,273	PE2_IOR_IN, PE2_IOR_OUT,274	PE1_IOR_IN, PE1_IOR_OUT,275	PE0_IOR_IN, PE0_IOR_OUT,276 277	PE5MD_00, PE5MD_01, PE5MD_10, PE5MD_11,278	PE4MD_00, PE4MD_01, PE4MD_10, PE4MD_11,279	PE3MD_00, PE3MD_01, PE3MD_10, PE3MD_11,280	PE2MD_00, PE2MD_01, PE2MD_10, PE2MD_11,281	PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,282	PE1MD_100, PE1MD_101, PE1MD_110, PE1MD_111,283	PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11,284 285	/* Port F */286	PF12_IOR_IN, PF12_IOR_OUT,287	PF11_IOR_IN, PF11_IOR_OUT,288	PF10_IOR_IN, PF10_IOR_OUT,289	PF9_IOR_IN, PF9_IOR_OUT,290	PF8_IOR_IN, PF8_IOR_OUT,291	PF7_IOR_IN, PF7_IOR_OUT,292	PF6_IOR_IN, PF6_IOR_OUT,293	PF5_IOR_IN, PF5_IOR_OUT,294	PF4_IOR_IN, PF4_IOR_OUT,295	PF3_IOR_IN, PF3_IOR_OUT,296	PF2_IOR_IN, PF2_IOR_OUT,297	PF1_IOR_IN, PF1_IOR_OUT,298	PF0_IOR_IN, PF0_IOR_OUT,299 300	PF12MD_000, PF12MD_001, PF12MD_010, PF12MD_011,301	PF12MD_100, PF12MD_101, PF12MD_110, PF12MD_111,302	PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,303	PF11MD_100, PF11MD_101, PF11MD_110, PF11MD_111,304	PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,305	PF10MD_100, PF10MD_101, PF10MD_110, PF10MD_111,306	PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,307	PF9MD_100, PF9MD_101, PF9MD_110, PF9MD_111,308	PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11,309	PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,310	PF7MD_100, PF7MD_101, PF7MD_110, PF7MD_111,311	PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,312	PF6MD_100, PF6MD_101, PF6MD_110, PF6MD_111,313	PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,314	PF5MD_100, PF5MD_101, PF5MD_110, PF5MD_111,315	PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,316	PF4MD_100, PF4MD_101, PF4MD_110, PF4MD_111,317	PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,318	PF3MD_100, PF3MD_101, PF3MD_110, PF3MD_111,319	PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,320	PF2MD_100, PF2MD_101, PF2MD_110, PF2MD_111,321	PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,322	PF1MD_100, PF1MD_101, PF1MD_110, PF1MD_111,323	PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,324	PF0MD_100, PF0MD_101, PF0MD_110, PF0MD_111,325 326	/* Port G */327	PG24_IOR_IN, PG24_IOR_OUT,328	PG23_IOR_IN, PG23_IOR_OUT,329	PG22_IOR_IN, PG22_IOR_OUT,330	PG21_IOR_IN, PG21_IOR_OUT,331	PG20_IOR_IN, PG20_IOR_OUT,332	PG19_IOR_IN, PG19_IOR_OUT,333	PG18_IOR_IN, PG18_IOR_OUT,334	PG17_IOR_IN, PG17_IOR_OUT,335	PG16_IOR_IN, PG16_IOR_OUT,336	PG15_IOR_IN, PG15_IOR_OUT,337	PG14_IOR_IN, PG14_IOR_OUT,338	PG13_IOR_IN, PG13_IOR_OUT,339	PG12_IOR_IN, PG12_IOR_OUT,340	PG11_IOR_IN, PG11_IOR_OUT,341	PG10_IOR_IN, PG10_IOR_OUT,342	PG9_IOR_IN, PG9_IOR_OUT,343	PG8_IOR_IN, PG8_IOR_OUT,344	PG7_IOR_IN, PG7_IOR_OUT,345	PG6_IOR_IN, PG6_IOR_OUT,346	PG5_IOR_IN, PG5_IOR_OUT,347	PG4_IOR_IN, PG4_IOR_OUT,348	PG3_IOR_IN, PG3_IOR_OUT,349	PG2_IOR_IN, PG2_IOR_OUT,350	PG1_IOR_IN, PG1_IOR_OUT,351	PG0_IOR_IN, PG0_IOR_OUT,352 353	PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11,354	PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11,355	PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11,356	PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11,357	PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,358	PG20MD_100, PG20MD_101, PG20MD_110, PG20MD_111,359	PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,360	PG19MD_100, PG19MD_101, PG19MD_110, PG19MD_111,361	PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,362	PG18MD_100, PG18MD_101, PG18MD_110, PG18MD_111,363	PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,364	PG17MD_100, PG17MD_101, PG17MD_110, PG17MD_111,365	PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,366	PG16MD_100, PG16MD_101, PG16MD_110, PG16MD_111,367	PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,368	PG15MD_100, PG15MD_101, PG15MD_110, PG15MD_111,369	PG14MD_000, PG14MD_001, PG14MD_010, PG14MD_011,370	PG14MD_100, PG14MD_101, PG14MD_110, PG14MD_111,371	PG13MD_000, PG13MD_001, PG13MD_010, PG13MD_011,372	PG13MD_100, PG13MD_101, PG13MD_110, PG13MD_111,373	PG12MD_000, PG12MD_001, PG12MD_010, PG12MD_011,374	PG12MD_100, PG12MD_101, PG12MD_110, PG12MD_111,375	PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,376	PG11MD_100, PG11MD_101, PG11MD_110, PG11MD_111,377	PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,378	PG10MD_100, PG10MD_101, PG10MD_110, PG10MD_111,379	PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,380	PG9MD_100, PG9MD_101, PG9MD_110, PG9MD_111,381	PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,382	PG8MD_100, PG8MD_101, PG8MD_110, PG8MD_111,383	PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11,384	PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11,385	PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11,386	PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11,387	PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11,388	PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11,389	PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11,390	PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,391	PG0MD_100, PG0MD_101, PG0MD_110, PG0MD_111,392 393	/* Port H */394	PH7MD_0, PH7MD_1,395	PH6MD_0, PH6MD_1,396	PH5MD_0, PH5MD_1,397	PH4MD_0, PH4MD_1,398	PH3MD_0, PH3MD_1,399	PH2MD_0, PH2MD_1,400	PH1MD_0, PH1MD_1,401	PH0MD_0, PH0MD_1,402 403	/* Port I - not on device */404 405	/* Port J */406	PJ11_IOR_IN, PJ11_IOR_OUT,407	PJ10_IOR_IN, PJ10_IOR_OUT,408	PJ9_IOR_IN, PJ9_IOR_OUT,409	PJ8_IOR_IN, PJ8_IOR_OUT,410	PJ7_IOR_IN, PJ7_IOR_OUT,411	PJ6_IOR_IN, PJ6_IOR_OUT,412	PJ5_IOR_IN, PJ5_IOR_OUT,413	PJ4_IOR_IN, PJ4_IOR_OUT,414	PJ3_IOR_IN, PJ3_IOR_OUT,415	PJ2_IOR_IN, PJ2_IOR_OUT,416	PJ1_IOR_IN, PJ1_IOR_OUT,417	PJ0_IOR_IN, PJ0_IOR_OUT,418 419	PJ11MD_00, PJ11MD_01, PJ11MD_10, PJ11MD_11,420	PJ10MD_00, PJ10MD_01, PJ10MD_10, PJ10MD_11,421	PJ9MD_00, PJ9MD_01, PJ9MD_10, PJ9MD_11,422	PJ8MD_00, PJ8MD_01, PJ8MD_10, PJ8MD_11,423	PJ7MD_00, PJ7MD_01, PJ7MD_10, PJ7MD_11,424	PJ6MD_00, PJ6MD_01, PJ6MD_10, PJ6MD_11,425	PJ5MD_00, PJ5MD_01, PJ5MD_10, PJ5MD_11,426	PJ4MD_00, PJ4MD_01, PJ4MD_10, PJ4MD_11,427	PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11,428	PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,429	PJ2MD_100, PJ2MD_101, PJ2MD_110, PJ2MD_111,430	PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,431	PJ1MD_100, PJ1MD_101, PJ1MD_110, PJ1MD_111,432	PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,433	PJ0MD_100, PJ0MD_101, PJ0MD_110, PJ0MD_111,434 435	/* Port K */436	PK11_IOR_IN, PK11_IOR_OUT,437	PK10_IOR_IN, PK10_IOR_OUT,438	PK9_IOR_IN, PK9_IOR_OUT,439	PK8_IOR_IN, PK8_IOR_OUT,440	PK7_IOR_IN, PK7_IOR_OUT,441	PK6_IOR_IN, PK6_IOR_OUT,442	PK5_IOR_IN, PK5_IOR_OUT,443	PK4_IOR_IN, PK4_IOR_OUT,444	PK3_IOR_IN, PK3_IOR_OUT,445	PK2_IOR_IN, PK2_IOR_OUT,446	PK1_IOR_IN, PK1_IOR_OUT,447	PK0_IOR_IN, PK0_IOR_OUT,448 449	PK11MD_00, PK11MD_01, PK11MD_10, PK11MD_11,450	PK10MD_00, PK10MD_01, PK10MD_10, PK10MD_11,451	PK9MD_00, PK9MD_01, PK9MD_10, PK9MD_11,452	PK8MD_00, PK8MD_01, PK8MD_10, PK8MD_11,453	PK7MD_00, PK7MD_01, PK7MD_10, PK7MD_11,454	PK6MD_00, PK6MD_01, PK6MD_10, PK6MD_11,455	PK5MD_00, PK5MD_01, PK5MD_10, PK5MD_11,456	PK4MD_00, PK4MD_01, PK4MD_10, PK4MD_11,457	PK3MD_00, PK3MD_01, PK3MD_10, PK3MD_11,458	PK2MD_00, PK2MD_01, PK2MD_10, PK2MD_11,459	PK1MD_00, PK1MD_01, PK1MD_10, PK1MD_11,460	PK0MD_00, PK0MD_01, PK0MD_10, PK0MD_11,461	PINMUX_FUNCTION_END,462 463	PINMUX_MARK_BEGIN,464	/* Port A */465 466	/* Port B */467 468	/* Port C */469 470	/* Port D */471 472	/* Port E */473 474	/* Port F */475 476	/* Port G */477 478	/* Port H */479	PHAN7_MARK, PHAN6_MARK, PHAN5_MARK, PHAN4_MARK,480	PHAN3_MARK, PHAN2_MARK, PHAN1_MARK, PHAN0_MARK,481 482	/* Port I - not on device */483 484	/* Port J */485 486	/* Port K */487 488	IRQ7_PC_MARK, IRQ6_PC_MARK, IRQ5_PC_MARK, IRQ4_PC_MARK,489	IRQ3_PG_MARK, IRQ2_PG_MARK, IRQ1_PJ_MARK, IRQ0_PJ_MARK,490	IRQ3_PE_MARK, IRQ2_PE_MARK, IRQ1_PE_MARK, IRQ0_PE_MARK,491 492	PINT7_PG_MARK, PINT6_PG_MARK, PINT5_PG_MARK, PINT4_PG_MARK,493	PINT3_PG_MARK, PINT2_PG_MARK, PINT1_PG_MARK, PINT0_PG_MARK,494 495	SD_CD_MARK, SD_D0_MARK, SD_D1_MARK, SD_D2_MARK, SD_D3_MARK,496	SD_WP_MARK, SD_CLK_MARK, SD_CMD_MARK,497	CRX0_MARK, CRX1_MARK,498	CTX0_MARK, CTX1_MARK,499	CRX0_CRX1_MARK, CTX0_CTX1_MARK,500 501	PWM1A_MARK, PWM1B_MARK, PWM1C_MARK, PWM1D_MARK,502	PWM1E_MARK, PWM1F_MARK, PWM1G_MARK, PWM1H_MARK,503	PWM2A_MARK, PWM2B_MARK, PWM2C_MARK, PWM2D_MARK,504	PWM2E_MARK, PWM2F_MARK, PWM2G_MARK, PWM2H_MARK,505	IERXD_MARK, IETXD_MARK,506	WDTOVF_MARK,507 508	/* DMAC */509	TEND0_MARK, DACK0_MARK, DREQ0_MARK,510	TEND1_MARK, DACK1_MARK, DREQ1_MARK,511 512	/* ADC */513	ADTRG_MARK,514 515	/* BSC */516	A25_MARK, A24_MARK,517	A23_MARK, A22_MARK, A21_MARK, A20_MARK,518	A19_MARK, A18_MARK, A17_MARK, A16_MARK,519	A15_MARK, A14_MARK, A13_MARK, A12_MARK,520	A11_MARK, A10_MARK, A9_MARK, A8_MARK,521	A7_MARK, A6_MARK, A5_MARK, A4_MARK,522	A3_MARK, A2_MARK, A1_MARK, A0_MARK,523	D15_MARK, D14_MARK, D13_MARK, D12_MARK,524	D11_MARK, D10_MARK, D9_MARK, D8_MARK,525	D7_MARK, D6_MARK, D5_MARK, D4_MARK,526	D3_MARK, D2_MARK, D1_MARK, D0_MARK,527	BS_MARK,528	CS4_MARK, CS3_MARK, CS2_MARK, CS1_MARK, CS0_MARK,529	CS6CE1B_MARK, CS5CE1A_MARK,530	CE2A_MARK, CE2B_MARK,531	RD_MARK, RDWR_MARK,532	ICIOWRAH_MARK,533	ICIORD_MARK,534	WE1DQMUWE_MARK,535	WE0DQML_MARK,536	RAS_MARK, CAS_MARK, CKE_MARK,537	WAIT_MARK, BREQ_MARK, BACK_MARK, IOIS16_MARK,538 539	/* TMU */540	TIOC0A_MARK, TIOC0B_MARK, TIOC0C_MARK, TIOC0D_MARK,541	TIOC1A_MARK, TIOC1B_MARK,542	TIOC2A_MARK, TIOC2B_MARK,543	TIOC3A_MARK, TIOC3B_MARK, TIOC3C_MARK, TIOC3D_MARK,544	TIOC4A_MARK, TIOC4B_MARK, TIOC4C_MARK, TIOC4D_MARK,545	TCLKA_MARK,	TCLKB_MARK, TCLKC_MARK, TCLKD_MARK,546 547	/* SCIF */548	SCK0_MARK, SCK1_MARK, SCK2_MARK, SCK3_MARK,549	RXD0_MARK, RXD1_MARK, RXD2_MARK, RXD3_MARK,550	TXD0_MARK, TXD1_MARK, TXD2_MARK, TXD3_MARK,551	RXD4_MARK, RXD5_MARK, RXD6_MARK, RXD7_MARK,552	TXD4_MARK, TXD5_MARK, TXD6_MARK, TXD7_MARK,553	RTS1_MARK, RTS3_MARK,554	CTS1_MARK, CTS3_MARK,555 556	/* RSPI */557	RSPCK0_MARK, RSPCK1_MARK,558	MOSI0_MARK, MOSI1_MARK,559	MISO0_PF12_MARK, MISO1_MARK, MISO1_PG19_MARK,560	SSL00_MARK, SSL10_MARK,561 562	/* IIC3 */563	SCL0_MARK, SCL1_MARK, SCL2_MARK,564	SDA0_MARK, SDA1_MARK, SDA2_MARK,565 566	/* SSI */567	SSISCK0_MARK,568	SSIWS0_MARK,569	SSITXD0_MARK,570	SSIRXD0_MARK,571	SSIWS1_MARK, SSIWS2_MARK, SSIWS3_MARK,572	SSISCK1_MARK, SSISCK2_MARK, SSISCK3_MARK,573	SSIDATA1_MARK, SSIDATA2_MARK, SSIDATA3_MARK,574	AUDIO_CLK_MARK,575 576	/* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */577	SIOFTXD_MARK, SIOFRXD_MARK, SIOFSYNC_MARK, SIOFSCK_MARK,578 579	/* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */580	SPDIF_IN_MARK, SPDIF_OUT_MARK,581 582	/* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */583	FCE_MARK,584	FRB_MARK,585 586	/* VDC3 */587	DV_CLK_MARK,588	DV_VSYNC_MARK, DV_HSYNC_MARK,589	DV_DATA7_MARK, DV_DATA6_MARK, DV_DATA5_MARK, DV_DATA4_MARK,590	DV_DATA3_MARK, DV_DATA2_MARK, DV_DATA1_MARK, DV_DATA0_MARK,591	LCD_CLK_MARK, LCD_EXTCLK_MARK,592	LCD_VSYNC_MARK, LCD_HSYNC_MARK, LCD_DE_MARK,593	LCD_DATA15_MARK, LCD_DATA14_MARK, LCD_DATA13_MARK, LCD_DATA12_MARK,594	LCD_DATA11_MARK, LCD_DATA10_MARK, LCD_DATA9_MARK, LCD_DATA8_MARK,595	LCD_DATA7_MARK, LCD_DATA6_MARK, LCD_DATA5_MARK, LCD_DATA4_MARK,596	LCD_DATA3_MARK, LCD_DATA2_MARK, LCD_DATA1_MARK, LCD_DATA0_MARK,597	LCD_M_DISP_MARK,598	PINMUX_MARK_END,599};600 601static const u16 pinmux_data[] = {602	/* Port A */603	PINMUX_DATA(PA3_DATA, PA3_IN),604	PINMUX_DATA(PA2_DATA, PA2_IN),605	PINMUX_DATA(PA1_DATA, PA1_IN),606	PINMUX_DATA(PA0_DATA, PA0_IN),607 608	/* Port B */609	PINMUX_DATA(PB22_DATA, PB22MD_00, PB22_IN, PB22_OUT),610	PINMUX_DATA(A22_MARK, PB22MD_01),611	PINMUX_DATA(CS4_MARK, PB22MD_10),612 613	PINMUX_DATA(PB21_DATA, PB21MD_0, PB21_IN, PB21_OUT),614	PINMUX_DATA(A21_MARK, PB21MD_1),615	PINMUX_DATA(A20_MARK, PB20MD_1),616	PINMUX_DATA(A19_MARK, PB19MD_01),617	PINMUX_DATA(A18_MARK, PB18MD_01),618	PINMUX_DATA(A17_MARK, PB17MD_01),619	PINMUX_DATA(A16_MARK, PB16MD_01),620	PINMUX_DATA(A15_MARK, PB15MD_01),621	PINMUX_DATA(A14_MARK, PB14MD_01),622	PINMUX_DATA(A13_MARK, PB13MD_01),623	PINMUX_DATA(A12_MARK, PB12MD_01),624	PINMUX_DATA(A11_MARK, PB11MD_01),625	PINMUX_DATA(A10_MARK, PB10MD_01),626	PINMUX_DATA(A9_MARK, PB9MD_01),627	PINMUX_DATA(A8_MARK, PB8MD_01),628	PINMUX_DATA(A7_MARK, PB7MD_01),629	PINMUX_DATA(A6_MARK, PB6MD_01),630	PINMUX_DATA(A5_MARK, PB5MD_01),631	PINMUX_DATA(A4_MARK, PB4MD_01),632	PINMUX_DATA(A3_MARK, PB3MD_1),633	PINMUX_DATA(A2_MARK, PB2MD_1),634	PINMUX_DATA(A1_MARK, PB1MD_1),635 636	/* Port C */637	PINMUX_DATA(PC10_DATA, PC10MD_0),638	PINMUX_DATA(TIOC2B_MARK, PC1MD_1),639	PINMUX_DATA(PC9_DATA, PC9MD_0),640	PINMUX_DATA(TIOC2A_MARK, PC9MD_1),641	PINMUX_DATA(PC8_DATA, PC8MD_00),642	PINMUX_DATA(CS3_MARK, PC8MD_01),643	PINMUX_DATA(TIOC4D_MARK, PC8MD_10),644	PINMUX_DATA(IRQ7_PC_MARK, PC8MD_11),645	PINMUX_DATA(PC7_DATA, PC7MD_00),646	PINMUX_DATA(CKE_MARK, PC7MD_01),647	PINMUX_DATA(TIOC4C_MARK, PC7MD_10),648	PINMUX_DATA(IRQ6_PC_MARK, PC7MD_11),649	PINMUX_DATA(PC6_DATA, PC6MD_00),650	PINMUX_DATA(CAS_MARK, PC6MD_01),651	PINMUX_DATA(TIOC4B_MARK, PC6MD_10),652	PINMUX_DATA(IRQ5_PC_MARK, PC6MD_11),653	PINMUX_DATA(PC5_DATA, PC5MD_00),654	PINMUX_DATA(RAS_MARK, PC5MD_01),655	PINMUX_DATA(TIOC4A_MARK, PC5MD_10),656	PINMUX_DATA(IRQ4_PC_MARK, PC5MD_11),657	PINMUX_DATA(PC4_DATA, PC4MD_0),658	PINMUX_DATA(WE1DQMUWE_MARK, PC4MD_1),659	PINMUX_DATA(PC3_DATA, PC3MD_0),660	PINMUX_DATA(WE0DQML_MARK, PC3MD_1),661	PINMUX_DATA(PC2_DATA, PC2MD_0),662	PINMUX_DATA(RDWR_MARK, PC2MD_1),663	PINMUX_DATA(PC1_DATA, PC1MD_0),664	PINMUX_DATA(RD_MARK, PC1MD_1),665	PINMUX_DATA(PC0_DATA, PC0MD_0),666	PINMUX_DATA(CS0_MARK, PC0MD_1),667 668	/* Port D */669	PINMUX_DATA(D15_MARK, PD15MD_01),670	PINMUX_DATA(D14_MARK, PD14MD_01),671	PINMUX_DATA(D13_MARK, PD13MD_01),672	PINMUX_DATA(D12_MARK, PD12MD_01),673	PINMUX_DATA(D11_MARK, PD11MD_01),674	PINMUX_DATA(D10_MARK, PD10MD_01),675	PINMUX_DATA(D9_MARK, PD9MD_01),676	PINMUX_DATA(D8_MARK, PD8MD_01),677	PINMUX_DATA(D7_MARK, PD7MD_01),678	PINMUX_DATA(D6_MARK, PD6MD_01),679	PINMUX_DATA(D5_MARK, PD5MD_01),680	PINMUX_DATA(D4_MARK, PD4MD_01),681	PINMUX_DATA(D3_MARK, PD3MD_01),682	PINMUX_DATA(D2_MARK, PD2MD_01),683	PINMUX_DATA(D1_MARK, PD1MD_01),684	PINMUX_DATA(D0_MARK, PD0MD_01),685 686	/* Port E */687	PINMUX_DATA(PE5_DATA, PE5MD_00),688	PINMUX_DATA(SDA2_MARK, PE5MD_01),689	PINMUX_DATA(DV_HSYNC_MARK, PE5MD_11),690 691	PINMUX_DATA(PE4_DATA, PE4MD_00),692	PINMUX_DATA(SCL2_MARK, PE4MD_01),693	PINMUX_DATA(DV_VSYNC_MARK, PE4MD_11),694 695	PINMUX_DATA(PE3_DATA, PE3MD_00),696	PINMUX_DATA(SDA1_MARK, PE3MD_01),697	PINMUX_DATA(IRQ3_PE_MARK, PE3MD_11),698 699	PINMUX_DATA(PE2_DATA, PE2MD_00),700	PINMUX_DATA(SCL1_MARK, PE2MD_01),701	PINMUX_DATA(IRQ2_PE_MARK, PE2MD_11),702 703	PINMUX_DATA(PE1_DATA, PE1MD_000),704	PINMUX_DATA(SDA0_MARK, PE1MD_001),705	PINMUX_DATA(IOIS16_MARK, PE1MD_010),706	PINMUX_DATA(IRQ1_PE_MARK, PE1MD_011),707	PINMUX_DATA(TCLKA_MARK, PE1MD_100),708	PINMUX_DATA(ADTRG_MARK, PE1MD_101),709 710	PINMUX_DATA(PE0_DATA, PE0MD_00),711	PINMUX_DATA(SCL0_MARK, PE0MD_01),712	PINMUX_DATA(AUDIO_CLK_MARK, PE0MD_10),713	PINMUX_DATA(IRQ0_PE_MARK, PE0MD_11),714 715	/* Port F */716	PINMUX_DATA(PF12_DATA, PF12MD_000),717	PINMUX_DATA(BS_MARK, PF12MD_001),718	PINMUX_DATA(MISO0_PF12_MARK, PF12MD_011),719	PINMUX_DATA(TIOC3D_MARK, PF12MD_100),720	PINMUX_DATA(SPDIF_OUT_MARK, PF12MD_101),721 722	PINMUX_DATA(PF11_DATA, PF11MD_000),723	PINMUX_DATA(A25_MARK, PF11MD_001),724	PINMUX_DATA(SSIDATA3_MARK, PF11MD_010),725	PINMUX_DATA(MOSI0_MARK, PF11MD_011),726	PINMUX_DATA(TIOC3C_MARK, PF11MD_100),727	PINMUX_DATA(SPDIF_IN_MARK, PF11MD_101),728 729	PINMUX_DATA(PF10_DATA, PF10MD_000),730	PINMUX_DATA(A24_MARK, PF10MD_001),731	PINMUX_DATA(SSIWS3_MARK, PF10MD_010),732	PINMUX_DATA(SSL00_MARK, PF10MD_011),733	PINMUX_DATA(TIOC3B_MARK, PF10MD_100),734	PINMUX_DATA(FCE_MARK, PF10MD_101),735 736	PINMUX_DATA(PF9_DATA, PF9MD_000),737	PINMUX_DATA(A23_MARK, PF9MD_001),738	PINMUX_DATA(SSISCK3_MARK, PF9MD_010),739	PINMUX_DATA(RSPCK0_MARK, PF9MD_011),740	PINMUX_DATA(TIOC3A_MARK, PF9MD_100),741	PINMUX_DATA(FRB_MARK, PF9MD_101),742 743	PINMUX_DATA(PF8_DATA, PF8MD_00),744	PINMUX_DATA(CE2B_MARK, PF8MD_01),745	PINMUX_DATA(SSIDATA3_MARK, PF8MD_10),746	PINMUX_DATA(DV_CLK_MARK, PF8MD_11),747 748	PINMUX_DATA(PF7_DATA, PF7MD_000),749	PINMUX_DATA(CE2A_MARK, PF7MD_001),750	PINMUX_DATA(SSIWS3_MARK, PF7MD_010),751	PINMUX_DATA(DV_DATA7_MARK, PF7MD_011),752	PINMUX_DATA(TCLKD_MARK, PF7MD_100),753 754	PINMUX_DATA(PF6_DATA, PF6MD_000),755	PINMUX_DATA(CS6CE1B_MARK, PF6MD_001),756	PINMUX_DATA(SSISCK3_MARK, PF6MD_010),757	PINMUX_DATA(DV_DATA6_MARK, PF6MD_011),758	PINMUX_DATA(TCLKB_MARK, PF6MD_100),759 760	PINMUX_DATA(PF5_DATA, PF5MD_000),761	PINMUX_DATA(CS5CE1A_MARK, PF5MD_001),762	PINMUX_DATA(SSIDATA2_MARK, PF5MD_010),763	PINMUX_DATA(DV_DATA5_MARK, PF5MD_011),764	PINMUX_DATA(TCLKC_MARK, PF5MD_100),765 766	PINMUX_DATA(PF4_DATA, PF4MD_000),767	PINMUX_DATA(ICIOWRAH_MARK, PF4MD_001),768	PINMUX_DATA(SSIWS2_MARK, PF4MD_010),769	PINMUX_DATA(DV_DATA4_MARK, PF4MD_011),770	PINMUX_DATA(TXD3_MARK, PF4MD_100),771 772	PINMUX_DATA(PF3_DATA, PF3MD_000),773	PINMUX_DATA(ICIORD_MARK, PF3MD_001),774	PINMUX_DATA(SSISCK2_MARK, PF3MD_010),775	PINMUX_DATA(DV_DATA3_MARK, PF3MD_011),776	PINMUX_DATA(RXD3_MARK, PF3MD_100),777 778	PINMUX_DATA(PF2_DATA, PF2MD_000),779	PINMUX_DATA(BACK_MARK, PF2MD_001),780	PINMUX_DATA(SSIDATA1_MARK, PF2MD_010),781	PINMUX_DATA(DV_DATA2_MARK, PF2MD_011),782	PINMUX_DATA(TXD2_MARK, PF2MD_100),783	PINMUX_DATA(DACK0_MARK, PF2MD_101),784 785	PINMUX_DATA(PF1_DATA, PF1MD_000),786	PINMUX_DATA(BREQ_MARK, PF1MD_001),787	PINMUX_DATA(SSIWS1_MARK, PF1MD_010),788	PINMUX_DATA(DV_DATA1_MARK, PF1MD_011),789	PINMUX_DATA(RXD2_MARK, PF1MD_100),790	PINMUX_DATA(DREQ0_MARK, PF1MD_101),791 792	PINMUX_DATA(PF0_DATA, PF0MD_000),793	PINMUX_DATA(WAIT_MARK, PF0MD_001),794	PINMUX_DATA(SSISCK1_MARK, PF0MD_010),795	PINMUX_DATA(DV_DATA0_MARK, PF0MD_011),796	PINMUX_DATA(SCK2_MARK, PF0MD_100),797	PINMUX_DATA(TEND0_MARK, PF0MD_101),798 799	/* Port G */800	PINMUX_DATA(PG24_DATA, PG24MD_00),801	PINMUX_DATA(MOSI0_MARK, PG24MD_01),802	PINMUX_DATA(TIOC0D_MARK, PG24MD_10),803 804	PINMUX_DATA(PG23_DATA, PG23MD_00),805	PINMUX_DATA(MOSI1_MARK, PG23MD_01),806	PINMUX_DATA(TIOC0C_MARK, PG23MD_10),807 808	PINMUX_DATA(PG22_DATA, PG22MD_00),809	PINMUX_DATA(SSL10_MARK, PG22MD_01),810	PINMUX_DATA(TIOC0B_MARK, PG22MD_10),811 812	PINMUX_DATA(PG21_DATA, PG21MD_00),813	PINMUX_DATA(RSPCK1_MARK, PG21MD_01),814	PINMUX_DATA(TIOC0A_MARK, PG21MD_10),815 816	PINMUX_DATA(PG20_DATA, PG20MD_000),817	PINMUX_DATA(LCD_EXTCLK_MARK, PG20MD_001),818	PINMUX_DATA(MISO1_MARK, PG20MD_011),819	PINMUX_DATA(TXD7_MARK, PG20MD_100),820 821	PINMUX_DATA(PG19_DATA, PG19MD_000),822	PINMUX_DATA(LCD_CLK_MARK, PG19MD_001),823	PINMUX_DATA(TIOC2B_MARK, PG19MD_010),824	PINMUX_DATA(MISO1_PG19_MARK, PG19MD_011),825	PINMUX_DATA(RXD7_MARK, PG19MD_100),826 827	PINMUX_DATA(PG18_DATA, PG18MD_000),828	PINMUX_DATA(LCD_DE_MARK, PG18MD_001),829	PINMUX_DATA(TIOC2A_MARK, PG18MD_010),830	PINMUX_DATA(SSL10_MARK, PG18MD_011),831	PINMUX_DATA(TXD6_MARK, PG18MD_100),832 833	PINMUX_DATA(PG17_DATA, PG17MD_000),834	PINMUX_DATA(LCD_HSYNC_MARK, PG17MD_001),835	PINMUX_DATA(TIOC1B_MARK, PG17MD_010),836	PINMUX_DATA(RSPCK1_MARK, PG17MD_011),837	PINMUX_DATA(RXD6_MARK, PG17MD_100),838 839	PINMUX_DATA(PG16_DATA, PG16MD_000),840	PINMUX_DATA(LCD_VSYNC_MARK, PG16MD_001),841	PINMUX_DATA(TIOC1A_MARK, PG16MD_010),842	PINMUX_DATA(TXD3_MARK, PG16MD_011),843	PINMUX_DATA(CTS1_MARK, PG16MD_100),844 845	PINMUX_DATA(PG15_DATA, PG15MD_000),846	PINMUX_DATA(LCD_DATA15_MARK, PG15MD_001),847	PINMUX_DATA(TIOC0D_MARK, PG15MD_010),848	PINMUX_DATA(RXD3_MARK, PG15MD_011),849	PINMUX_DATA(RTS1_MARK, PG15MD_100),850 851	PINMUX_DATA(PG14_DATA, PG14MD_000),852	PINMUX_DATA(LCD_DATA14_MARK, PG14MD_001),853	PINMUX_DATA(TIOC0C_MARK, PG14MD_010),854	PINMUX_DATA(SCK1_MARK, PG14MD_100),855 856	PINMUX_DATA(PG13_DATA, PG13MD_000),857	PINMUX_DATA(LCD_DATA13_MARK, PG13MD_001),858	PINMUX_DATA(TIOC0B_MARK, PG13MD_010),859	PINMUX_DATA(TXD1_MARK, PG13MD_100),860 861	PINMUX_DATA(PG12_DATA, PG12MD_000),862	PINMUX_DATA(LCD_DATA12_MARK, PG12MD_001),863	PINMUX_DATA(TIOC0A_MARK, PG12MD_010),864	PINMUX_DATA(RXD1_MARK, PG12MD_100),865 866	PINMUX_DATA(PG11_DATA, PG11MD_000),867	PINMUX_DATA(LCD_DATA11_MARK, PG11MD_001),868	PINMUX_DATA(SSITXD0_MARK, PG11MD_010),869	PINMUX_DATA(IRQ3_PG_MARK, PG11MD_011),870	PINMUX_DATA(TXD5_MARK, PG11MD_100),871	PINMUX_DATA(SIOFTXD_MARK, PG11MD_101),872 873	PINMUX_DATA(PG10_DATA, PG10MD_000),874	PINMUX_DATA(LCD_DATA10_MARK, PG10MD_001),875	PINMUX_DATA(SSIRXD0_MARK, PG10MD_010),876	PINMUX_DATA(IRQ2_PG_MARK, PG10MD_011),877	PINMUX_DATA(RXD5_MARK, PG10MD_100),878	PINMUX_DATA(SIOFRXD_MARK, PG10MD_101),879 880	PINMUX_DATA(PG9_DATA, PG9MD_000),881	PINMUX_DATA(LCD_DATA9_MARK, PG9MD_001),882	PINMUX_DATA(SSIWS0_MARK, PG9MD_010),883	PINMUX_DATA(TXD4_MARK, PG9MD_100),884	PINMUX_DATA(SIOFSYNC_MARK, PG9MD_101),885 886	PINMUX_DATA(PG8_DATA, PG8MD_000),887	PINMUX_DATA(LCD_DATA8_MARK, PG8MD_001),888	PINMUX_DATA(SSISCK0_MARK, PG8MD_010),889	PINMUX_DATA(RXD4_MARK, PG8MD_100),890	PINMUX_DATA(SIOFSCK_MARK, PG8MD_101),891 892	PINMUX_DATA(PG7_DATA, PG7MD_00),893	PINMUX_DATA(LCD_DATA7_MARK, PG7MD_01),894	PINMUX_DATA(SD_CD_MARK, PG7MD_10),895	PINMUX_DATA(PINT7_PG_MARK, PG7MD_11),896 897	PINMUX_DATA(PG6_DATA, PG7MD_00),898	PINMUX_DATA(LCD_DATA6_MARK, PG7MD_01),899	PINMUX_DATA(SD_WP_MARK, PG7MD_10),900	PINMUX_DATA(PINT6_PG_MARK, PG7MD_11),901 902	PINMUX_DATA(PG5_DATA, PG5MD_00),903	PINMUX_DATA(LCD_DATA5_MARK, PG5MD_01),904	PINMUX_DATA(SD_D1_MARK, PG5MD_10),905	PINMUX_DATA(PINT5_PG_MARK, PG5MD_11),906 907	PINMUX_DATA(PG4_DATA, PG4MD_00),908	PINMUX_DATA(LCD_DATA4_MARK, PG4MD_01),909	PINMUX_DATA(SD_D0_MARK, PG4MD_10),910	PINMUX_DATA(PINT4_PG_MARK, PG4MD_11),911 912	PINMUX_DATA(PG3_DATA, PG3MD_00),913	PINMUX_DATA(LCD_DATA3_MARK, PG3MD_01),914	PINMUX_DATA(SD_CLK_MARK, PG3MD_10),915	PINMUX_DATA(PINT3_PG_MARK, PG3MD_11),916 917	PINMUX_DATA(PG2_DATA, PG2MD_00),918	PINMUX_DATA(LCD_DATA2_MARK, PG2MD_01),919	PINMUX_DATA(SD_CMD_MARK, PG2MD_10),920	PINMUX_DATA(PINT2_PG_MARK, PG2MD_11),921 922	PINMUX_DATA(PG1_DATA, PG1MD_00),923	PINMUX_DATA(LCD_DATA1_MARK, PG1MD_01),924	PINMUX_DATA(SD_D3_MARK, PG1MD_10),925	PINMUX_DATA(PINT1_PG_MARK, PG1MD_11),926 927	PINMUX_DATA(PG0_DATA, PG0MD_000),928	PINMUX_DATA(LCD_DATA0_MARK, PG0MD_001),929	PINMUX_DATA(SD_D2_MARK, PG0MD_010),930	PINMUX_DATA(PINT0_PG_MARK, PG0MD_011),931	PINMUX_DATA(WDTOVF_MARK, PG0MD_100),932 933	/* Port H */934	PINMUX_DATA(PH7_DATA, PH7MD_0),935	PINMUX_DATA(PHAN7_MARK, PH7MD_1),936 937	PINMUX_DATA(PH6_DATA, PH6MD_0),938	PINMUX_DATA(PHAN6_MARK, PH6MD_1),939 940	PINMUX_DATA(PH5_DATA, PH5MD_0),941	PINMUX_DATA(PHAN5_MARK, PH5MD_1),942 943	PINMUX_DATA(PH4_DATA, PH4MD_0),944	PINMUX_DATA(PHAN4_MARK, PH4MD_1),945 946	PINMUX_DATA(PH3_DATA, PH3MD_0),947	PINMUX_DATA(PHAN3_MARK, PH3MD_1),948 949	PINMUX_DATA(PH2_DATA, PH2MD_0),950	PINMUX_DATA(PHAN2_MARK, PH2MD_1),951 952	PINMUX_DATA(PH1_DATA, PH1MD_0),953	PINMUX_DATA(PHAN1_MARK, PH1MD_1),954 955	PINMUX_DATA(PH0_DATA, PH0MD_0),956	PINMUX_DATA(PHAN0_MARK, PH0MD_1),957 958	/* Port I - not on device */959 960	/* Port J */961	PINMUX_DATA(PJ11_DATA, PJ11MD_00),962	PINMUX_DATA(PWM2H_MARK, PJ11MD_01),963	PINMUX_DATA(DACK1_MARK, PJ11MD_10),964 965	PINMUX_DATA(PJ10_DATA, PJ10MD_00),966	PINMUX_DATA(PWM2G_MARK, PJ10MD_01),967	PINMUX_DATA(DREQ1_MARK, PJ10MD_10),968 969	PINMUX_DATA(PJ9_DATA, PJ9MD_00),970	PINMUX_DATA(PWM2F_MARK, PJ9MD_01),971	PINMUX_DATA(TEND1_MARK, PJ9MD_10),972 973	PINMUX_DATA(PJ8_DATA, PJ8MD_00),974	PINMUX_DATA(PWM2E_MARK, PJ8MD_01),975	PINMUX_DATA(RTS3_MARK, PJ8MD_10),976 977	PINMUX_DATA(PJ7_DATA, PJ7MD_00),978	PINMUX_DATA(TIOC1B_MARK, PJ7MD_01),979	PINMUX_DATA(CTS3_MARK, PJ7MD_10),980 981	PINMUX_DATA(PJ6_DATA, PJ6MD_00),982	PINMUX_DATA(TIOC1A_MARK, PJ6MD_01),983	PINMUX_DATA(SCK3_MARK, PJ6MD_10),984 985	PINMUX_DATA(PJ5_DATA, PJ5MD_00),986	PINMUX_DATA(IERXD_MARK, PJ5MD_01),987	PINMUX_DATA(TXD3_MARK, PJ5MD_10),988 989	PINMUX_DATA(PJ4_DATA, PJ4MD_00),990	PINMUX_DATA(IETXD_MARK, PJ4MD_01),991	PINMUX_DATA(RXD3_MARK, PJ4MD_10),992 993	PINMUX_DATA(PJ3_DATA, PJ3MD_00),994	PINMUX_DATA(CRX1_MARK, PJ3MD_01),995	PINMUX_DATA(CRX0_CRX1_MARK, PJ3MD_10),996	PINMUX_DATA(IRQ1_PJ_MARK, PJ3MD_11),997 998	PINMUX_DATA(PJ2_DATA, PJ2MD_000),999	PINMUX_DATA(CTX1_MARK, PJ2MD_001),1000	PINMUX_DATA(CTX0_CTX1_MARK, PJ2MD_010),1001	PINMUX_DATA(CS2_MARK, PJ2MD_011),1002	PINMUX_DATA(SCK0_MARK, PJ2MD_100),1003	PINMUX_DATA(LCD_M_DISP_MARK, PJ2MD_101),1004 1005	PINMUX_DATA(PJ1_DATA, PJ1MD_000),1006	PINMUX_DATA(CRX0_MARK, PJ1MD_001),1007	PINMUX_DATA(IERXD_MARK, PJ1MD_010),1008	PINMUX_DATA(IRQ0_PJ_MARK, PJ1MD_011),1009	PINMUX_DATA(RXD0_MARK, PJ1MD_100),1010 1011	PINMUX_DATA(PJ0_DATA, PJ0MD_000),1012	PINMUX_DATA(CTX0_MARK, PJ0MD_001),1013	PINMUX_DATA(IERXD_MARK, PJ0MD_010),1014	PINMUX_DATA(CS1_MARK, PJ0MD_011),1015	PINMUX_DATA(TXD0_MARK, PJ0MD_100),1016	PINMUX_DATA(A0_MARK, PJ0MD_101),1017 1018	/* Port K */1019	PINMUX_DATA(PK11_DATA, PK11MD_00),1020	PINMUX_DATA(PWM2D_MARK, PK11MD_01),1021	PINMUX_DATA(SSITXD0_MARK, PK11MD_10),1022 1023	PINMUX_DATA(PK10_DATA, PK10MD_00),1024	PINMUX_DATA(PWM2C_MARK, PK10MD_01),1025	PINMUX_DATA(SSIRXD0_MARK, PK10MD_10),1026 1027	PINMUX_DATA(PK9_DATA, PK9MD_00),1028	PINMUX_DATA(PWM2B_MARK, PK9MD_01),1029	PINMUX_DATA(SSIWS0_MARK, PK9MD_10),1030 1031	PINMUX_DATA(PK8_DATA, PK8MD_00),1032	PINMUX_DATA(PWM2A_MARK, PK8MD_01),1033	PINMUX_DATA(SSISCK0_MARK, PK8MD_10),1034 1035	PINMUX_DATA(PK7_DATA, PK7MD_00),1036	PINMUX_DATA(PWM1H_MARK, PK7MD_01),1037	PINMUX_DATA(SD_CD_MARK, PK7MD_10),1038 1039	PINMUX_DATA(PK6_DATA, PK6MD_00),1040	PINMUX_DATA(PWM1G_MARK, PK6MD_01),1041	PINMUX_DATA(SD_WP_MARK, PK6MD_10),1042 1043	PINMUX_DATA(PK5_DATA, PK5MD_00),1044	PINMUX_DATA(PWM1F_MARK, PK5MD_01),1045	PINMUX_DATA(SD_D1_MARK, PK5MD_10),1046 1047	PINMUX_DATA(PK4_DATA, PK4MD_00),1048	PINMUX_DATA(PWM1E_MARK, PK4MD_01),1049	PINMUX_DATA(SD_D0_MARK, PK4MD_10),1050 1051	PINMUX_DATA(PK3_DATA, PK3MD_00),1052	PINMUX_DATA(PWM1D_MARK, PK3MD_01),1053	PINMUX_DATA(SD_CLK_MARK, PK3MD_10),1054 1055	PINMUX_DATA(PK2_DATA, PK2MD_00),1056	PINMUX_DATA(PWM1C_MARK, PK2MD_01),1057	PINMUX_DATA(SD_CMD_MARK, PK2MD_10),1058 1059	PINMUX_DATA(PK1_DATA, PK1MD_00),1060	PINMUX_DATA(PWM1B_MARK, PK1MD_01),1061	PINMUX_DATA(SD_D3_MARK, PK1MD_10),1062 1063	PINMUX_DATA(PK0_DATA, PK0MD_00),1064	PINMUX_DATA(PWM1A_MARK, PK0MD_01),1065	PINMUX_DATA(SD_D2_MARK, PK0MD_10),1066};1067 1068static const struct sh_pfc_pin pinmux_pins[] = {1069	/* Port A */1070	PINMUX_GPIO(PA3),1071	PINMUX_GPIO(PA2),1072	PINMUX_GPIO(PA1),1073	PINMUX_GPIO(PA0),1074 1075	/* Port B */1076	PINMUX_GPIO(PB22),1077	PINMUX_GPIO(PB21),1078	PINMUX_GPIO(PB20),1079	PINMUX_GPIO(PB19),1080	PINMUX_GPIO(PB18),1081	PINMUX_GPIO(PB17),1082	PINMUX_GPIO(PB16),1083	PINMUX_GPIO(PB15),1084	PINMUX_GPIO(PB14),1085	PINMUX_GPIO(PB13),1086	PINMUX_GPIO(PB12),1087	PINMUX_GPIO(PB11),1088	PINMUX_GPIO(PB10),1089	PINMUX_GPIO(PB9),1090	PINMUX_GPIO(PB8),1091	PINMUX_GPIO(PB7),1092	PINMUX_GPIO(PB6),1093	PINMUX_GPIO(PB5),1094	PINMUX_GPIO(PB4),1095	PINMUX_GPIO(PB3),1096	PINMUX_GPIO(PB2),1097	PINMUX_GPIO(PB1),1098 1099	/* Port C */1100	PINMUX_GPIO(PC10),1101	PINMUX_GPIO(PC9),1102	PINMUX_GPIO(PC8),1103	PINMUX_GPIO(PC7),1104	PINMUX_GPIO(PC6),1105	PINMUX_GPIO(PC5),1106	PINMUX_GPIO(PC4),1107	PINMUX_GPIO(PC3),1108	PINMUX_GPIO(PC2),1109	PINMUX_GPIO(PC1),1110	PINMUX_GPIO(PC0),1111 1112	/* Port D */1113	PINMUX_GPIO(PD15),1114	PINMUX_GPIO(PD14),1115	PINMUX_GPIO(PD13),1116	PINMUX_GPIO(PD12),1117	PINMUX_GPIO(PD11),1118	PINMUX_GPIO(PD10),1119	PINMUX_GPIO(PD9),1120	PINMUX_GPIO(PD8),1121	PINMUX_GPIO(PD7),1122	PINMUX_GPIO(PD6),1123	PINMUX_GPIO(PD5),1124	PINMUX_GPIO(PD4),1125	PINMUX_GPIO(PD3),1126	PINMUX_GPIO(PD2),1127	PINMUX_GPIO(PD1),1128	PINMUX_GPIO(PD0),1129 1130	/* Port E */1131	PINMUX_GPIO(PE5),1132	PINMUX_GPIO(PE4),1133	PINMUX_GPIO(PE3),1134	PINMUX_GPIO(PE2),1135	PINMUX_GPIO(PE1),1136	PINMUX_GPIO(PE0),1137 1138	/* Port F */1139	PINMUX_GPIO(PF12),1140	PINMUX_GPIO(PF11),1141	PINMUX_GPIO(PF10),1142	PINMUX_GPIO(PF9),1143	PINMUX_GPIO(PF8),1144	PINMUX_GPIO(PF7),1145	PINMUX_GPIO(PF6),1146	PINMUX_GPIO(PF5),1147	PINMUX_GPIO(PF4),1148	PINMUX_GPIO(PF3),1149	PINMUX_GPIO(PF2),1150	PINMUX_GPIO(PF1),1151	PINMUX_GPIO(PF0),1152 1153	/* Port G */1154	PINMUX_GPIO(PG24),1155	PINMUX_GPIO(PG23),1156	PINMUX_GPIO(PG22),1157	PINMUX_GPIO(PG21),1158	PINMUX_GPIO(PG20),1159	PINMUX_GPIO(PG19),1160	PINMUX_GPIO(PG18),1161	PINMUX_GPIO(PG17),1162	PINMUX_GPIO(PG16),1163	PINMUX_GPIO(PG15),1164	PINMUX_GPIO(PG14),1165	PINMUX_GPIO(PG13),1166	PINMUX_GPIO(PG12),1167	PINMUX_GPIO(PG11),1168	PINMUX_GPIO(PG10),1169	PINMUX_GPIO(PG9),1170	PINMUX_GPIO(PG8),1171	PINMUX_GPIO(PG7),1172	PINMUX_GPIO(PG6),1173	PINMUX_GPIO(PG5),1174	PINMUX_GPIO(PG4),1175	PINMUX_GPIO(PG3),1176	PINMUX_GPIO(PG2),1177	PINMUX_GPIO(PG1),1178	PINMUX_GPIO(PG0),1179 1180	/* Port H - Port H does not have a Data Register */1181 1182	/* Port I - not on device */1183 1184	/* Port J */1185	PINMUX_GPIO(PJ11),1186	PINMUX_GPIO(PJ10),1187	PINMUX_GPIO(PJ9),1188	PINMUX_GPIO(PJ8),1189	PINMUX_GPIO(PJ7),1190	PINMUX_GPIO(PJ6),1191	PINMUX_GPIO(PJ5),1192	PINMUX_GPIO(PJ4),1193	PINMUX_GPIO(PJ3),1194	PINMUX_GPIO(PJ2),1195	PINMUX_GPIO(PJ1),1196	PINMUX_GPIO(PJ0),1197 1198	/* Port K */1199	PINMUX_GPIO(PK11),1200	PINMUX_GPIO(PK10),1201	PINMUX_GPIO(PK9),1202	PINMUX_GPIO(PK8),1203	PINMUX_GPIO(PK7),1204	PINMUX_GPIO(PK6),1205	PINMUX_GPIO(PK5),1206	PINMUX_GPIO(PK4),1207	PINMUX_GPIO(PK3),1208	PINMUX_GPIO(PK2),1209	PINMUX_GPIO(PK1),1210	PINMUX_GPIO(PK0),1211};1212 1213#define PINMUX_FN_BASE	ARRAY_SIZE(pinmux_pins)1214 1215static const struct pinmux_func pinmux_func_gpios[] = {1216	/* INTC */1217	GPIO_FN(PINT7_PG),1218	GPIO_FN(PINT6_PG),1219	GPIO_FN(PINT5_PG),1220	GPIO_FN(PINT4_PG),1221	GPIO_FN(PINT3_PG),1222	GPIO_FN(PINT2_PG),1223	GPIO_FN(PINT1_PG),1224 1225	GPIO_FN(IRQ7_PC),1226	GPIO_FN(IRQ6_PC),1227	GPIO_FN(IRQ5_PC),1228	GPIO_FN(IRQ4_PC),1229	GPIO_FN(IRQ3_PG),1230	GPIO_FN(IRQ2_PG),1231	GPIO_FN(IRQ1_PJ),1232	GPIO_FN(IRQ0_PJ),1233	GPIO_FN(IRQ3_PE),1234	GPIO_FN(IRQ2_PE),1235	GPIO_FN(IRQ1_PE),1236	GPIO_FN(IRQ0_PE),1237 1238	/* WDT */1239	GPIO_FN(WDTOVF),1240 1241	/* CAN */1242	GPIO_FN(CTX1),1243	GPIO_FN(CRX1),1244	GPIO_FN(CTX0),1245	GPIO_FN(CTX0_CTX1),1246	GPIO_FN(CRX0),1247	GPIO_FN(CRX0_CRX1),1248 1249	/* DMAC */1250	GPIO_FN(TEND0),1251	GPIO_FN(DACK0),1252	GPIO_FN(DREQ0),1253	GPIO_FN(TEND1),1254	GPIO_FN(DACK1),1255	GPIO_FN(DREQ1),1256 1257	/* ADC */1258	GPIO_FN(ADTRG),1259 1260	/* BSCh */1261	GPIO_FN(A25),1262	GPIO_FN(A24),1263	GPIO_FN(A23),1264	GPIO_FN(A22),1265	GPIO_FN(A21),1266	GPIO_FN(A20),1267	GPIO_FN(A19),1268	GPIO_FN(A18),1269	GPIO_FN(A17),1270	GPIO_FN(A16),1271	GPIO_FN(A15),1272	GPIO_FN(A14),1273	GPIO_FN(A13),1274	GPIO_FN(A12),1275	GPIO_FN(A11),1276	GPIO_FN(A10),1277	GPIO_FN(A9),1278	GPIO_FN(A8),1279	GPIO_FN(A7),1280	GPIO_FN(A6),1281	GPIO_FN(A5),1282	GPIO_FN(A4),1283	GPIO_FN(A3),1284	GPIO_FN(A2),1285	GPIO_FN(A1),1286	GPIO_FN(A0),1287 1288	GPIO_FN(D15),1289	GPIO_FN(D14),1290	GPIO_FN(D13),1291	GPIO_FN(D12),1292	GPIO_FN(D11),1293	GPIO_FN(D10),1294	GPIO_FN(D9),1295	GPIO_FN(D8),1296	GPIO_FN(D7),1297	GPIO_FN(D6),1298	GPIO_FN(D5),1299	GPIO_FN(D4),1300	GPIO_FN(D3),1301	GPIO_FN(D2),1302	GPIO_FN(D1),1303	GPIO_FN(D0),1304 1305	GPIO_FN(BS),1306	GPIO_FN(CS4),1307	GPIO_FN(CS3),1308	GPIO_FN(CS2),1309	GPIO_FN(CS1),1310	GPIO_FN(CS0),1311	GPIO_FN(CS6CE1B),1312	GPIO_FN(CS5CE1A),1313	GPIO_FN(CE2A),1314	GPIO_FN(CE2B),1315	GPIO_FN(RD),1316	GPIO_FN(RDWR),1317	GPIO_FN(ICIOWRAH),1318	GPIO_FN(ICIORD),1319	GPIO_FN(WE1DQMUWE),1320	GPIO_FN(WE0DQML),1321	GPIO_FN(RAS),1322	GPIO_FN(CAS),1323	GPIO_FN(CKE),1324	GPIO_FN(WAIT),1325	GPIO_FN(BREQ),1326	GPIO_FN(BACK),1327	GPIO_FN(IOIS16),1328 1329	/* TMU */1330	GPIO_FN(TIOC4D),1331	GPIO_FN(TIOC4C),1332	GPIO_FN(TIOC4B),1333	GPIO_FN(TIOC4A),1334	GPIO_FN(TIOC3D),1335	GPIO_FN(TIOC3C),1336	GPIO_FN(TIOC3B),1337	GPIO_FN(TIOC3A),1338	GPIO_FN(TIOC2B),1339	GPIO_FN(TIOC1B),1340	GPIO_FN(TIOC2A),1341	GPIO_FN(TIOC1A),1342	GPIO_FN(TIOC0D),1343	GPIO_FN(TIOC0C),1344	GPIO_FN(TIOC0B),1345	GPIO_FN(TIOC0A),1346	GPIO_FN(TCLKD),1347	GPIO_FN(TCLKC),1348	GPIO_FN(TCLKB),1349	GPIO_FN(TCLKA),1350 1351	/* SCIF */1352	GPIO_FN(TXD0),1353	GPIO_FN(RXD0),1354	GPIO_FN(SCK0),1355	GPIO_FN(TXD1),1356	GPIO_FN(RXD1),1357	GPIO_FN(SCK1),1358	GPIO_FN(TXD2),1359	GPIO_FN(RXD2),1360	GPIO_FN(SCK2),1361	GPIO_FN(RTS3),1362	GPIO_FN(CTS3),1363	GPIO_FN(TXD3),1364	GPIO_FN(RXD3),1365	GPIO_FN(SCK3),1366	GPIO_FN(TXD4),1367	GPIO_FN(RXD4),1368	GPIO_FN(TXD5),1369	GPIO_FN(RXD5),1370	GPIO_FN(TXD6),1371	GPIO_FN(RXD6),1372	GPIO_FN(TXD7),1373	GPIO_FN(RXD7),1374	GPIO_FN(RTS1),1375	GPIO_FN(CTS1),1376 1377	/* RSPI */1378	GPIO_FN(RSPCK0),1379	GPIO_FN(MOSI0),1380	GPIO_FN(MISO0_PF12),1381	GPIO_FN(MISO1),1382	GPIO_FN(SSL00),1383	GPIO_FN(RSPCK1),1384	GPIO_FN(MOSI1),1385	GPIO_FN(MISO1_PG19),1386	GPIO_FN(SSL10),1387 1388	/* IIC3 */1389	GPIO_FN(SCL0),1390	GPIO_FN(SCL1),1391	GPIO_FN(SCL2),1392	GPIO_FN(SDA0),1393	GPIO_FN(SDA1),1394	GPIO_FN(SDA2),1395 1396	/* SSI */1397	GPIO_FN(SSISCK0),1398	GPIO_FN(SSIWS0),1399	GPIO_FN(SSITXD0),1400	GPIO_FN(SSIRXD0),1401	GPIO_FN(SSIWS1),1402	GPIO_FN(SSIWS2),1403	GPIO_FN(SSIWS3),1404	GPIO_FN(SSISCK1),1405	GPIO_FN(SSISCK2),1406	GPIO_FN(SSISCK3),1407	GPIO_FN(SSIDATA1),1408	GPIO_FN(SSIDATA2),1409	GPIO_FN(SSIDATA3),1410	GPIO_FN(AUDIO_CLK),1411 1412	/* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */1413	GPIO_FN(SIOFTXD),1414	GPIO_FN(SIOFRXD),1415	GPIO_FN(SIOFSYNC),1416	GPIO_FN(SIOFSCK),1417 1418	/* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */1419	GPIO_FN(SPDIF_IN),1420	GPIO_FN(SPDIF_OUT),1421 1422	/* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */1423	GPIO_FN(FCE),1424	GPIO_FN(FRB),1425 1426	/* VDC3 */1427	GPIO_FN(DV_CLK),1428	GPIO_FN(DV_VSYNC),1429	GPIO_FN(DV_HSYNC),1430 1431	GPIO_FN(DV_DATA7),1432	GPIO_FN(DV_DATA6),1433	GPIO_FN(DV_DATA5),1434	GPIO_FN(DV_DATA4),1435	GPIO_FN(DV_DATA3),1436	GPIO_FN(DV_DATA2),1437	GPIO_FN(DV_DATA1),1438	GPIO_FN(DV_DATA0),1439 1440	GPIO_FN(LCD_CLK),1441	GPIO_FN(LCD_EXTCLK),1442	GPIO_FN(LCD_VSYNC),1443	GPIO_FN(LCD_HSYNC),1444	GPIO_FN(LCD_DE),1445 1446	GPIO_FN(LCD_DATA15),1447	GPIO_FN(LCD_DATA14),1448	GPIO_FN(LCD_DATA13),1449	GPIO_FN(LCD_DATA12),1450	GPIO_FN(LCD_DATA11),1451	GPIO_FN(LCD_DATA10),1452	GPIO_FN(LCD_DATA9),1453	GPIO_FN(LCD_DATA8),1454	GPIO_FN(LCD_DATA7),1455	GPIO_FN(LCD_DATA6),1456	GPIO_FN(LCD_DATA5),1457	GPIO_FN(LCD_DATA4),1458	GPIO_FN(LCD_DATA3),1459	GPIO_FN(LCD_DATA2),1460	GPIO_FN(LCD_DATA1),1461	GPIO_FN(LCD_DATA0),1462 1463	GPIO_FN(LCD_M_DISP),1464};1465 1466static const struct pinmux_cfg_reg pinmux_config_regs[] = {1467	{ PINMUX_CFG_REG_VAR("PAIOR0", 0xfffe3812, 16,1468			     GROUP(-12, 1, 1, 1, 1),1469			     GROUP(1470		/* RESERVED [12] */1471		PA3_IN, PA3_OUT,1472		PA2_IN, PA2_OUT,1473		PA1_IN, PA1_OUT,1474		PA0_IN,	PA0_OUT ))1475	},1476 1477	{ PINMUX_CFG_REG_VAR("PBCR5", 0xfffe3824, 16,1478			     GROUP(-4, 4, 4, 4),1479			     GROUP(1480		/* RESERVED [4] */1481		PB22MD_00, PB22MD_01, PB22MD_10, 0, 0, 0, 0, 0,1482		0, 0, 0, 0, 0, 0, 0, 0,1483		PB21MD_0, PB21MD_1, 0, 0, 0, 0, 0, 0,1484		0, 0, 0, 0, 0, 0, 0, 0,1485		0, PB20MD_1, 0, 0, 0, 0, 0, 0,1486		0, 0, 0, 0, 0, 0, 0, 0 ))1487 1488	},1489	{ PINMUX_CFG_REG("PBCR4", 0xfffe3826, 16, 4, GROUP(1490		0, PB19MD_01, 0, 0, 0, 0, 0, 0,1491		0, 0, 0, 0, 0, 0, 0, 0,1492		0, PB18MD_01, 0, 0, 0, 0, 0, 0,1493		0, 0, 0, 0, 0, 0, 0, 0,1494		0, PB17MD_01, 0, 0, 0, 0, 0, 0,1495		0, 0, 0, 0, 0, 0, 0, 0,1496		0, PB16MD_01, 0, 0, 0, 0, 0, 0,1497		0, 0, 0, 0, 0, 0, 0, 0 ))1498	},1499	{ PINMUX_CFG_REG("PBCR3", 0xfffe3828, 16, 4, GROUP(1500		0, PB15MD_01, 0, 0, 0, 0, 0, 0,1501		0, 0, 0, 0, 0, 0, 0, 0,1502		0, PB14MD_01, 0, 0, 0, 0, 0, 0,1503		0, 0, 0, 0, 0, 0, 0, 0,1504		0, PB13MD_01, 0, 0, 0, 0, 0, 0,1505		0, 0, 0, 0, 0, 0, 0, 0,1506		0, PB12MD_01, 0, 0, 0, 0, 0, 0,1507		0, 0, 0, 0, 0, 0, 0, 0 ))1508	},1509	{ PINMUX_CFG_REG("PBCR2", 0xfffe382a, 16, 4, GROUP(1510		0, PB11MD_01, 0, 0, 0, 0, 0, 0,1511		0, 0, 0, 0, 0, 0, 0, 0,1512		0, PB10MD_01, 0, 0, 0, 0, 0, 0,1513		0, 0, 0, 0, 0, 0, 0, 0,1514		0, PB9MD_01, 0, 0, 0, 0, 0, 0,1515		0, 0, 0, 0, 0, 0, 0, 0,1516		0, PB8MD_01, 0, 0, 0, 0, 0, 0,1517		0, 0, 0, 0, 0, 0, 0, 0 ))1518	},1519	{ PINMUX_CFG_REG("PBCR1", 0xfffe382c, 16, 4, GROUP(1520		0, PB7MD_01, 0, 0, 0, 0, 0, 0,1521		0, 0, 0, 0, 0, 0, 0, 0,1522		0, PB6MD_01, 0, 0, 0, 0, 0, 0,1523		0, 0, 0, 0, 0, 0, 0, 0,1524		0, PB5MD_01, 0, 0, 0, 0, 0, 0,1525		0, 0, 0, 0, 0, 0, 0, 0,1526		0, PB4MD_01, 0, 0, 0, 0, 0, 0,1527		0, 0, 0, 0, 0, 0, 0, 0 ))1528	},1529	{ PINMUX_CFG_REG_VAR("PBCR0", 0xfffe382e, 16,1530			     GROUP(4, 4, 4, -4),1531			     GROUP(1532		0, PB3MD_1, 0, 0, 0, 0, 0, 0,1533		0, 0, 0, 0, 0, 0, 0, 0,1534		0, PB2MD_1, 0, 0, 0, 0, 0, 0,1535		0, 0, 0, 0, 0, 0, 0, 0,1536		0, PB1MD_1, 0, 0, 0, 0, 0, 0,1537		0, 0, 0, 0, 0, 0, 0, 0,1538		/* RESERVED [4] */ ))1539	},1540 1541	{ PINMUX_CFG_REG_VAR("PBIOR1", 0xfffe3830, 16,1542			     GROUP(-9, 1, 1, 1, 1, 1, 1, 1),1543			     GROUP(1544		/* RESERVED [9] */1545		PB22_IN, PB22_OUT,1546		PB21_IN, PB21_OUT,1547		PB20_IN, PB20_OUT,1548		PB19_IN, PB19_OUT,1549		PB18_IN, PB18_OUT,1550		PB17_IN, PB17_OUT,1551		PB16_IN, PB16_OUT ))1552	},1553 1554	{ PINMUX_CFG_REG("PBIOR0", 0xfffe3832, 16, 1, GROUP(1555		PB15_IN, PB15_OUT,1556		PB14_IN, PB14_OUT,1557		PB13_IN, PB13_OUT,1558		PB12_IN, PB12_OUT,1559		PB11_IN, PB11_OUT,1560		PB10_IN, PB10_OUT,1561		PB9_IN, PB9_OUT,1562		PB8_IN, PB8_OUT,1563		PB7_IN, PB7_OUT,1564		PB6_IN, PB6_OUT,1565		PB5_IN, PB5_OUT,1566		PB4_IN, PB4_OUT,1567		PB3_IN, PB3_OUT,1568		PB2_IN, PB2_OUT,1569		PB1_IN, PB1_OUT,1570		0, 0 ))1571	},1572 1573	{ PINMUX_CFG_REG_VAR("PCCR2", 0xfffe384a, 16,1574			     GROUP(-4, 4, 4, 4),1575			     GROUP(1576		/* RESERVED [4] */1577		PC10MD_0, PC10MD_1, 0, 0, 0, 0, 0, 0,1578		0, 0, 0, 0, 0, 0, 0, 0,1579		PC9MD_0, PC9MD_1, 0, 0, 0, 0, 0, 0,1580		0, 0, 0, 0, 0, 0, 0, 0,1581		PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11, 0, 0, 0, 0,1582		0, 0, 0, 0, 0, 0, 0, 0 ))1583	},1584	{ PINMUX_CFG_REG("PCCR1", 0xfffe384c, 16, 4, GROUP(1585		PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11, 0, 0, 0, 0,1586		0, 0, 0, 0, 0, 0, 0, 0,1587		PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11, 0, 0, 0, 0,1588		0, 0, 0, 0, 0, 0, 0, 0,1589		PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11, 0, 0, 0, 0,1590		0, 0, 0, 0, 0, 0, 0, 0,1591		PC4MD_0, PC4MD_1, 0, 0, 0, 0, 0, 0,1592		0, 0, 0, 0, 0, 0, 0, 0 ))1593	},1594	{ PINMUX_CFG_REG("PCCR0", 0xfffe384e, 16, 4, GROUP(1595		PC3MD_0, PC3MD_1, 0, 0, 0, 0, 0, 0,1596		0, 0, 0, 0, 0, 0, 0, 0,1597		PC2MD_0, PC2MD_1, 0, 0, 0, 0, 0, 0,1598		0, 0, 0, 0, 0, 0, 0, 0,1599		PC1MD_0, PC1MD_1, 0, 0, 0, 0, 0, 0,1600		0, 0, 0, 0, 0, 0, 0, 0,1601		PC0MD_0, PC0MD_1, 0, 0, 0, 0, 0, 0,1602		0, 0, 0, 0, 0, 0, 0, 0 ))1603	},1604 1605	{ PINMUX_CFG_REG_VAR("PCIOR0", 0xfffe3852, 16,1606			     GROUP(-5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),1607			     GROUP(1608		/* RESERVED [5] */1609		PC10_IN, PC10_OUT,1610		PC9_IN, PC9_OUT,1611		PC8_IN, PC8_OUT,1612		PC7_IN, PC7_OUT,1613		PC6_IN, PC6_OUT,1614		PC5_IN, PC5_OUT,1615		PC4_IN, PC4_OUT,1616		PC3_IN, PC3_OUT,1617		PC2_IN, PC2_OUT,1618		PC1_IN, PC1_OUT,1619		PC0_IN, PC0_OUT1620	 ))1621	},1622 1623	{ PINMUX_CFG_REG("PDCR3", 0xfffe3868, 16, 4, GROUP(1624		0, PD15MD_01, 0, 0, 0, 0, 0, 0,1625		0, 0, 0, 0, 0, 0, 0, 0,1626		0, PD14MD_01, 0, 0, 0, 0, 0, 0,1627		0, 0, 0, 0, 0, 0, 0, 0,1628		0, PD13MD_01, 0, 0, 0, 0, 0, 0,1629		0, 0, 0, 0, 0, 0, 0, 0,1630		0, PD12MD_01, 0, 0, 0, 0, 0, 0,1631		0, 0, 0, 0, 0, 0, 0, 0 ))1632	},1633	{ PINMUX_CFG_REG("PDCR2", 0xfffe386a, 16, 4, GROUP(1634		0, PD11MD_01, 0, 0, 0, 0, 0, 0,1635		0, 0, 0, 0, 0, 0, 0, 0,1636		0, PD10MD_01, 0, 0, 0, 0, 0, 0,1637		0, 0, 0, 0, 0, 0, 0, 0,1638		0, PD9MD_01, 0, 0, 0, 0, 0, 0,1639		0, 0, 0, 0, 0, 0, 0, 0,1640		0, PD8MD_01, 0, 0, 0, 0, 0, 0,1641		0, 0, 0, 0, 0, 0, 0, 0 ))1642	},1643	{ PINMUX_CFG_REG("PDCR1", 0xfffe386c, 16, 4, GROUP(1644		0, PD7MD_01, 0, 0, 0, 0, 0, 0,1645		0, 0, 0, 0, 0, 0, 0, 0,1646		0, PD6MD_01, 0, 0, 0, 0, 0, 0,1647		0, 0, 0, 0, 0, 0, 0, 0,1648		0, PD5MD_01, 0, 0, 0, 0, 0, 0,1649		0, 0, 0, 0, 0, 0, 0, 0,1650		0, PD4MD_01, 0, 0, 0, 0, 0, 0,1651		0, 0, 0, 0, 0, 0, 0, 0 ))1652	},1653	{ PINMUX_CFG_REG("PDCR0", 0xfffe386e, 16, 4, GROUP(1654		0, PD3MD_01, 0, 0, 0, 0, 0, 0,1655		0, 0, 0, 0, 0, 0, 0, 0,1656		0, PD2MD_01, 0, 0, 0, 0, 0, 0,1657		0, 0, 0, 0, 0, 0, 0, 0,1658		0, PD1MD_01, 0, 0, 0, 0, 0, 0,1659		0, 0, 0, 0, 0, 0, 0, 0,1660		0, PD0MD_01, 0, 0, 0, 0, 0, 0,1661		0, 0, 0, 0, 0, 0, 0, 0 ))1662	},1663 1664	{ PINMUX_CFG_REG("PDIOR0", 0xfffe3872, 16, 1, GROUP(1665		PD15_IN, PD15_OUT,1666		PD14_IN, PD14_OUT,1667		PD13_IN, PD13_OUT,1668		PD12_IN, PD12_OUT,1669		PD11_IN, PD11_OUT,1670		PD10_IN, PD10_OUT,1671		PD9_IN, PD9_OUT,1672		PD8_IN, PD8_OUT,1673		PD7_IN, PD7_OUT,1674		PD6_IN, PD6_OUT,1675		PD5_IN, PD5_OUT,1676		PD4_IN, PD4_OUT,1677		PD3_IN, PD3_OUT,1678		PD2_IN, PD2_OUT,1679		PD1_IN, PD1_OUT,1680		PD0_IN, PD0_OUT ))1681	},1682 1683	{ PINMUX_CFG_REG_VAR("PECR1", 0xfffe388c, 16,1684			     GROUP(-8, 4, 4),1685			     GROUP(1686		/* RESERVED [8] */1687		PE5MD_00, PE5MD_01, 0, PE5MD_11, 0, 0, 0, 0,1688		0, 0, 0, 0, 0, 0, 0, 0,1689		PE4MD_00, PE4MD_01, 0, PE4MD_11, 0, 0, 0, 0,1690		0, 0, 0, 0, 0, 0, 0, 0 ))1691	},1692 1693	{ PINMUX_CFG_REG("PECR0", 0xfffe388e, 16, 4, GROUP(1694		PE3MD_00, PE3MD_01, 0, PE3MD_11, 0, 0, 0, 0,1695		0, 0, 0, 0, 0, 0, 0, 0,1696		PE2MD_00, PE2MD_01, 0, PE2MD_11, 0, 0, 0, 0,1697		0, 0, 0, 0, 0, 0, 0, 0,1698		PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,1699		PE1MD_100, PE1MD_101, 0, 0,1700		0, 0, 0, 0, 0, 0, 0, 0,1701		PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11, 0, 0, 0, 0,1702		0, 0, 0, 0, 0, 0, 0, 0 ))1703	},1704 1705	{ PINMUX_CFG_REG_VAR("PEIOR0", 0xfffe3892, 16,1706			     GROUP(-10, 1, 1, 1, 1, 1, 1),1707			     GROUP(1708		/* RESERVED [10] */1709		PE5_IN, PE5_OUT,1710		PE4_IN, PE4_OUT,1711		PE3_IN, PE3_OUT,1712		PE2_IN, PE2_OUT,1713		PE1_IN, PE1_OUT,1714		PE0_IN, PE0_OUT ))1715	},1716 1717	{ PINMUX_CFG_REG_VAR("PFCR3", 0xfffe38a8, 16,1718			     GROUP(-12, 4),1719			     GROUP(1720		/* RESERVED [12] */1721		PF12MD_000, PF12MD_001, 0, PF12MD_011,1722		PF12MD_100, PF12MD_101, 0, 0,1723		0, 0, 0, 0, 0, 0, 0, 0 ))1724	},1725 1726	{ PINMUX_CFG_REG("PFCR2", 0xfffe38aa, 16, 4, GROUP(1727		PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,1728		PF11MD_100, PF11MD_101, 0, 0,1729		0, 0, 0, 0, 0, 0, 0, 0,1730		PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,1731		PF10MD_100, PF10MD_101, 0, 0,1732		0, 0, 0, 0, 0, 0, 0, 0,1733		PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,1734		PF9MD_100, PF9MD_101, 0, 0,1735		0, 0, 0, 0, 0, 0, 0, 0,1736		PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11, 0, 0, 0, 0,1737		0, 0, 0, 0, 0, 0, 0, 0 ))1738	},1739 1740	{ PINMUX_CFG_REG("PFCR1", 0xfffe38ac, 16, 4, GROUP(1741		PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,1742		PF7MD_100, 0, 0, 0,1743		0, 0, 0, 0, 0, 0, 0, 0,1744		PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,1745		PF6MD_100, 0, 0, 0,1746		0, 0, 0, 0, 0, 0, 0, 0,1747		PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,1748		PF5MD_100, 0, 0, 0,1749		0, 0, 0, 0, 0, 0, 0, 0,1750		PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,1751		PF4MD_100, 0, 0, 0,1752		0, 0, 0, 0, 0, 0, 0, 0 ))1753	},1754 1755	{ PINMUX_CFG_REG("PFCR0", 0xfffe38ae, 16, 4, GROUP(1756		PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,1757		PF3MD_100, 0, 0, 0,1758		0, 0, 0, 0, 0, 0, 0, 0,1759		PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,1760		PF2MD_100, PF2MD_101, 0, 0,1761		0, 0, 0, 0, 0, 0, 0, 0,1762		PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,1763		PF1MD_100, PF1MD_101, 0, 0,1764		0, 0, 0, 0, 0, 0, 0, 0,1765		PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,1766		PF0MD_100, PF0MD_101, 0, 0,1767		0, 0, 0, 0, 0, 0, 0, 0 ))1768	},1769 1770	{ PINMUX_CFG_REG("PFIOR0", 0xfffe38b2, 16, 1, GROUP(1771		0, 0, 0, 0, 0, 0,1772		PF12_IN, PF12_OUT,1773		PF11_IN, PF11_OUT,1774		PF10_IN, PF10_OUT,1775		PF9_IN, PF9_OUT,1776		PF8_IN, PF8_OUT,1777		PF7_IN, PF7_OUT,1778		PF6_IN, PF6_OUT,1779		PF5_IN, PF5_OUT,1780		PF4_IN, PF4_OUT,1781		PF3_IN, PF3_OUT,1782		PF2_IN, PF2_OUT,1783		PF1_IN, PF1_OUT,1784		PF0_IN, PF0_OUT ))1785	},1786 1787	{ PINMUX_CFG_REG_VAR("PGCR7", 0xfffe38c0, 16,1788			     GROUP(-12, 4),1789			     GROUP(1790		/* RESERVED [12] */1791		PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,1792		PG0MD_100, 0, 0, 0,1793		0, 0, 0, 0, 0, 0, 0, 0 ))1794	},1795 1796	{ PINMUX_CFG_REG_VAR("PGCR6", 0xfffe38c2, 16,1797			     GROUP(-12, 4),1798			     GROUP(1799		/* RESERVED [12] */1800		PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11, 0, 0, 0, 0,1801		0, 0, 0, 0, 0, 0, 0, 0 ))1802	},1803 1804	{ PINMUX_CFG_REG("PGCR5", 0xfffe38c4, 16, 4, GROUP(1805		PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11, 0, 0, 0, 0,1806		0, 0, 0, 0, 0, 0, 0, 0,1807		PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11, 0, 0, 0, 0,1808		0, 0, 0, 0, 0, 0, 0, 0,1809		PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11, 0, 0, 0, 0,1810		0, 0, 0, 0, 0, 0, 0, 0,1811		PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,1812		PG20MD_100, 0, 0, 0,1813		0, 0, 0, 0, 0, 0, 0, 0 ))1814	},1815 1816	{ PINMUX_CFG_REG("PGCR4", 0xfffe38c6, 16, 4, GROUP(1817		PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,1818		PG19MD_100, 0, 0, 0,1819		0, 0, 0, 0, 0, 0, 0, 0,1820		PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,1821		PG18MD_100, 0, 0, 0,1822		0, 0, 0, 0, 0, 0, 0, 0,1823		PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,1824		PG17MD_100, 0, 0, 0,1825		0, 0, 0, 0, 0, 0, 0, 0,1826		PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,1827		PG16MD_100, 0, 0, 0,1828		0, 0, 0, 0, 0, 0, 0, 0 ))1829	},1830 1831	{ PINMUX_CFG_REG("PGCR3", 0xfffe38c8, 16, 4, GROUP(1832		PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,1833		PG15MD_100, 0, 0, 0,1834		0, 0, 0, 0, 0, 0, 0, 0,1835		PG14MD_000, PG14MD_001, PG14MD_010, 0,1836		PG14MD_100, 0, 0, 0,1837		0, 0, 0, 0, 0, 0, 0, 0,1838		PG13MD_000, PG13MD_001, PG13MD_010, 0,1839		PG13MD_100, 0, 0, 0,1840		0, 0, 0, 0, 0, 0, 0, 0,1841		PG12MD_000, PG12MD_001, PG12MD_010, 0,1842		PG12MD_100, 0, 0, 0,1843		0, 0, 0, 0, 0, 0, 0, 0 ))1844	},1845	{ PINMUX_CFG_REG("PGCR2", 0xfffe38ca, 16, 4, GROUP(1846		PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,1847		PG11MD_100, PG11MD_101, 0, 0,1848		0, 0, 0, 0, 0, 0, 0, 0,1849		PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,1850		PG10MD_100, PG10MD_101, 0, 0,1851		0, 0, 0, 0, 0, 0, 0, 0,1852		PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,1853		PG9MD_100, PG9MD_101, 0, 0,1854		0, 0, 0, 0, 0, 0, 0, 0,1855		PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,1856		PG8MD_100, PG8MD_101, 0, 0,1857		0, 0, 0, 0, 0, 0, 0, 0 ))1858	},1859 1860	{ PINMUX_CFG_REG("PGCR1", 0xfffe38cc, 16, 4, GROUP(1861		PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11, 0, 0, 0, 0,1862		0, 0, 0, 0, 0, 0, 0, 0,1863		PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11, 0, 0, 0, 0,1864		0, 0, 0, 0, 0, 0, 0, 0,1865		PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11, 0, 0, 0, 0,1866		0, 0, 0, 0, 0, 0, 0, 0,1867		PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11, 0, 0, 0, 0,1868		0, 0, 0, 0, 0, 0, 0, 0 ))1869	},1870	{ PINMUX_CFG_REG_VAR("PGCR0", 0xfffe38ce, 16,1871			     GROUP(4, 4, 4, -4),1872			     GROUP(1873		PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11, 0, 0, 0, 0,1874		0, 0, 0, 0, 0, 0, 0, 0,1875		PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11, 0, 0, 0, 0,1876		0, 0, 0, 0, 0, 0, 0, 0,1877		PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11, 0, 0, 0, 0,1878		0, 0, 0, 0, 0, 0, 0, 0,1879		/* RESERVED [4] */ ))1880	},1881	{ PINMUX_CFG_REG_VAR("PGIOR1", 0xfffe38d0, 16,1882			     GROUP(-7, 1, 1, 1, 1, 1, 1, 1, 1, 1),1883			     GROUP(1884		/* RESERVED [7] */1885		PG24_IN, PG24_OUT,1886		PG23_IN, PG23_OUT,1887		PG22_IN, PG22_OUT,1888		PG21_IN, PG21_OUT,1889		PG20_IN, PG20_OUT,1890		PG19_IN, PG19_OUT,1891		PG18_IN, PG18_OUT,1892		PG17_IN, PG17_OUT,1893		PG16_IN, PG16_OUT ))1894	},1895 1896	{ PINMUX_CFG_REG("PGIOR0", 0xfffe38d2, 16, 1, GROUP(1897		PG15_IN, PG15_OUT,1898		PG14_IN, PG14_OUT,1899		PG13_IN, PG13_OUT,1900		PG12_IN, PG12_OUT,1901		PG11_IN, PG11_OUT,1902		PG10_IN, PG10_OUT,1903		PG9_IN, PG9_OUT,1904		PG8_IN, PG8_OUT,1905		PG7_IN, PG7_OUT,1906		PG6_IN, PG6_OUT,1907		PG5_IN, PG5_OUT,1908		PG4_IN, PG4_OUT,1909		PG3_IN, PG3_OUT,1910		PG2_IN, PG2_OUT,1911		PG1_IN, PG1_OUT,1912		PG0_IN, PG0_OUT1913	 ))1914	},1915 1916	{ PINMUX_CFG_REG("PHCR1", 0xfffe38ec, 16, 4, GROUP(1917		PH7MD_0, PH7MD_1, 0, 0, 0, 0, 0, 0,1918		0, 0, 0, 0, 0, 0, 0, 0,1919		PH6MD_0, PH6MD_1, 0, 0, 0, 0, 0, 0,1920		0, 0, 0, 0, 0, 0, 0, 0,1921		PH5MD_0, PH5MD_1, 0, 0, 0, 0, 0, 0,1922		0, 0, 0, 0, 0, 0, 0, 0,1923		PH4MD_0, PH4MD_1, 0, 0, 0, 0, 0, 0,1924		0, 0, 0, 0, 0, 0, 0, 0 ))1925	},1926 1927	{ PINMUX_CFG_REG("PHCR0", 0xfffe38ee, 16, 4, GROUP(1928		PH3MD_0, PH3MD_1, 0, 0, 0, 0, 0, 0,1929		0, 0, 0, 0, 0, 0, 0, 0,1930		PH2MD_0, PH2MD_1, 0, 0, 0, 0, 0, 0,1931		0, 0, 0, 0, 0, 0, 0, 0,1932		PH1MD_0, PH1MD_1, 0, 0, 0, 0, 0, 0,1933		0, 0, 0, 0, 0, 0, 0, 0,1934		PH0MD_0, PH0MD_1, 0, 0, 0, 0, 0, 0,1935		0, 0, 0, 0, 0, 0, 0, 0 ))1936	},1937 1938	{ PINMUX_CFG_REG("PJCR2", 0xfffe390a, 16, 4, GROUP(1939		PJ11MD_00, PJ11MD_01, PJ11MD_10, 0, 0, 0, 0, 0,1940		0, 0, 0, 0, 0, 0, 0, 0,1941		PJ10MD_00, PJ10MD_01, PJ10MD_10, 0, 0, 0, 0, 0,1942		0, 0, 0, 0, 0, 0, 0, 0,1943		PJ9MD_00, PJ9MD_01, PJ9MD_10, 0, 0, 0, 0, 0,1944		0, 0, 0, 0, 0, 0, 0, 0,1945		PJ8MD_00, PJ8MD_01, PJ8MD_10, 0, 0, 0, 0, 0,1946		0, 0, 0, 0, 0, 0, 0, 0 ))1947	},1948	{ PINMUX_CFG_REG("PJCR1", 0xfffe390c, 16, 4, GROUP(1949		PJ7MD_00, PJ7MD_01, PJ7MD_10, 0, 0, 0, 0, 0,1950		0, 0, 0, 0, 0, 0, 0, 0,1951		PJ6MD_00, PJ6MD_01, PJ6MD_10, 0, 0, 0, 0, 0,1952		0, 0, 0, 0, 0, 0, 0, 0,1953		PJ5MD_00, PJ5MD_01, PJ5MD_10, 0, 0, 0, 0, 0,1954		0, 0, 0, 0, 0, 0, 0, 0,1955		PJ4MD_00, PJ4MD_01, PJ4MD_10, 0, 0, 0, 0, 0,1956		0, 0, 0, 0, 0, 0, 0, 0 ))1957	},1958	{ PINMUX_CFG_REG("PJCR0", 0xfffe390e, 16, 4, GROUP(1959		PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11, 0, 0, 0, 0,1960		0, 0, 0, 0, 0, 0, 0, 0,1961		PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,1962		PJ2MD_100, PJ2MD_101, 0, 0,1963		0, 0, 0, 0, 0, 0, 0, 0,1964		PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,1965		PJ1MD_100, 0, 0, 0,1966		0, 0, 0, 0, 0, 0, 0, 0,1967		PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,1968		PJ0MD_100, PJ0MD_101, 0, 0,1969		0, 0, 0, 0, 0, 0, 0, 0, ))1970	},1971	{ PINMUX_CFG_REG("PJIOR0", 0xfffe3912, 16, 1, GROUP(1972		0, 0, 0, 0, 0, 0, 0, 0,1973		PJ11_IN, PJ11_OUT,1974		PJ10_IN, PJ10_OUT,1975		PJ9_IN, PJ9_OUT,1976		PJ8_IN, PJ8_OUT,1977		PJ7_IN, PJ7_OUT,1978		PJ6_IN, PJ6_OUT,1979		PJ5_IN, PJ5_OUT,1980		PJ4_IN, PJ4_OUT,1981		PJ3_IN, PJ3_OUT,1982		PJ2_IN, PJ2_OUT,1983		PJ1_IN, PJ1_OUT,1984		PJ0_IN, PJ0_OUT ))1985	},1986 1987	{ PINMUX_CFG_REG("PKCR2", 0xfffe392a, 16, 4, GROUP(1988		PK11MD_00, PK11MD_01, PK11MD_10, 0, 0, 0, 0, 0,1989		0, 0, 0, 0, 0, 0, 0, 0,1990		PK10MD_00, PK10MD_01, PK10MD_10, 0, 0, 0, 0, 0,1991		0, 0, 0, 0, 0, 0, 0, 0,1992		PK9MD_00, PK9MD_01, PK9MD_10, 0, 0, 0, 0, 0,1993		0, 0, 0, 0, 0, 0, 0, 0,1994		PK8MD_00, PK8MD_01, PK8MD_10, 0, 0, 0, 0, 0,1995		0, 0, 0, 0, 0, 0, 0, 0 ))1996	},1997 1998	{ PINMUX_CFG_REG("PKCR1", 0xfffe392c, 16, 4, GROUP(1999		PK7MD_00, PK7MD_01, PK7MD_10, 0, 0, 0, 0, 0,2000		0, 0, 0, 0, 0, 0, 0, 0,2001		PK6MD_00, PK6MD_01, PK6MD_10, 0,  0, 0, 0, 0,2002		0, 0, 0, 0, 0, 0, 0, 0,2003		PK5MD_00, PK5MD_01, PK5MD_10, 0, 0, 0, 0, 0,2004		0, 0, 0, 0, 0, 0, 0, 0,2005		PK4MD_00, PK4MD_01, PK4MD_10, 0, 0, 0, 0, 0,2006		0, 0, 0, 0, 0, 0, 0, 0 ))2007	},2008	{ PINMUX_CFG_REG("PKCR0", 0xfffe392e, 16, 4, GROUP(2009		PK3MD_00, PK3MD_01, PK3MD_10, 0, 0, 0, 0, 0,2010		0, 0, 0, 0, 0, 0, 0, 0,2011		PK2MD_00, PK2MD_01, PK2MD_10, 0, 0, 0, 0, 0,2012		0, 0, 0, 0, 0, 0, 0, 0,2013		PK1MD_00, PK1MD_01, PK1MD_10, 0, 0, 0, 0, 0,2014		0, 0, 0, 0, 0, 0, 0, 0,2015		PK0MD_00, PK0MD_01, PK0MD_10, 0, 0, 0, 0, 0,2016		0, 0, 0, 0, 0, 0, 0, 0 ))2017	},2018 2019	{ PINMUX_CFG_REG("PKIOR0", 0xfffe3932, 16, 1, GROUP(2020		0, 0, 0, 0, 0, 0, 0, 0,2021		PK11_IN, PK11_OUT,2022		PK10_IN, PK10_OUT,2023		PK9_IN, PK9_OUT,2024		PK8_IN, PK8_OUT,2025		PK7_IN, PK7_OUT,2026		PK6_IN, PK6_OUT,2027		PK5_IN, PK5_OUT,2028		PK4_IN, PK4_OUT,2029		PK3_IN, PK3_OUT,2030		PK2_IN, PK2_OUT,2031		PK1_IN, PK1_OUT,2032		PK0_IN, PK0_OUT ))2033	},2034	{ /* sentinel */ }2035};2036 2037static const struct pinmux_data_reg pinmux_data_regs[] = {2038	{ PINMUX_DATA_REG("PADR1", 0xfffe3814, 16, GROUP(2039		0, 0, 0, 0, 0, 0, 0, PA3_DATA,2040		0, 0, 0, 0, 0, 0, 0, PA2_DATA ))2041	},2042 2043	{ PINMUX_DATA_REG("PADR0", 0xfffe3816, 16, GROUP(2044		0, 0, 0, 0, 0, 0, 0, PA1_DATA,2045		0, 0, 0, 0, 0, 0, 0, PA0_DATA ))2046	},2047 2048	{ PINMUX_DATA_REG("PBDR1", 0xfffe3834, 16, GROUP(2049		0, 0, 0, 0, 0, 0, 0, 0,2050		0, PB22_DATA, PB21_DATA, PB20_DATA,2051		PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA ))2052	},2053 2054	{ PINMUX_DATA_REG("PBDR0", 0xfffe3836, 16, GROUP(2055		PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,2056		PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,2057		PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,2058		PB3_DATA, PB2_DATA, PB1_DATA, 0 ))2059	},2060 2061	{ PINMUX_DATA_REG("PCDR0", 0xfffe3856, 16, GROUP(2062		0, 0, 0, 0,2063		0, PC10_DATA, PC9_DATA, PC8_DATA,2064		PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,2065		PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA ))2066	},2067 2068	{ PINMUX_DATA_REG("PDDR0", 0xfffe3876, 16, GROUP(2069		PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,2070		PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,2071		PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,2072		PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA ))2073	},2074 2075	{ PINMUX_DATA_REG("PEDR0", 0xfffe3896, 16, GROUP(2076		0, 0, 0, 0, 0, 0, 0, 0,2077		0, 0, PE5_DATA, PE4_DATA,2078		PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA ))2079	},2080 2081	{ PINMUX_DATA_REG("PFDR0", 0xfffe38b6, 16, GROUP(2082		0, 0, 0, PF12_DATA,2083		PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,2084		PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,2085		PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA ))2086	},2087 2088	{ PINMUX_DATA_REG("PGDR1", 0xfffe38d4, 16, GROUP(2089		0, 0, 0, 0, 0, 0, 0, PG24_DATA,2090		PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,2091		PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA ))2092	},2093 2094	{ PINMUX_DATA_REG("PGDR0", 0xfffe38d6, 16, GROUP(2095		PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,2096		PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,2097		PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,2098		PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA ))2099	},2100	{ PINMUX_DATA_REG("PJDR0", 0xfffe3916, 16, GROUP(2101		0, 0, 0, PJ12_DATA,2102		PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,2103		PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,2104		PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA ))2105	},2106	{ PINMUX_DATA_REG("PKDR0", 0xfffe3936, 16, GROUP(2107		0, 0, 0, PK12_DATA,2108		PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,2109		PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,2110		PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA ))2111	},2112	{ /* sentinel */ }2113};2114 2115const struct sh_pfc_soc_info sh7264_pinmux_info = {2116	.name = "sh7264_pfc",2117	.input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },2118	.output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },2119	.function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },2120 2121	.pins = pinmux_pins,2122	.nr_pins = ARRAY_SIZE(pinmux_pins),2123	.func_gpios = pinmux_func_gpios,2124	.nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),2125 2126	.cfg_regs = pinmux_config_regs,2127	.data_regs = pinmux_data_regs,2128 2129	.pinmux_data = pinmux_data,2130	.pinmux_data_size = ARRAY_SIZE(pinmux_data),2131};2132