1384740dcSRalf Baechle /*
2384740dcSRalf Baechle  * This file is subject to the terms and conditions of the GNU General Public
3384740dcSRalf Baechle  * License.  See the file "COPYING" in the main directory of this archive
4384740dcSRalf Baechle  * for more details.
5384740dcSRalf Baechle  *
6384740dcSRalf Baechle  * Copyright (C) 2003, 2004 Chris Dearman
7384740dcSRalf Baechle  * Copyright (C) 2005 Ralf Baechle (ralf@linux-mips.org)
8384740dcSRalf Baechle  */
9384740dcSRalf Baechle #ifndef __ASM_MACH_MIPS_CPU_FEATURE_OVERRIDES_H
10384740dcSRalf Baechle #define __ASM_MACH_MIPS_CPU_FEATURE_OVERRIDES_H
11384740dcSRalf Baechle 
12384740dcSRalf Baechle 
13384740dcSRalf Baechle /*
14384740dcSRalf Baechle  * CPU feature overrides for MIPS boards
15384740dcSRalf Baechle  */
16384740dcSRalf Baechle #ifdef CONFIG_CPU_MIPS32
17384740dcSRalf Baechle #define cpu_has_tlb		1
18384740dcSRalf Baechle #define cpu_has_4kex		1
19384740dcSRalf Baechle #define cpu_has_4k_cache	1
20384740dcSRalf Baechle /* #define cpu_has_fpu		? */
21384740dcSRalf Baechle /* #define cpu_has_32fpr	? */
22384740dcSRalf Baechle #define cpu_has_counter		1
23384740dcSRalf Baechle /* #define cpu_has_watch	? */
24384740dcSRalf Baechle #define cpu_has_divec		1
25384740dcSRalf Baechle #define cpu_has_vce		0
26384740dcSRalf Baechle /* #define cpu_has_cache_cdex_p ? */
27384740dcSRalf Baechle /* #define cpu_has_cache_cdex_s ? */
28384740dcSRalf Baechle /* #define cpu_has_prefetch	? */
29384740dcSRalf Baechle #define cpu_has_mcheck		1
30384740dcSRalf Baechle /* #define cpu_has_ejtag	? */
31384740dcSRalf Baechle #define cpu_has_llsc		1
32384740dcSRalf Baechle /* #define cpu_has_vtag_icache	? */
33384740dcSRalf Baechle /* #define cpu_has_dc_aliases	? */
34384740dcSRalf Baechle /* #define cpu_has_ic_fills_f_dc ? */
35*5fba0960SShinya Kuribayashi #define cpu_has_clo_clz		1
36384740dcSRalf Baechle #define cpu_has_nofpuex		0
37384740dcSRalf Baechle /* #define cpu_has_64bits	? */
38384740dcSRalf Baechle /* #define cpu_has_64bit_zero_reg ? */
39384740dcSRalf Baechle /* #define cpu_has_inclusive_pcaches ? */
40384740dcSRalf Baechle #define cpu_icache_snoops_remote_store 1
41384740dcSRalf Baechle #endif
42384740dcSRalf Baechle 
43384740dcSRalf Baechle #ifdef CONFIG_CPU_MIPS64
44384740dcSRalf Baechle #define cpu_has_tlb		1
45384740dcSRalf Baechle #define cpu_has_4kex		1
46384740dcSRalf Baechle #define cpu_has_4k_cache	1
47384740dcSRalf Baechle /* #define cpu_has_fpu		? */
48384740dcSRalf Baechle /* #define cpu_has_32fpr	? */
49384740dcSRalf Baechle #define cpu_has_counter		1
50384740dcSRalf Baechle /* #define cpu_has_watch	? */
51384740dcSRalf Baechle #define cpu_has_divec		1
52384740dcSRalf Baechle #define cpu_has_vce		0
53384740dcSRalf Baechle /* #define cpu_has_cache_cdex_p ? */
54384740dcSRalf Baechle /* #define cpu_has_cache_cdex_s ? */
55384740dcSRalf Baechle /* #define cpu_has_prefetch	? */
56384740dcSRalf Baechle #define cpu_has_mcheck		1
57384740dcSRalf Baechle /* #define cpu_has_ejtag	? */
58384740dcSRalf Baechle #define cpu_has_llsc		1
59384740dcSRalf Baechle /* #define cpu_has_vtag_icache	? */
60384740dcSRalf Baechle /* #define cpu_has_dc_aliases	? */
61384740dcSRalf Baechle /* #define cpu_has_ic_fills_f_dc ? */
62*5fba0960SShinya Kuribayashi #define cpu_has_clo_clz		1
63384740dcSRalf Baechle #define cpu_has_nofpuex		0
64384740dcSRalf Baechle /* #define cpu_has_64bits	? */
65384740dcSRalf Baechle /* #define cpu_has_64bit_zero_reg ? */
66384740dcSRalf Baechle /* #define cpu_has_inclusive_pcaches ? */
67384740dcSRalf Baechle #define cpu_icache_snoops_remote_store 1
68384740dcSRalf Baechle #endif
69384740dcSRalf Baechle 
70384740dcSRalf Baechle #endif /* __ASM_MACH_MIPS_CPU_FEATURE_OVERRIDES_H */
71