Linux-libre 3.10.48-gnu
[librecmc/linux-libre.git] / arch / arm / mach-shmobile / include / mach / r8a7740.h
1 /*
2  * Copyright (C) 2011  Renesas Solutions Corp.
3  * Copyright (C) 2011  Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; version 2 of the License.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17  */
18
19 #ifndef __ASM_R8A7740_H__
20 #define __ASM_R8A7740_H__
21
22 #include <mach/pm-rmobile.h>
23
24 /*
25  * MD_CKx pin
26  */
27 #define MD_CK2  (1 << 2)
28 #define MD_CK1  (1 << 1)
29 #define MD_CK0  (1 << 0)
30
31 /*
32  * Pin Function Controller:
33  *      GPIO_FN_xx - GPIO used to select pin function
34  *      GPIO_PORTxx - GPIO mapped to real I/O pin on CPU
35  */
36 enum {
37         /* PORT */
38         GPIO_PORT0, GPIO_PORT1, GPIO_PORT2, GPIO_PORT3, GPIO_PORT4,
39         GPIO_PORT5, GPIO_PORT6, GPIO_PORT7, GPIO_PORT8, GPIO_PORT9,
40
41         GPIO_PORT10, GPIO_PORT11, GPIO_PORT12, GPIO_PORT13, GPIO_PORT14,
42         GPIO_PORT15, GPIO_PORT16, GPIO_PORT17, GPIO_PORT18, GPIO_PORT19,
43
44         GPIO_PORT20, GPIO_PORT21, GPIO_PORT22, GPIO_PORT23, GPIO_PORT24,
45         GPIO_PORT25, GPIO_PORT26, GPIO_PORT27, GPIO_PORT28, GPIO_PORT29,
46
47         GPIO_PORT30, GPIO_PORT31, GPIO_PORT32, GPIO_PORT33, GPIO_PORT34,
48         GPIO_PORT35, GPIO_PORT36, GPIO_PORT37, GPIO_PORT38, GPIO_PORT39,
49
50         GPIO_PORT40, GPIO_PORT41, GPIO_PORT42, GPIO_PORT43, GPIO_PORT44,
51         GPIO_PORT45, GPIO_PORT46, GPIO_PORT47, GPIO_PORT48, GPIO_PORT49,
52
53         GPIO_PORT50, GPIO_PORT51, GPIO_PORT52, GPIO_PORT53, GPIO_PORT54,
54         GPIO_PORT55, GPIO_PORT56, GPIO_PORT57, GPIO_PORT58, GPIO_PORT59,
55
56         GPIO_PORT60, GPIO_PORT61, GPIO_PORT62, GPIO_PORT63, GPIO_PORT64,
57         GPIO_PORT65, GPIO_PORT66, GPIO_PORT67, GPIO_PORT68, GPIO_PORT69,
58
59         GPIO_PORT70, GPIO_PORT71, GPIO_PORT72, GPIO_PORT73, GPIO_PORT74,
60         GPIO_PORT75, GPIO_PORT76, GPIO_PORT77, GPIO_PORT78, GPIO_PORT79,
61
62         GPIO_PORT80, GPIO_PORT81, GPIO_PORT82, GPIO_PORT83, GPIO_PORT84,
63         GPIO_PORT85, GPIO_PORT86, GPIO_PORT87, GPIO_PORT88, GPIO_PORT89,
64
65         GPIO_PORT90, GPIO_PORT91, GPIO_PORT92, GPIO_PORT93, GPIO_PORT94,
66         GPIO_PORT95, GPIO_PORT96, GPIO_PORT97, GPIO_PORT98, GPIO_PORT99,
67
68         GPIO_PORT100, GPIO_PORT101, GPIO_PORT102, GPIO_PORT103, GPIO_PORT104,
69         GPIO_PORT105, GPIO_PORT106, GPIO_PORT107, GPIO_PORT108, GPIO_PORT109,
70
71         GPIO_PORT110, GPIO_PORT111, GPIO_PORT112, GPIO_PORT113, GPIO_PORT114,
72         GPIO_PORT115, GPIO_PORT116, GPIO_PORT117, GPIO_PORT118, GPIO_PORT119,
73
74         GPIO_PORT120, GPIO_PORT121, GPIO_PORT122, GPIO_PORT123, GPIO_PORT124,
75         GPIO_PORT125, GPIO_PORT126, GPIO_PORT127, GPIO_PORT128, GPIO_PORT129,
76
77         GPIO_PORT130, GPIO_PORT131, GPIO_PORT132, GPIO_PORT133, GPIO_PORT134,
78         GPIO_PORT135, GPIO_PORT136, GPIO_PORT137, GPIO_PORT138, GPIO_PORT139,
79
80         GPIO_PORT140, GPIO_PORT141, GPIO_PORT142, GPIO_PORT143, GPIO_PORT144,
81         GPIO_PORT145, GPIO_PORT146, GPIO_PORT147, GPIO_PORT148, GPIO_PORT149,
82
83         GPIO_PORT150, GPIO_PORT151, GPIO_PORT152, GPIO_PORT153, GPIO_PORT154,
84         GPIO_PORT155, GPIO_PORT156, GPIO_PORT157, GPIO_PORT158, GPIO_PORT159,
85
86         GPIO_PORT160, GPIO_PORT161, GPIO_PORT162, GPIO_PORT163, GPIO_PORT164,
87         GPIO_PORT165, GPIO_PORT166, GPIO_PORT167, GPIO_PORT168, GPIO_PORT169,
88
89         GPIO_PORT170, GPIO_PORT171, GPIO_PORT172, GPIO_PORT173, GPIO_PORT174,
90         GPIO_PORT175, GPIO_PORT176, GPIO_PORT177, GPIO_PORT178, GPIO_PORT179,
91
92         GPIO_PORT180, GPIO_PORT181, GPIO_PORT182, GPIO_PORT183, GPIO_PORT184,
93         GPIO_PORT185, GPIO_PORT186, GPIO_PORT187, GPIO_PORT188, GPIO_PORT189,
94
95         GPIO_PORT190, GPIO_PORT191, GPIO_PORT192, GPIO_PORT193, GPIO_PORT194,
96         GPIO_PORT195, GPIO_PORT196, GPIO_PORT197, GPIO_PORT198, GPIO_PORT199,
97
98         GPIO_PORT200, GPIO_PORT201, GPIO_PORT202, GPIO_PORT203, GPIO_PORT204,
99         GPIO_PORT205, GPIO_PORT206, GPIO_PORT207, GPIO_PORT208, GPIO_PORT209,
100
101         GPIO_PORT210, GPIO_PORT211,
102
103         /* IRQ */
104         GPIO_FN_IRQ0_PORT2,     GPIO_FN_IRQ0_PORT13,
105         GPIO_FN_IRQ1,
106         GPIO_FN_IRQ2_PORT11,    GPIO_FN_IRQ2_PORT12,
107         GPIO_FN_IRQ3_PORT10,    GPIO_FN_IRQ3_PORT14,
108         GPIO_FN_IRQ4_PORT15,    GPIO_FN_IRQ4_PORT172,
109         GPIO_FN_IRQ5_PORT0,     GPIO_FN_IRQ5_PORT1,
110         GPIO_FN_IRQ6_PORT121,   GPIO_FN_IRQ6_PORT173,
111         GPIO_FN_IRQ7_PORT120,   GPIO_FN_IRQ7_PORT209,
112         GPIO_FN_IRQ8,
113         GPIO_FN_IRQ9_PORT118,   GPIO_FN_IRQ9_PORT210,
114         GPIO_FN_IRQ10,
115         GPIO_FN_IRQ11,
116         GPIO_FN_IRQ12_PORT42,   GPIO_FN_IRQ12_PORT97,
117         GPIO_FN_IRQ13_PORT64,   GPIO_FN_IRQ13_PORT98,
118         GPIO_FN_IRQ14_PORT63,   GPIO_FN_IRQ14_PORT99,
119         GPIO_FN_IRQ15_PORT62,   GPIO_FN_IRQ15_PORT100,
120         GPIO_FN_IRQ16_PORT68,   GPIO_FN_IRQ16_PORT211,
121         GPIO_FN_IRQ17,
122         GPIO_FN_IRQ18,
123         GPIO_FN_IRQ19,
124         GPIO_FN_IRQ20,
125         GPIO_FN_IRQ21,
126         GPIO_FN_IRQ22,
127         GPIO_FN_IRQ23,
128         GPIO_FN_IRQ24,
129         GPIO_FN_IRQ25,
130         GPIO_FN_IRQ26_PORT58,   GPIO_FN_IRQ26_PORT81,
131         GPIO_FN_IRQ27_PORT57,   GPIO_FN_IRQ27_PORT168,
132         GPIO_FN_IRQ28_PORT56,   GPIO_FN_IRQ28_PORT169,
133         GPIO_FN_IRQ29_PORT50,   GPIO_FN_IRQ29_PORT170,
134         GPIO_FN_IRQ30_PORT49,   GPIO_FN_IRQ30_PORT171,
135         GPIO_FN_IRQ31_PORT41,   GPIO_FN_IRQ31_PORT167,
136
137         /* Function */
138
139         /* DBGT */
140         GPIO_FN_DBGMDT2,        GPIO_FN_DBGMDT1,        GPIO_FN_DBGMDT0,
141         GPIO_FN_DBGMD10,        GPIO_FN_DBGMD11,        GPIO_FN_DBGMD20,
142         GPIO_FN_DBGMD21,
143
144         /* FSI-A */
145         GPIO_FN_FSIAISLD_PORT0,         /* FSIAISLD Port 0/5 */
146         GPIO_FN_FSIAISLD_PORT5,
147         GPIO_FN_FSIASPDIF_PORT9,        /* FSIASPDIF Port 9/18 */
148         GPIO_FN_FSIASPDIF_PORT18,
149         GPIO_FN_FSIAOSLD1,      GPIO_FN_FSIAOSLD2,
150         GPIO_FN_FSIAOLR,        GPIO_FN_FSIAOBT,
151         GPIO_FN_FSIAOSLD,       GPIO_FN_FSIAOMC,
152         GPIO_FN_FSIACK,         GPIO_FN_FSIAILR,
153         GPIO_FN_FSIAIBT,
154
155         /* FSI-B */
156         GPIO_FN_FSIBCK,
157
158         /* FMSI */
159         GPIO_FN_FMSISLD_PORT1, /* FMSISLD Port 1/6 */
160         GPIO_FN_FMSISLD_PORT6,
161         GPIO_FN_FMSIILR,        GPIO_FN_FMSIIBT,
162         GPIO_FN_FMSIOLR,        GPIO_FN_FMSIOBT,
163         GPIO_FN_FMSICK,         GPIO_FN_FMSOILR,
164         GPIO_FN_FMSOIBT,        GPIO_FN_FMSOOLR,
165         GPIO_FN_FMSOOBT,        GPIO_FN_FMSOSLD,
166         GPIO_FN_FMSOCK,
167
168         /* SCIFA0 */
169         GPIO_FN_SCIFA0_SCK,     GPIO_FN_SCIFA0_CTS,
170         GPIO_FN_SCIFA0_RTS,     GPIO_FN_SCIFA0_RXD,
171         GPIO_FN_SCIFA0_TXD,
172
173         /* SCIFA1 */
174         GPIO_FN_SCIFA1_CTS,     GPIO_FN_SCIFA1_SCK,
175         GPIO_FN_SCIFA1_RXD,     GPIO_FN_SCIFA1_TXD,
176         GPIO_FN_SCIFA1_RTS,
177
178         /* SCIFA2 */
179         GPIO_FN_SCIFA2_SCK_PORT22, /* SCIFA2_SCK Port 22/199 */
180         GPIO_FN_SCIFA2_SCK_PORT199,
181         GPIO_FN_SCIFA2_RXD,     GPIO_FN_SCIFA2_TXD,
182         GPIO_FN_SCIFA2_CTS,     GPIO_FN_SCIFA2_RTS,
183
184         /* SCIFA3 */
185         GPIO_FN_SCIFA3_RTS_PORT105, /* MSEL5CR_8_0 */
186         GPIO_FN_SCIFA3_SCK_PORT116,
187         GPIO_FN_SCIFA3_CTS_PORT117,
188         GPIO_FN_SCIFA3_RXD_PORT174,
189         GPIO_FN_SCIFA3_TXD_PORT175,
190
191         GPIO_FN_SCIFA3_RTS_PORT161, /* MSEL5CR_8_1 */
192         GPIO_FN_SCIFA3_SCK_PORT158,
193         GPIO_FN_SCIFA3_CTS_PORT162,
194         GPIO_FN_SCIFA3_RXD_PORT159,
195         GPIO_FN_SCIFA3_TXD_PORT160,
196
197         /* SCIFA4 */
198         GPIO_FN_SCIFA4_RXD_PORT12, /* MSEL5CR[12:11] = 00 */
199         GPIO_FN_SCIFA4_TXD_PORT13,
200
201         GPIO_FN_SCIFA4_RXD_PORT204, /* MSEL5CR[12:11] = 01 */
202         GPIO_FN_SCIFA4_TXD_PORT203,
203
204         GPIO_FN_SCIFA4_RXD_PORT94, /* MSEL5CR[12:11] = 10 */
205         GPIO_FN_SCIFA4_TXD_PORT93,
206
207         GPIO_FN_SCIFA4_SCK_PORT21, /* SCIFA4_SCK Port 21/205 */
208         GPIO_FN_SCIFA4_SCK_PORT205,
209
210         /* SCIFA5 */
211         GPIO_FN_SCIFA5_TXD_PORT20, /* MSEL5CR[15:14] = 00 */
212         GPIO_FN_SCIFA5_RXD_PORT10,
213
214         GPIO_FN_SCIFA5_RXD_PORT207, /* MSEL5CR[15:14] = 01 */
215         GPIO_FN_SCIFA5_TXD_PORT208,
216
217         GPIO_FN_SCIFA5_TXD_PORT91, /* MSEL5CR[15:14] = 10 */
218         GPIO_FN_SCIFA5_RXD_PORT92,
219
220         GPIO_FN_SCIFA5_SCK_PORT23, /* SCIFA5_SCK Port 23/206 */
221         GPIO_FN_SCIFA5_SCK_PORT206,
222
223         /* SCIFA6 */
224         GPIO_FN_SCIFA6_SCK,     GPIO_FN_SCIFA6_RXD,     GPIO_FN_SCIFA6_TXD,
225
226         /* SCIFA7 */
227         GPIO_FN_SCIFA7_TXD,     GPIO_FN_SCIFA7_RXD,
228
229         /* SCIFAB */
230         GPIO_FN_SCIFB_SCK_PORT190, /* MSEL5CR_17_0 */
231         GPIO_FN_SCIFB_RXD_PORT191,
232         GPIO_FN_SCIFB_TXD_PORT192,
233         GPIO_FN_SCIFB_RTS_PORT186,
234         GPIO_FN_SCIFB_CTS_PORT187,
235
236         GPIO_FN_SCIFB_SCK_PORT2, /* MSEL5CR_17_1 */
237         GPIO_FN_SCIFB_RXD_PORT3,
238         GPIO_FN_SCIFB_TXD_PORT4,
239         GPIO_FN_SCIFB_RTS_PORT172,
240         GPIO_FN_SCIFB_CTS_PORT173,
241
242         /* LCD0 */
243         GPIO_FN_LCDC0_SELECT,
244
245         /* LCD1 */
246         GPIO_FN_LCDC1_SELECT,
247
248         /* RSPI */
249         GPIO_FN_RSPI_SSL0_A,    GPIO_FN_RSPI_SSL1_A,
250         GPIO_FN_RSPI_SSL2_A,    GPIO_FN_RSPI_SSL3_A,
251         GPIO_FN_RSPI_MOSI_A,    GPIO_FN_RSPI_MISO_A,
252         GPIO_FN_RSPI_CK_A,
253
254         /* VIO CKO */
255         GPIO_FN_VIO_CKO1,
256         GPIO_FN_VIO_CKO2,
257         GPIO_FN_VIO_CKO_1,
258         GPIO_FN_VIO_CKO,
259
260         /* VIO0 */
261         GPIO_FN_VIO0_D0,        GPIO_FN_VIO0_D1,        GPIO_FN_VIO0_D2,
262         GPIO_FN_VIO0_D3,        GPIO_FN_VIO0_D4,        GPIO_FN_VIO0_D5,
263         GPIO_FN_VIO0_D6,        GPIO_FN_VIO0_D7,        GPIO_FN_VIO0_D8,
264         GPIO_FN_VIO0_D9,        GPIO_FN_VIO0_D10,       GPIO_FN_VIO0_D11,
265         GPIO_FN_VIO0_D12,       GPIO_FN_VIO0_VD,        GPIO_FN_VIO0_HD,
266         GPIO_FN_VIO0_CLK,       GPIO_FN_VIO0_FIELD,
267
268         GPIO_FN_VIO0_D13_PORT26, /* MSEL5CR_27_0 */
269         GPIO_FN_VIO0_D14_PORT25,
270         GPIO_FN_VIO0_D15_PORT24,
271
272         GPIO_FN_VIO0_D13_PORT22, /* MSEL5CR_27_1 */
273         GPIO_FN_VIO0_D14_PORT95,
274         GPIO_FN_VIO0_D15_PORT96,
275
276         /* VIO1 */
277         GPIO_FN_VIO1_D0,        GPIO_FN_VIO1_D1,        GPIO_FN_VIO1_D2,
278         GPIO_FN_VIO1_D3,        GPIO_FN_VIO1_D4,        GPIO_FN_VIO1_D5,
279         GPIO_FN_VIO1_D6,        GPIO_FN_VIO1_D7,        GPIO_FN_VIO1_VD,
280         GPIO_FN_VIO1_HD,        GPIO_FN_VIO1_CLK,       GPIO_FN_VIO1_FIELD,
281
282         /* TPU0 */
283         GPIO_FN_TPU0TO0,        GPIO_FN_TPU0TO1,
284         GPIO_FN_TPU0TO3,
285         GPIO_FN_TPU0TO2_PORT66, /* TPU0TO2 Port 66/202 */
286         GPIO_FN_TPU0TO2_PORT202,
287
288         /* SSP1 0 */
289         GPIO_FN_STP0_IPD0,      GPIO_FN_STP0_IPD1,      GPIO_FN_STP0_IPD2,
290         GPIO_FN_STP0_IPD3,      GPIO_FN_STP0_IPD4,      GPIO_FN_STP0_IPD5,
291         GPIO_FN_STP0_IPD6,      GPIO_FN_STP0_IPD7,      GPIO_FN_STP0_IPEN,
292         GPIO_FN_STP0_IPCLK,     GPIO_FN_STP0_IPSYNC,
293
294         /* SSP1 1 */
295         GPIO_FN_STP1_IPD1,      GPIO_FN_STP1_IPD2,      GPIO_FN_STP1_IPD3,
296         GPIO_FN_STP1_IPD4,      GPIO_FN_STP1_IPD5,      GPIO_FN_STP1_IPD6,
297         GPIO_FN_STP1_IPD7,      GPIO_FN_STP1_IPCLK,     GPIO_FN_STP1_IPSYNC,
298
299         GPIO_FN_STP1_IPD0_PORT186, /* MSEL5CR_23_0 */
300         GPIO_FN_STP1_IPEN_PORT187,
301
302         GPIO_FN_STP1_IPD0_PORT194, /* MSEL5CR_23_1 */
303         GPIO_FN_STP1_IPEN_PORT193,
304
305         /* SIM */
306         GPIO_FN_SIM_RST,        GPIO_FN_SIM_CLK,
307         GPIO_FN_SIM_D_PORT22, /* SIM_D  Port 22/199 */
308         GPIO_FN_SIM_D_PORT199,
309
310         /* MSIOF2 */
311         GPIO_FN_MSIOF2_TXD,     GPIO_FN_MSIOF2_RXD,     GPIO_FN_MSIOF2_TSCK,
312         GPIO_FN_MSIOF2_SS2,     GPIO_FN_MSIOF2_TSYNC,   GPIO_FN_MSIOF2_SS1,
313         GPIO_FN_MSIOF2_MCK1,    GPIO_FN_MSIOF2_MCK0,    GPIO_FN_MSIOF2_RSYNC,
314         GPIO_FN_MSIOF2_RSCK,
315
316         /* KEYSC */
317         GPIO_FN_KEYIN4,         GPIO_FN_KEYIN5,
318         GPIO_FN_KEYIN6,         GPIO_FN_KEYIN7,
319         GPIO_FN_KEYOUT0,        GPIO_FN_KEYOUT1,        GPIO_FN_KEYOUT2,
320         GPIO_FN_KEYOUT3,        GPIO_FN_KEYOUT4,        GPIO_FN_KEYOUT5,
321         GPIO_FN_KEYOUT6,        GPIO_FN_KEYOUT7,
322
323         GPIO_FN_KEYIN0_PORT43, /* MSEL4CR_18_0 */
324         GPIO_FN_KEYIN1_PORT44,
325         GPIO_FN_KEYIN2_PORT45,
326         GPIO_FN_KEYIN3_PORT46,
327
328         GPIO_FN_KEYIN0_PORT58, /* MSEL4CR_18_1 */
329         GPIO_FN_KEYIN1_PORT57,
330         GPIO_FN_KEYIN2_PORT56,
331         GPIO_FN_KEYIN3_PORT55,
332
333         /* VOU */
334         GPIO_FN_DV_D0,  GPIO_FN_DV_D1,  GPIO_FN_DV_D2,  GPIO_FN_DV_D3,
335         GPIO_FN_DV_D4,  GPIO_FN_DV_D5,  GPIO_FN_DV_D6,  GPIO_FN_DV_D7,
336         GPIO_FN_DV_D8,  GPIO_FN_DV_D9,  GPIO_FN_DV_D10, GPIO_FN_DV_D11,
337         GPIO_FN_DV_D12, GPIO_FN_DV_D13, GPIO_FN_DV_D14, GPIO_FN_DV_D15,
338         GPIO_FN_DV_CLK,
339         GPIO_FN_DV_VSYNC,
340         GPIO_FN_DV_HSYNC,
341
342         /* MEMC */
343         GPIO_FN_MEMC_AD0,       GPIO_FN_MEMC_AD1,       GPIO_FN_MEMC_AD2,
344         GPIO_FN_MEMC_AD3,       GPIO_FN_MEMC_AD4,       GPIO_FN_MEMC_AD5,
345         GPIO_FN_MEMC_AD6,       GPIO_FN_MEMC_AD7,       GPIO_FN_MEMC_AD8,
346         GPIO_FN_MEMC_AD9,       GPIO_FN_MEMC_AD10,      GPIO_FN_MEMC_AD11,
347         GPIO_FN_MEMC_AD12,      GPIO_FN_MEMC_AD13,      GPIO_FN_MEMC_AD14,
348         GPIO_FN_MEMC_AD15,      GPIO_FN_MEMC_CS0,       GPIO_FN_MEMC_INT,
349         GPIO_FN_MEMC_NWE,       GPIO_FN_MEMC_NOE,
350
351         GPIO_FN_MEMC_CS1, /* MSEL4CR_6_0 */
352         GPIO_FN_MEMC_ADV,
353         GPIO_FN_MEMC_WAIT,
354         GPIO_FN_MEMC_BUSCLK,
355
356         GPIO_FN_MEMC_A1, /* MSEL4CR_6_1 */
357         GPIO_FN_MEMC_DREQ0,
358         GPIO_FN_MEMC_DREQ1,
359         GPIO_FN_MEMC_A0,
360
361         /* MSIOF0 */
362         GPIO_FN_MSIOF0_SS1,     GPIO_FN_MSIOF0_SS2,
363         GPIO_FN_MSIOF0_RXD,     GPIO_FN_MSIOF0_TXD,
364         GPIO_FN_MSIOF0_MCK0,    GPIO_FN_MSIOF0_MCK1,
365         GPIO_FN_MSIOF0_RSYNC,   GPIO_FN_MSIOF0_RSCK,
366         GPIO_FN_MSIOF0_TSCK,    GPIO_FN_MSIOF0_TSYNC,
367
368         /* MSIOF1 */
369         GPIO_FN_MSIOF1_RSCK,    GPIO_FN_MSIOF1_RSYNC,
370         GPIO_FN_MSIOF1_MCK0,    GPIO_FN_MSIOF1_MCK1,
371
372         GPIO_FN_MSIOF1_SS2_PORT116,     GPIO_FN_MSIOF1_SS1_PORT117,
373         GPIO_FN_MSIOF1_RXD_PORT118,     GPIO_FN_MSIOF1_TXD_PORT119,
374         GPIO_FN_MSIOF1_TSYNC_PORT120,
375         GPIO_FN_MSIOF1_TSCK_PORT121,    /* MSEL4CR_10_0 */
376
377         GPIO_FN_MSIOF1_SS1_PORT67,      GPIO_FN_MSIOF1_TSCK_PORT72,
378         GPIO_FN_MSIOF1_TSYNC_PORT73,    GPIO_FN_MSIOF1_TXD_PORT74,
379         GPIO_FN_MSIOF1_RXD_PORT75,
380         GPIO_FN_MSIOF1_SS2_PORT202,     /* MSEL4CR_10_1 */
381
382         /* GPIO */
383         GPIO_FN_GPO0,   GPIO_FN_GPI0,
384         GPIO_FN_GPO1,   GPIO_FN_GPI1,
385
386         /* USB0 */
387         GPIO_FN_USB0_OCI,       GPIO_FN_USB0_PPON,      GPIO_FN_VBUS,
388
389         /* USB1 */
390         GPIO_FN_USB1_OCI,       GPIO_FN_USB1_PPON,
391
392         /* BBIF1 */
393         GPIO_FN_BBIF1_RXD,      GPIO_FN_BBIF1_TXD,      GPIO_FN_BBIF1_TSYNC,
394         GPIO_FN_BBIF1_TSCK,     GPIO_FN_BBIF1_RSCK,     GPIO_FN_BBIF1_RSYNC,
395         GPIO_FN_BBIF1_FLOW,     GPIO_FN_BBIF1_RX_FLOW_N,
396
397         /* BBIF2 */
398         GPIO_FN_BBIF2_TXD2_PORT5, /* MSEL5CR_0_0 */
399         GPIO_FN_BBIF2_RXD2_PORT60,
400         GPIO_FN_BBIF2_TSYNC2_PORT6,
401         GPIO_FN_BBIF2_TSCK2_PORT59,
402
403         GPIO_FN_BBIF2_RXD2_PORT90, /* MSEL5CR_0_1 */
404         GPIO_FN_BBIF2_TXD2_PORT183,
405         GPIO_FN_BBIF2_TSCK2_PORT89,
406         GPIO_FN_BBIF2_TSYNC2_PORT184,
407
408         /* BSC / FLCTL / PCMCIA */
409         GPIO_FN_CS0,    GPIO_FN_CS2,    GPIO_FN_CS4,
410         GPIO_FN_CS5B,   GPIO_FN_CS6A,
411         GPIO_FN_CS5A_PORT105, /* CS5A PORT 19/105 */
412         GPIO_FN_CS5A_PORT19,
413         GPIO_FN_IOIS16, /* ? */
414
415         GPIO_FN_A0,     GPIO_FN_A1,     GPIO_FN_A2,     GPIO_FN_A3,
416         GPIO_FN_A4_FOE,         /* share with FLCTL */
417         GPIO_FN_A5_FCDE,        /* share with FLCTL */
418         GPIO_FN_A6,     GPIO_FN_A7,     GPIO_FN_A8,     GPIO_FN_A9,
419         GPIO_FN_A10,    GPIO_FN_A11,    GPIO_FN_A12,    GPIO_FN_A13,
420         GPIO_FN_A14,    GPIO_FN_A15,    GPIO_FN_A16,    GPIO_FN_A17,
421         GPIO_FN_A18,    GPIO_FN_A19,    GPIO_FN_A20,    GPIO_FN_A21,
422         GPIO_FN_A22,    GPIO_FN_A23,    GPIO_FN_A24,    GPIO_FN_A25,
423         GPIO_FN_A26,
424
425         GPIO_FN_D0_NAF0,        GPIO_FN_D1_NAF1,        /* share with FLCTL */
426         GPIO_FN_D2_NAF2,        GPIO_FN_D3_NAF3,        /* share with FLCTL */
427         GPIO_FN_D4_NAF4,        GPIO_FN_D5_NAF5,        /* share with FLCTL */
428         GPIO_FN_D6_NAF6,        GPIO_FN_D7_NAF7,        /* share with FLCTL */
429         GPIO_FN_D8_NAF8,        GPIO_FN_D9_NAF9,        /* share with FLCTL */
430         GPIO_FN_D10_NAF10,      GPIO_FN_D11_NAF11,      /* share with FLCTL */
431         GPIO_FN_D12_NAF12,      GPIO_FN_D13_NAF13,      /* share with FLCTL */
432         GPIO_FN_D14_NAF14,      GPIO_FN_D15_NAF15,      /* share with FLCTL */
433
434         GPIO_FN_D16,    GPIO_FN_D17,    GPIO_FN_D18,    GPIO_FN_D19,
435         GPIO_FN_D20,    GPIO_FN_D21,    GPIO_FN_D22,    GPIO_FN_D23,
436         GPIO_FN_D24,    GPIO_FN_D25,    GPIO_FN_D26,    GPIO_FN_D27,
437         GPIO_FN_D28,    GPIO_FN_D29,    GPIO_FN_D30,    GPIO_FN_D31,
438
439         GPIO_FN_WE0_FWE,        /* share with FLCTL */
440         GPIO_FN_WE1,
441         GPIO_FN_WE2_ICIORD,     /* share with PCMCIA */
442         GPIO_FN_WE3_ICIOWR,     /* share with PCMCIA */
443         GPIO_FN_CKO,    GPIO_FN_BS,     GPIO_FN_RDWR,
444         GPIO_FN_RD_FSC,         /* share with FLCTL */
445         GPIO_FN_WAIT_PORT177,   /* WAIT Port 90/177 */
446         GPIO_FN_WAIT_PORT90,
447
448         GPIO_FN_FCE0,   GPIO_FN_FCE1,   GPIO_FN_FRB, /* FLCTL */
449
450         /* IRDA */
451         GPIO_FN_IRDA_FIRSEL,    GPIO_FN_IRDA_IN,        GPIO_FN_IRDA_OUT,
452
453         /* ATAPI */
454         GPIO_FN_IDE_D0,         GPIO_FN_IDE_D1,         GPIO_FN_IDE_D2,
455         GPIO_FN_IDE_D3,         GPIO_FN_IDE_D4,         GPIO_FN_IDE_D5,
456         GPIO_FN_IDE_D6,         GPIO_FN_IDE_D7,         GPIO_FN_IDE_D8,
457         GPIO_FN_IDE_D9,         GPIO_FN_IDE_D10,        GPIO_FN_IDE_D11,
458         GPIO_FN_IDE_D12,        GPIO_FN_IDE_D13,        GPIO_FN_IDE_D14,
459         GPIO_FN_IDE_D15,        GPIO_FN_IDE_A0,         GPIO_FN_IDE_A1,
460         GPIO_FN_IDE_A2,         GPIO_FN_IDE_CS0,        GPIO_FN_IDE_CS1,
461         GPIO_FN_IDE_IOWR,       GPIO_FN_IDE_IORD,       GPIO_FN_IDE_IORDY,
462         GPIO_FN_IDE_INT,        GPIO_FN_IDE_RST,        GPIO_FN_IDE_DIRECTION,
463         GPIO_FN_IDE_EXBUF_ENB,  GPIO_FN_IDE_IODACK,     GPIO_FN_IDE_IODREQ,
464
465         /* RMII */
466         GPIO_FN_RMII_CRS_DV,    GPIO_FN_RMII_RX_ER,     GPIO_FN_RMII_RXD0,
467         GPIO_FN_RMII_RXD1,      GPIO_FN_RMII_TX_EN,     GPIO_FN_RMII_TXD0,
468         GPIO_FN_RMII_MDC,       GPIO_FN_RMII_TXD1,      GPIO_FN_RMII_MDIO,
469         GPIO_FN_RMII_REF50CK,   /* for RMII */
470         GPIO_FN_RMII_REF125CK,  /* for GMII */
471
472         /* GEther */
473         GPIO_FN_ET_TX_CLK,      GPIO_FN_ET_TX_EN,       GPIO_FN_ET_ETXD0,
474         GPIO_FN_ET_ETXD1,       GPIO_FN_ET_ETXD2,       GPIO_FN_ET_ETXD3,
475         GPIO_FN_ET_ETXD4,       GPIO_FN_ET_ETXD5, /* for GEther */
476         GPIO_FN_ET_ETXD6,       GPIO_FN_ET_ETXD7, /* for GEther */
477         GPIO_FN_ET_COL,         GPIO_FN_ET_TX_ER,
478         GPIO_FN_ET_RX_CLK,      GPIO_FN_ET_RX_DV,
479         GPIO_FN_ET_ERXD0,       GPIO_FN_ET_ERXD1,
480         GPIO_FN_ET_ERXD2,       GPIO_FN_ET_ERXD3,
481         GPIO_FN_ET_ERXD4,       GPIO_FN_ET_ERXD5, /* for GEther */
482         GPIO_FN_ET_ERXD6,       GPIO_FN_ET_ERXD7, /* for GEther */
483         GPIO_FN_ET_RX_ER,       GPIO_FN_ET_CRS,
484         GPIO_FN_ET_MDC,         GPIO_FN_ET_MDIO,
485         GPIO_FN_ET_LINK,        GPIO_FN_ET_PHY_INT,
486         GPIO_FN_ET_WOL,         GPIO_FN_ET_GTX_CLK,
487
488         /* DMA0 */
489         GPIO_FN_DREQ0,          GPIO_FN_DACK0,
490
491         /* DMA1 */
492         GPIO_FN_DREQ1,          GPIO_FN_DACK1,
493
494         /* SYSC */
495         GPIO_FN_RESETOUTS,
496         GPIO_FN_RESETP_PULLUP,
497         GPIO_FN_RESETP_PLAIN,
498
499         /* HDMI */
500         GPIO_FN_HDMI_HPD,
501         GPIO_FN_HDMI_CEC,
502
503         /* SDENC */
504         GPIO_FN_SDENC_CPG,
505         GPIO_FN_SDENC_DV_CLKI,
506
507         /* IRREM */
508         GPIO_FN_IROUT,
509
510         /* DEBUG */
511         GPIO_FN_EDEBGREQ_PULLDOWN,
512         GPIO_FN_EDEBGREQ_PULLUP,
513
514         GPIO_FN_TRACEAUD_FROM_VIO,
515         GPIO_FN_TRACEAUD_FROM_LCDC0,
516         GPIO_FN_TRACEAUD_FROM_MEMC,
517 };
518
519 /* DMA slave IDs */
520 enum {
521         SHDMA_SLAVE_INVALID,
522         SHDMA_SLAVE_SDHI0_RX,
523         SHDMA_SLAVE_SDHI0_TX,
524         SHDMA_SLAVE_SDHI1_RX,
525         SHDMA_SLAVE_SDHI1_TX,
526         SHDMA_SLAVE_SDHI2_RX,
527         SHDMA_SLAVE_SDHI2_TX,
528         SHDMA_SLAVE_FSIA_RX,
529         SHDMA_SLAVE_FSIA_TX,
530         SHDMA_SLAVE_FSIB_TX,
531         SHDMA_SLAVE_USBHS_TX,
532         SHDMA_SLAVE_USBHS_RX,
533 };
534
535 extern void r8a7740_meram_workaround(void);
536 extern void r8a7740_init_irq(void);
537 extern void r8a7740_map_io(void);
538 extern void r8a7740_add_early_devices(void);
539 extern void r8a7740_add_standard_devices(void);
540 extern void r8a7740_clock_init(u8 md_ck);
541 extern void r8a7740_pinmux_init(void);
542 extern void r8a7740_pm_init(void);
543
544 #ifdef CONFIG_PM
545 extern void __init r8a7740_init_pm_domains(void);
546 #else
547 static inline void r8a7740_init_pm_domains(void) {}
548 #endif /* CONFIG_PM */
549
550 #endif /* __ASM_R8A7740_H__ */