Merge remote-tracking branch 'asoc/fix/wm8994' into asoc-linus
[cascardo/linux.git] / arch / arm / mach-prima2 / common.h
1 /*
2  * This file contains common function prototypes to avoid externs in the c files.
3  *
4  * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company.
5  *
6  * Licensed under GPLv2 or later.
7  */
8
9 #ifndef __MACH_PRIMA2_COMMON_H__
10 #define __MACH_PRIMA2_COMMON_H__
11
12 #include <linux/init.h>
13 #include <linux/reboot.h>
14
15 #include <asm/mach/time.h>
16 #include <asm/exception.h>
17
18 #define SIRFSOC_VA_BASE         _AC(0xFEC00000, UL)
19 #define SIRFSOC_VA(x)           (SIRFSOC_VA_BASE + ((x) & 0x00FFF000))
20
21 extern struct smp_operations   sirfsoc_smp_ops;
22 extern void sirfsoc_secondary_startup(void);
23 extern void sirfsoc_cpu_die(unsigned int cpu);
24
25 extern void __init sirfsoc_of_irq_init(void);
26 extern void __init sirfsoc_of_clk_init(void);
27 extern void sirfsoc_restart(enum reboot_mode, const char *);
28 extern asmlinkage void __exception_irq_entry sirfsoc_handle_irq(struct pt_regs *regs);
29
30 #ifndef CONFIG_DEBUG_LL
31 static inline void sirfsoc_map_lluart(void)  {}
32 #else
33 extern void __init sirfsoc_map_lluart(void);
34 #endif
35
36 #ifndef CONFIG_SMP
37 static inline void sirfsoc_map_scu(void) {}
38 #else
39 extern void sirfsoc_map_scu(void);
40 #endif
41
42 #ifdef CONFIG_SUSPEND
43 extern int sirfsoc_pm_init(void);
44 #else
45 static inline int sirfsoc_pm_init(void) { return 0; }
46 #endif
47
48 #endif