[PATCH] powerpc: Fix handling of fpscr on 64-bit
[powerpc.git] / include / asm-powerpc / cputable.h
index 5f81d44..c019501 100644 (file)
@@ -15,6 +15,7 @@
 #define PPC_FEATURE_HAS_SPE            0x00800000
 #define PPC_FEATURE_HAS_EFP_SINGLE     0x00400000
 #define PPC_FEATURE_HAS_EFP_DOUBLE     0x00200000
+#define PPC_FEATURE_NO_TB              0x00100000
 
 #ifdef __KERNEL__
 #ifndef __ASSEMBLY__
 struct cpu_spec;
 struct op_powerpc_model;
 
-#ifdef __powerpc64__
 typedef        void (*cpu_setup_t)(unsigned long offset, struct cpu_spec* spec);
-#else /* __powerpc64__ */
-typedef        void (*cpu_setup_t)(unsigned long offset, int cpu_nr, struct cpu_spec* spec);
-#endif /* __powerpc64__ */
 
 struct cpu_spec {
        /* CPU is matched via (PVR & pvr_mask) == pvr_value */
@@ -51,23 +48,18 @@ struct cpu_spec {
         * BHT, SPD, etc... from head.S before branching to identify_machine
         */
        cpu_setup_t     cpu_setup;
-#ifdef __powerpc64__
 
        /* Used by oprofile userspace to select the right counters */
        char            *oprofile_cpu_type;
 
        /* Processor specific oprofile operations */
        struct op_powerpc_model *oprofile_model;
-#endif /* __powerpc64__ */
 };
 
-extern struct cpu_spec         cpu_specs[];
-
-#ifdef __powerpc64__
 extern struct cpu_spec         *cur_cpu_spec;
-#else /* __powerpc64__ */
-extern struct cpu_spec         *cur_cpu_spec[];
-#endif /* __powerpc64__ */
+
+extern void identify_cpu(unsigned long offset, unsigned long cpu);
+extern void do_cpu_ftr_fixups(unsigned long offset);
 
 #endif /* __ASSEMBLY__ */
 
@@ -128,9 +120,6 @@ extern struct cpu_spec              *cur_cpu_spec[];
 
 #ifndef __ASSEMBLY__
 
-#define COMMON_USER_PPC64      (PPC_FEATURE_32 | PPC_FEATURE_64 | \
-                                PPC_FEATURE_HAS_FPU | PPC_FEATURE_HAS_MMU)
-
 #define CPU_FTR_PPCAS_ARCH_V2_BASE (CPU_FTR_SLB | \
                                        CPU_FTR_TLBIEL | CPU_FTR_NOEXECUTE | \
                                        CPU_FTR_NODSISRALIGN | CPU_FTR_CTRL)
@@ -398,11 +387,7 @@ static inline int cpu_has_feature(unsigned long feature)
 {
        return (CPU_FTRS_ALWAYS & feature) ||
               (CPU_FTRS_POSSIBLE
-#ifndef __powerpc64__
-               & cur_cpu_spec[0]->cpu_features
-#else
                & cur_cpu_spec->cpu_features
-#endif
                & feature);
 }