diff options
author | David Daney <ddaney@caviumnetworks.com> | 2010-02-08 15:27:00 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2010-02-10 16:15:46 -0500 |
commit | 5b7efa898b357e6ebe4024c520e62024eb969b5f (patch) | |
tree | 9e16176be11ca256b501b7aaf945af3e08a4b540 /arch | |
parent | c2d5b5e525a354987b9c3de3661133f982bf9ba0 (diff) |
MIPS: Don't probe reserved EntryHi bits.
The patch that adds cpu_probe_vmbits is erroneously writing to reserved
bit 12. Since we are really only probing high bits, don't write this bit
with a one.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
To: linux-mips@linux-mips.org
Cc: Guenter Roeck <guenter.roeck@ericsson.com>
Patchwork: http://patchwork.linux-mips.org/patch/949/
Acked-by: Guenter Roeck <guenter.roeck@ericsson.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/kernel/cpu-probe.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c index 9c187a64649b..758ad426c57f 100644 --- a/arch/mips/kernel/cpu-probe.c +++ b/arch/mips/kernel/cpu-probe.c | |||
@@ -287,9 +287,9 @@ static inline int __cpu_has_fpu(void) | |||
287 | static inline void cpu_probe_vmbits(struct cpuinfo_mips *c) | 287 | static inline void cpu_probe_vmbits(struct cpuinfo_mips *c) |
288 | { | 288 | { |
289 | #ifdef __NEED_VMBITS_PROBE | 289 | #ifdef __NEED_VMBITS_PROBE |
290 | write_c0_entryhi(0x3ffffffffffff000ULL); | 290 | write_c0_entryhi(0x3fffffffffffe000ULL); |
291 | back_to_back_c0_hazard(); | 291 | back_to_back_c0_hazard(); |
292 | c->vmbits = fls64(read_c0_entryhi() & 0x3ffffffffffff000ULL); | 292 | c->vmbits = fls64(read_c0_entryhi() & 0x3fffffffffffe000ULL); |
293 | #endif | 293 | #endif |
294 | } | 294 | } |
295 | 295 | ||