common.h 1.3 KB
Newer Older
1 2 3
#ifndef __ARCH_MACH_COMMON_H
#define __ARCH_MACH_COMMON_H

4
extern void shmobile_earlytimer_init(void);
S
Stephen Warren 已提交
5
extern void shmobile_timer_init(void);
6
extern void shmobile_setup_delay(unsigned int max_cpu_core_mhz,
7
			 unsigned int mult, unsigned int div);
8
struct twd_local_timer;
9
extern void shmobile_setup_console(void);
M
Magnus Damm 已提交
10
extern void shmobile_secondary_vector(void);
11
extern void shmobile_secondary_vector_scu(void);
12
struct clk;
13
extern int shmobile_clk_init(void);
14
extern void shmobile_handle_irq_intc(struct pt_regs *);
15
extern struct platform_suspend_ops shmobile_suspend_ops;
16
struct cpuidle_driver;
17 18 19 20
struct cpuidle_device;
extern int shmobile_enter_wfi(struct cpuidle_device *dev,
			      struct cpuidle_driver *drv, int index);
extern void shmobile_cpuidle_set_driver(struct cpuidle_driver *drv);
21

22 23 24 25 26 27 28 29 30 31 32 33
#ifdef CONFIG_SUSPEND
int shmobile_suspend_init(void);
#else
static inline int shmobile_suspend_init(void) { return 0; }
#endif

#ifdef CONFIG_CPU_IDLE
int shmobile_cpuidle_init(void);
#else
static inline int shmobile_cpuidle_init(void) { return 0; }
#endif

34
extern void __iomem *shmobile_scu_base;
35 36
extern void shmobile_smp_init_cpus(unsigned int ncores);

37
static inline void __init shmobile_init_late(void)
38 39 40 41 42
{
	shmobile_suspend_init();
	shmobile_cpuidle_init();
}

43
#endif /* __ARCH_MACH_COMMON_H */