qemu-irix/hw
David Gibson 36778660d7 target/ppc: Eliminate htab_base and htab_mask variables
CPUPPCState includes fields htab_base and htab_mask which store the base
address (GPA) and size (as a mask) of the guest's hashed page table (HPT).
These are set when the SDR1 register is updated.

Keeping these in sync with the SDR1 is actually a little bit fiddly, and
probably not useful for performance, since keeping them expands the size of
CPUPPCState.  It also makes some upcoming changes harder to implement.

This patch removes these fields, in favour of calculating them directly
from the SDR1 contents when necessary.

This does make a change to the behaviour of attempting to write a bad value
(invalid HPT size) to the SDR1 with an mtspr instruction.  Previously, the
bad value would be stored in SDR1 and could be retrieved with a later
mfspr, but the HPT size as used by the softmmu would be, clamped to the
allowed values.  Now, writing a bad value is treated as a no-op.  An error
message is printed in both new and old versions.

I'm not sure which behaviour, if either, matches real hardware.  I don't
think it matters that much, since it's pretty clear that if an OS writes
a bad value to SDR1, it's not going to boot.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
2017-03-01 11:23:39 +11:00
..
9pfs fsdev: add IO throttle support to fsdev devices 2017-02-28 10:31:46 +01:00
acpi hw/acpi/tco.c: fix tco timer stop 2017-02-28 09:03:39 +03:00
adc
alpha hw: Default -drive to if=ide explicitly where it works 2017-02-21 13:10:53 +01:00
arm hw/arm/exynos: Fix proper mapping of CPUs by providing real cluster ID 2017-02-28 12:08:20 +00:00
audio
block block: explicitly acquire aiocontext in aio callbacks that need it 2017-02-21 11:39:39 +00:00
bt
char hw/char/mcf_uart: QOMify the ColdFire UART 2017-02-16 14:06:56 +01:00
core register: fix incorrect read mask 2017-02-28 09:03:38 +03:00
cpu
cris
display trivial patches for 2017-02-28 2017-02-28 16:22:41 +00:00
dma
gpio
i2c
i386 This is the MTTCG pull-request as posted yesterday. 2017-02-25 18:43:52 +00:00
ide hw: Drop superfluous special checks for orphaned -drive 2017-02-21 13:17:45 +01:00
input
intc armv7m: Allow SHCSR writes to change pending and active bits 2017-02-28 12:08:19 +00:00
ipack
ipmi
isa
lm32
m68k hw/m68k: QOMify the ColdFire interrupt controller 2017-02-18 22:23:31 +01:00
mem
microblaze
mips hw/mips: MIPS Boston board support 2017-02-24 10:37:21 +00:00
misc hw/arm/exynos: Fix Linux kernel division by zero for PLLs 2017-02-28 12:08:20 +00:00
moxie
net cadence_gem: Remove unused parameter debug message 2017-02-28 09:03:38 +03:00
nios2
nvram
openrisc target/openrisc: Rename the cpu from or32 to or1k 2017-02-14 08:14:58 +11:00
pci Don't check qobject_type() before qobject_to_qdict() 2017-02-22 19:52:01 +01:00
pci-bridge
pci-host ppc patch queue for 2017-02-22 2017-02-24 10:13:57 +00:00
pcmcia
ppc target/ppc: Eliminate htab_base and htab_mask variables 2017-03-01 11:23:39 +11:00
s390x s390x/css: handle format-0 TIC CCW correctly 2017-02-24 10:15:18 +01:00
scsi Changes to -drive without if= and with if=scsi 2017-02-21 13:58:50 +00:00
sd bcm2835_sdhost: add bcm2835 sdhost controller 2017-02-28 12:08:19 +00:00
sh4 hw: Default -drive to if=ide explicitly where it works 2017-02-21 13:10:53 +01:00
smbios
sparc hw: Drop superfluous special checks for orphaned -drive 2017-02-21 13:17:45 +01:00
sparc64 Pull request for Niagara patches 2017 02 26 2017-02-26 22:40:23 +00:00
ssi
timer ARM i.MX timers: fix reset handling 2017-02-28 12:08:16 +00:00
tpm
tricore
unicore32
usb xhci: properties cleanup 2017-02-23 16:18:03 +01:00
vfio vfio/pci-quirks.c: Disable stolen memory for igd VFIO 2017-02-22 13:19:59 -07:00
virtio virtio: Fix no interrupt when not creating msi controller 2017-02-17 21:52:30 +02:00
watchdog
xen
xenpv
xtensa
Makefile.objs