diff options
Diffstat (limited to 'arch/mips/include/asm/cpu-features.h')
| -rw-r--r-- | arch/mips/include/asm/cpu-features.h | 41 | 
1 files changed, 32 insertions, 9 deletions
diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h index c507b931b48..e5ec8fcd8af 100644 --- a/arch/mips/include/asm/cpu-features.h +++ b/arch/mips/include/asm/cpu-features.h @@ -14,7 +14,7 @@  #include <cpu-feature-overrides.h>  #ifndef current_cpu_type -#define current_cpu_type()      current_cpu_data.cputype +#define current_cpu_type()	current_cpu_data.cputype  #endif  /* @@ -87,10 +87,10 @@  #define cpu_has_mips16		(cpu_data[0].ases & MIPS_ASE_MIPS16)  #endif  #ifndef cpu_has_mdmx -#define cpu_has_mdmx           (cpu_data[0].ases & MIPS_ASE_MDMX) +#define cpu_has_mdmx	       (cpu_data[0].ases & MIPS_ASE_MDMX)  #endif  #ifndef cpu_has_mips3d -#define cpu_has_mips3d         (cpu_data[0].ases & MIPS_ASE_MIPS3D) +#define cpu_has_mips3d	       (cpu_data[0].ases & MIPS_ASE_MIPS3D)  #endif  #ifndef cpu_has_smartmips  #define cpu_has_smartmips      (cpu_data[0].ases & MIPS_ASE_SMARTMIPS) @@ -98,6 +98,9 @@  #ifndef cpu_has_rixi  #define cpu_has_rixi		(cpu_data[0].options & MIPS_CPU_RIXI)  #endif +#ifndef cpu_has_mmips +#define cpu_has_mmips		(cpu_data[0].options & MIPS_CPU_MICROMIPS) +#endif  #ifndef cpu_has_vtag_icache  #define cpu_has_vtag_icache	(cpu_data[0].icache.flags & MIPS_CACHE_VTAG)  #endif @@ -108,11 +111,14 @@  #define cpu_has_ic_fills_f_dc	(cpu_data[0].icache.flags & MIPS_CACHE_IC_F_DC)  #endif  #ifndef cpu_has_pindexed_dcache -#define cpu_has_pindexed_dcache	(cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX) +#define cpu_has_pindexed_dcache (cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX) +#endif +#ifndef cpu_has_local_ebase +#define cpu_has_local_ebase	1  #endif  /* - * I-Cache snoops remote store.  This only matters on SMP.  Some multiprocessors + * I-Cache snoops remote store.	 This only matters on SMP.  Some multiprocessors   * such as the R10000 have I-Caches that snoop local stores; the embedded ones   * don't.  For maintaining I-cache coherency this means we need to flush the   * D-cache all the way back to whever the I-cache does refills from, so the @@ -130,6 +136,19 @@  #endif  #endif +# define cpu_has_mips_1		(cpu_data[0].isa_level & MIPS_CPU_ISA_I) +#ifndef cpu_has_mips_2 +# define cpu_has_mips_2		(cpu_data[0].isa_level & MIPS_CPU_ISA_II) +#endif +#ifndef cpu_has_mips_3 +# define cpu_has_mips_3		(cpu_data[0].isa_level & MIPS_CPU_ISA_III) +#endif +#ifndef cpu_has_mips_4 +# define cpu_has_mips_4		(cpu_data[0].isa_level & MIPS_CPU_ISA_IV) +#endif +#ifndef cpu_has_mips_5 +# define cpu_has_mips_5		(cpu_data[0].isa_level & MIPS_CPU_ISA_V) +#endif  # ifndef cpu_has_mips32r1  # define cpu_has_mips32r1	(cpu_data[0].isa_level & MIPS_CPU_ISA_M32R1)  # endif @@ -148,8 +167,8 @@   */  #define cpu_has_mips32	(cpu_has_mips32r1 | cpu_has_mips32r2)  #define cpu_has_mips64	(cpu_has_mips64r1 | cpu_has_mips64r2) -#define cpu_has_mips_r1	(cpu_has_mips32r1 | cpu_has_mips64r1) -#define cpu_has_mips_r2	(cpu_has_mips32r2 | cpu_has_mips64r2) +#define cpu_has_mips_r1 (cpu_has_mips32r1 | cpu_has_mips64r1) +#define cpu_has_mips_r2 (cpu_has_mips32r2 | cpu_has_mips64r2)  #define cpu_has_mips_r	(cpu_has_mips32r1 | cpu_has_mips32r2 | \  			 cpu_has_mips64r1 | cpu_has_mips64r2) @@ -159,7 +178,7 @@  /*   * MIPS32, MIPS64, VR5500, IDT32332, IDT32334 and maybe a few other - * pre-MIPS32/MIPS53 processors have CLO, CLZ.  The IDT RC64574 is 64-bit and + * pre-MIPS32/MIPS53 processors have CLO, CLZ.	The IDT RC64574 is 64-bit and   * has CLO and CLZ but not DCLO nor DCLZ.  For 64-bit kernels   * cpu_has_clo_clz also indicates the availability of DCLO and DCLZ.   */ @@ -191,7 +210,7 @@  # define cpu_has_64bits		(cpu_data[0].isa_level & MIPS_CPU_ISA_64BIT)  # endif  # ifndef cpu_has_64bit_zero_reg -# define cpu_has_64bit_zero_reg	(cpu_data[0].isa_level & MIPS_CPU_ISA_64BIT) +# define cpu_has_64bit_zero_reg (cpu_data[0].isa_level & MIPS_CPU_ISA_64BIT)  # endif  # ifndef cpu_has_64bit_gp_regs  # define cpu_has_64bit_gp_regs		0 @@ -260,4 +279,8 @@  #define cpu_has_perf_cntr_intr_bit	(cpu_data[0].options & MIPS_CPU_PCI)  #endif +#ifndef cpu_has_vz +#define cpu_has_vz		(cpu_data[0].ases & MIPS_ASE_VZ) +#endif +  #endif /* __ASM_CPU_FEATURES_H */  |