Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 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> |
Robin Holt | 7b6d864 | 2013-07-08 16:01:40 -0700 | [diff] [blame] | 13 | #include <linux/reboot.h> |
| 14 | |
Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 15 | #include <asm/mach/time.h> |
Barry Song | f2a9419 | 2012-12-20 19:11:18 +0800 | [diff] [blame] | 16 | #include <asm/exception.h> |
Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 17 | |
Arnd Bergmann | cf82e0e | 2013-03-19 17:45:37 +0100 | [diff] [blame] | 18 | #define SIRFSOC_VA_BASE _AC(0xFEC00000, UL) |
| 19 | #define SIRFSOC_VA(x) (SIRFSOC_VA_BASE + ((x) & 0x00FFF000)) |
| 20 | |
Barry Song | 4898de3 | 2012-12-20 19:37:32 +0800 | [diff] [blame] | 21 | extern struct smp_operations sirfsoc_smp_ops; |
| 22 | extern void sirfsoc_secondary_startup(void); |
| 23 | extern void sirfsoc_cpu_die(unsigned int cpu); |
Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 24 | |
| 25 | extern void __init sirfsoc_of_irq_init(void); |
Robin Holt | 7b6d864 | 2013-07-08 16:01:40 -0700 | [diff] [blame] | 26 | extern void sirfsoc_restart(enum reboot_mode, const char *); |
Barry Song | f2a9419 | 2012-12-20 19:11:18 +0800 | [diff] [blame] | 27 | extern asmlinkage void __exception_irq_entry sirfsoc_handle_irq(struct pt_regs *regs); |
Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 28 | |
Barry Song | 31adb06 | 2011-07-08 02:40:13 -0700 | [diff] [blame] | 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 | |
Barry Song | 4898de3 | 2012-12-20 19:37:32 +0800 | [diff] [blame] | 35 | #ifndef CONFIG_SMP |
| 36 | static inline void sirfsoc_map_scu(void) {} |
| 37 | #else |
| 38 | extern void sirfsoc_map_scu(void); |
| 39 | #endif |
| 40 | |
Shawn Guo | a4b4674 | 2012-04-26 20:51:36 +0800 | [diff] [blame] | 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 | |
Binghua Duan | 02c981c | 2011-07-08 17:40:12 +0800 | [diff] [blame] | 47 | #endif |