OpenCloudOS-Kernel/arch/powerpc/kvm
Benjamin Herrenschmidt ee43eb788b powerpc: Use names rather than numbers for SPRGs (v2)
The kernel uses SPRG registers for various purposes, typically in
low level assembly code as scratch registers or to hold per-cpu
global infos such as the PACA or the current thread_info pointer.

We want to be able to easily shuffle the usage of those registers
as some implementations have specific constraints realted to some
of them, for example, some have userspace readable aliases, etc..
and the current choice isn't always the best.

This patch should not change any code generation, and replaces the
usage of SPRN_SPRGn everywhere in the kernel with a named replacement
and adds documentation next to the definition of the names as to
what those are used for on each processor family.

The only parts that still use the original numbers are bits of KVM
or suspend/resume code that just blindly needs to save/restore all
the SPRGs.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2009-08-20 10:12:27 +10:00
..
44x.c KVM: ppc: remove debug support broken by KVM debug rewrite 2009-03-24 11:03:01 +02:00
44x_emulate.c KVM: ppc: split out common Book E instruction emulation 2009-03-24 11:02:57 +02:00
44x_tlb.c KVM: ppc: Add kvmppc_mmu_dtlb/itlb_miss for booke 2009-03-24 11:02:59 +02:00
44x_tlb.h KVM: ppc: rename 44x MMU functions used in booke.c 2009-03-24 11:02:56 +02:00
Kconfig KVM: Add CONFIG_HAVE_KVM_IRQCHIP 2009-03-24 11:03:02 +02:00
Makefile powerpc: Add configurable -Werror for arch/powerpc 2009-06-16 14:15:45 +10:00
booke.c KVM: ppc: Add extra E500 exceptions 2009-03-24 11:02:59 +02:00
booke.h KVM: ppc: Add extra E500 exceptions 2009-03-24 11:02:59 +02:00
booke_emulate.c KVM: ppc: Add dbsr in kvm_vcpu_arch 2009-03-24 11:02:57 +02:00
booke_interrupts.S powerpc: Use names rather than numbers for SPRGs (v2) 2009-08-20 10:12:27 +10:00
e500.c KVM: ppc: Add extra E500 exceptions 2009-03-24 11:02:59 +02:00
e500_emulate.c KVM: ppc: Add emulation of E500 register mmucsr0 2009-03-24 11:03:12 +02:00
e500_tlb.c KVM: ppc: e500: Fix the bug that KVM is unstable in SMP 2009-03-24 11:03:15 +02:00
e500_tlb.h KVM: ppc: e500: Fix the bug that KVM is unstable in SMP 2009-03-24 11:03:15 +02:00
emulate.c KVM: ppc: use macros instead of hardcoded literals for instruction decoding 2009-03-24 11:02:57 +02:00
powerpc.c KVM: Fix interrupt unhalting a vcpu when it shouldn't 2009-06-10 11:48:33 +03:00
timing.c KVM: ppc: mostly cosmetic updates to the exit timing accounting code 2008-12-31 16:55:41 +02:00
timing.h KVM: ppc: mostly cosmetic updates to the exit timing accounting code 2008-12-31 16:55:41 +02:00