Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 1 | #ifndef _ASM_X86_UV_UV_H |
| 2 | #define _ASM_X86_UV_UV_H |
| 3 | |
| 4 | enum uv_system_type {UV_NONE, UV_LEGACY_APIC, UV_X2APIC, UV_NON_UNIQUE_APIC}; |
| 5 | |
Randy Dunlap | 58105ef | 2009-01-31 12:32:26 -0800 | [diff] [blame] | 6 | struct cpumask; |
| 7 | struct mm_struct; |
| 8 | |
Nick Piggin | 03b4863 | 2009-01-20 04:36:04 +0100 | [diff] [blame] | 9 | #ifdef CONFIG_X86_UV |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 10 | |
| 11 | extern enum uv_system_type get_uv_system_type(void); |
| 12 | extern int is_uv_system(void); |
| 13 | extern void uv_cpu_init(void); |
Russ Anderson | 78c0617 | 2010-02-26 10:49:12 -0600 | [diff] [blame] | 14 | extern void uv_nmi_init(void); |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 15 | extern void uv_system_init(void); |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 16 | extern const struct cpumask *uv_flush_tlb_others(const struct cpumask *cpumask, |
| 17 | struct mm_struct *mm, |
| 18 | unsigned long va, |
| 19 | unsigned int cpu); |
| 20 | |
Nick Piggin | 03b4863 | 2009-01-20 04:36:04 +0100 | [diff] [blame] | 21 | #else /* X86_UV */ |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 22 | |
| 23 | static inline enum uv_system_type get_uv_system_type(void) { return UV_NONE; } |
| 24 | static inline int is_uv_system(void) { return 0; } |
| 25 | static inline void uv_cpu_init(void) { } |
| 26 | static inline void uv_system_init(void) { } |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 27 | static inline const struct cpumask * |
| 28 | uv_flush_tlb_others(const struct cpumask *cpumask, struct mm_struct *mm, |
| 29 | unsigned long va, unsigned int cpu) |
| 30 | { return cpumask; } |
| 31 | |
Nick Piggin | 03b4863 | 2009-01-20 04:36:04 +0100 | [diff] [blame] | 32 | #endif /* X86_UV */ |
Tejun Heo | bdbcdd4 | 2009-01-21 17:26:06 +0900 | [diff] [blame] | 33 | |
| 34 | #endif /* _ASM_X86_UV_UV_H */ |