aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2007-01-19 09:35:14 -0500
committerRalf Baechle <ralf@linux-mips.org>2007-01-24 14:23:21 -0500
commita0b6218037b5cf50737a7dc0fc5464ea3f8781cd (patch)
tree66924812bfa647b43d55f1450fa58d244ae56857 /arch
parent89c07fd14fe857c223b042a857a08c3ea46b92eb (diff)
[MIPS] SMTC: Fix TLB sizing bug for TLB of 64 >= entries
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/kernel/smtc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/mips/kernel/smtc.c b/arch/mips/kernel/smtc.c
index 44238ab2fc99..c37e83b173e9 100644
--- a/arch/mips/kernel/smtc.c
+++ b/arch/mips/kernel/smtc.c
@@ -270,9 +270,12 @@ void smtc_configure_tlb(void)
270 * of their initialization in smtc_cpu_setup(). 270 * of their initialization in smtc_cpu_setup().
271 */ 271 */
272 272
273 tlbsiz = tlbsiz & 0x3f; /* MIPS32 limits TLB indices to 64 */ 273 /* MIPS32 limits TLB indices to 64 */
274 cpu_data[0].tlbsize = tlbsiz; 274 if (tlbsiz > 64)
275 tlbsiz = 64;
276 cpu_data[0].tlbsize = current_cpu_data.tlbsize = tlbsiz;
275 smtc_status |= SMTC_TLB_SHARED; 277 smtc_status |= SMTC_TLB_SHARED;
278 local_flush_tlb_all();
276 279
277 printk("TLB of %d entry pairs shared by %d VPEs\n", 280 printk("TLB of %d entry pairs shared by %d VPEs\n",
278 tlbsiz, vpes); 281 tlbsiz, vpes);