diff options
author | Paul Burton <paul.burton@imgtec.com> | 2015-09-22 10:15:22 -0700 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2015-10-26 09:49:44 +0100 |
commit | a13c996249a5ca7635853a4e7e15033393575e46 (patch) | |
tree | e514143d350d419a08e3f28cb2a011fd92fc3b6b /arch | |
parent | ee42a3344cc43bb404160ecb12038825638fcbf4 (diff) | |
download | linux-stable-a13c996249a5ca7635853a4e7e15033393575e46.tar.gz linux-stable-a13c996249a5ca7635853a4e7e15033393575e46.tar.bz2 linux-stable-a13c996249a5ca7635853a4e7e15033393575e46.zip |
MIPS: traps: tidy up ebase calculation
Rather than #ifdef on CONFIG_KVM_GUEST & redefine the guest kseg0 base
locally, make use of the CAC_BASE macro which has the correct value in
both cases.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: Leonid Yegoshin <Leonid.Yegoshin@imgtec.com>
Cc: Maciej W. Rozycki <macro@linux-mips.org>
Cc: linux-kernel@vger.kernel.org
Cc: Markos Chandras <markos.chandras@imgtec.com>
Patchwork: https://patchwork.linux-mips.org/patch/11183/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/kernel/traps.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index fdb392b27e81..4e106d52f304 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c @@ -37,6 +37,7 @@ #include <linux/irq.h> #include <linux/perf_event.h> +#include <asm/addrspace.h> #include <asm/bootinfo.h> #include <asm/branch.h> #include <asm/break.h> @@ -2204,12 +2205,8 @@ void __init trap_init(void) ebase = (unsigned long) __alloc_bootmem(size, 1 << fls(size), 0); } else { -#ifdef CONFIG_KVM_GUEST -#define KVM_GUEST_KSEG0 0x40000000 - ebase = KVM_GUEST_KSEG0; -#else - ebase = CKSEG0; -#endif + ebase = CAC_BASE; + if (cpu_has_mips_r2_r6) ebase += (read_c0_ebase() & 0x3ffff000); } |