qemu-patch-raspberry4/hw
Christoffer Dall 855011be05 hw: arm_gic_kvm: Add KVM VGIC save/restore logic
Save and restore the ARM KVM VGIC state from the kernel.  We rely on
QEMU to marshal the GICState data structure and therefore simply
synchronize the kernel state with the QEMU emulated state in both
directions.

We take some care on the restore path to check the VGIC has been
configured with enough IRQs and CPU interfaces that we can properly
restore the state, and for separate set/clear registers we first fully
clear the registers and then set the required bits.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Message-id: 1392687921-26921-1-git-send-email-christoffer.dall@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-02-26 17:20:01 +00:00
..
9pfs hw/9pfs: fix P9_STATS_GEN handling 2014-02-02 22:09:16 +05:30
acpi QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
alpha exec: Make stq_*_phys input an AddressSpace 2014-02-11 22:57:12 +10:00
arm hw/arm/musicpal: Remove nonexistent CDTP2, CDTP3 registers 2014-02-26 17:19:59 +00:00
audio qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
block Block patches 2014-02-25 10:50:11 +00:00
bt Preparation for usb-bt-dongle conditional build 2013-09-10 11:14:41 +02:00
char QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
core QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
cpu icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
cris cris: Remove the CRIS PIC glue 2014-02-03 14:04:00 +00:00
display qxl: add sanity check 2014-02-24 13:00:52 +01:00
dma qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
gpio max7310: QOM'ify 2014-02-14 16:22:32 +01:00
i2c i2c: Rename i2c_bus to I2CBus 2014-02-14 16:22:31 +01:00
i386 QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
ide Call pci_piix3_xen_ide_unplug from unplug_disks 2014-02-20 17:28:08 +00:00
input lm832x: QOM'ify 2014-02-14 16:22:32 +01:00
intc hw: arm_gic_kvm: Add KVM VGIC save/restore logic 2014-02-26 17:20:01 +00:00
ipack ipack: Move IndustryPack out of hw/char/ 2014-02-14 21:11:53 +01:00
isa QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
lm32 hw/lm32: print error if cpu model is not found 2014-02-04 19:47:39 +01:00
m68k an5206: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
microblaze xilinx: Delete hw/include/xilinx.h 2014-02-26 14:54:45 +10:00
mips i2c: Rename i2c_bus to I2CBus 2014-02-14 16:22:31 +01:00
misc hw/misc/arm_sysctl: Fix bad boundary check on mb clock accesses 2014-02-26 17:19:57 +00:00
moxie memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
net hw/net/stellaris_enet: Avoid unintended sign extension 2014-02-26 17:19:58 +00:00
nvram qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
openrisc openrisc-timer: Reduce overhead, Separate clock update functions 2013-11-20 21:46:45 +08:00
pci Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
pci-bridge pci/shpc: convert SHPC hotplug to use hotplug-handler API 2014-02-10 10:27:00 +02:00
pci-host acpi,pc,pci fixes and enhancements 2014-02-13 15:02:04 +00:00
pcmcia pcmcia/pxa2xx: QOM'ify PXA2xxPCMCIAState 2013-11-05 18:06:52 +01:00
ppc xilinx: Delete hw/include/xilinx.h 2014-02-26 14:54:45 +10:00
s390x exec: Make stb_phys input an AddressSpace 2014-02-11 22:57:38 +10:00
scsi qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
sd QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
sh4 exec: Make stw_*_phys input an AddressSpace 2014-02-11 22:57:32 +10:00
sparc sparc/leon3: Initialize stack pointer 2014-02-15 16:10:25 +04:00
sparc64 pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
ssi xilinx_spi: QOM cast cleanup 2013-07-29 21:07:01 +02:00
timer hw/timer/arm_timer: Avoid array overrun for bad addresses 2014-02-26 17:19:58 +00:00
tpm aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
unicore32 puv3: Turn puv3_load_kernel() into a no-op for qtest without -kernel 2013-11-05 17:47:28 +01:00
usb - xhci improvements and fixes. 2014-02-20 15:25:05 +00:00
virtio qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
watchdog qemu-option: Remove qemu_opts_create_nofail 2014-01-06 15:02:30 -05:00
xen Call pci_piix3_xen_ide_unplug from unplug_disks 2014-02-20 17:28:08 +00:00
xtensa hw/xtensa: add support for ML605 and KC705 FPGA board 2014-02-24 04:47:01 +04:00
Makefile.objs ipack: Move IndustryPack out of hw/char/ 2014-02-14 21:11:53 +01:00