powerpc/mm: Split low level tlb invalidate for nohash processors
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 18 Dec 2008 19:13:42 +0000 (19:13 +0000)
committerPaul Mackerras <paulus@samba.org>
Sun, 21 Dec 2008 03:21:16 +0000 (14:21 +1100)
commit2a4aca1144394653269720ffbb5a325a77abd5fa
tree553bbcbb294ac5923f72430b7317b5c80a27141c
parentf048aace29e007f2b642097e2da8231e0e9cce2d
powerpc/mm: Split low level tlb invalidate for nohash processors

Currently, the various forms of low level TLB invalidations are all
implemented in misc_32.S for 32-bit processors, in a fairly scary
mess of #ifdef's and with interesting duplication such as a whole
bunch of code for FSL _tlbie and _tlbia which are no longer used.

This moves things around such that _tlbie is now defined in
hash_low_32.S and is only used by the 32-bit hash code, and all
nohash CPUs use the various _tlbil_* forms that are now moved to
a new file, tlb_nohash_low.S.

I moved all the definitions for that stuff out of
include/asm/tlbflush.h as they are really internal mm stuff, into
mm/mmu_decl.h

The code should have no functional changes.  I kept some variants
inline for trivial forms on things like 40x and 8xx.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/include/asm/tlbflush.h
arch/powerpc/kernel/misc_32.S
arch/powerpc/kvm/powerpc.c
arch/powerpc/mm/Makefile
arch/powerpc/mm/hash_low_32.S
arch/powerpc/mm/mmu_decl.h
arch/powerpc/mm/tlb_nohash_low.S [new file with mode: 0644]