Merge tag 'ntb-3.13' of git://github.com/jonmason/ntb
[linux-drm-fsl-dcu.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 sirfsoc_restart(enum reboot_mode, const char *);
27 extern asmlinkage void __exception_irq_entry sirfsoc_handle_irq(struct pt_regs *regs);
28
29 #ifndef CONFIG_DEBUG_LL
30 static inline void sirfsoc_map_lluart(void)  {}
31 #else
32 extern void __init sirfsoc_map_lluart(void);
33 #endif
34
35 #ifndef CONFIG_SMP
36 static inline void sirfsoc_map_scu(void) {}
37 #else
38 extern void sirfsoc_map_scu(void);
39 #endif
40
41 #ifdef CONFIG_SUSPEND
42 extern int sirfsoc_pm_init(void);
43 #else
44 static inline int sirfsoc_pm_init(void) { return 0; }
45 #endif
46
47 #endif