ppc: Batch TLB flushes on 32-bit 6xx/7xx/7xxx in hash mode
commitc5a8d8f32d90058995334cfd9292ed1b98c76971
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Tue, 7 Jun 2016 02:50:22 +0000 (7 12:50 +1000)
committerDavid Gibson <david@gibson.dropbear.id.au>
Tue, 7 Jun 2016 03:10:44 +0000 (7 13:10 +1000)
treee9ee285957f5885754f6520dc9521d39777d207e
parent3dcfb74fd4e4ab31508c80e6965a0cd477510234
ppc: Batch TLB flushes on 32-bit 6xx/7xx/7xxx in hash mode

This ports the existing 64-bit mechanism to 32-bit, thus series
of 64 tlbie's followed by a sync like some versions of Darwin
(ab)use will result in a single flush.

We apply a pending flush on any sync instruction though, as Darwin
doesn't use tlbsync on non-SMP systems.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
target-ppc/cpu.h
target-ppc/helper_regs.h
target-ppc/mmu_helper.c
target-ppc/translate.c