KVM: MIPS: Support NetLogic KScratch registers
authorJames Hogan <james.hogan@imgtec.com>
Fri, 11 Nov 2016 14:08:32 +0000 (14:08 +0000)
committerJames Hogan <james.hogan@imgtec.com>
Fri, 3 Feb 2017 15:20:52 +0000 (15:20 +0000)
commit29b500b54ef379f1f3227b633dd477a4dd3cd62b
treed60e393993c1e2b70ddd1a24dfbc1a2e103b6e39
parent7faa6eec6991715d6c1d85c192738dcac405ab89
KVM: MIPS: Support NetLogic KScratch registers

tlbex.c uses the implementation dependent $22 CP0 register group on
NetLogic cores, with the help of the c0_kscratch() helper. Allow these
registers to be allocated by the KVM entry code too instead of assuming
KScratch registers are all $31, which will also allow pgd_reg to be
handled since it is allocated that way.

We also drop the masking of kscratch_mask with 0xfc, as it is redundant
for the standard KScratch registers (Config4.KScrExist won't have the
low 2 bits set anyway), and apparently not necessary for NetLogic.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Radim Krčmář" <rkrcmar@redhat.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
arch/mips/kvm/entry.c