powerpc/fsl: Force coherent memory on e500mc derivatives
authorScott Wood <scottwood@freescale.com>
Sat, 18 Jul 2015 19:24:58 +0000 (14:24 -0500)
committerScott Wood <scottwood@freescale.com>
Sat, 8 Aug 2015 04:00:01 +0000 (23:00 -0500)
commitc60232029aee84f69da0e74aa6f6d249edbbc80b
treef56c5b4928f84e47a308a8d4adf664d0d34e4839
parent0d61f0b3e222b588480e2ad1e85bb2ea57561c4b
powerpc/fsl: Force coherent memory on e500mc derivatives

In CoreNet systems it is not allowed to mix M and non-M mappings to the
same memory, and coherent DMA accesses are considered to be M mappings
for this purpose.  Ignoring this has been observed to cause hard
lockups in non-SMP kernels on e6500.

Furthermore, e6500 implements the LRAT (logical to real address table)
which allows KVM guests to control the WIMGE bits.  This means that
KVM cannot force the M bit on the way it usually does, so the guest had
better set it itself.

Signed-off-by: Scott Wood <scottwood@freescale.com>
arch/powerpc/include/asm/pte-common.h
arch/powerpc/kernel/exceptions-64e.S
arch/powerpc/kernel/fsl_booke_entry_mapping.S
arch/powerpc/mm/fsl_booke_mmu.c