Merge git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth
[platform/adaptation/renesas_rcar/renesas_kernel.git] / arch / arm / mach-shmobile / include / mach / sh73a0.h
1 #ifndef __ASM_SH73A0_H__
2 #define __ASM_SH73A0_H__
3
4 #define GPIO_NR                 310
5
6 /* DMA slave IDs */
7 enum {
8         SHDMA_SLAVE_INVALID,
9         SHDMA_SLAVE_SCIF0_TX,
10         SHDMA_SLAVE_SCIF0_RX,
11         SHDMA_SLAVE_SCIF1_TX,
12         SHDMA_SLAVE_SCIF1_RX,
13         SHDMA_SLAVE_SCIF2_TX,
14         SHDMA_SLAVE_SCIF2_RX,
15         SHDMA_SLAVE_SCIF3_TX,
16         SHDMA_SLAVE_SCIF3_RX,
17         SHDMA_SLAVE_SCIF4_TX,
18         SHDMA_SLAVE_SCIF4_RX,
19         SHDMA_SLAVE_SCIF5_TX,
20         SHDMA_SLAVE_SCIF5_RX,
21         SHDMA_SLAVE_SCIF6_TX,
22         SHDMA_SLAVE_SCIF6_RX,
23         SHDMA_SLAVE_SCIF7_TX,
24         SHDMA_SLAVE_SCIF7_RX,
25         SHDMA_SLAVE_SCIF8_TX,
26         SHDMA_SLAVE_SCIF8_RX,
27         SHDMA_SLAVE_SDHI0_TX,
28         SHDMA_SLAVE_SDHI0_RX,
29         SHDMA_SLAVE_SDHI1_TX,
30         SHDMA_SLAVE_SDHI1_RX,
31         SHDMA_SLAVE_SDHI2_TX,
32         SHDMA_SLAVE_SDHI2_RX,
33         SHDMA_SLAVE_MMCIF_TX,
34         SHDMA_SLAVE_MMCIF_RX,
35         SHDMA_SLAVE_FSI2A_TX,
36         SHDMA_SLAVE_FSI2A_RX,
37         SHDMA_SLAVE_FSI2B_TX,
38         SHDMA_SLAVE_FSI2B_RX,
39         SHDMA_SLAVE_FSI2C_TX,
40         SHDMA_SLAVE_FSI2C_RX,
41         SHDMA_SLAVE_FSI2D_RX,
42 };
43
44 /*
45  *              SH73A0 IRQ LOCATION TABLE
46  *
47  * 416  -----------------------------------------
48  *              IRQ0-IRQ15
49  * 431  -----------------------------------------
50  * ...
51  * 448  -----------------------------------------
52  *              sh73a0-intcs
53  *              sh73a0-intca-irq-pins
54  * 680  -----------------------------------------
55  * ...
56  * 700  -----------------------------------------
57  *              sh73a0-pint0
58  * 731  -----------------------------------------
59  * 732  -----------------------------------------
60  *              sh73a0-pint1
61  * 739  -----------------------------------------
62  * ...
63  * 800  -----------------------------------------
64  *              IRQ16-IRQ31
65  * 815  -----------------------------------------
66  * ...
67  * 928  -----------------------------------------
68  *              sh73a0-intca-irq-pins
69  * 943  -----------------------------------------
70  */
71
72 /* PINT interrupts are located at Linux IRQ 700 and up */
73 #define SH73A0_PINT0_IRQ(irq) ((irq) + 700)
74 #define SH73A0_PINT1_IRQ(irq) ((irq) + 732)
75
76 extern void sh73a0_init_delay(void);
77 extern void sh73a0_init_irq(void);
78 extern void sh73a0_init_irq_dt(void);
79 extern void sh73a0_map_io(void);
80 extern void sh73a0_earlytimer_init(void);
81 extern void sh73a0_add_early_devices(void);
82 extern void sh73a0_add_standard_devices(void);
83 extern void sh73a0_add_standard_devices_dt(void);
84 extern void sh73a0_clock_init(void);
85 extern void sh73a0_pinmux_init(void);
86 extern void sh73a0_pm_init(void);
87 extern struct clk sh73a0_extal1_clk;
88 extern struct clk sh73a0_extal2_clk;
89 extern struct clk sh73a0_extcki_clk;
90 extern struct clk sh73a0_extalr_clk;
91 extern struct smp_operations sh73a0_smp_ops;
92
93 #endif /* __ASM_SH73A0_H__ */