1
linux/arch/powerpc/mm
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
..
40x_mmu.c powerpc/40x: Limit allocable DRAM during early mapping 2008-11-13 10:10:56 -05:00
44x_mmu.c
dma-noncoherent.c powerpc: Fix up dma_alloc_coherent() on platforms without cache coherency. 2009-05-27 16:33:59 +10:00
fault.c Move FAULT_FLAG_xyz into handle_mm_fault() callers 2009-06-21 13:08:22 -07:00
fsl_booke_mmu.c powerpc/mm: Tweak PTE bit combination definitions 2009-03-24 13:47:33 +11:00
gup.c powerpc: Use pr_devel() in arch/powerpc/mm/gup.c 2009-07-08 13:50:23 +10:00
hash_low_32.S powerpc: Use names rather than numbers for SPRGs (v2) 2009-08-20 10:12:27 +10:00
hash_low_64.S
hash_native_64.c powerpc: Add 2.06 tlbie mnemonics 2009-05-21 15:44:21 +10:00
hash_utils_64.c powerpc: Fix crash on CPU hotplug 2009-04-22 14:56:34 +10:00
highmem.c powerpc/mm: Make k(un)map_atomic out of line 2009-06-26 14:37:25 +10:00
hugetlbpage.c mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
init_32.c powerpc: Minor cleanups of kernel virt address space definitions 2009-05-27 16:32:50 +10:00
init_64.c powerpc: Shield code specific to 64-bit server processors 2009-06-09 16:47:38 +10:00
Makefile powerpc/mm: Make k(un)map_atomic out of line 2009-06-26 14:37:25 +10:00
mem.c powerpc: Fix up dma_alloc_coherent() on platforms without cache coherency. 2009-05-27 16:33:59 +10:00
mmap_64.c powerpc/mm: Rename arch/powerpc/kernel/mmap.c to mmap_64.c 2009-03-24 13:47:33 +11:00
mmu_context_hash32.c powerpc/mm: Split mmu_context handling 2008-12-21 14:21:15 +11:00
mmu_context_hash64.c powerpc/mm: Split mmu_context handling 2008-12-21 14:21:15 +11:00
mmu_context_nohash.c powerpc/mm: Fix SMP issue with MMU context handling code 2009-07-29 23:05:43 -05:00
mmu_decl.h Merge commit 'kumar/kumar-next' into next 2009-01-13 13:59:03 +11:00
numa.c powerpc: Set init_bootmem_done on NUMA platforms as well 2009-06-09 16:43:04 +10:00
pgtable_32.c powerpc: Minor cleanups of kernel virt address space definitions 2009-05-27 16:32:50 +10:00
pgtable_64.c powerpc: Wire up /proc/vmallocinfo to our ioremap() 2009-03-11 17:10:14 +11:00
pgtable.c powerpc: Use pr_devel() in do_dcache_icache_coherency() 2009-07-08 13:50:24 +10:00
ppc_mmu_32.c powerpc/mm: Tweak PTE bit combination definitions 2009-03-24 13:47:33 +11:00
slb_low.S
slb.c powerpc: Preload application text segment instead of TASK_UNMAPPED_BASE 2009-08-20 10:12:26 +10:00
slice.c powerpc: is_hugepage_only_range() must account for both 4kB and 64kB slices 2009-01-16 16:15:16 +11:00
stab.c powerpc: Change u64/s64 to a long long integer type 2009-01-13 14:47:59 +11:00
subpage-prot.c
tlb_hash32.c powerpc/mm: Add SMP support to no-hash TLB handling 2008-12-21 14:21:16 +11:00
tlb_hash64.c powerpc: Remove unnecessary semicolons 2009-07-08 13:50:21 +10:00
tlb_nohash_low.S powerpc: fix for long standing bug noticed by gcc 4.4.0 2009-04-23 08:52:16 -05:00
tlb_nohash.c powerpc/mm: Fix compile warning 2009-04-07 22:11:10 -05:00