Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / include / asm-ia64 / sn / sn_sal.h
index ba826b3..51aca02 100644 (file)
@@ -12,6 +12,7 @@
  */
 
 
+#include <linux/config.h>
 #include <asm/sal.h>
 #include <asm/sn/sn_cpuid.h>
 #include <asm/sn/arch.h>
@@ -85,7 +86,6 @@
 #define  SN_SAL_GET_PROM_FEATURE_SET              0x02000065
 #define  SN_SAL_SET_OS_FEATURE_SET                0x02000066
 #define  SN_SAL_INJECT_ERROR                      0x02000067
-#define  SN_SAL_SET_CPU_NUMBER                    0x02000068
 
 /*
  * Service-specific constants
@@ -346,7 +346,7 @@ ia64_sn_plat_set_error_handling_features(void)
        ret_stuff.v1 = 0;
        ret_stuff.v2 = 0;
        SAL_CALL_REENTRANT(ret_stuff, SN_SAL_SET_ERROR_HANDLING_FEATURES,
-               SAL_ERR_FEAT_LOG_SBES,
+               (SAL_ERR_FEAT_MCA_SLV_TO_OS_INIT_SLV | SAL_ERR_FEAT_LOG_SBES),
                0, 0, 0, 0, 0, 0);
 
        return ret_stuff.status;
@@ -706,9 +706,12 @@ static inline int
 sn_change_memprotect(u64 paddr, u64 len, u64 perms, u64 *nasid_array)
 {
        struct ia64_sal_retval ret_stuff;
+       unsigned long irq_flags;
 
+       local_irq_save(irq_flags);
        ia64_sal_oemcall_nolock(&ret_stuff, SN_SAL_MEMPROTECT, paddr, len,
                                (u64)nasid_array, perms, 0, 0, 0);
+       local_irq_restore(irq_flags);
        return ret_stuff.status;
 }
 #define SN_MEMPROT_ACCESS_CLASS_0              0x14a080
@@ -1140,18 +1143,12 @@ static inline int
 sn_inject_error(u64 paddr, u64 *data, u64 *ecc)
 {
        struct ia64_sal_retval ret_stuff;
+       unsigned long irq_flags;
 
+       local_irq_save(irq_flags);
        ia64_sal_oemcall_nolock(&ret_stuff, SN_SAL_INJECT_ERROR, paddr, (u64)data,
                                (u64)ecc, 0, 0, 0, 0);
+       local_irq_restore(irq_flags);
        return ret_stuff.status;
 }
-
-static inline int
-ia64_sn_set_cpu_number(int cpu)
-{
-       struct ia64_sal_retval rv;
-
-       SAL_CALL_NOLOCK(rv, SN_SAL_SET_CPU_NUMBER, cpu, 0, 0, 0, 0, 0, 0);
-       return rv.status;
-}
 #endif /* _ASM_IA64_SN_SN_SAL_H */