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 | |
| 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>
| -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 | ||
