This attempts the cleanup I've been talking about with Bruno. On the way, there's a lot of MMUAccessType cleanup, to get the code into the form I wanted the interface to share. There's a lot more cleanup that could be done, particularly wrt the older mmu models.
r~ Richard Henderson (24): target/ppc: Introduce prot_for_access_type target/ppc: Use MMUAccessType in mmu-radix64.c target/ppc: Use MMUAccessType in mmu-hash64.c target/ppc: Use MMUAccessType in mmu-hash32.c target/ppc: Rename access_type to type in mmu_helper.c target/ppc: Use MMUAccessType in mmu_helper.c target/ppc: Remove type argument from check_prot target/ppc: Remove type argument from ppc6xx_tlb_pte_check target/ppc: Remove type argument from ppc6xx_tlb_check target/ppc: Remove type argument from get_bat_6xx_tlb target/ppc: Remove type argument from mmu40x_get_physical_address target/ppc: Remove type argument from mmubooke_check_tlb target/ppc: Remove type argument from mmubooke_get_physical_address target/ppc: Remove type argument from mmubooke206_check_tlb target/ppc: Remove type argument for mmubooke206_get_physical_address target/ppc: Remove PowerPCCPUClass.handle_mmu_fault target/ppc: Use MMUAccessType with *_handle_mmu_fault target/ppc: Push real-mode handling into ppc_radix64_xlate target/ppc: Use bool success for ppc_radix64_xlate target/ppc: Split out ppc_hash64_xlate target/ppc: Split out ppc_hash32_xlate target/ppc: Split out ppc_jumbo_xlate target/ppc: Introduce ppc_xlate target/ppc: Restrict ppc_cpu_tlb_fill to TCG target/ppc/cpu-qom.h | 1 - target/ppc/internal.h | 19 ++ target/ppc/mmu-book3s-v3.h | 5 - target/ppc/mmu-hash32.h | 6 +- target/ppc/mmu-hash64.h | 6 +- target/ppc/mmu-radix64.h | 6 +- target/ppc/cpu_init.c | 45 ---- target/ppc/mmu-book3s-v3.c | 19 -- target/ppc/mmu-hash32.c | 244 ++++++++---------- target/ppc/mmu-hash64.c | 187 ++++++-------- target/ppc/mmu-radix64.c | 235 +++++++++--------- target/ppc/mmu_helper.c | 496 +++++++++++++++++-------------------- 12 files changed, 553 insertions(+), 716 deletions(-) -- 2.25.1