diff options
author | David Daney <ddaney@caviumnetworks.com> | 2009-05-13 18:59:55 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2009-06-17 06:06:31 -0400 |
commit | fbeda19f82aa07082d2e1607a9f5114141dae2ac (patch) | |
tree | c631cfe8884cd72a4fd709baf72e857edbbac477 /arch | |
parent | 9cffd154cf6817b130762501b91e753524ba2cd4 (diff) |
MIPS: Allow CPU specific overriding of CP0 hwrena impl bits.
Some CPUs have implementation dependent rdhwr registers. Allow them
to be enabled on a per CPU basis.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/include/asm/cpu-features.h | 4 | ||||
-rw-r--r-- | arch/mips/kernel/traps.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h index 1cba4b2ffd1e..8ab1d12ba7f4 100644 --- a/arch/mips/include/asm/cpu-features.h +++ b/arch/mips/include/asm/cpu-features.h | |||
@@ -234,4 +234,8 @@ | |||
234 | #define cpu_scache_line_size() cpu_data[0].scache.linesz | 234 | #define cpu_scache_line_size() cpu_data[0].scache.linesz |
235 | #endif | 235 | #endif |
236 | 236 | ||
237 | #ifndef cpu_hwrena_impl_bits | ||
238 | #define cpu_hwrena_impl_bits 0 | ||
239 | #endif | ||
240 | |||
237 | #endif /* __ASM_CPU_FEATURES_H */ | 241 | #endif /* __ASM_CPU_FEATURES_H */ |
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index e83da174b533..f54871797ab9 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c | |||
@@ -1502,7 +1502,7 @@ void __cpuinit per_cpu_trap_init(void) | |||
1502 | status_set); | 1502 | status_set); |
1503 | 1503 | ||
1504 | if (cpu_has_mips_r2) { | 1504 | if (cpu_has_mips_r2) { |
1505 | unsigned int enable = 0x0000000f; | 1505 | unsigned int enable = 0x0000000f | cpu_hwrena_impl_bits; |
1506 | 1506 | ||
1507 | if (!noulri && cpu_has_userlocal) | 1507 | if (!noulri && cpu_has_userlocal) |
1508 | enable |= (1 << 29); | 1508 | enable |= (1 << 29); |