diff options
author | Dean Nelson <dcn@sgi.com> | 2008-07-30 01:34:16 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-30 12:41:50 -0400 |
commit | 261f3b4979db88d29fc86aad9f76fbc0c2c6d21a (patch) | |
tree | 1cd1012b3ab52747a12e47f630b864d27af0bdf5 /drivers/misc/sgi-xp/xp.h | |
parent | 81fe7883d2c8a80a7145ad22f8cd8514d05412b9 (diff) |
sgi-xp: enable building of XPC/XPNET on x86_64
Get XPC/XPNET to build on x86_64. Trying to modprobe them up on a non-UV
or sn2 system will result in a -ENODEV.
Signed-off-by: Dean Nelson <dcn@sgi.com>
Cc: Jack Steiner <steiner@sgi.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/misc/sgi-xp/xp.h')
-rw-r--r-- | drivers/misc/sgi-xp/xp.h | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/drivers/misc/sgi-xp/xp.h b/drivers/misc/sgi-xp/xp.h index 3054fae8b023..01bf1a2cd8ed 100644 --- a/drivers/misc/sgi-xp/xp.h +++ b/drivers/misc/sgi-xp/xp.h | |||
@@ -13,18 +13,17 @@ | |||
13 | #ifndef _DRIVERS_MISC_SGIXP_XP_H | 13 | #ifndef _DRIVERS_MISC_SGIXP_XP_H |
14 | #define _DRIVERS_MISC_SGIXP_XP_H | 14 | #define _DRIVERS_MISC_SGIXP_XP_H |
15 | 15 | ||
16 | #include <linux/cache.h> | ||
17 | #include <linux/hardirq.h> | ||
18 | #include <linux/mutex.h> | 16 | #include <linux/mutex.h> |
19 | #include <asm/sn/types.h> | 17 | |
20 | #ifdef CONFIG_IA64 | 18 | #ifdef CONFIG_IA64 |
21 | #include <asm/sn/arch.h> | 19 | #include <asm/system.h> |
20 | #include <asm/sn/arch.h> /* defines is_shub1() and is_shub2() */ | ||
21 | #define is_shub() ia64_platform_is("sn2") | ||
22 | #define is_uv() ia64_platform_is("uv") | ||
22 | #endif | 23 | #endif |
23 | 24 | #ifdef CONFIG_X86_64 | |
24 | #ifdef USE_DBUG_ON | 25 | #include <asm/genapic.h> |
25 | #define DBUG_ON(condition) BUG_ON(condition) | 26 | #define is_uv() is_uv_system() |
26 | #else | ||
27 | #define DBUG_ON(condition) | ||
28 | #endif | 27 | #endif |
29 | 28 | ||
30 | #ifndef is_shub1 | 29 | #ifndef is_shub1 |
@@ -36,13 +35,19 @@ | |||
36 | #endif | 35 | #endif |
37 | 36 | ||
38 | #ifndef is_shub | 37 | #ifndef is_shub |
39 | #define is_shub() (is_shub1() || is_shub2()) | 38 | #define is_shub() 0 |
40 | #endif | 39 | #endif |
41 | 40 | ||
42 | #ifndef is_uv | 41 | #ifndef is_uv |
43 | #define is_uv() 0 | 42 | #define is_uv() 0 |
44 | #endif | 43 | #endif |
45 | 44 | ||
45 | #ifdef USE_DBUG_ON | ||
46 | #define DBUG_ON(condition) BUG_ON(condition) | ||
47 | #else | ||
48 | #define DBUG_ON(condition) | ||
49 | #endif | ||
50 | |||
46 | /* | 51 | /* |
47 | * Define the maximum number of partitions the system can possibly support. | 52 | * Define the maximum number of partitions the system can possibly support. |
48 | * It is based on the maximum number of hardware partitionable regions. The | 53 | * It is based on the maximum number of hardware partitionable regions. The |
@@ -200,7 +205,9 @@ enum xp_retval { | |||
200 | xpPayloadTooBig, /* 55: payload too large for message slot */ | 205 | xpPayloadTooBig, /* 55: payload too large for message slot */ |
201 | 206 | ||
202 | xpUnsupported, /* 56: unsupported functionality or resource */ | 207 | xpUnsupported, /* 56: unsupported functionality or resource */ |
203 | xpUnknownReason /* 57: unknown reason - must be last in enum */ | 208 | xpNeedMoreInfo, /* 57: more info is needed by SAL */ |
209 | |||
210 | xpUnknownReason /* 58: unknown reason - must be last in enum */ | ||
204 | }; | 211 | }; |
205 | 212 | ||
206 | /* | 213 | /* |
@@ -339,8 +346,11 @@ xpc_partid_to_nasids(short partid, void *nasids) | |||
339 | } | 346 | } |
340 | 347 | ||
341 | extern short xp_max_npartitions; | 348 | extern short xp_max_npartitions; |
349 | extern short xp_partition_id; | ||
350 | extern u8 xp_region_size; | ||
342 | 351 | ||
343 | extern enum xp_retval (*xp_remote_memcpy) (void *, const void *, size_t); | 352 | extern enum xp_retval (*xp_remote_memcpy) (void *, const void *, size_t); |
353 | extern int (*xp_cpu_to_nasid) (int); | ||
344 | 354 | ||
345 | extern u64 xp_nofault_PIOR_target; | 355 | extern u64 xp_nofault_PIOR_target; |
346 | extern int xp_nofault_PIOR(void *); | 356 | extern int xp_nofault_PIOR(void *); |