| .. | .. | 
|---|
| 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 |   | 
|---|