.. | .. |
---|
2 | 2 | #ifndef _ASM_X86_UV_UV_H |
---|
3 | 3 | #define _ASM_X86_UV_UV_H |
---|
4 | 4 | |
---|
5 | | -#include <asm/tlbflush.h> |
---|
6 | | - |
---|
7 | | -enum uv_system_type {UV_NONE, UV_LEGACY_APIC, UV_X2APIC, UV_NON_UNIQUE_APIC}; |
---|
8 | | - |
---|
9 | | -struct cpumask; |
---|
10 | | -struct mm_struct; |
---|
| 5 | +enum uv_system_type {UV_NONE, UV_LEGACY_APIC, UV_X2APIC}; |
---|
11 | 6 | |
---|
12 | 7 | #ifdef CONFIG_X86_UV |
---|
13 | 8 | #include <linux/efi.h> |
---|
14 | 9 | |
---|
| 10 | +#define UV_PROC_NODE "sgi_uv" |
---|
| 11 | + |
---|
| 12 | +static inline int uv(int uvtype) |
---|
| 13 | +{ |
---|
| 14 | + /* uv(0) is "any" */ |
---|
| 15 | + if (uvtype >= 0 && uvtype <= 30) |
---|
| 16 | + return 1 << uvtype; |
---|
| 17 | + return 1; |
---|
| 18 | +} |
---|
| 19 | + |
---|
| 20 | +extern unsigned long uv_systab_phys; |
---|
| 21 | + |
---|
15 | 22 | extern enum uv_system_type get_uv_system_type(void); |
---|
16 | 23 | static inline bool is_early_uv_system(void) |
---|
17 | 24 | { |
---|
18 | | - return !((efi.uv_systab == EFI_INVALID_TABLE_ADDR) || !efi.uv_systab); |
---|
| 25 | + return uv_systab_phys && uv_systab_phys != EFI_INVALID_TABLE_ADDR; |
---|
19 | 26 | } |
---|
20 | 27 | extern int is_uv_system(void); |
---|
21 | | -extern int is_uv_hubless(void); |
---|
| 28 | +extern int is_uv_hubbed(int uvtype); |
---|
22 | 29 | extern void uv_cpu_init(void); |
---|
23 | 30 | extern void uv_nmi_init(void); |
---|
24 | 31 | extern void uv_system_init(void); |
---|
25 | | -extern const struct cpumask *uv_flush_tlb_others(const struct cpumask *cpumask, |
---|
26 | | - const struct flush_tlb_info *info); |
---|
27 | 32 | |
---|
28 | | -#else /* X86_UV */ |
---|
| 33 | +#else /* !X86_UV */ |
---|
29 | 34 | |
---|
30 | 35 | static inline enum uv_system_type get_uv_system_type(void) { return UV_NONE; } |
---|
31 | 36 | static inline bool is_early_uv_system(void) { return 0; } |
---|
32 | 37 | static inline int is_uv_system(void) { return 0; } |
---|
33 | | -static inline int is_uv_hubless(void) { return 0; } |
---|
| 38 | +static inline int is_uv_hubbed(int uv) { return 0; } |
---|
34 | 39 | static inline void uv_cpu_init(void) { } |
---|
35 | 40 | static inline void uv_system_init(void) { } |
---|
36 | | -static inline const struct cpumask * |
---|
37 | | -uv_flush_tlb_others(const struct cpumask *cpumask, |
---|
38 | | - const struct flush_tlb_info *info) |
---|
39 | | -{ return cpumask; } |
---|
40 | 41 | |
---|
41 | 42 | #endif /* X86_UV */ |
---|
42 | 43 | |
---|