diff options
| author | H. Peter Anvin <hpa@zytor.com> | 2009-08-25 15:40:29 -0700 |
|---|---|---|
| committer | H. Peter Anvin <hpa@zytor.com> | 2009-08-25 15:40:29 -0700 |
| commit | e8a2eb47e6ca03d4a4f98f0beef73720c5dddc0c (patch) | |
| tree | 31c4d7718111abddfaaa8d3fb14ab4a7e2554cd9 /arch/mips/kernel/smtc.c | |
| parent | 8b5a10fc6fd02289ea03480f93382b1a99006142 (diff) | |
| parent | c62e43202e7cf50ca24bce58b255df7bf5de69d0 (diff) | |
Merge commit 'origin/x86/urgent' into x86/asm
Diffstat (limited to 'arch/mips/kernel/smtc.c')
| -rw-r--r-- | arch/mips/kernel/smtc.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/mips/kernel/smtc.c b/arch/mips/kernel/smtc.c index 8a0626cbb108..c16bb6d6c25c 100644 --- a/arch/mips/kernel/smtc.c +++ b/arch/mips/kernel/smtc.c @@ -465,11 +465,8 @@ void smtc_prepare_cpus(int cpus) smtc_configure_tlb(); for (tc = 0, vpe = 0 ; (vpe < nvpe) && (tc < ntc) ; vpe++) { - /* - * Set the MVP bits. - */ - settc(tc); - write_vpe_c0_vpeconf0(read_vpe_c0_vpeconf0() | VPECONF0_MVP); + if (tcpervpe[vpe] == 0) + continue; if (vpe != 0) printk(", "); printk("VPE %d: TC", vpe); @@ -488,6 +485,12 @@ void smtc_prepare_cpus(int cpus) } if (vpe != 0) { /* + * Allow this VPE to control others. + */ + write_vpe_c0_vpeconf0(read_vpe_c0_vpeconf0() | + VPECONF0_MVP); + + /* * Clear any stale software interrupts from VPE's Cause */ write_vpe_c0_cause(0); |
