Commit | Line | Data |
---|---|---|
c793c1b0 MD |
1 | #ifndef __ARCH_MACH_COMMON_H |
2 | #define __ARCH_MACH_COMMON_H | |
3 | ||
08ad42fb | 4 | extern void shmobile_earlytimer_init(void); |
6bb27d73 | 5 | extern void shmobile_timer_init(void); |
0f2c9f20 | 6 | extern void shmobile_setup_delay(unsigned int max_cpu_core_mhz, |
a62580e5 | 7 | unsigned int mult, unsigned int div); |
4200b16d | 8 | struct twd_local_timer; |
4ae04acb | 9 | extern void shmobile_setup_console(void); |
1c51ed4f | 10 | extern void shmobile_secondary_vector(void); |
83ca5c87 | 11 | struct clk; |
6b6a4c06 | 12 | extern int shmobile_clk_init(void); |
863b1719 | 13 | extern void shmobile_handle_irq_intc(struct pt_regs *); |
c3dada18 | 14 | extern struct platform_suspend_ops shmobile_suspend_ops; |
b73b5c49 | 15 | struct cpuidle_driver; |
5b41147c RW |
16 | struct cpuidle_device; |
17 | extern int shmobile_enter_wfi(struct cpuidle_device *dev, | |
18 | struct cpuidle_driver *drv, int index); | |
19 | extern void shmobile_cpuidle_set_driver(struct cpuidle_driver *drv); | |
e47bb515 | 20 | |
2b7eda63 | 21 | extern void sh7372_init_irq(void); |
5d7220ec | 22 | extern void sh7372_map_io(void); |
6bb27d73 | 23 | extern void sh7372_earlytimer_init(void); |
2b7eda63 MD |
24 | extern void sh7372_add_early_devices(void); |
25 | extern void sh7372_add_standard_devices(void); | |
8a21cdae GL |
26 | extern void sh7372_add_early_devices_dt(void); |
27 | extern void sh7372_add_standard_devices_dt(void); | |
495b3cea | 28 | extern void sh7372_clock_init(void); |
b789b3fd | 29 | extern void sh7372_pinmux_init(void); |
97991657 | 30 | extern void sh7372_pm_init(void); |
f7dadb37 MD |
31 | extern void sh7372_resume_core_standby_sysc(void); |
32 | extern int sh7372_do_idle_sysc(unsigned long sleep_mode); | |
83ca5c87 MD |
33 | extern struct clk sh7372_extal1_clk; |
34 | extern struct clk sh7372_extal2_clk; | |
2b7eda63 | 35 | |
5f53a56a | 36 | extern void sh73a0_init_irq(void); |
a3f22db5 | 37 | extern void sh73a0_init_irq_dt(void); |
50e15c34 | 38 | extern void sh73a0_map_io(void); |
6bb27d73 | 39 | extern void sh73a0_earlytimer_init(void); |
6d9598e2 | 40 | extern void sh73a0_add_early_devices(void); |
48609533 | 41 | extern void sh73a0_add_early_devices_dt(void); |
6d9598e2 | 42 | extern void sh73a0_add_standard_devices(void); |
48609533 | 43 | extern void sh73a0_add_standard_devices_dt(void); |
6d9598e2 | 44 | extern void sh73a0_clock_init(void); |
1cdf3702 | 45 | extern void sh73a0_pinmux_init(void); |
13baf88b | 46 | extern void sh73a0_pm_init(void); |
33419a69 | 47 | extern void sh73a0_secondary_vector(void); |
f6d84f4a MD |
48 | extern struct clk sh73a0_extal1_clk; |
49 | extern struct clk sh73a0_extal2_clk; | |
d4775356 KM |
50 | extern struct clk sh73a0_extcki_clk; |
51 | extern struct clk sh73a0_extalr_clk; | |
6d9598e2 | 52 | |
6c01ba44 | 53 | extern void r8a7740_init_irq(void); |
d3ab7221 | 54 | extern void r8a7740_map_io(void); |
6c01ba44 KM |
55 | extern void r8a7740_add_early_devices(void); |
56 | extern void r8a7740_add_standard_devices(void); | |
57 | extern void r8a7740_clock_init(u8 md_ck); | |
58 | extern void r8a7740_pinmux_init(void); | |
895d3b53 | 59 | extern void r8a7740_pm_init(void); |
6c01ba44 | 60 | |
f411fade | 61 | extern void r8a7779_init_irq(void); |
3e353b87 | 62 | extern void r8a7779_map_io(void); |
6bb27d73 | 63 | extern void r8a7779_earlytimer_init(void); |
f411fade MD |
64 | extern void r8a7779_add_early_devices(void); |
65 | extern void r8a7779_add_standard_devices(void); | |
66 | extern void r8a7779_clock_init(void); | |
19c43fc5 | 67 | extern void r8a7779_pinmux_init(void); |
a662c082 | 68 | extern void r8a7779_pm_init(void); |
d49679e5 | 69 | extern void r8a7740_meram_workaround(void); |
f411fade | 70 | |
b759bd11 | 71 | extern void r8a7779_register_twd(void); |
f40aaf6d | 72 | |
21cc1b7e SG |
73 | #ifdef CONFIG_SUSPEND |
74 | int shmobile_suspend_init(void); | |
75 | #else | |
76 | static inline int shmobile_suspend_init(void) { return 0; } | |
77 | #endif | |
78 | ||
79 | #ifdef CONFIG_CPU_IDLE | |
80 | int shmobile_cpuidle_init(void); | |
81 | #else | |
82 | static inline int shmobile_cpuidle_init(void) { return 0; } | |
83 | #endif | |
84 | ||
a62580e5 MZ |
85 | extern void shmobile_cpu_die(unsigned int cpu); |
86 | extern int shmobile_cpu_disable(unsigned int cpu); | |
0f234d91 | 87 | extern int shmobile_cpu_disable_any(unsigned int cpu); |
a62580e5 MZ |
88 | |
89 | #ifdef CONFIG_HOTPLUG_CPU | |
90 | extern int shmobile_cpu_is_dead(unsigned int cpu); | |
91 | #else | |
92 | static inline int shmobile_cpu_is_dead(unsigned int cpu) { return 1; } | |
93 | #endif | |
94 | ||
95 | extern void shmobile_smp_init_cpus(unsigned int ncores); | |
96 | ||
b3796d92 | 97 | static inline void __init shmobile_init_late(void) |
35f2b0bd RW |
98 | { |
99 | shmobile_suspend_init(); | |
100 | shmobile_cpuidle_init(); | |
101 | } | |
102 | ||
c793c1b0 | 103 | #endif /* __ARCH_MACH_COMMON_H */ |