qemu-e2k/target-ppc
Benjamin Herrenschmidt 4322e8ced5 ppc: Fix 64K pages support in full emulation
We were always advertising only 4K & 16M. Additionally the code wasn't
properly matching the page size with the PTE content, which meant we
could potentially hit an incorrect PTE if the guest used multiple sizes.

Finally, honor the CPU capabilities when decoding the size from the SLB
so we don't try to use 64K pages on 970.

This still doesn't add support for MPSS (Multiple Page Sizes per Segment)

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
[clg: fixed checkpatch.pl errors
      commits 61a36c9b5a and 1114e712c9 reworked the hpte code
      doing insertion/removal in hw/ppc/spapr_hcall.c. The hunks
      modifying these areas were removed. ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2016-07-01 09:57:01 +10:00
..
arch_dump.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
cpu-models.c target-ppc: Add PVR for POWER8NVL processor 2016-03-16 09:55:05 +11:00
cpu-models.h target-ppc: Add PVR for POWER8NVL processor 2016-03-16 09:55:05 +11:00
cpu-qom.h ppc: Fix 64K pages support in full emulation 2016-07-01 09:57:01 +10:00
cpu.h ppc: Update LPCR definitions 2016-07-01 09:57:01 +10:00
dfp_helper.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
excp_helper.c ppc: Initial HDEC support 2016-07-01 09:57:01 +10:00
fpu_helper.c softfloat: Implement run-time-configurable meaning of signaling NaN bit 2016-06-24 13:40:37 +01:00
gdbstub.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
helper_regs.h ppc: Enforce setting MSR:EE,IR and DR when MSR:PR is set 2016-07-01 09:57:01 +10:00
helper.h ppc: Initial HDEC support 2016-07-01 09:57:01 +10:00
int_helper.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
kvm_ppc.h ppc: Provide function to get CPU class of the host CPU 2016-06-14 10:41:38 +10:00
kvm-stub.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
kvm.c ppc: Disable huge page support if it is not available for main RAM 2016-06-23 12:53:42 +10:00
machine.c ppc: Use split I/D mmu modes to avoid flushes on interrupts 2016-05-30 13:20:04 +10:00
Makefile.objs kvm_ppc: remove kvmppc_timer_hack 2015-09-20 22:48:38 +02:00
mem_helper.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
mfrom_table_gen.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
mfrom_table.c
misc_helper.c ppc: Improve emulation of THRM registers 2016-06-22 11:12:17 +10:00
mmu_helper.c ppc: Batch TLB flushes on 32-bit 6xx/7xx/7xxx in hash mode 2016-06-07 13:10:44 +10:00
mmu-hash32.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
mmu-hash32.h target-ppc: do not use target_ulong in cpu-qom.h 2016-05-19 13:08:05 +02:00
mmu-hash64.c ppc: Fix 64K pages support in full emulation 2016-07-01 09:57:01 +10:00
mmu-hash64.h target-ppc: do not use target_ulong in cpu-qom.h 2016-05-19 13:08:05 +02:00
monitor.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
STATUS target-ppc: remove powerpc 970gx 2014-03-05 03:06:23 +01:00
timebase_helper.c ppc: Initial HDEC support 2016-07-01 09:57:01 +10:00
trace-events trace: split out trace events for target-ppc/ directory 2016-06-20 17:22:17 +01:00
translate_init.c ppc: Fix 64K pages support in full emulation 2016-07-01 09:57:01 +10:00
translate.c ppc: Print HSRR0/HSRR1 in "info registers" 2016-07-01 09:57:01 +10:00
user_only_helper.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00