aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MAINTAINERS4
-rw-r--r--accel/kvm/kvm-all.c4
-rw-r--r--accel/stubs/tcg-stub.c1
-rw-r--r--accel/tcg/tcg-all.c1
-rw-r--r--audio/audio.c4
-rw-r--r--audio/spiceaudio.c1
-rw-r--r--audio/wavcapture.c1
-rw-r--r--backends/cryptodev-builtin.c1
-rw-r--r--backends/cryptodev-vhost-user.c1
-rw-r--r--backends/cryptodev.c1
-rw-r--r--backends/hostmem.c1
-rw-r--r--backends/vhost-user.c1
-rw-r--r--balloon.c1
-rw-r--r--block.c1
-rw-r--r--block/block-backend.c4
-rw-r--r--block/create.c1
-rw-r--r--block/io.c1
-rw-r--r--block/nbd.c1
-rw-r--r--block/nfs.c2
-rw-r--r--block/nvme.c1
-rw-r--r--block/qcow2.c1
-rw-r--r--block/qed.c1
-rw-r--r--block/sheepdog.c1
-rw-r--r--block/throttle-groups.c1
-rw-r--r--blockdev-nbd.c1
-rw-r--r--blockdev.c2
-rw-r--r--blockjob.c1
-rw-r--r--chardev/baum.c1
-rw-r--r--chardev/char-pipe.c1
-rw-r--r--chardev/char-win-stdio.c1
-rw-r--r--chardev/char-win.c1
-rw-r--r--cpus.c3
-rw-r--r--device-hotplug.c1
-rw-r--r--dump/dump.c3
-rw-r--r--dump/win_dump.c1
-rw-r--r--exec.c3
-rw-r--r--fsdev/qemu-fsdev-throttle.c1
-rw-r--r--fsdev/qemu-fsdev-throttle.h1
-rw-r--r--gdbstub.c1
-rw-r--r--hw/9pfs/9p.c1
-rw-r--r--hw/9pfs/codir.c1
-rw-r--r--hw/9pfs/cofile.c1
-rw-r--r--hw/9pfs/cofs.c1
-rw-r--r--hw/9pfs/coth.c1
-rw-r--r--hw/9pfs/coth.h1
-rw-r--r--hw/9pfs/coxattr.c1
-rw-r--r--hw/9pfs/virtio-9p-device.c1
-rw-r--r--hw/9pfs/xen-9p-backend.c2
-rw-r--r--hw/acpi/core.c4
-rw-r--r--hw/acpi/cpu.c1
-rw-r--r--hw/acpi/cpu_hotplug.c1
-rw-r--r--hw/acpi/ich9.c7
-rw-r--r--hw/acpi/memory_hotplug.c1
-rw-r--r--hw/acpi/pcihp.c3
-rw-r--r--hw/acpi/piix4.c8
-rw-r--r--hw/acpi/tco.c2
-rw-r--r--hw/acpi/vmgenid.c4
-rw-r--r--hw/adc/stm32f2xx_adc.c2
-rw-r--r--hw/alpha/alpha_sys.h1
-rw-r--r--hw/alpha/dp264.c2
-rw-r--r--hw/alpha/pci.c1
-rw-r--r--hw/alpha/typhoon.c4
-rw-r--r--hw/arm/allwinner-a10.c2
-rw-r--r--hw/arm/armsse.c2
-rw-r--r--hw/arm/armv7m.c2
-rw-r--r--hw/arm/aspeed.c1
-rw-r--r--hw/arm/aspeed_soc.c1
-rw-r--r--hw/arm/boot.c3
-rw-r--r--hw/arm/collie.c1
-rw-r--r--hw/arm/cubieboard.c1
-rw-r--r--hw/arm/digic.c1
-rw-r--r--hw/arm/exynos4210.c4
-rw-r--r--hw/arm/exynos4_boards.c2
-rw-r--r--hw/arm/fsl-imx25.c2
-rw-r--r--hw/arm/fsl-imx31.c2
-rw-r--r--hw/arm/fsl-imx6.c1
-rw-r--r--hw/arm/gumstix.c1
-rw-r--r--hw/arm/highbank.c2
-rw-r--r--hw/arm/integratorcp.c4
-rw-r--r--hw/arm/kzm.c1
-rw-r--r--hw/arm/mainstone.c1
-rw-r--r--hw/arm/mcimx6ul-evk.c1
-rw-r--r--hw/arm/mcimx7d-sabre.c1
-rw-r--r--hw/arm/microbit.c1
-rw-r--r--hw/arm/msf2-soc.c4
-rw-r--r--hw/arm/msf2-som.c1
-rw-r--r--hw/arm/musicpal.c5
-rw-r--r--hw/arm/netduino2.c1
-rw-r--r--hw/arm/nrf51_soc.c2
-rw-r--r--hw/arm/nseries.c3
-rw-r--r--hw/arm/omap1.c6
-rw-r--r--hw/arm/omap2.c6
-rw-r--r--hw/arm/omap_sx1.c1
-rw-r--r--hw/arm/palm.c3
-rw-r--r--hw/arm/pxa2xx.c3
-rw-r--r--hw/arm/pxa2xx_gpio.c3
-rw-r--r--hw/arm/pxa2xx_pic.c2
-rw-r--r--hw/arm/realview.c1
-rw-r--r--hw/arm/sabrelite.c1
-rw-r--r--hw/arm/sbsa-ref.c2
-rw-r--r--hw/arm/smmu-common.c1
-rw-r--r--hw/arm/smmuv3.c4
-rw-r--r--hw/arm/spitz.c5
-rw-r--r--hw/arm/stellaris.c3
-rw-r--r--hw/arm/stm32f205_soc.c2
-rw-r--r--hw/arm/strongarm.c3
-rw-r--r--hw/arm/sysbus-fdt.c1
-rw-r--r--hw/arm/tosa.c4
-rw-r--r--hw/arm/versatilepb.c2
-rw-r--r--hw/arm/virt-acpi-build.c3
-rw-r--r--hw/arm/virt.c4
-rw-r--r--hw/arm/xlnx-zynqmp.c1
-rw-r--r--hw/arm/z2.c4
-rw-r--r--hw/audio/ac97.c3
-rw-r--r--hw/audio/adlib.c2
-rw-r--r--hw/audio/cs4231.c1
-rw-r--r--hw/audio/cs4231a.c5
-rw-r--r--hw/audio/es1370.c2
-rw-r--r--hw/audio/gus.c4
-rw-r--r--hw/audio/hda-codec.c3
-rw-r--r--hw/audio/intel-hda.c3
-rw-r--r--hw/audio/intel-hda.h2
-rw-r--r--hw/audio/lm4549.c1
-rw-r--r--hw/audio/lm4549.h1
-rw-r--r--hw/audio/marvell_88w8618.c4
-rw-r--r--hw/audio/milkymist-ac97.c3
-rw-r--r--hw/audio/pcspk.c2
-rw-r--r--hw/audio/pl041.c3
-rw-r--r--hw/audio/sb16.c5
-rw-r--r--hw/audio/wm8750.c1
-rw-r--r--hw/block/dataplane/virtio-blk.c1
-rw-r--r--hw/block/dataplane/xen-block.c2
-rw-r--r--hw/block/ecc.c2
-rw-r--r--hw/block/fdc.c5
-rw-r--r--hw/block/m25p80.c3
-rw-r--r--hw/block/nand.c3
-rw-r--r--hw/block/nvme.c3
-rw-r--r--hw/block/onenand.c2
-rw-r--r--hw/block/pflash_cfi01.c5
-rw-r--r--hw/block/pflash_cfi02.c3
-rw-r--r--hw/block/tc58128.c1
-rw-r--r--hw/block/vhost-user-blk.c3
-rw-r--r--hw/block/virtio-blk.c4
-rw-r--r--hw/block/xen-block.c3
-rw-r--r--hw/char/bcm2835_aux.c3
-rw-r--r--hw/char/cadence_uart.c2
-rw-r--r--hw/char/cmsdk-apb-uart.c2
-rw-r--r--hw/char/debugcon.c2
-rw-r--r--hw/char/digic-uart.c3
-rw-r--r--hw/char/escc.c4
-rw-r--r--hw/char/etraxfs_ser.c2
-rw-r--r--hw/char/exynos4210_uart.c4
-rw-r--r--hw/char/grlib_apbuart.c2
-rw-r--r--hw/char/imx_serial.c4
-rw-r--r--hw/char/ipoctal232.c3
-rw-r--r--hw/char/lm32_juart.c3
-rw-r--r--hw/char/lm32_uart.c4
-rw-r--r--hw/char/mcf_uart.c3
-rw-r--r--hw/char/milkymist-uart.c4
-rw-r--r--hw/char/nrf51_uart.c3
-rw-r--r--hw/char/omap_uart.c1
-rw-r--r--hw/char/parallel-isa.c2
-rw-r--r--hw/char/parallel.c5
-rw-r--r--hw/char/pl011.c2
-rw-r--r--hw/char/sclpconsole-lm.c3
-rw-r--r--hw/char/sclpconsole.c3
-rw-r--r--hw/char/serial-isa.c3
-rw-r--r--hw/char/serial-pci-multi.c3
-rw-r--r--hw/char/serial-pci.c3
-rw-r--r--hw/char/serial.c4
-rw-r--r--hw/char/sh_serial.c3
-rw-r--r--hw/char/spapr_vty.c4
-rw-r--r--hw/char/stm32f2xx_usart.c2
-rw-r--r--hw/char/terminal3270.c1
-rw-r--r--hw/char/virtio-console.c1
-rw-r--r--hw/char/virtio-serial-bus.c3
-rw-r--r--hw/char/xen_console.c2
-rw-r--r--hw/char/xilinx_uartlite.c3
-rw-r--r--hw/core/bus.c2
-rw-r--r--hw/core/empty_slot.c1
-rw-r--r--hw/core/generic-loader.c2
-rw-r--r--hw/core/loader-fit.c1
-rw-r--r--hw/core/loader.c2
-rw-r--r--hw/core/machine-qmp-cmds.c2
-rw-r--r--hw/core/null-machine.c1
-rw-r--r--hw/core/numa.c5
-rw-r--r--hw/core/or-irq.c3
-rw-r--r--hw/core/platform-bus.c2
-rw-r--r--hw/core/ptimer.c3
-rw-r--r--hw/core/qdev-fw.c2
-rw-r--r--hw/core/qdev-properties-system.c2
-rw-r--r--hw/core/qdev-properties.c4
-rw-r--r--hw/core/qdev.c5
-rw-r--r--hw/core/register.c1
-rw-r--r--hw/core/split-irq.c2
-rw-r--r--hw/core/vm-change-state-handler.c3
-rw-r--r--hw/cpu/a15mpcore.c2
-rw-r--r--hw/cpu/a9mpcore.c2
-rw-r--r--hw/cpu/arm11mpcore.c2
-rw-r--r--hw/cpu/cluster.c1
-rw-r--r--hw/cpu/realview_mpcore.c2
-rw-r--r--hw/cris/boot.c2
-rw-r--r--hw/display/ads7846.c2
-rw-r--r--hw/display/ati.c2
-rw-r--r--hw/display/bcm2835_fb.c4
-rw-r--r--hw/display/bochs-display.c3
-rw-r--r--hw/display/cg3.c3
-rw-r--r--hw/display/cirrus_vga.c4
-rw-r--r--hw/display/cirrus_vga_isa.c2
-rw-r--r--hw/display/dpcd.c1
-rw-r--r--hw/display/edid-region.c1
-rw-r--r--hw/display/exynos4210_fimd.c3
-rw-r--r--hw/display/framebuffer.c1
-rw-r--r--hw/display/g364fb.c3
-rw-r--r--hw/display/i2c-ddc.c2
-rw-r--r--hw/display/jazz_led.c1
-rw-r--r--hw/display/milkymist-tmu2.c3
-rw-r--r--hw/display/milkymist-vgafb.c2
-rw-r--r--hw/display/omap_dss.c2
-rw-r--r--hw/display/omap_lcdc.c3
-rw-r--r--hw/display/pl110.c2
-rw-r--r--hw/display/pxa2xx_lcd.c2
-rw-r--r--hw/display/qxl-render.c1
-rw-r--r--hw/display/qxl.c5
-rw-r--r--hw/display/qxl.h1
-rw-r--r--hw/display/ramfb-standalone.c2
-rw-r--r--hw/display/ramfb.c3
-rw-r--r--hw/display/sii9022.c1
-rw-r--r--hw/display/sm501.c3
-rw-r--r--hw/display/ssd0303.c1
-rw-r--r--hw/display/ssd0323.c1
-rw-r--r--hw/display/tc6393xb.c4
-rw-r--r--hw/display/tcx.c2
-rw-r--r--hw/display/vga-isa-mm.c4
-rw-r--r--hw/display/vga-isa.c2
-rw-r--r--hw/display/vga-pci.c3
-rw-r--r--hw/display/vga.c4
-rw-r--r--hw/display/vhost-user-gpu.c1
-rw-r--r--hw/display/virtio-gpu-pci.c1
-rw-r--r--hw/display/virtio-gpu.c3
-rw-r--r--hw/display/virtio-vga.c2
-rw-r--r--hw/display/vmware_vga.c3
-rw-r--r--hw/display/xenfb.c1
-rw-r--r--hw/display/xlnx_dp.c2
-rw-r--r--hw/dma/bcm2835_dma.c2
-rw-r--r--hw/dma/etraxfs_dma.c5
-rw-r--r--hw/dma/i82374.c2
-rw-r--r--hw/dma/i8257.c3
-rw-r--r--hw/dma/pl080.c4
-rw-r--r--hw/dma/pl330.c3
-rw-r--r--hw/dma/puv3_dma.c1
-rw-r--r--hw/dma/pxa2xx_dma.c3
-rw-r--r--hw/dma/rc4030.c3
-rw-r--r--hw/dma/sparc32_dma.c4
-rw-r--r--hw/dma/xilinx_axidma.c3
-rw-r--r--hw/dma/xlnx-zdma.c3
-rw-r--r--hw/dma/xlnx-zynq-devcfg.c3
-rw-r--r--hw/dma/xlnx_dpdma.c2
-rw-r--r--hw/gpio/bcm2835_gpio.c2
-rw-r--r--hw/gpio/gpio_key.c2
-rw-r--r--hw/gpio/imx_gpio.c3
-rw-r--r--hw/gpio/max7310.c4
-rw-r--r--hw/gpio/mpc8xxx.c2
-rw-r--r--hw/gpio/nrf51_gpio.c2
-rw-r--r--hw/gpio/omap_gpio.c3
-rw-r--r--hw/gpio/pl061.c2
-rw-r--r--hw/gpio/puv3_gpio.c1
-rw-r--r--hw/gpio/zaurus.c3
-rw-r--r--hw/hppa/dino.c4
-rw-r--r--hw/hppa/hppa_sys.h1
-rw-r--r--hw/hppa/machine.c2
-rw-r--r--hw/hppa/pci.c1
-rw-r--r--hw/hyperv/hyperv_testdev.c1
-rw-r--r--hw/i2c/aspeed_i2c.c2
-rw-r--r--hw/i2c/bitbang_i2c.c2
-rw-r--r--hw/i2c/core.c2
-rw-r--r--hw/i2c/exynos4210_i2c.c2
-rw-r--r--hw/i2c/imx_i2c.c2
-rw-r--r--hw/i2c/microbit_i2c.c1
-rw-r--r--hw/i2c/mpc_i2c.c2
-rw-r--r--hw/i2c/omap_i2c.c3
-rw-r--r--hw/i2c/pm_smbus.c3
-rw-r--r--hw/i2c/ppc4xx_i2c.c2
-rw-r--r--hw/i2c/smbus_eeprom.c3
-rw-r--r--hw/i2c/smbus_ich9.c3
-rw-r--r--hw/i2c/smbus_master.c1
-rw-r--r--hw/i2c/smbus_slave.c2
-rw-r--r--hw/i386/acpi-build.c2
-rw-r--r--hw/i386/amd_iommu.c2
-rw-r--r--hw/i386/amd_iommu.h1
-rw-r--r--hw/i386/intel_iommu.c3
-rw-r--r--hw/i386/kvm/clock.c4
-rw-r--r--hw/i386/kvm/i8254.c3
-rw-r--r--hw/i386/kvm/i8259.c1
-rw-r--r--hw/i386/kvm/ioapic.c2
-rw-r--r--hw/i386/kvmvapic.c2
-rw-r--r--hw/i386/multiboot.c1
-rw-r--r--hw/i386/pc.c5
-rw-r--r--hw/i386/pc_piix.c3
-rw-r--r--hw/i386/pc_q35.c3
-rw-r--r--hw/i386/pc_sysfw.c3
-rw-r--r--hw/i386/vmmouse.c5
-rw-r--r--hw/i386/vmport.c2
-rw-r--r--hw/i386/x86-iommu.c1
-rw-r--r--hw/i386/xen/xen-hvm.c5
-rw-r--r--hw/i386/xen/xen-mapcache.c1
-rw-r--r--hw/i386/xen/xen_platform.c2
-rw-r--r--hw/i386/xen/xen_pvdevice.c3
-rw-r--r--hw/ide/ahci-allwinner.c2
-rw-r--r--hw/ide/ahci.c4
-rw-r--r--hw/ide/ahci_internal.h1
-rw-r--r--hw/ide/cmd646.c5
-rw-r--r--hw/ide/core.c5
-rw-r--r--hw/ide/ich.c2
-rw-r--r--hw/ide/ioport.c2
-rw-r--r--hw/ide/isa.c3
-rw-r--r--hw/ide/macio.c3
-rw-r--r--hw/ide/microdrive.c2
-rw-r--r--hw/ide/mmio.c3
-rw-r--r--hw/ide/pci.c2
-rw-r--r--hw/ide/piix.c4
-rw-r--r--hw/ide/qdev.c5
-rw-r--r--hw/ide/sii3112.c1
-rw-r--r--hw/ide/via.c4
-rw-r--r--hw/input/adb-kbd.c2
-rw-r--r--hw/input/adb-mouse.c1
-rw-r--r--hw/input/adb.c2
-rw-r--r--hw/input/hid.c3
-rw-r--r--hw/input/lm832x.c4
-rw-r--r--hw/input/milkymist-softusb.c4
-rw-r--r--hw/input/pckbd.c7
-rw-r--r--hw/input/pl050.c2
-rw-r--r--hw/input/ps2.c6
-rw-r--r--hw/input/pxa2xx_keypad.c2
-rw-r--r--hw/input/stellaris_input.c4
-rw-r--r--hw/input/tsc2005.c4
-rw-r--r--hw/input/tsc210x.c3
-rw-r--r--hw/input/vhost-user-input.c1
-rw-r--r--hw/input/virtio-input-hid.c2
-rw-r--r--hw/input/virtio-input-host.c2
-rw-r--r--hw/input/virtio-input.c2
-rw-r--r--hw/intc/allwinner-a10-pic.c3
-rw-r--r--hw/intc/apic_common.c4
-rw-r--r--hw/intc/arm_gic.c1
-rw-r--r--hw/intc/arm_gic_common.c2
-rw-r--r--hw/intc/arm_gicv2m.c2
-rw-r--r--hw/intc/arm_gicv3_common.c2
-rw-r--r--hw/intc/arm_gicv3_cpuif.c1
-rw-r--r--hw/intc/arm_gicv3_its_common.c1
-rw-r--r--hw/intc/arm_gicv3_its_kvm.c3
-rw-r--r--hw/intc/arm_gicv3_kvm.c2
-rw-r--r--hw/intc/armv7m_nvic.c3
-rw-r--r--hw/intc/aspeed_vic.c2
-rw-r--r--hw/intc/bcm2835_ic.c2
-rw-r--r--hw/intc/bcm2836_control.c2
-rw-r--r--hw/intc/etraxfs_pic.c3
-rw-r--r--hw/intc/exynos4210_combiner.c4
-rw-r--r--hw/intc/exynos4210_gic.c2
-rw-r--r--hw/intc/grlib_irqmp.c1
-rw-r--r--hw/intc/heathrow_pic.c3
-rw-r--r--hw/intc/i8259.c3
-rw-r--r--hw/intc/i8259_common.c3
-rw-r--r--hw/intc/imx_avic.c2
-rw-r--r--hw/intc/imx_gpcv2.c1
-rw-r--r--hw/intc/ioapic.c3
-rw-r--r--hw/intc/ioapic_common.c1
-rw-r--r--hw/intc/lm32_pic.c3
-rw-r--r--hw/intc/mips_gic.c5
-rw-r--r--hw/intc/nios2_iic.c1
-rw-r--r--hw/intc/omap_intc.c3
-rw-r--r--hw/intc/ompic.c4
-rw-r--r--hw/intc/openpic.c4
-rw-r--r--hw/intc/openpic_kvm.c2
-rw-r--r--hw/intc/pl190.c2
-rw-r--r--hw/intc/pnv_xive.c2
-rw-r--r--hw/intc/puv3_intc.c1
-rw-r--r--hw/intc/realview_gic.c2
-rw-r--r--hw/intc/s390_flic.c3
-rw-r--r--hw/intc/s390_flic_kvm.c1
-rw-r--r--hw/intc/sh_intc.c2
-rw-r--r--hw/intc/slavio_intctl.c2
-rw-r--r--hw/intc/spapr_xive.c3
-rw-r--r--hw/intc/spapr_xive_kvm.c1
-rw-r--r--hw/intc/xics.c5
-rw-r--r--hw/intc/xics_kvm.c1
-rw-r--r--hw/intc/xics_pnv.c1
-rw-r--r--hw/intc/xics_spapr.c1
-rw-r--r--hw/intc/xilinx_intc.c3
-rw-r--r--hw/intc/xive.c3
-rw-r--r--hw/intc/xlnx-pmu-iomod-intc.c3
-rw-r--r--hw/intc/xlnx-zynqmp-ipi.c2
-rw-r--r--hw/ipack/ipack.c3
-rw-r--r--hw/ipack/tpci200.c2
-rw-r--r--hw/ipmi/ipmi.c4
-rw-r--r--hw/ipmi/ipmi_bmc_extern.c3
-rw-r--r--hw/ipmi/ipmi_bmc_sim.c2
-rw-r--r--hw/ipmi/isa_ipmi_bt.c4
-rw-r--r--hw/ipmi/isa_ipmi_kcs.c4
-rw-r--r--hw/isa/apm.c2
-rw-r--r--hw/isa/i82378.c2
-rw-r--r--hw/isa/isa-superio.c1
-rw-r--r--hw/isa/lpc_ich9.c6
-rw-r--r--hw/isa/pc87312.c2
-rw-r--r--hw/isa/piix4.c3
-rw-r--r--hw/isa/vt82c686.c5
-rw-r--r--hw/lm32/lm32.h1
-rw-r--r--hw/lm32/lm32_boards.c3
-rw-r--r--hw/lm32/milkymist-hw.h2
-rw-r--r--hw/lm32/milkymist.c4
-rw-r--r--hw/m68k/an5206.c1
-rw-r--r--hw/m68k/mcf5206.c3
-rw-r--r--hw/m68k/mcf5208.c3
-rw-r--r--hw/m68k/mcf_intc.c1
-rw-r--r--hw/mem/memory-device.c1
-rw-r--r--hw/mem/nvdimm.c2
-rw-r--r--hw/mem/pc-dimm.c4
-rw-r--r--hw/microblaze/boot.c1
-rw-r--r--hw/microblaze/boot.h1
-rw-r--r--hw/microblaze/petalogix_ml605_mmu.c2
-rw-r--r--hw/microblaze/petalogix_s3adsp1800_mmu.c1
-rw-r--r--hw/microblaze/xlnx-zynqmp-pmu.c1
-rw-r--r--hw/mips/addr.c1
-rw-r--r--hw/mips/boston.c3
-rw-r--r--hw/mips/cps.c2
-rw-r--r--hw/mips/gt64xxx_pci.c3
-rw-r--r--hw/mips/mips_fulong2e.c2
-rw-r--r--hw/mips/mips_int.c2
-rw-r--r--hw/mips/mips_jazz.c2
-rw-r--r--hw/mips/mips_malta.c4
-rw-r--r--hw/mips/mips_mipssim.c3
-rw-r--r--hw/mips/mips_r4k.c4
-rw-r--r--hw/misc/a9scu.c2
-rw-r--r--hw/misc/applesmc.c2
-rw-r--r--hw/misc/arm11scu.c1
-rw-r--r--hw/misc/arm_integrator_debug.c1
-rw-r--r--hw/misc/arm_l2x0.c2
-rw-r--r--hw/misc/arm_sysctl.c6
-rw-r--r--hw/misc/armsse-cpuid.c2
-rw-r--r--hw/misc/armsse-mhu.c3
-rw-r--r--hw/misc/aspeed_scu.c1
-rw-r--r--hw/misc/aspeed_sdmc.c1
-rw-r--r--hw/misc/aspeed_xdma.c2
-rw-r--r--hw/misc/bcm2835_mbox.c2
-rw-r--r--hw/misc/bcm2835_property.c3
-rw-r--r--hw/misc/bcm2835_rng.c1
-rw-r--r--hw/misc/cbus.c2
-rw-r--r--hw/misc/debugexit.c2
-rw-r--r--hw/misc/eccmemctl.c3
-rw-r--r--hw/misc/edu.c1
-rw-r--r--hw/misc/exynos4210_clk.c1
-rw-r--r--hw/misc/exynos4210_pmu.c3
-rw-r--r--hw/misc/exynos4210_rng.c1
-rw-r--r--hw/misc/imx25_ccm.c1
-rw-r--r--hw/misc/imx31_ccm.c1
-rw-r--r--hw/misc/imx6_ccm.c1
-rw-r--r--hw/misc/imx6_src.c3
-rw-r--r--hw/misc/imx6ul_ccm.c1
-rw-r--r--hw/misc/imx7_ccm.c1
-rw-r--r--hw/misc/imx7_gpr.c1
-rw-r--r--hw/misc/imx7_snvs.c2
-rw-r--r--hw/misc/iotkit-secctl.c2
-rw-r--r--hw/misc/iotkit-sysctl.c4
-rw-r--r--hw/misc/iotkit-sysinfo.c2
-rw-r--r--hw/misc/ivshmem.c3
-rw-r--r--hw/misc/macio/cuda.c5
-rw-r--r--hw/misc/macio/gpio.c3
-rw-r--r--hw/misc/macio/mac_dbdma.c3
-rw-r--r--hw/misc/macio/macio.c4
-rw-r--r--hw/misc/macio/pmu.c6
-rw-r--r--hw/misc/max111x.c2
-rw-r--r--hw/misc/milkymist-hpdmc.c2
-rw-r--r--hw/misc/milkymist-pfpu.c3
-rw-r--r--hw/misc/mips_cmgcr.c4
-rw-r--r--hw/misc/mips_cpc.c2
-rw-r--r--hw/misc/mips_itu.c1
-rw-r--r--hw/misc/mos6522.c5
-rw-r--r--hw/misc/mps2-fpgaio.c2
-rw-r--r--hw/misc/mps2-scc.c2
-rw-r--r--hw/misc/msf2-sysreg.c2
-rw-r--r--hw/misc/mst_fpga.c3
-rw-r--r--hw/misc/nrf51_rng.c3
-rw-r--r--hw/misc/omap_clk.c2
-rw-r--r--hw/misc/omap_gpmc.c3
-rw-r--r--hw/misc/omap_l4.c1
-rw-r--r--hw/misc/omap_sdrc.c1
-rw-r--r--hw/misc/pc-testdev.c3
-rw-r--r--hw/misc/pca9552.c2
-rw-r--r--hw/misc/pci-testdev.c2
-rw-r--r--hw/misc/puv3_pm.c1
-rw-r--r--hw/misc/pvpanic.c3
-rw-r--r--hw/misc/sga.c1
-rw-r--r--hw/misc/slavio_misc.c4
-rw-r--r--hw/misc/tmp105.c3
-rw-r--r--hw/misc/tmp421.c2
-rw-r--r--hw/misc/tz-mpc.c3
-rw-r--r--hw/misc/tz-msc.c3
-rw-r--r--hw/misc/tz-ppc.c3
-rw-r--r--hw/misc/unimp.c1
-rw-r--r--hw/misc/vmcoreinfo.c2
-rw-r--r--hw/misc/zynq-xadc.c4
-rw-r--r--hw/misc/zynq_slcr.c4
-rw-r--r--hw/moxie/moxiesim.c3
-rw-r--r--hw/net/allwinner_emac.c3
-rw-r--r--hw/net/cadence_gem.c3
-rw-r--r--hw/net/can/can_kvaser_pci.c4
-rw-r--r--hw/net/can/can_mioe3680_pci.c4
-rw-r--r--hw/net/can/can_pcm3680_pci.c4
-rw-r--r--hw/net/can/can_sja1000.c4
-rw-r--r--hw/net/can/can_sja1000.h1
-rw-r--r--hw/net/dp8393x.c3
-rw-r--r--hw/net/e1000.c3
-rw-r--r--hw/net/e1000e.c3
-rw-r--r--hw/net/e1000e_core.c3
-rw-r--r--hw/net/e1000x_common.c1
-rw-r--r--hw/net/eepro100.c4
-rw-r--r--hw/net/fsl_etsec/etsec.c4
-rw-r--r--hw/net/fsl_etsec/etsec.h1
-rw-r--r--hw/net/ftgmac100.c3
-rw-r--r--hw/net/imx_fec.c3
-rw-r--r--hw/net/lan9118.c6
-rw-r--r--hw/net/lance.c2
-rw-r--r--hw/net/mcf_fec.c2
-rw-r--r--hw/net/milkymist-minimac2.c4
-rw-r--r--hw/net/mipsnet.c4
-rw-r--r--hw/net/ne2000-isa.c2
-rw-r--r--hw/net/ne2000-pci.c4
-rw-r--r--hw/net/ne2000.c4
-rw-r--r--hw/net/ne2000.h1
-rw-r--r--hw/net/opencores_eth.c4
-rw-r--r--hw/net/pcnet-pci.c3
-rw-r--r--hw/net/pcnet.c5
-rw-r--r--hw/net/pcnet.h1
-rw-r--r--hw/net/rocker/rocker.c3
-rw-r--r--hw/net/rocker/rocker_desc.c1
-rw-r--r--hw/net/rtl8139.c3
-rw-r--r--hw/net/smc91c111.c3
-rw-r--r--hw/net/spapr_llan.c5
-rw-r--r--hw/net/stellaris_enet.c3
-rw-r--r--hw/net/sungem.c2
-rw-r--r--hw/net/sunhme.c3
-rw-r--r--hw/net/vhost_net.c2
-rw-r--r--hw/net/virtio-net.c3
-rw-r--r--hw/net/vmxnet3.c2
-rw-r--r--hw/net/xen_nic.c1
-rw-r--r--hw/net/xgmac.c3
-rw-r--r--hw/net/xilinx_axienet.c4
-rw-r--r--hw/net/xilinx_ethlite.c3
-rw-r--r--hw/nios2/10m50_devboard.c2
-rw-r--r--hw/nios2/boot.c1
-rw-r--r--hw/nios2/boot.h1
-rw-r--r--hw/nios2/cpu_pic.c1
-rw-r--r--hw/nios2/generic_nommu.c2
-rw-r--r--hw/nvram/chrp_nvram.c1
-rw-r--r--hw/nvram/ds1225y.c2
-rw-r--r--hw/nvram/eeprom93xx.c3
-rw-r--r--hw/nvram/eeprom_at24c.c2
-rw-r--r--hw/nvram/fw_cfg.c5
-rw-r--r--hw/nvram/mac_nvram.c3
-rw-r--r--hw/nvram/nrf51_nvm.c2
-rw-r--r--hw/nvram/spapr_nvram.c4
-rw-r--r--hw/openrisc/cputimer.c2
-rw-r--r--hw/openrisc/openrisc_sim.c4
-rw-r--r--hw/openrisc/pic_cpu.c2
-rw-r--r--hw/pci-bridge/gen_pcie_root_port.c2
-rw-r--r--hw/pci-bridge/i82801b11.c1
-rw-r--r--hw/pci-bridge/ioh3420.c1
-rw-r--r--hw/pci-bridge/pci_bridge_dev.c1
-rw-r--r--hw/pci-bridge/pci_expander_bridge.c1
-rw-r--r--hw/pci-bridge/pcie_pci_bridge.c1
-rw-r--r--hw/pci-bridge/pcie_root_port.c1
-rw-r--r--hw/pci-bridge/xio3130_downstream.c2
-rw-r--r--hw/pci-bridge/xio3130_upstream.c1
-rw-r--r--hw/pci-host/bonito.c6
-rw-r--r--hw/pci-host/designware.c3
-rw-r--r--hw/pci-host/gpex.c4
-rw-r--r--hw/pci-host/grackle.c2
-rw-r--r--hw/pci-host/pam.c1
-rw-r--r--hw/pci-host/piix.c8
-rw-r--r--hw/pci-host/ppce500.c4
-rw-r--r--hw/pci-host/prep.c4
-rw-r--r--hw/pci-host/q35.c3
-rw-r--r--hw/pci-host/sabre.c4
-rw-r--r--hw/pci-host/uninorth.c3
-rw-r--r--hw/pci-host/versatile.c3
-rw-r--r--hw/pci-host/xilinx-pcie.c2
-rw-r--r--hw/pci/msix.c3
-rw-r--r--hw/pci/pci.c6
-rw-r--r--hw/pci/pcie_aer.c1
-rw-r--r--hw/pci/pcie_host.c1
-rw-r--r--hw/pci/pcie_port.c1
-rw-r--r--hw/pci/shpc.c1
-rw-r--r--hw/pcmcia/pcmcia.c1
-rw-r--r--hw/pcmcia/pxa2xx.c2
-rw-r--r--hw/ppc/e500.c5
-rw-r--r--hw/ppc/e500plat.c1
-rw-r--r--hw/ppc/mac.h1
-rw-r--r--hw/ppc/mac_newworld.c3
-rw-r--r--hw/ppc/mac_oldworld.c3
-rw-r--r--hw/ppc/mpc8544_guts.c3
-rw-r--r--hw/ppc/mpc8544ds.c1
-rw-r--r--hw/ppc/pnv.c5
-rw-r--r--hw/ppc/pnv_bmc.c2
-rw-r--r--hw/ppc/pnv_core.c3
-rw-r--r--hw/ppc/pnv_lpc.c2
-rw-r--r--hw/ppc/pnv_occ.c2
-rw-r--r--hw/ppc/pnv_psi.c4
-rw-r--r--hw/ppc/pnv_xscom.c1
-rw-r--r--hw/ppc/ppc.c7
-rw-r--r--hw/ppc/ppc405_boards.c3
-rw-r--r--hw/ppc/ppc405_uc.c5
-rw-r--r--hw/ppc/ppc440_bamboo.c2
-rw-r--r--hw/ppc/ppc440_pcix.c2
-rw-r--r--hw/ppc/ppc440_uc.c5
-rw-r--r--hw/ppc/ppc4xx_devs.c4
-rw-r--r--hw/ppc/ppc4xx_pci.c4
-rw-r--r--hw/ppc/ppc_booke.c5
-rw-r--r--hw/ppc/ppce500_spin.c1
-rw-r--r--hw/ppc/prep.c4
-rw-r--r--hw/ppc/prep_systemio.c5
-rw-r--r--hw/ppc/rs6000_mc.c2
-rw-r--r--hw/ppc/sam460ex.c3
-rw-r--r--hw/ppc/spapr.c6
-rw-r--r--hw/ppc/spapr_caps.c1
-rw-r--r--hw/ppc/spapr_cpu_core.c5
-rw-r--r--hw/ppc/spapr_drc.c3
-rw-r--r--hw/ppc/spapr_events.c5
-rw-r--r--hw/ppc/spapr_hcall.c3
-rw-r--r--hw/ppc/spapr_iommu.c3
-rw-r--r--hw/ppc/spapr_irq.c2
-rw-r--r--hw/ppc/spapr_ovec.c1
-rw-r--r--hw/ppc/spapr_pci.c4
-rw-r--r--hw/ppc/spapr_rng.c3
-rw-r--r--hw/ppc/spapr_rtas.c3
-rw-r--r--hw/ppc/spapr_rtc.c1
-rw-r--r--hw/ppc/spapr_vio.c5
-rw-r--r--hw/ppc/virtex_ml507.c3
-rw-r--r--hw/rdma/vmw/pvrdma_cmd.c1
-rw-r--r--hw/rdma/vmw/pvrdma_main.c4
-rw-r--r--hw/riscv/boot.c2
-rw-r--r--hw/riscv/riscv_hart.c2
-rw-r--r--hw/riscv/sifive_clint.c1
-rw-r--r--hw/riscv/sifive_e.c2
-rw-r--r--hw/riscv/sifive_gpio.c2
-rw-r--r--hw/riscv/sifive_plic.c1
-rw-r--r--hw/riscv/sifive_prci.c2
-rw-r--r--hw/riscv/sifive_test.c2
-rw-r--r--hw/riscv/sifive_u.c2
-rw-r--r--hw/riscv/sifive_uart.c2
-rw-r--r--hw/riscv/spike.c2
-rw-r--r--hw/riscv/virt.c2
-rw-r--r--hw/s390x/3270-ccw.c2
-rw-r--r--hw/s390x/ap-device.c1
-rw-r--r--hw/s390x/ccw-device.c1
-rw-r--r--hw/s390x/css-bridge.c1
-rw-r--r--hw/s390x/css.c2
-rw-r--r--hw/s390x/event-facility.c2
-rw-r--r--hw/s390x/ipl.c3
-rw-r--r--hw/s390x/ipl.h2
-rw-r--r--hw/s390x/s390-ccw.c1
-rw-r--r--hw/s390x/s390-pci-bus.c1
-rw-r--r--hw/s390x/s390-skeys.c1
-rw-r--r--hw/s390x/s390-stattrib.c1
-rw-r--r--hw/s390x/s390-virtio-ccw.c3
-rw-r--r--hw/s390x/sclpcpu.c1
-rw-r--r--hw/s390x/sclpquiesce.c4
-rw-r--r--hw/s390x/tod-kvm.c2
-rw-r--r--hw/s390x/tod.c1
-rw-r--r--hw/s390x/vhost-vsock-ccw.c1
-rw-r--r--hw/s390x/virtio-ccw-9p.c1
-rw-r--r--hw/s390x/virtio-ccw-balloon.c1
-rw-r--r--hw/s390x/virtio-ccw-blk.c1
-rw-r--r--hw/s390x/virtio-ccw-crypto.c1
-rw-r--r--hw/s390x/virtio-ccw-gpu.c1
-rw-r--r--hw/s390x/virtio-ccw-input.c1
-rw-r--r--hw/s390x/virtio-ccw-net.c1
-rw-r--r--hw/s390x/virtio-ccw-rng.c1
-rw-r--r--hw/s390x/virtio-ccw-scsi.c1
-rw-r--r--hw/s390x/virtio-ccw-serial.c1
-rw-r--r--hw/s390x/virtio-ccw.c3
-rw-r--r--hw/scsi/esp-pci.c2
-rw-r--r--hw/scsi/esp.c2
-rw-r--r--hw/scsi/lsi53c895a.c3
-rw-r--r--hw/scsi/megasas.c3
-rw-r--r--hw/scsi/mptconfig.c1
-rw-r--r--hw/scsi/mptendian.c1
-rw-r--r--hw/scsi/mptsas.c5
-rw-r--r--hw/scsi/scsi-bus.c7
-rw-r--r--hw/scsi/scsi-disk.c5
-rw-r--r--hw/scsi/scsi-generic.c2
-rw-r--r--hw/scsi/spapr_vscsi.c4
-rw-r--r--hw/scsi/vhost-scsi.c3
-rw-r--r--hw/scsi/vhost-user-scsi.c2
-rw-r--r--hw/scsi/virtio-scsi.c2
-rw-r--r--hw/scsi/vmw_pvscsi.c3
-rw-r--r--hw/sd/bcm2835_sdhost.c2
-rw-r--r--hw/sd/milkymist-memcard.c4
-rw-r--r--hw/sd/omap_mmc.c3
-rw-r--r--hw/sd/pl181.c2
-rw-r--r--hw/sd/pxa2xx_mmci.c4
-rw-r--r--hw/sd/sd.c4
-rw-r--r--hw/sd/sdhci-pci.c2
-rw-r--r--hw/sd/sdhci.c4
-rw-r--r--hw/sd/ssi-sd.c2
-rw-r--r--hw/semihosting/config.c1
-rw-r--r--hw/sh4/r2d.c5
-rw-r--r--hw/sh4/sh7750.c3
-rw-r--r--hw/sh4/sh7750_regnames.c1
-rw-r--r--hw/sh4/sh_pci.c1
-rw-r--r--hw/sh4/shix.c1
-rw-r--r--hw/smbios/smbios.c1
-rw-r--r--hw/sparc/leon3.c5
-rw-r--r--hw/sparc/sun4m.c6
-rw-r--r--hw/sparc/sun4m_iommu.c3
-rw-r--r--hw/sparc64/niagara.c3
-rw-r--r--hw/sparc64/sparc64.c1
-rw-r--r--hw/sparc64/sun4u.c5
-rw-r--r--hw/ssi/aspeed_smc.c4
-rw-r--r--hw/ssi/imx_spi.c3
-rw-r--r--hw/ssi/mss-spi.c2
-rw-r--r--hw/ssi/omap_spi.c2
-rw-r--r--hw/ssi/pl022.c2
-rw-r--r--hw/ssi/ssi.c1
-rw-r--r--hw/ssi/stm32f2xx_spi.c1
-rw-r--r--hw/ssi/xilinx_spi.c4
-rw-r--r--hw/ssi/xilinx_spips.c4
-rw-r--r--hw/timer/a9gtimer.c4
-rw-r--r--hw/timer/allwinner-a10-pit.c5
-rw-r--r--hw/timer/altera_timer.c4
-rw-r--r--hw/timer/arm_mptimer.c4
-rw-r--r--hw/timer/arm_timer.c4
-rw-r--r--hw/timer/armv7m_systick.c2
-rw-r--r--hw/timer/aspeed_rtc.c1
-rw-r--r--hw/timer/aspeed_timer.c2
-rw-r--r--hw/timer/cadence_ttc.c2
-rw-r--r--hw/timer/cmsdk-apb-dualtimer.c3
-rw-r--r--hw/timer/cmsdk-apb-timer.c2
-rw-r--r--hw/timer/digic-timer.c1
-rw-r--r--hw/timer/ds1338.c1
-rw-r--r--hw/timer/etraxfs_timer.c5
-rw-r--r--hw/timer/exynos4210_mct.c4
-rw-r--r--hw/timer/exynos4210_pwm.c2
-rw-r--r--hw/timer/exynos4210_rtc.c5
-rw-r--r--hw/timer/grlib_gptimer.c2
-rw-r--r--hw/timer/hpet.c3
-rw-r--r--hw/timer/i8254.c2
-rw-r--r--hw/timer/i8254_common.c3
-rw-r--r--hw/timer/imx_epit.c2
-rw-r--r--hw/timer/imx_gpt.c2
-rw-r--r--hw/timer/lm32_timer.c4
-rw-r--r--hw/timer/m48t59-isa.c1
-rw-r--r--hw/timer/m48t59.c5
-rw-r--r--hw/timer/mc146818rtc.c6
-rw-r--r--hw/timer/milkymist-sysctl.c7
-rw-r--r--hw/timer/mips_gictimer.c1
-rw-r--r--hw/timer/mss-timer.c3
-rw-r--r--hw/timer/nrf51_timer.c2
-rw-r--r--hw/timer/omap_gptimer.c3
-rw-r--r--hw/timer/omap_synctimer.c1
-rw-r--r--hw/timer/pl031.c3
-rw-r--r--hw/timer/puv3_ost.c1
-rw-r--r--hw/timer/pxa2xx_timer.c6
-rw-r--r--hw/timer/sh_timer.c1
-rw-r--r--hw/timer/slavio_timer.c3
-rw-r--r--hw/timer/stm32f2xx_timer.c3
-rw-r--r--hw/timer/sun4v-rtc.c1
-rw-r--r--hw/timer/twl92230.c4
-rw-r--r--hw/timer/xilinx_timer.c2
-rw-r--r--hw/timer/xlnx-zynqmp-rtc.c2
-rw-r--r--hw/tpm/tpm_crb.c2
-rw-r--r--hw/tpm/tpm_emulator.c2
-rw-r--r--hw/tpm/tpm_passthrough.c1
-rw-r--r--hw/tpm/tpm_ppi.c1
-rw-r--r--hw/tpm/tpm_tis.c3
-rw-r--r--hw/tpm/tpm_util.c2
-rw-r--r--hw/tpm/trace-events4
-rw-r--r--hw/tricore/tricore_testboard.c2
-rw-r--r--hw/unicore32/puv3.c1
-rw-r--r--hw/usb/bus.c4
-rw-r--r--hw/usb/ccid-card-emulated.c1
-rw-r--r--hw/usb/ccid-card-passthru.c2
-rw-r--r--hw/usb/ccid.h2
-rw-r--r--hw/usb/dev-audio.c3
-rw-r--r--hw/usb/dev-bluetooth.c1
-rw-r--r--hw/usb/dev-hid.c3
-rw-r--r--hw/usb/dev-hub.c2
-rw-r--r--hw/usb/dev-mtp.c2
-rw-r--r--hw/usb/dev-network.c2
-rw-r--r--hw/usb/dev-serial.c2
-rw-r--r--hw/usb/dev-smartcard-reader.c2
-rw-r--r--hw/usb/dev-storage.c2
-rw-r--r--hw/usb/dev-uas.c3
-rw-r--r--hw/usb/dev-wacom.c2
-rw-r--r--hw/usb/hcd-ehci-pci.c2
-rw-r--r--hw/usb/hcd-ehci-sysbus.c2
-rw-r--r--hw/usb/hcd-ehci.c4
-rw-r--r--hw/usb/hcd-ehci.h2
-rw-r--r--hw/usb/hcd-ohci-pci.c3
-rw-r--r--hw/usb/hcd-ohci.c4
-rw-r--r--hw/usb/hcd-uhci.c3
-rw-r--r--hw/usb/hcd-xhci-nec.c2
-rw-r--r--hw/usb/hcd-xhci.c3
-rw-r--r--hw/usb/host-libusb.c4
-rw-r--r--hw/usb/libhw.c1
-rw-r--r--hw/usb/redirect.c4
-rw-r--r--hw/usb/tusb6010.c1
-rw-r--r--hw/usb/xen-usb.c1
-rw-r--r--hw/vfio/amd-xgbe.c1
-rw-r--r--hw/vfio/ap.c4
-rw-r--r--hw/vfio/calxeda-xgmac.c1
-rw-r--r--hw/vfio/ccw.c2
-rw-r--r--hw/vfio/common.c2
-rw-r--r--hw/vfio/pci-quirks.c2
-rw-r--r--hw/vfio/pci.c5
-rw-r--r--hw/vfio/platform.c5
-rw-r--r--hw/virtio/vhost-backend.c1
-rw-r--r--hw/virtio/vhost-scsi-pci.c1
-rw-r--r--hw/virtio/vhost-user-blk-pci.c1
-rw-r--r--hw/virtio/vhost-user-scsi-pci.c1
-rw-r--r--hw/virtio/vhost-user.c1
-rw-r--r--hw/virtio/vhost-vsock-pci.c1
-rw-r--r--hw/virtio/vhost-vsock.c1
-rw-r--r--hw/virtio/vhost.c2
-rw-r--r--hw/virtio/virtio-9p-pci.c1
-rw-r--r--hw/virtio/virtio-balloon-pci.c1
-rw-r--r--hw/virtio/virtio-balloon.c1
-rw-r--r--hw/virtio/virtio-blk-pci.c1
-rw-r--r--hw/virtio/virtio-bus.c2
-rw-r--r--hw/virtio/virtio-crypto-pci.c1
-rw-r--r--hw/virtio/virtio-crypto.c3
-rw-r--r--hw/virtio/virtio-input-pci.c1
-rw-r--r--hw/virtio/virtio-mmio.c3
-rw-r--r--hw/virtio/virtio-net-pci.c1
-rw-r--r--hw/virtio/virtio-pci.c2
-rw-r--r--hw/virtio/virtio-pmem.c3
-rw-r--r--hw/virtio/virtio-rng.c4
-rw-r--r--hw/virtio/virtio-scsi-pci.c1
-rw-r--r--hw/virtio/virtio-serial-pci.c1
-rw-r--r--hw/virtio/virtio.c4
-rw-r--r--hw/watchdog/cmsdk-apb-watchdog.c3
-rw-r--r--hw/watchdog/watchdog.c2
-rw-r--r--hw/watchdog/wdt_aspeed.c2
-rw-r--r--hw/watchdog/wdt_diag288.c2
-rw-r--r--hw/watchdog/wdt_i6300esb.c2
-rw-r--r--hw/watchdog/wdt_ib700.c2
-rw-r--r--hw/xen/xen-bus-helper.c1
-rw-r--r--hw/xen/xen-bus.c2
-rw-r--r--hw/xen/xen-common.c1
-rw-r--r--hw/xen/xen-legacy-backend.c3
-rw-r--r--hw/xen/xen_devconfig.c1
-rw-r--r--hw/xen/xen_pt.c1
-rw-r--r--hw/xen/xen_pt_load_rom.c2
-rw-r--r--hw/xen/xen_pvdev.c1
-rw-r--r--hw/xenpv/xen_machine_pv.c2
-rw-r--r--hw/xtensa/mx_pic.c2
-rw-r--r--hw/xtensa/pic_cpu.c2
-rw-r--r--hw/xtensa/sim.c1
-rw-r--r--hw/xtensa/xtensa_memory.c2
-rw-r--r--hw/xtensa/xtensa_memory.h1
-rw-r--r--hw/xtensa/xtfpga.c4
-rw-r--r--include/authz/listfile.h1
-rw-r--r--include/block/block.h1
-rw-r--r--include/block/block_int.h1
-rw-r--r--include/block/raw-aio.h2
-rw-r--r--include/block/write-threshold.h2
-rw-r--r--include/chardev/char-fe.h1
-rw-r--r--include/chardev/char-io.h1
-rw-r--r--include/chardev/char.h2
-rw-r--r--include/disas/disas.h1
-rw-r--r--include/exec/cpu-defs.h1
-rw-r--r--include/exec/cputlb.h3
-rw-r--r--include/exec/exec-all.h1
-rw-r--r--include/exec/ioport.h2
-rw-r--r--include/exec/memory-internal.h2
-rw-r--r--include/exec/memory.h10
-rw-r--r--include/exec/ram_addr.h1
-rw-r--r--include/exec/softmmu-semi.h2
-rw-r--r--include/exec/tb-hash.h2
-rw-r--r--include/exec/user/thunk.h2
-rw-r--r--include/fpu/softfloat-macros.h2
-rw-r--r--include/hw/acpi/acpi.h1
-rw-r--r--include/hw/acpi/acpi_dev_interface.h2
-rw-r--r--include/hw/acpi/pci.h3
-rw-r--r--include/hw/acpi/tco.h2
-rw-r--r--include/hw/acpi/vmgenid.h2
-rw-r--r--include/hw/adc/stm32f2xx_adc.h2
-rw-r--r--include/hw/arm/allwinner-a10.h3
-rw-r--r--include/hw/arm/aspeed_soc.h1
-rw-r--r--include/hw/arm/bcm2836.h1
-rw-r--r--include/hw/arm/boot.h2
-rw-r--r--include/hw/arm/exynos4210.h3
-rw-r--r--include/hw/arm/fsl-imx25.h1
-rw-r--r--include/hw/arm/fsl-imx31.h1
-rw-r--r--include/hw/arm/fsl-imx7.h1
-rw-r--r--include/hw/arm/omap.h1
-rw-r--r--include/hw/arm/sharpsl.h3
-rw-r--r--include/hw/arm/soc_dma.h3
-rw-r--r--include/hw/arm/xlnx-zynqmp.h2
-rw-r--r--include/hw/audio/pcspk.h2
-rw-r--r--include/hw/audio/wm8750.h1
-rw-r--r--include/hw/block/fdc.h1
-rw-r--r--include/hw/block/flash.h2
-rw-r--r--include/hw/boards.h4
-rw-r--r--include/hw/bt.h1
-rw-r--r--include/hw/char/cadence_uart.h1
-rw-r--r--include/hw/char/cmsdk-apb-uart.h1
-rw-r--r--include/hw/char/escc.h1
-rw-r--r--include/hw/char/lm32_juart.h2
-rw-r--r--include/hw/char/parallel.h1
-rw-r--r--include/hw/char/pl011.h1
-rw-r--r--include/hw/char/serial.h2
-rw-r--r--include/hw/char/stm32f2xx_usart.h1
-rw-r--r--include/hw/char/xilinx_uartlite.h3
-rw-r--r--include/hw/core/generic-loader.h1
-rw-r--r--include/hw/core/split-irq.h1
-rw-r--r--include/hw/cpu/cluster.h2
-rw-r--r--include/hw/cpu/core.h2
-rw-r--r--include/hw/cris/etraxfs.h2
-rw-r--r--include/hw/cris/etraxfs_dma.h2
-rw-r--r--include/hw/display/blizzard.h1
-rw-r--r--include/hw/display/edid.h2
-rw-r--r--include/hw/display/i2c-ddc.h1
-rw-r--r--include/hw/display/milkymist_tmu2.h3
-rw-r--r--include/hw/display/tc6393xb.h3
-rw-r--r--include/hw/display/vga.h2
-rw-r--r--include/hw/dma/i8257.h1
-rw-r--r--include/hw/empty_slot.h2
-rw-r--r--include/hw/gpio/bcm2835_gpio.h1
-rw-r--r--include/hw/hw.h9
-rw-r--r--include/hw/i2c/aspeed_i2c.h2
-rw-r--r--include/hw/i2c/i2c.h2
-rw-r--r--include/hw/i2c/pm_smbus.h1
-rw-r--r--include/hw/i2c/smbus_eeprom.h1
-rw-r--r--include/hw/i386/apic_internal.h1
-rw-r--r--include/hw/i386/ich9.h1
-rw-r--r--include/hw/i386/intel_iommu.h2
-rw-r--r--include/hw/i386/ioapic_internal.h2
-rw-r--r--include/hw/i386/pc.h1
-rw-r--r--include/hw/ide/internal.h4
-rw-r--r--include/hw/input/adb.h2
-rw-r--r--include/hw/input/gamepad.h1
-rw-r--r--include/hw/input/hid.h1
-rw-r--r--include/hw/input/i8042.h1
-rw-r--r--include/hw/input/tsc2xxx.h1
-rw-r--r--include/hw/intc/allwinner-a10-pic.h2
-rw-r--r--include/hw/intc/heathrow_pic.h2
-rw-r--r--include/hw/intc/mips_gic.h1
-rw-r--r--include/hw/ipack/ipack.h2
-rw-r--r--include/hw/ipmi/ipmi.h2
-rw-r--r--include/hw/irq.h4
-rw-r--r--include/hw/isa/apm.h1
-rw-r--r--include/hw/isa/i8259_internal.h1
-rw-r--r--include/hw/isa/isa.h2
-rw-r--r--include/hw/isa/vt82c686.h1
-rw-r--r--include/hw/mem/memory-device.h3
-rw-r--r--include/hw/mem/pc-dimm.h4
-rw-r--r--include/hw/mips/cps.h1
-rw-r--r--include/hw/mips/mips.h1
-rw-r--r--include/hw/misc/auxbus.h3
-rw-r--r--include/hw/misc/cbus.h1
-rw-r--r--include/hw/misc/macio/cuda.h2
-rw-r--r--include/hw/misc/macio/gpio.h3
-rw-r--r--include/hw/misc/macio/macio.h2
-rw-r--r--include/hw/misc/macio/pmu.h3
-rw-r--r--include/hw/misc/mips_cmgcr.h2
-rw-r--r--include/hw/misc/mips_cpc.h2
-rw-r--r--include/hw/misc/mos6522.h1
-rw-r--r--include/hw/misc/pvpanic.h3
-rw-r--r--include/hw/misc/stm32f2xx_syscfg.h1
-rw-r--r--include/hw/misc/unimp.h1
-rw-r--r--include/hw/misc/vmcoreinfo.h2
-rw-r--r--include/hw/net/allwinner_emac.h1
-rw-r--r--include/hw/net/lan9118.h1
-rw-r--r--include/hw/net/lance.h1
-rw-r--r--include/hw/net/ne2000-isa.h3
-rw-r--r--include/hw/net/smc91c111.h1
-rw-r--r--include/hw/nvram/chrp_nvram.h2
-rw-r--r--include/hw/or-irq.h1
-rw-r--r--include/hw/pci-host/designware.h1
-rw-r--r--include/hw/pci-host/gpex.h1
-rw-r--r--include/hw/pci-host/q35.h1
-rw-r--r--include/hw/pci-host/sabre.h2
-rw-r--r--include/hw/pci-host/uninorth.h3
-rw-r--r--include/hw/pci-host/xilinx-pcie.h1
-rw-r--r--include/hw/pci/pci.h1
-rw-r--r--include/hw/pci/pcie.h1
-rw-r--r--include/hw/pci/pcie_aer.h2
-rw-r--r--include/hw/pci/shpc.h1
-rw-r--r--include/hw/pcmcia.h2
-rw-r--r--include/hw/ppc/openpic.h1
-rw-r--r--include/hw/ppc/pnv_core.h1
-rw-r--r--include/hw/ppc/ppc4xx.h3
-rw-r--r--include/hw/ppc/spapr_cpu_core.h2
-rw-r--r--include/hw/ppc/spapr_drc.h5
-rw-r--r--include/hw/ppc/spapr_irq.h2
-rw-r--r--include/hw/ppc/spapr_ovec.h1
-rw-r--r--include/hw/ppc/spapr_vio.h1
-rw-r--r--include/hw/ppc/spapr_xive.h1
-rw-r--r--include/hw/ppc/xics.h3
-rw-r--r--include/hw/ppc/xive.h1
-rw-r--r--include/hw/ppc/xive_regs.h3
-rw-r--r--include/hw/ptimer.h1
-rw-r--r--include/hw/qdev-core.h12
-rw-r--r--include/hw/qdev-properties.h2
-rw-r--r--include/hw/qdev.h8
-rw-r--r--include/hw/riscv/boot.h2
-rw-r--r--include/hw/riscv/riscv_hart.h3
-rw-r--r--include/hw/riscv/riscv_htif.h2
-rw-r--r--include/hw/riscv/sifive_clint.h2
-rw-r--r--include/hw/riscv/sifive_e.h1
-rw-r--r--include/hw/riscv/sifive_plic.h2
-rw-r--r--include/hw/riscv/sifive_prci.h2
-rw-r--r--include/hw/riscv/sifive_test.h2
-rw-r--r--include/hw/riscv/sifive_u.h1
-rw-r--r--include/hw/riscv/sifive_uart.h3
-rw-r--r--include/hw/riscv/spike.h3
-rw-r--r--include/hw/riscv/virt.h3
-rw-r--r--include/hw/s390x/ap-device.h3
-rw-r--r--include/hw/s390x/css-bridge.h3
-rw-r--r--include/hw/s390x/css.h1
-rw-r--r--include/hw/s390x/event-facility.h2
-rw-r--r--include/hw/s390x/sclp.h1
-rw-r--r--include/hw/s390x/storage-attributes.h2
-rw-r--r--include/hw/s390x/storage-keys.h2
-rw-r--r--include/hw/s390x/tod.h4
-rw-r--r--include/hw/scsi/scsi.h4
-rw-r--r--include/hw/sd/sd.h2
-rw-r--r--include/hw/semihosting/console.h2
-rw-r--r--include/hw/sh4/sh_intc.h2
-rw-r--r--include/hw/sparc/grlib.h1
-rw-r--r--include/hw/sparc/sparc64.h2
-rw-r--r--include/hw/ssi/aspeed_smc.h1
-rw-r--r--include/hw/ssi/ssi.h2
-rw-r--r--include/hw/ssi/stm32f2xx_spi.h1
-rw-r--r--include/hw/ssi/xilinx_spips.h1
-rw-r--r--include/hw/sysbus.h2
-rw-r--r--include/hw/timer/allwinner-a10-pit.h1
-rw-r--r--include/hw/timer/aspeed_rtc.h1
-rw-r--r--include/hw/timer/cmsdk-apb-timer.h1
-rw-r--r--include/hw/timer/i8254.h3
-rw-r--r--include/hw/timer/i8254_internal.h2
-rw-r--r--include/hw/timer/m48t59.h1
-rw-r--r--include/hw/timer/mc146818rtc_regs.h2
-rw-r--r--include/hw/timer/stm32f2xx_timer.h1
-rw-r--r--include/hw/timer/xlnx-zynqmp-rtc.h1
-rw-r--r--include/hw/tricore/tricore.h1
-rw-r--r--include/hw/usb.h3
-rw-r--r--include/hw/vfio/vfio-platform.h1
-rw-r--r--include/hw/virtio/vhost-scsi-common.h1
-rw-r--r--include/hw/virtio/vhost-scsi.h1
-rw-r--r--include/hw/virtio/vhost-user-blk.h1
-rw-r--r--include/hw/virtio/vhost-user-scsi.h1
-rw-r--r--include/hw/virtio/vhost.h1
-rw-r--r--include/hw/virtio/virtio-access.h1
-rw-r--r--include/hw/virtio/virtio-bus.h3
-rw-r--r--include/hw/virtio/virtio-gpu-bswap.h1
-rw-r--r--include/hw/virtio/virtio-pmem.h2
-rw-r--r--include/hw/virtio/virtio-rng.h1
-rw-r--r--include/hw/virtio/virtio-serial.h1
-rw-r--r--include/hw/virtio/virtio.h6
-rw-r--r--include/hw/watchdog/wdt_aspeed.h1
-rw-r--r--include/hw/watchdog/wdt_diag288.h2
-rw-r--r--include/hw/xen/xen-legacy-backend.h1
-rw-r--r--include/hw/xen/xen.h1
-rw-r--r--include/hw/xen/xen_common.h2
-rw-r--r--include/hw/xtensa/mx_pic.h1
-rw-r--r--include/libdecnumber/decNumberLocal.h1
-rw-r--r--include/migration/cpu.h5
-rw-r--r--include/migration/global_state.h1
-rw-r--r--include/migration/misc.h1
-rw-r--r--include/migration/vmstate.h1
-rw-r--r--include/monitor/hmp-target.h2
-rw-r--r--include/monitor/qdev.h2
-rw-r--r--include/net/can_emu.h1
-rw-r--r--include/net/filter.h1
-rw-r--r--include/net/net.h1
-rw-r--r--include/qapi/error.h2
-rw-r--r--include/qemu/atomic128.h2
-rw-r--r--include/qemu/fifo8.h1
-rw-r--r--include/qemu/job.h2
-rw-r--r--include/qemu/queue.h2
-rw-r--r--include/qemu/range.h2
-rw-r--r--include/qemu/ratelimit.h2
-rw-r--r--include/qemu/thread-win32.h2
-rw-r--r--include/qemu/typedefs.h38
-rw-r--r--include/qom/cpu.h4
-rw-r--r--include/qom/object.h1
-rw-r--r--include/sysemu/accel.h1
-rw-r--r--include/sysemu/arch_init.h1
-rw-r--r--include/sysemu/balloon.h1
-rw-r--r--include/sysemu/cryptodev-vhost-user.h3
-rw-r--r--include/sysemu/cryptodev.h1
-rw-r--r--include/sysemu/dma.h1
-rw-r--r--include/sysemu/hax.h1
-rw-r--r--include/sysemu/hostmem.h3
-rw-r--r--include/sysemu/hvf.h2
-rw-r--r--include/sysemu/iothread.h1
-rw-r--r--include/sysemu/kvm.h1
-rw-r--r--include/sysemu/kvm_int.h2
-rw-r--r--include/sysemu/memory_mapping.h1
-rw-r--r--include/sysemu/numa.h18
-rw-r--r--include/sysemu/replay.h2
-rw-r--r--include/sysemu/rng.h1
-rw-r--r--include/sysemu/runstate.h68
-rw-r--r--include/sysemu/sysemu.h68
-rw-r--r--include/sysemu/xen-mapcache.h2
-rw-r--r--include/ui/egl-helpers.h2
-rw-r--r--include/ui/input.h1
-rw-r--r--include/ui/spice-display.h2
-rw-r--r--linux-user/elfload.c1
-rw-r--r--linux-user/main.c1
-rw-r--r--linux-user/qemu.h1
-rw-r--r--linux-user/syscall.c1
-rw-r--r--memory.c5
-rw-r--r--migration/block-dirty-bitmap.c2
-rw-r--r--migration/block.c1
-rw-r--r--migration/colo.c3
-rw-r--r--migration/global_state.c1
-rw-r--r--migration/migration.c4
-rw-r--r--migration/migration.h4
-rw-r--r--migration/postcopy-ram.c1
-rw-r--r--migration/qemu-file-channel.c1
-rw-r--r--migration/qemu-file.h1
-rw-r--r--migration/rdma.c1
-rw-r--r--migration/savevm.c4
-rw-r--r--migration/vmstate-types.c1
-rw-r--r--monitor/hmp-cmds.c2
-rw-r--r--monitor/hmp.c2
-rw-r--r--monitor/misc.c2
-rw-r--r--monitor/monitor-internal.h1
-rw-r--r--monitor/monitor.c1
-rw-r--r--monitor/qmp-cmds.c2
-rw-r--r--nbd/client.c1
-rw-r--r--nbd/nbd-internal.h2
-rw-r--r--nbd/server.c1
-rw-r--r--net/can/can_socketcan.c1
-rw-r--r--net/net.c4
-rw-r--r--net/netmap.c1
-rw-r--r--net/tap-bsd.c1
-rw-r--r--net/tap-linux.c1
-rw-r--r--net/tap-solaris.c1
-rw-r--r--net/tap-win32.c2
-rw-r--r--net/tap.c1
-rw-r--r--os-posix.c2
-rw-r--r--os-win32.c2
-rw-r--r--qapi/Makefile.objs2
-rw-r--r--qapi/common.json24
-rw-r--r--qapi/error.json29
-rw-r--r--qapi/qapi-dealloc-visitor.c1
-rw-r--r--qapi/qapi-schema.json1
-rw-r--r--qapi/qmp-dispatch.c2
-rw-r--r--qdev-monitor.c2
-rw-r--r--qemu-img.c2
-rw-r--r--qom/cpu.c3
-rw-r--r--qom/object.c1
-rw-r--r--qom/qom-qmp-cmds.c2
-rw-r--r--qtest.c3
-rw-r--r--replay/replay-audio.c1
-rw-r--r--replay/replay-char.c1
-rw-r--r--replay/replay-internal.c3
-rw-r--r--replay/replay-net.c1
-rw-r--r--replay/replay-snapshot.c1
-rw-r--r--replay/replay.c2
-rw-r--r--scripts/tracetool/format/c.py1
-rw-r--r--scripts/tracetool/format/h.py7
-rw-r--r--scripts/tracetool/format/log_stap.py3
-rw-r--r--stubs/change-state-handler.c2
-rw-r--r--stubs/replay.c1
-rw-r--r--stubs/runstate-check.c2
-rw-r--r--stubs/semihost.c1
-rw-r--r--stubs/vm-stop.c2
-rw-r--r--target/alpha/cpu.h2
-rw-r--r--target/alpha/machine.c2
-rw-r--r--target/alpha/sys_helper.c1
-rw-r--r--target/arm/cpu.h2
-rw-r--r--target/arm/cpu64.c1
-rw-r--r--target/arm/helper-a64.c2
-rw-r--r--target/arm/helper.c4
-rw-r--r--target/arm/kvm.c2
-rw-r--r--target/arm/kvm32.c1
-rw-r--r--target/arm/kvm64.c2
-rw-r--r--target/arm/m_helper.c3
-rw-r--r--target/arm/machine.c2
-rw-r--r--target/arm/monitor.c1
-rw-r--r--target/arm/psci.c4
-rw-r--r--target/cris/cpu.h2
-rw-r--r--target/cris/machine.c1
-rw-r--r--target/hppa/cpu.h4
-rw-r--r--target/hppa/machine.c2
-rw-r--r--target/hppa/op_helper.c2
-rw-r--r--target/i386/cpu.c2
-rw-r--r--target/i386/cpu.h2
-rw-r--r--target/i386/excp_helper.c2
-rw-r--r--target/i386/hax-all.c3
-rw-r--r--target/i386/helper.c2
-rw-r--r--target/i386/hvf/hvf.c4
-rw-r--r--target/i386/hvf/x86_task.c2
-rw-r--r--target/i386/kvm.c3
-rw-r--r--target/i386/machine.c2
-rw-r--r--target/i386/monitor.c1
-rw-r--r--target/i386/sev.c1
-rw-r--r--target/i386/sev_i386.h2
-rw-r--r--target/i386/whpx-all.c4
-rw-r--r--target/lm32/cpu.h2
-rw-r--r--target/lm32/helper.c1
-rw-r--r--target/lm32/machine.c2
-rw-r--r--target/lm32/op_helper.c3
-rw-r--r--target/m68k/m68k-semi.c1
-rw-r--r--target/mips/cp0_timer.c1
-rw-r--r--target/mips/internal.h2
-rw-r--r--target/mips/kvm.c3
-rw-r--r--target/mips/machine.c1
-rw-r--r--target/moxie/machine.c2
-rw-r--r--target/nios2/nios2-semi.c1
-rw-r--r--target/openrisc/cpu.h2
-rw-r--r--target/openrisc/machine.c2
-rw-r--r--target/ppc/cpu-qom.h2
-rw-r--r--target/ppc/cpu.h2
-rw-r--r--target/ppc/int_helper.c2
-rw-r--r--target/ppc/kvm.c4
-rw-r--r--target/ppc/machine.c3
-rw-r--r--target/ppc/mem_helper.c2
-rw-r--r--target/ppc/misc_helper.c2
-rw-r--r--target/ppc/mmu_helper.c2
-rw-r--r--target/ppc/translate.c1
-rw-r--r--target/s390x/cpu.c2
-rw-r--r--target/s390x/cpu.h2
-rw-r--r--target/s390x/helper.c2
-rw-r--r--target/s390x/kvm.c3
-rw-r--r--target/s390x/machine.c2
-rw-r--r--target/s390x/mmu_helper.c1
-rw-r--r--target/s390x/sigp.c2
-rw-r--r--target/sh4/helper.c3
-rw-r--r--target/sparc/cpu.h2
-rw-r--r--target/sparc/helper.c1
-rw-r--r--target/sparc/int32_helper.c2
-rw-r--r--target/sparc/machine.c2
-rw-r--r--target/tilegx/cpu.c1
-rw-r--r--target/xtensa/translate.c1
-rw-r--r--target/xtensa/xtensa-semi.c1
-rw-r--r--tcg/optimize.c1
-rw-r--r--tcg/tcg-common.c1
-rw-r--r--tcg/tcg-op-gvec.c1
-rw-r--r--tcg/tcg.c1
-rw-r--r--tests/migration-test.c1
-rw-r--r--tests/test-bdrv-drain.c1
-rw-r--r--tests/test-bdrv-graph-mod.c1
-rw-r--r--tests/test-block-backend.c1
-rw-r--r--tests/test-block-iothread.c1
-rw-r--r--tests/test-image-locking.c1
-rw-r--r--tests/test-qdev-global-props.c2
-rw-r--r--tests/test-replication.c1
-rw-r--r--tests/test-throttle.c1
-rw-r--r--trace/control-internal.h25
-rw-r--r--trace/control-vcpu.h63
-rw-r--r--trace/control.h24
-rw-r--r--trace/qmp.c2
-rw-r--r--ui/cocoa.m2
-rw-r--r--ui/gtk.c1
-rw-r--r--ui/input-keymap.c1
-rw-r--r--ui/input-legacy.c1
-rw-r--r--ui/input-linux.c2
-rw-r--r--ui/input.c1
-rw-r--r--ui/kbd-state.c1
-rw-r--r--ui/keymaps.c1
-rw-r--r--ui/sdl2-2d.c1
-rw-r--r--ui/sdl2-gl.c1
-rw-r--r--ui/sdl2-input.c1
-rw-r--r--ui/sdl2.c1
-rw-r--r--ui/spice-core.c4
-rw-r--r--ui/spice-display.c2
-rw-r--r--ui/vnc-auth-sasl.h1
-rw-r--r--ui/vnc.c2
-rw-r--r--ui/vnc.h1
-rw-r--r--util/fifo8.c1
-rw-r--r--util/oslib-posix.c1
-rw-r--r--util/qemu-timer.c1
-rw-r--r--util/vfio-helpers.c1
-rw-r--r--vl.c11
1278 files changed, 2187 insertions, 1024 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index d6de200453..743a92666a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1874,6 +1874,7 @@ M: Markus Armbruster <armbru@redhat.com>
S: Supported
F: include/qapi/error.h
F: include/qemu/error-report.h
+F: qapi/error.json
F: util/error.c
F: util/qemu-error.c
@@ -1923,6 +1924,8 @@ Main loop
M: Paolo Bonzini <pbonzini@redhat.com>
S: Maintained
F: cpus.c
+F: include/qemu/main-loop.h
+F: include/sysemu/runstate.h
F: util/main-loop.c
F: util/qemu-timer.c
F: vl.c
@@ -2062,6 +2065,7 @@ F: monitor/monitor-internal.h
F: monitor/qmp*
F: monitor/misc.c
F: monitor/monitor.c
+F: qapi/error.json
F: docs/devel/*qmp-*
F: docs/interop/*qmp-*
F: scripts/qmp/
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
index f450f25295..b09bad0804 100644
--- a/accel/kvm/kvm-all.c
+++ b/accel/kvm/kvm-all.c
@@ -23,18 +23,20 @@
#include "qemu/config-file.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
#include "hw/s390x/adapter.h"
#include "exec/gdbstub.h"
#include "sysemu/kvm_int.h"
+#include "sysemu/runstate.h"
#include "sysemu/cpus.h"
+#include "sysemu/sysemu.h"
#include "qemu/bswap.h"
#include "exec/memory.h"
#include "exec/ram_addr.h"
#include "exec/address-spaces.h"
#include "qemu/event_notifier.h"
+#include "qemu/main-loop.h"
#include "trace.h"
#include "hw/irq.h"
#include "sysemu/sev.h"
diff --git a/accel/stubs/tcg-stub.c b/accel/stubs/tcg-stub.c
index 76ae461749..e2d23edafe 100644
--- a/accel/stubs/tcg-stub.c
+++ b/accel/stubs/tcg-stub.c
@@ -14,7 +14,6 @@
#include "qemu-common.h"
#include "cpu.h"
#include "tcg/tcg.h"
-#include "exec/cpu-common.h"
#include "exec/exec-all.h"
void tb_flush(CPUState *cpu)
diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c
index c92d4c82ed..c59d5b0024 100644
--- a/accel/tcg/tcg-all.c
+++ b/accel/tcg/tcg-all.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "sysemu/accel.h"
-#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#include "qom/object.h"
#include "cpu.h"
diff --git a/audio/audio.c b/audio/audio.c
index 05adf7ffeb..c8b88d892d 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -23,17 +23,17 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "audio.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "qemu/timer.h"
#include "qapi/error.h"
#include "qapi/qobject-input-visitor.h"
#include "qapi/qapi-visit-audio.h"
-#include "sysemu/sysemu.h"
#include "qemu/cutils.h"
#include "qemu/module.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
#include "trace.h"
#define AUDIO_CAP "audio"
diff --git a/audio/spiceaudio.c b/audio/spiceaudio.c
index 0ead5ae43a..ec1c8fe936 100644
--- a/audio/spiceaudio.c
+++ b/audio/spiceaudio.c
@@ -18,7 +18,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/host-utils.h"
#include "qemu/module.h"
#include "qemu/error-report.h"
diff --git a/audio/wavcapture.c b/audio/wavcapture.c
index 74320dfecc..493edc60e4 100644
--- a/audio/wavcapture.c
+++ b/audio/wavcapture.c
@@ -1,5 +1,4 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "monitor/monitor.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
diff --git a/backends/cryptodev-builtin.c b/backends/cryptodev-builtin.c
index 9fb0bd57a6..c8ae3b9742 100644
--- a/backends/cryptodev-builtin.c
+++ b/backends/cryptodev-builtin.c
@@ -23,7 +23,6 @@
#include "qemu/osdep.h"
#include "sysemu/cryptodev.h"
-#include "hw/boards.h"
#include "qapi/error.h"
#include "standard-headers/linux/virtio_crypto.h"
#include "crypto/cipher.h"
diff --git a/backends/cryptodev-vhost-user.c b/backends/cryptodev-vhost-user.c
index 1052a5d0e9..b344283940 100644
--- a/backends/cryptodev-vhost-user.c
+++ b/backends/cryptodev-vhost-user.c
@@ -22,7 +22,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/boards.h"
#include "qapi/error.h"
#include "qapi/qmp/qerror.h"
#include "qemu/error-report.h"
diff --git a/backends/cryptodev.c b/backends/cryptodev.c
index f35be377ef..3c071eab95 100644
--- a/backends/cryptodev.c
+++ b/backends/cryptodev.c
@@ -23,7 +23,6 @@
#include "qemu/osdep.h"
#include "sysemu/cryptodev.h"
-#include "hw/boards.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "qemu/config-file.h"
diff --git a/backends/hostmem.c b/backends/hostmem.c
index 463102aa15..6d333dc23c 100644
--- a/backends/hostmem.c
+++ b/backends/hostmem.c
@@ -12,6 +12,7 @@
#include "qemu/osdep.h"
#include "sysemu/hostmem.h"
+#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "qapi/error.h"
#include "qapi/qapi-builtin-visit.h"
diff --git a/backends/vhost-user.c b/backends/vhost-user.c
index 2b055544a7..0a13506c98 100644
--- a/backends/vhost-user.c
+++ b/backends/vhost-user.c
@@ -12,7 +12,6 @@
#include "qemu/osdep.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
#include "qapi/qmp/qerror.h"
#include "qemu/error-report.h"
diff --git a/balloon.c b/balloon.c
index 914b3662db..f104b42961 100644
--- a/balloon.c
+++ b/balloon.c
@@ -26,7 +26,6 @@
#include "qemu/osdep.h"
#include "qemu/atomic.h"
-#include "exec/cpu-common.h"
#include "sysemu/kvm.h"
#include "sysemu/balloon.h"
#include "trace-root.h"
diff --git a/block.c b/block.c
index cbd8da5f3b..1b67b4960f 100644
--- a/block.c
+++ b/block.c
@@ -30,6 +30,7 @@
#include "block/qdict.h"
#include "qemu/error-report.h"
#include "module_block.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qapi/error.h"
#include "qapi/qmp/qdict.h"
diff --git a/block/block-backend.c b/block/block-backend.c
index 0056b526b8..84e76bf06c 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -15,11 +15,13 @@
#include "block/block_int.h"
#include "block/blockjob.h"
#include "block/throttle-groups.h"
+#include "hw/qdev-core.h"
#include "sysemu/blockdev.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qapi/error.h"
#include "qapi/qapi-events-block.h"
#include "qemu/id.h"
+#include "qemu/main-loop.h"
#include "qemu/option.h"
#include "trace.h"
#include "migration/misc.h"
diff --git a/block/create.c b/block/create.c
index 95341219ef..1bd00ed5f8 100644
--- a/block/create.c
+++ b/block/create.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "block/block_int.h"
#include "qemu/job.h"
+#include "qemu/main-loop.h"
#include "qapi/qapi-commands-block-core.h"
#include "qapi/qapi-visit-block-core.h"
#include "qapi/clone-visitor.h"
diff --git a/block/io.c b/block/io.c
index 06305c6ea6..17a243cde9 100644
--- a/block/io.c
+++ b/block/io.c
@@ -32,6 +32,7 @@
#include "qemu/cutils.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#define NOT_DONE 0x7fffffff /* used while emulated sync operation in progress */
diff --git a/block/nbd.c b/block/nbd.c
index 57c1a20581..56b1c6ec74 100644
--- a/block/nbd.c
+++ b/block/nbd.c
@@ -33,6 +33,7 @@
#include "qemu/uri.h"
#include "qemu/option.h"
#include "qemu/cutils.h"
+#include "qemu/main-loop.h"
#include "qapi/qapi-visit-sockets.h"
#include "qapi/qmp/qstring.h"
diff --git a/block/nfs.c b/block/nfs.c
index d93241b3bb..ed0cce63bb 100644
--- a/block/nfs.c
+++ b/block/nfs.c
@@ -32,11 +32,11 @@
#include "block/qdict.h"
#include "trace.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/uri.h"
#include "qemu/cutils.h"
-#include "sysemu/sysemu.h"
#include "qapi/qapi-visit-block-core.h"
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qstring.h"
diff --git a/block/nvme.c b/block/nvme.c
index 2c85713519..5be3a39b63 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -17,6 +17,7 @@
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qstring.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/cutils.h"
#include "qemu/option.h"
diff --git a/block/qcow2.c b/block/qcow2.c
index 039bdc2f7e..59cff1d4cb 100644
--- a/block/qcow2.c
+++ b/block/qcow2.c
@@ -26,6 +26,7 @@
#include "block/qdict.h"
#include "sysemu/block-backend.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qcow2.h"
#include "qemu/error-report.h"
diff --git a/block/qed.c b/block/qed.c
index 77c7cef175..d0dcc5f14d 100644
--- a/block/qed.c
+++ b/block/qed.c
@@ -17,6 +17,7 @@
#include "qapi/error.h"
#include "qemu/timer.h"
#include "qemu/bswap.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "trace.h"
diff --git a/block/sheepdog.c b/block/sheepdog.c
index 6f402e5d4d..31b0a820c2 100644
--- a/block/sheepdog.c
+++ b/block/sheepdog.c
@@ -22,6 +22,7 @@
#include "qapi/qobject-output-visitor.h"
#include "qemu/uri.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/sockets.h"
diff --git a/block/throttle-groups.c b/block/throttle-groups.c
index a5a2037924..77014c741b 100644
--- a/block/throttle-groups.c
+++ b/block/throttle-groups.c
@@ -26,6 +26,7 @@
#include "sysemu/block-backend.h"
#include "block/throttle-groups.h"
#include "qemu/throttle-options.h"
+#include "qemu/main-loop.h"
#include "qemu/queue.h"
#include "qemu/thread.h"
#include "sysemu/qtest.h"
diff --git a/blockdev-nbd.c b/blockdev-nbd.c
index 66eebab318..7a71da447f 100644
--- a/blockdev-nbd.c
+++ b/blockdev-nbd.c
@@ -15,7 +15,6 @@
#include "hw/block/block.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-block.h"
-#include "sysemu/sysemu.h"
#include "block/nbd.h"
#include "io/channel-socket.h"
#include "io/net-listener.h"
diff --git a/blockdev.c b/blockdev.c
index 4d141e9a1f..95cdd5a5cb 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -58,8 +58,10 @@
#include "block/trace.h"
#include "sysemu/arch_init.h"
#include "sysemu/qtest.h"
+#include "sysemu/runstate.h"
#include "qemu/cutils.h"
#include "qemu/help_option.h"
+#include "qemu/main-loop.h"
#include "qemu/throttle-options.h"
static QTAILQ_HEAD(, BlockDriverState) monitor_bdrv_states =
diff --git a/blockjob.c b/blockjob.c
index 20b7f557da..45877c8bdd 100644
--- a/blockjob.c
+++ b/blockjob.c
@@ -33,6 +33,7 @@
#include "qapi/qapi-events-block-core.h"
#include "qapi/qmp/qerror.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "qemu/timer.h"
/*
diff --git a/chardev/baum.c b/chardev/baum.c
index 3dc81d5c6c..9c95e7bc79 100644
--- a/chardev/baum.c
+++ b/chardev/baum.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "chardev/char.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/usb.h"
diff --git a/chardev/char-pipe.c b/chardev/char-pipe.c
index b200f9365c..94d714ffcd 100644
--- a/chardev/char-pipe.c
+++ b/chardev/char-pipe.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "chardev/char.h"
diff --git a/chardev/char-win-stdio.c b/chardev/char-win-stdio.c
index 92d34e85aa..99afda353c 100644
--- a/chardev/char-win-stdio.c
+++ b/chardev/char-win-stdio.c
@@ -24,6 +24,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "chardev/char-win.h"
#include "chardev/char-win-stdio.h"
diff --git a/chardev/char-win.c b/chardev/char-win.c
index 0b8181339d..34825f683d 100644
--- a/chardev/char-win.c
+++ b/chardev/char-win.c
@@ -23,6 +23,7 @@
*/
#include "qemu/osdep.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qapi/error.h"
#include "chardev/char-win.h"
diff --git a/cpus.c b/cpus.c
index 927a00aa90..f4ad855b77 100644
--- a/cpus.c
+++ b/cpus.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qemu/config-file.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-misc.h"
@@ -54,7 +55,9 @@
#include "tcg.h"
#include "hw/nmi.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
#include "hw/boards.h"
+#include "hw/hw.h"
#ifdef CONFIG_LINUX
diff --git a/device-hotplug.c b/device-hotplug.c
index 6153259d71..f01d53774b 100644
--- a/device-hotplug.c
+++ b/device-hotplug.c
@@ -23,7 +23,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
diff --git a/dump/dump.c b/dump/dump.c
index c7b2301652..6fb6e1245a 100644
--- a/dump/dump.c
+++ b/dump/dump.c
@@ -20,14 +20,15 @@
#include "monitor/monitor.h"
#include "sysemu/kvm.h"
#include "sysemu/dump.h"
-#include "sysemu/sysemu.h"
#include "sysemu/memory_mapping.h"
+#include "sysemu/runstate.h"
#include "sysemu/cpus.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-dump.h"
#include "qapi/qapi-events-dump.h"
#include "qapi/qmp/qerror.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "hw/misc/vmcoreinfo.h"
#ifdef TARGET_X86_64
diff --git a/dump/win_dump.c b/dump/win_dump.c
index 0142655d3d..eda2a48974 100644
--- a/dump/win_dump.c
+++ b/dump/win_dump.c
@@ -17,7 +17,6 @@
#include "monitor/monitor.h"
#include "sysemu/kvm.h"
#include "sysemu/dump.h"
-#include "sysemu/sysemu.h"
#include "sysemu/memory_mapping.h"
#include "sysemu/cpus.h"
#include "qapi/error.h"
diff --git a/exec.c b/exec.c
index 3e78de3b8f..4aaa14b075 100644
--- a/exec.c
+++ b/exec.c
@@ -42,11 +42,10 @@
#if defined(CONFIG_USER_ONLY)
#include "qemu.h"
#else /* !CONFIG_USER_ONLY */
-#include "hw/hw.h"
#include "exec/memory.h"
#include "exec/ioport.h"
#include "sysemu/dma.h"
-#include "sysemu/numa.h"
+#include "sysemu/hostmem.h"
#include "sysemu/hw_accel.h"
#include "exec/address-spaces.h"
#include "sysemu/xen-mapcache.h"
diff --git a/fsdev/qemu-fsdev-throttle.c b/fsdev/qemu-fsdev-throttle.c
index cfd86418ac..fe1d76dc76 100644
--- a/fsdev/qemu-fsdev-throttle.c
+++ b/fsdev/qemu-fsdev-throttle.c
@@ -16,6 +16,7 @@
#include "qemu/error-report.h"
#include "qemu-fsdev-throttle.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/option.h"
static void fsdev_throttle_read_timer_cb(void *opaque)
diff --git a/fsdev/qemu-fsdev-throttle.h b/fsdev/qemu-fsdev-throttle.h
index 7d6211d499..c98e2feab5 100644
--- a/fsdev/qemu-fsdev-throttle.h
+++ b/fsdev/qemu-fsdev-throttle.h
@@ -16,7 +16,6 @@
#define QEMU_FSDEV_THROTTLE_H
#include "block/aio.h"
-#include "qemu/main-loop.h"
#include "qemu/coroutine.h"
#include "qemu/throttle.h"
diff --git a/gdbstub.c b/gdbstub.c
index b470aec8ea..b92ba59e4d 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -48,6 +48,7 @@
#include "qemu/sockets.h"
#include "sysemu/hw_accel.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "hw/semihosting/semihost.h"
#include "exec/exec-all.h"
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
index 55821343e5..cce2366219 100644
--- a/hw/9pfs/9p.c
+++ b/hw/9pfs/9p.c
@@ -17,6 +17,7 @@
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/sockets.h"
#include "virtio-9p.h"
#include "fsdev/qemu-fsdev.h"
diff --git a/hw/9pfs/codir.c b/hw/9pfs/codir.c
index 7cd6fce1ad..73f9a751e1 100644
--- a/hw/9pfs/codir.c
+++ b/hw/9pfs/codir.c
@@ -15,6 +15,7 @@
#include "fsdev/qemu-fsdev.h"
#include "qemu/thread.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "coth.h"
int coroutine_fn v9fs_co_readdir(V9fsPDU *pdu, V9fsFidState *fidp,
diff --git a/hw/9pfs/cofile.c b/hw/9pfs/cofile.c
index 9c22837cda..83bb6c14e0 100644
--- a/hw/9pfs/cofile.c
+++ b/hw/9pfs/cofile.c
@@ -15,6 +15,7 @@
#include "fsdev/qemu-fsdev.h"
#include "qemu/thread.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "coth.h"
int coroutine_fn v9fs_co_st_gen(V9fsPDU *pdu, V9fsPath *path, mode_t st_mode,
diff --git a/hw/9pfs/cofs.c b/hw/9pfs/cofs.c
index c62103221d..55991916ec 100644
--- a/hw/9pfs/cofs.c
+++ b/hw/9pfs/cofs.c
@@ -15,6 +15,7 @@
#include "fsdev/qemu-fsdev.h"
#include "qemu/thread.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "coth.h"
static ssize_t __readlink(V9fsState *s, V9fsPath *path, V9fsString *buf)
diff --git a/hw/9pfs/coth.c b/hw/9pfs/coth.c
index c3b43368f8..9778f24b00 100644
--- a/hw/9pfs/coth.c
+++ b/hw/9pfs/coth.c
@@ -15,6 +15,7 @@
#include "qemu/osdep.h"
#include "block/thread-pool.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "coth.h"
/* Called from QEMU I/O thread. */
diff --git a/hw/9pfs/coth.h b/hw/9pfs/coth.h
index 19e4d9287e..c2cdc7a9ea 100644
--- a/hw/9pfs/coth.h
+++ b/hw/9pfs/coth.h
@@ -17,7 +17,6 @@
#include "qemu/thread.h"
#include "qemu/coroutine.h"
-#include "qemu/main-loop.h"
#include "9p.h"
/*
diff --git a/hw/9pfs/coxattr.c b/hw/9pfs/coxattr.c
index 154392eade..0e00ffaa0d 100644
--- a/hw/9pfs/coxattr.c
+++ b/hw/9pfs/coxattr.c
@@ -15,6 +15,7 @@
#include "fsdev/qemu-fsdev.h"
#include "qemu/thread.h"
#include "qemu/coroutine.h"
+#include "qemu/main-loop.h"
#include "coth.h"
int coroutine_fn v9fs_co_llistxattr(V9fsPDU *pdu, V9fsPath *path, void *value,
diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c
index a3288cbe56..b5a7c03f26 100644
--- a/hw/9pfs/virtio-9p-device.c
+++ b/hw/9pfs/virtio-9p-device.c
@@ -17,6 +17,7 @@
#include "virtio-9p.h"
#include "fsdev/qemu-fsdev.h"
#include "coth.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-access.h"
#include "qemu/iov.h"
#include "qemu/module.h"
diff --git a/hw/9pfs/xen-9p-backend.c b/hw/9pfs/xen-9p-backend.c
index 25ab04d95a..71eebe12dd 100644
--- a/hw/9pfs/xen-9p-backend.c
+++ b/hw/9pfs/xen-9p-backend.c
@@ -10,12 +10,12 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/9pfs/9p.h"
#include "hw/xen/xen-legacy-backend.h"
#include "hw/9pfs/xen-9pfs.h"
#include "qapi/error.h"
#include "qemu/config-file.h"
+#include "qemu/main-loop.h"
#include "qemu/option.h"
#include "fsdev/qemu-fsdev.h"
diff --git a/hw/acpi/core.c b/hw/acpi/core.c
index 228828a494..45cbed49ab 100644
--- a/hw/acpi/core.c
+++ b/hw/acpi/core.c
@@ -20,8 +20,7 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/acpi/acpi.h"
#include "hw/nvram/fw_cfg.h"
#include "qemu/config-file.h"
@@ -32,6 +31,7 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "qemu/option.h"
+#include "sysemu/runstate.h"
struct acpi_table_header {
uint16_t _length; /* our length, not actual part of the hdr */
diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c
index 7a90c8f82d..87f30a31d7 100644
--- a/hw/acpi/cpu.c
+++ b/hw/acpi/cpu.c
@@ -1,5 +1,6 @@
#include "qemu/osdep.h"
#include "hw/boards.h"
+#include "migration/vmstate.h"
#include "hw/acpi/cpu.h"
#include "qapi/error.h"
#include "qapi/qapi-events-misc.h"
diff --git a/hw/acpi/cpu_hotplug.c b/hw/acpi/cpu_hotplug.c
index 5243918125..a83567e6aa 100644
--- a/hw/acpi/cpu_hotplug.c
+++ b/hw/acpi/cpu_hotplug.c
@@ -10,7 +10,6 @@
* See the COPYING file in the top-level directory.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/acpi/cpu_hotplug.h"
#include "qapi/error.h"
#include "qom/cpu.h"
diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c
index e53dfe1ee3..2ca52bf045 100644
--- a/hw/acpi/ich9.c
+++ b/hw/acpi/ich9.c
@@ -23,14 +23,17 @@
* Contributions after 2012-01-13 are licensed under the terms of the
* GNU GPL, version 2 or (at your option) any later version.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "hw/i386/pc.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "qom/cpu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "hw/acpi/acpi.h"
#include "hw/acpi/tco.h"
#include "exec/address-spaces.h"
diff --git a/hw/acpi/memory_hotplug.c b/hw/acpi/memory_hotplug.c
index 297812d5f7..9483d66e86 100644
--- a/hw/acpi/memory_hotplug.c
+++ b/hw/acpi/memory_hotplug.c
@@ -4,6 +4,7 @@
#include "hw/mem/pc-dimm.h"
#include "hw/boards.h"
#include "hw/qdev-core.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qapi/error.h"
#include "qapi/qapi-events-misc.h"
diff --git a/hw/acpi/pcihp.c b/hw/acpi/pcihp.c
index 613406d09b..82d295b6e8 100644
--- a/hw/acpi/pcihp.c
+++ b/hw/acpi/pcihp.c
@@ -27,14 +27,13 @@
#include "qemu/osdep.h"
#include "hw/acpi/pcihp.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bridge.h"
#include "hw/acpi/acpi.h"
-#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "hw/pci/pci_bus.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qom/qom-qobject.h"
#include "trace.h"
diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c
index ec4e186cec..1c907d2a7d 100644
--- a/hw/acpi/piix4.c
+++ b/hw/acpi/piix4.c
@@ -18,13 +18,17 @@
* Contributions after 2012-01-13 are licensed under the terms of the
* GNU GPL, version 2 or (at your option) any later version.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/isa/apm.h"
#include "hw/i2c/pm_smbus.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/acpi/acpi.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "qapi/error.h"
#include "qemu/range.h"
@@ -38,6 +42,8 @@
#include "hw/acpi/memory_hotplug.h"
#include "hw/acpi/acpi_dev_interface.h"
#include "hw/xen/xen.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "qom/cpu.h"
#include "trace.h"
diff --git a/hw/acpi/tco.c b/hw/acpi/tco.c
index acfb65e8f2..fb9052dbca 100644
--- a/hw/acpi/tco.c
+++ b/hw/acpi/tco.c
@@ -6,9 +6,11 @@
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*/
+
#include "qemu/osdep.h"
#include "sysemu/watchdog.h"
#include "hw/i386/ich9.h"
+#include "migration/vmstate.h"
#include "hw/acpi/tco.h"
#include "trace.h"
diff --git a/hw/acpi/vmgenid.c b/hw/acpi/vmgenid.c
index b891df375f..6e11b0fa9b 100644
--- a/hw/acpi/vmgenid.c
+++ b/hw/acpi/vmgenid.c
@@ -18,7 +18,9 @@
#include "hw/acpi/aml-build.h"
#include "hw/acpi/vmgenid.h"
#include "hw/nvram/fw_cfg.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
+#include "sysemu/reset.h"
void vmgenid_build_acpi(VmGenIdState *vms, GArray *table_data, GArray *guid,
BIOSLinker *linker)
diff --git a/hw/adc/stm32f2xx_adc.c b/hw/adc/stm32f2xx_adc.c
index c93b60e22e..4f9d485ecf 100644
--- a/hw/adc/stm32f2xx_adc.c
+++ b/hw/adc/stm32f2xx_adc.c
@@ -24,7 +24,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/adc/stm32f2xx_adc.h"
diff --git a/hw/alpha/alpha_sys.h b/hw/alpha/alpha_sys.h
index b6d8369ed7..4e127a6de8 100644
--- a/hw/alpha/alpha_sys.h
+++ b/hw/alpha/alpha_sys.h
@@ -8,7 +8,6 @@
#include "hw/pci/pci_host.h"
#include "hw/ide.h"
#include "hw/i386/pc.h"
-#include "hw/irq.h"
PCIBus *typhoon_init(ram_addr_t, ISABus **, qemu_irq *, AlphaCPU *[4],
diff --git a/hw/alpha/dp264.c b/hw/alpha/dp264.c
index 9dfb835013..51feee8558 100644
--- a/hw/alpha/dp264.c
+++ b/hw/alpha/dp264.c
@@ -9,10 +9,8 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "elf.h"
#include "hw/loader.h"
-#include "hw/boards.h"
#include "alpha_sys.h"
#include "qemu/error-report.h"
#include "sysemu/sysemu.h"
diff --git a/hw/alpha/pci.c b/hw/alpha/pci.c
index fb902bb92d..72251fcdf0 100644
--- a/hw/alpha/pci.c
+++ b/hw/alpha/pci.c
@@ -9,7 +9,6 @@
#include "qemu/osdep.h"
#include "alpha_sys.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
diff --git a/hw/alpha/typhoon.c b/hw/alpha/typhoon.c
index 3f34a5153f..179e1f7658 100644
--- a/hw/alpha/typhoon.c
+++ b/hw/alpha/typhoon.c
@@ -11,8 +11,8 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
+#include "hw/boards.h"
+#include "hw/irq.h"
#include "alpha_sys.h"
#include "exec/address-spaces.h"
diff --git a/hw/arm/allwinner-a10.c b/hw/arm/allwinner-a10.c
index 35e906ca54..73810a4440 100644
--- a/hw/arm/allwinner-a10.c
+++ b/hw/arm/allwinner-a10.c
@@ -16,12 +16,14 @@
*/
#include "qemu/osdep.h"
+#include "exec/address-spaces.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "cpu.h"
#include "hw/sysbus.h"
#include "hw/arm/allwinner-a10.h"
#include "hw/misc/unimp.h"
+#include "sysemu/sysemu.h"
static void aw_a10_init(Object *obj)
{
diff --git a/hw/arm/armsse.c b/hw/arm/armsse.c
index b5c614cc3a..e5263aa33d 100644
--- a/hw/arm/armsse.c
+++ b/hw/arm/armsse.c
@@ -16,9 +16,11 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
#include "hw/arm/armsse.h"
#include "hw/arm/boot.h"
+#include "hw/irq.h"
/* Format of the System Information block SYS_CONFIG register */
typedef enum SysConfigFormat {
diff --git a/hw/arm/armv7m.c b/hw/arm/armv7m.c
index b9efad6bac..7a3c48f002 100644
--- a/hw/arm/armv7m.c
+++ b/hw/arm/armv7m.c
@@ -14,8 +14,10 @@
#include "hw/sysbus.h"
#include "hw/arm/boot.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "elf.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "exec/address-spaces.h"
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index 843b708247..7a2e885e0b 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -20,6 +20,7 @@
#include "hw/i2c/smbus_eeprom.h"
#include "hw/misc/pca9552.h"
#include "hw/misc/tmp105.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "sysemu/block-backend.h"
#include "sysemu/sysemu.h"
diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c
index c6fb3700f2..9ee8104832 100644
--- a/hw/arm/aspeed_soc.c
+++ b/hw/arm/aspeed_soc.c
@@ -22,6 +22,7 @@
#include "qemu/error-report.h"
#include "hw/i2c/aspeed_i2c.h"
#include "net/net.h"
+#include "sysemu/sysemu.h"
#define ASPEED_SOC_IOMEM_SIZE 0x00200000
diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index c2b89b3bb9..eff89ab80e 100644
--- a/hw/arm/boot.c
+++ b/hw/arm/boot.c
@@ -12,13 +12,12 @@
#include "qemu/error-report.h"
#include "qapi/error.h"
#include <libfdt.h>
-#include "hw/hw.h"
#include "hw/arm/boot.h"
#include "hw/arm/linux-boot-if.h"
#include "sysemu/kvm.h"
#include "sysemu/sysemu.h"
#include "sysemu/numa.h"
-#include "hw/boards.h"
+#include "sysemu/reset.h"
#include "hw/loader.h"
#include "elf.h"
#include "sysemu/device_tree.h"
diff --git a/hw/arm/collie.c b/hw/arm/collie.c
index 3db3c56004..219643c633 100644
--- a/hw/arm/collie.c
+++ b/hw/arm/collie.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/boards.h"
#include "strongarm.h"
diff --git a/hw/arm/cubieboard.c b/hw/arm/cubieboard.c
index f7c8a5985a..38e0ca0f53 100644
--- a/hw/arm/cubieboard.c
+++ b/hw/arm/cubieboard.c
@@ -16,6 +16,7 @@
*/
#include "qemu/osdep.h"
+#include "exec/address-spaces.h"
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
diff --git a/hw/arm/digic.c b/hw/arm/digic.c
index 9015b60c23..4f52465875 100644
--- a/hw/arm/digic.c
+++ b/hw/arm/digic.c
@@ -24,6 +24,7 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/arm/digic.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#define DIGIC4_TIMER_BASE(n) (0xc0210000 + (n) * 0x100)
diff --git a/hw/arm/exynos4210.c b/hw/arm/exynos4210.c
index becd864c19..a9f8a5c868 100644
--- a/hw/arm/exynos4210.c
+++ b/hw/arm/exynos4210.c
@@ -26,11 +26,13 @@
#include "qemu/log.h"
#include "cpu.h"
#include "hw/cpu/a9mpcore.h"
-#include "hw/boards.h"
+#include "hw/irq.h"
+#include "sysemu/blockdev.h"
#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#include "hw/arm/boot.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/exynos4210.h"
#include "hw/sd/sdhci.h"
#include "hw/usb/hcd-ehci.h"
diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c
index ac0b0dc2a9..f69358a5ba 100644
--- a/hw/arm/exynos4_boards.c
+++ b/hw/arm/exynos4_boards.c
@@ -33,7 +33,9 @@
#include "exec/address-spaces.h"
#include "hw/arm/exynos4210.h"
#include "hw/net/lan9118.h"
+#include "hw/qdev-properties.h"
#include "hw/boards.h"
+#include "hw/irq.h"
#define SMDK_LAN9118_BASE_ADDR 0x05000000
diff --git a/hw/arm/fsl-imx25.c b/hw/arm/fsl-imx25.c
index 869ee89b15..532d088298 100644
--- a/hw/arm/fsl-imx25.c
+++ b/hw/arm/fsl-imx25.c
@@ -28,7 +28,7 @@
#include "hw/arm/fsl-imx25.h"
#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
-#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "chardev/char.h"
static void fsl_imx25_init(Object *obj)
diff --git a/hw/arm/fsl-imx31.c b/hw/arm/fsl-imx31.c
index 662fe78f1b..1a37a7b997 100644
--- a/hw/arm/fsl-imx31.c
+++ b/hw/arm/fsl-imx31.c
@@ -25,7 +25,7 @@
#include "hw/arm/fsl-imx31.h"
#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
-#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "chardev/char.h"
static void fsl_imx31_init(Object *obj)
diff --git a/hw/arm/fsl-imx6.c b/hw/arm/fsl-imx6.c
index de45833097..8c397ef04b 100644
--- a/hw/arm/fsl-imx6.c
+++ b/hw/arm/fsl-imx6.c
@@ -23,6 +23,7 @@
#include "qapi/error.h"
#include "hw/arm/fsl-imx6.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "chardev/char.h"
#include "qemu/error-report.h"
diff --git a/hw/arm/gumstix.c b/hw/arm/gumstix.c
index 343cbfd7da..f26a0e8010 100644
--- a/hw/arm/gumstix.c
+++ b/hw/arm/gumstix.c
@@ -36,7 +36,6 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
-#include "hw/hw.h"
#include "hw/arm/pxa.h"
#include "net/net.h"
#include "hw/block/flash.h"
diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
index def0f1ce6a..362e5ba044 100644
--- a/hw/arm/highbank.c
+++ b/hw/arm/highbank.c
@@ -21,10 +21,12 @@
#include "qemu-common.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/boot.h"
#include "hw/loader.h"
#include "net/net.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "exec/address-spaces.h"
diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
index 200c0107f0..200568b42a 100644
--- a/hw/arm/integratorcp.c
+++ b/hw/arm/integratorcp.c
@@ -11,15 +11,19 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/boards.h"
#include "hw/arm/boot.h"
#include "hw/misc/arm_integrator_debug.h"
#include "hw/net/smc91c111.h"
#include "net/net.h"
#include "exec/address-spaces.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
#include "hw/char/pl011.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#define TYPE_INTEGRATOR_CM "integrator_core"
#define INTEGRATOR_CM(obj) \
diff --git a/hw/arm/kzm.c b/hw/arm/kzm.c
index 59d2102dc5..2f052e1f8c 100644
--- a/hw/arm/kzm.c
+++ b/hw/arm/kzm.c
@@ -24,6 +24,7 @@
#include "hw/net/lan9118.h"
#include "hw/char/serial.h"
#include "sysemu/qtest.h"
+#include "sysemu/sysemu.h"
/* Memory map for Kzm Emulation Baseboard:
* 0x00000000-0x7fffffff See i.MX31 SOC for support
diff --git a/hw/arm/mainstone.c b/hw/arm/mainstone.c
index cd1f904c6c..1bad1aea76 100644
--- a/hw/arm/mainstone.c
+++ b/hw/arm/mainstone.c
@@ -14,7 +14,6 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/arm/pxa.h"
#include "hw/arm/boot.h"
#include "net/net.h"
diff --git a/hw/arm/mcimx6ul-evk.c b/hw/arm/mcimx6ul-evk.c
index 1f6f4aed97..0276875f02 100644
--- a/hw/arm/mcimx6ul-evk.c
+++ b/hw/arm/mcimx6ul-evk.c
@@ -14,6 +14,7 @@
#include "qapi/error.h"
#include "hw/arm/fsl-imx6ul.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
diff --git a/hw/arm/mcimx7d-sabre.c b/hw/arm/mcimx7d-sabre.c
index 72eab03a0c..97b8bb788a 100644
--- a/hw/arm/mcimx7d-sabre.c
+++ b/hw/arm/mcimx7d-sabre.c
@@ -16,6 +16,7 @@
#include "qapi/error.h"
#include "hw/arm/fsl-imx7.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
diff --git a/hw/arm/microbit.c b/hw/arm/microbit.c
index e9a891f7d3..ef213695bd 100644
--- a/hw/arm/microbit.c
+++ b/hw/arm/microbit.c
@@ -17,6 +17,7 @@
#include "hw/arm/nrf51_soc.h"
#include "hw/i2c/microbit_i2c.h"
+#include "hw/qdev-properties.h"
typedef struct {
MachineState parent;
diff --git a/hw/arm/msf2-soc.c b/hw/arm/msf2-soc.c
index 1ccb644df7..008fd9327a 100644
--- a/hw/arm/msf2-soc.c
+++ b/hw/arm/msf2-soc.c
@@ -27,9 +27,11 @@
#include "qapi/error.h"
#include "exec/address-spaces.h"
#include "hw/char/serial.h"
-#include "hw/boards.h"
+#include "hw/irq.h"
#include "hw/arm/msf2-soc.h"
#include "hw/misc/unimp.h"
+#include "sysemu/runstate.h"
+#include "sysemu/sysemu.h"
#define MSF2_TIMER_BASE 0x40004000
#define MSF2_SYSREG_BASE 0x40038000
diff --git a/hw/arm/msf2-som.c b/hw/arm/msf2-som.c
index 2c9984bb3b..dbd35b6def 100644
--- a/hw/arm/msf2-som.c
+++ b/hw/arm/msf2-som.c
@@ -27,6 +27,7 @@
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/boot.h"
#include "exec/address-spaces.h"
#include "hw/arm/msf2-soc.h"
diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c
index 95d56f3208..8ae4751d75 100644
--- a/hw/arm/musicpal.c
+++ b/hw/arm/musicpal.c
@@ -13,18 +13,23 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/boot.h"
#include "net/net.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/char/serial.h"
+#include "hw/hw.h"
#include "qemu/timer.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "hw/block/flash.h"
#include "ui/console.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "hw/audio/wm8750.h"
#include "sysemu/block-backend.h"
+#include "sysemu/runstate.h"
#include "exec/address-spaces.h"
#include "ui/pixel_ops.h"
diff --git a/hw/arm/netduino2.c b/hw/arm/netduino2.c
index f57fc38f92..e770d9cac8 100644
--- a/hw/arm/netduino2.c
+++ b/hw/arm/netduino2.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "hw/arm/stm32f205_soc.h"
#include "hw/arm/boot.h"
diff --git a/hw/arm/nrf51_soc.c b/hw/arm/nrf51_soc.c
index fc067cd8ee..74029169d0 100644
--- a/hw/arm/nrf51_soc.c
+++ b/hw/arm/nrf51_soc.c
@@ -12,10 +12,8 @@
#include "qapi/error.h"
#include "hw/arm/boot.h"
#include "hw/sysbus.h"
-#include "hw/boards.h"
#include "hw/misc/unimp.h"
#include "exec/address-spaces.h"
-#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "cpu.h"
diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c
index 4a79f5c88b..a6c4085337 100644
--- a/hw/arm/nseries.c
+++ b/hw/arm/nseries.c
@@ -23,6 +23,8 @@
#include "cpu.h"
#include "qemu/cutils.h"
#include "qemu/bswap.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/arm/omap.h"
#include "hw/arm/boot.h"
@@ -34,6 +36,7 @@
#include "hw/input/tsc2xxx.h"
#include "hw/misc/cbus.h"
#include "hw/misc/tmp105.h"
+#include "hw/qdev-properties.h"
#include "hw/block/flash.h"
#include "hw/hw.h"
#include "hw/bt.h"
diff --git a/hw/arm/omap1.c b/hw/arm/omap1.c
index 28fbe275a8..0400593805 100644
--- a/hw/arm/omap1.c
+++ b/hw/arm/omap1.c
@@ -19,16 +19,22 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
#include "hw/boards.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/boot.h"
#include "hw/arm/omap.h"
+#include "sysemu/blockdev.h"
#include "sysemu/sysemu.h"
#include "hw/arm/soc_dma.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/range.h"
#include "hw/sysbus.h"
#include "qemu/cutils.h"
diff --git a/hw/arm/omap2.c b/hw/arm/omap2.c
index 87ced7f3a2..bd7ddff983 100644
--- a/hw/arm/omap2.c
+++ b/hw/arm/omap2.c
@@ -22,9 +22,13 @@
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "cpu.h"
+#include "sysemu/blockdev.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "hw/boards.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/boot.h"
#include "hw/arm/omap.h"
#include "sysemu/sysemu.h"
diff --git a/hw/arm/omap_sx1.c b/hw/arm/omap_sx1.c
index cae78d0a36..75a05c36b0 100644
--- a/hw/arm/omap_sx1.c
+++ b/hw/arm/omap_sx1.c
@@ -27,7 +27,6 @@
*/
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "hw/arm/omap.h"
#include "hw/boards.h"
diff --git a/hw/arm/palm.c b/hw/arm/palm.c
index 9eb9612bce..bea47b917d 100644
--- a/hw/arm/palm.c
+++ b/hw/arm/palm.c
@@ -16,9 +16,9 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "audio/audio.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
@@ -27,6 +27,7 @@
#include "hw/boards.h"
#include "hw/arm/boot.h"
#include "hw/input/tsc2xxx.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "exec/address-spaces.h"
#include "cpu.h"
diff --git a/hw/arm/pxa2xx.c b/hw/arm/pxa2xx.c
index e2e43ae6e8..cdafde2f76 100644
--- a/hw/arm/pxa2xx.c
+++ b/hw/arm/pxa2xx.c
@@ -14,10 +14,13 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/pxa.h"
#include "sysemu/sysemu.h"
#include "hw/char/serial.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/ssi/ssi.h"
#include "chardev/char-fe.h"
#include "sysemu/blockdev.h"
diff --git a/hw/arm/pxa2xx_gpio.c b/hw/arm/pxa2xx_gpio.c
index d1fc9cba67..86a0e86c4c 100644
--- a/hw/arm/pxa2xx_gpio.c
+++ b/hw/arm/pxa2xx_gpio.c
@@ -10,7 +10,10 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/pxa.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/arm/pxa2xx_pic.c b/hw/arm/pxa2xx_pic.c
index 2f4b461562..203d4d28af 100644
--- a/hw/arm/pxa2xx_pic.c
+++ b/hw/arm/pxa2xx_pic.c
@@ -11,9 +11,9 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/arm/pxa.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#define ICIP 0x00 /* Interrupt Controller IRQ Pending register */
#define ICMR 0x04 /* Interrupt Controller Mask register */
diff --git a/hw/arm/realview.c b/hw/arm/realview.c
index 7c56c8d2ed..b108a9ab26 100644
--- a/hw/arm/realview.c
+++ b/hw/arm/realview.c
@@ -25,6 +25,7 @@
#include "hw/char/pl011.h"
#include "hw/cpu/a9mpcore.h"
#include "hw/intc/realview_gic.h"
+#include "hw/irq.h"
#define SMP_BOOT_ADDR 0xe0000000
#define SMP_BOOTREG_ADDR 0x10000030
diff --git a/hw/arm/sabrelite.c b/hw/arm/sabrelite.c
index 934f4c9261..a6185c169e 100644
--- a/hw/arm/sabrelite.c
+++ b/hw/arm/sabrelite.c
@@ -14,6 +14,7 @@
#include "qapi/error.h"
#include "hw/arm/fsl-imx6.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
index 9c67d5c6f9..e98e9a5170 100644
--- a/hw/arm/sbsa-ref.c
+++ b/hw/arm/sbsa-ref.c
@@ -24,6 +24,7 @@
#include "qemu/units.h"
#include "sysemu/device_tree.h"
#include "sysemu/numa.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "exec/hwaddr.h"
@@ -36,6 +37,7 @@
#include "hw/intc/arm_gicv3_common.h"
#include "hw/loader.h"
#include "hw/pci-host/gpex.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
#include "net/net.h"
diff --git a/hw/arm/smmu-common.c b/hw/arm/smmu-common.c
index 717d22bcbe..956ebe32c8 100644
--- a/hw/arm/smmu-common.c
+++ b/hw/arm/smmu-common.c
@@ -17,7 +17,6 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "trace.h"
#include "exec/target_page.h"
diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c
index e96d5beb9a..2eaf07fb5f 100644
--- a/hw/arm/smmuv3.c
+++ b/hw/arm/smmuv3.c
@@ -17,9 +17,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/boards.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/qdev-core.h"
#include "hw/pci/pci.h"
#include "exec/address-spaces.h"
diff --git a/hw/arm/spitz.c b/hw/arm/spitz.c
index 723cf5d592..59348123b5 100644
--- a/hw/arm/spitz.c
+++ b/hw/arm/spitz.c
@@ -12,12 +12,14 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/arm/pxa.h"
#include "hw/arm/boot.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/pcmcia.h"
+#include "hw/qdev-properties.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "hw/ssi/ssi.h"
#include "hw/block/flash.h"
#include "qemu/timer.h"
@@ -27,6 +29,7 @@
#include "audio/audio.h"
#include "hw/boards.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "exec/address-spaces.h"
#include "cpu.h"
diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c
index 499035f5c8..b198066b54 100644
--- a/hw/arm/stellaris.c
+++ b/hw/arm/stellaris.c
@@ -18,11 +18,14 @@
#include "hw/boards.h"
#include "qemu/log.h"
#include "exec/address-spaces.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/arm/armv7m.h"
#include "hw/char/pl011.h"
#include "hw/input/gamepad.h"
+#include "hw/irq.h"
#include "hw/watchdog/cmsdk-apb-watchdog.h"
+#include "migration/vmstate.h"
#include "hw/misc/unimp.h"
#include "cpu.h"
diff --git a/hw/arm/stm32f205_soc.c b/hw/arm/stm32f205_soc.c
index c08041a1c5..f5a5c2d80c 100644
--- a/hw/arm/stm32f205_soc.c
+++ b/hw/arm/stm32f205_soc.c
@@ -28,6 +28,8 @@
#include "hw/arm/boot.h"
#include "exec/address-spaces.h"
#include "hw/arm/stm32f205_soc.h"
+#include "hw/qdev-properties.h"
+#include "sysemu/sysemu.h"
/* At the moment only Timer 2 to 5 are modelled */
static const uint32_t timer_addr[STM_NUM_TIMERS] = { 0x40000000, 0x40000400,
diff --git a/hw/arm/strongarm.c b/hw/arm/strongarm.c
index fed51a8183..dc65d88a65 100644
--- a/hw/arm/strongarm.c
+++ b/hw/arm/strongarm.c
@@ -31,7 +31,10 @@
#include "qemu-common.h"
#include "cpu.h"
#include "hw/boards.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "strongarm.h"
#include "qemu/error-report.h"
#include "hw/arm/boot.h"
diff --git a/hw/arm/sysbus-fdt.c b/hw/arm/sysbus-fdt.c
index 57f94e6581..022fc97ecd 100644
--- a/hw/arm/sysbus-fdt.c
+++ b/hw/arm/sysbus-fdt.c
@@ -31,7 +31,6 @@
#include "qemu/error-report.h"
#include "sysemu/device_tree.h"
#include "hw/platform-bus.h"
-#include "sysemu/sysemu.h"
#include "hw/vfio/vfio-platform.h"
#include "hw/vfio/vfio-calxeda-xgmac.h"
#include "hw/vfio/vfio-amd-xgbe.h"
diff --git a/hw/arm/tosa.c b/hw/arm/tosa.c
index 7843d68d46..e9627e356e 100644
--- a/hw/arm/tosa.c
+++ b/hw/arm/tosa.c
@@ -13,7 +13,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "sysemu/runstate.h"
#include "hw/arm/pxa.h"
#include "hw/arm/boot.h"
#include "hw/arm/sharpsl.h"
@@ -21,10 +21,10 @@
#include "hw/boards.h"
#include "hw/display/tc6393xb.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "hw/ssi/ssi.h"
#include "hw/sysbus.h"
#include "exec/address-spaces.h"
-#include "sysemu/sysemu.h"
#define TOSA_RAM 0x04000000
#define TOSA_ROM 0x00800000
diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c
index e5857117ac..e25561705f 100644
--- a/hw/arm/versatilepb.c
+++ b/hw/arm/versatilepb.c
@@ -11,12 +11,14 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/boot.h"
#include "hw/net/smc91c111.h"
#include "net/net.h"
#include "sysemu/sysemu.h"
#include "hw/pci/pci.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "hw/boards.h"
#include "exec/address-spaces.h"
#include "hw/block/flash.h"
diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
index 0afb372769..fa9afd2b7e 100644
--- a/hw/arm/virt-acpi-build.c
+++ b/hw/arm/virt-acpi-build.c
@@ -36,7 +36,6 @@
#include "hw/acpi/acpi.h"
#include "hw/nvram/fw_cfg.h"
#include "hw/acpi/bios-linker-loader.h"
-#include "hw/hw.h"
#include "hw/acpi/aml-build.h"
#include "hw/acpi/utils.h"
#include "hw/acpi/pci.h"
@@ -44,7 +43,9 @@
#include "hw/pci/pci.h"
#include "hw/arm/virt.h"
#include "sysemu/numa.h"
+#include "sysemu/reset.h"
#include "kvm_arm.h"
+#include "migration/vmstate.h"
#define ARM_SPI_BASE 32
#define ACPI_POWER_BUTTON_DEVICE "PWRB"
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index d9496c9363..02510acb81 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -34,6 +34,7 @@
#include "qemu/option.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
+#include "hw/boards.h"
#include "hw/arm/boot.h"
#include "hw/arm/primecell.h"
#include "hw/arm/virt.h"
@@ -44,6 +45,7 @@
#include "net/net.h"
#include "sysemu/device_tree.h"
#include "sysemu/numa.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "hw/loader.h"
@@ -54,9 +56,11 @@
#include "hw/pci-host/gpex.h"
#include "hw/arm/sysbus-fdt.h"
#include "hw/platform-bus.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/fdt.h"
#include "hw/intc/arm_gic.h"
#include "hw/intc/arm_gicv3_common.h"
+#include "hw/irq.h"
#include "kvm_arm.h"
#include "hw/firmware/smbios.h"
#include "qapi/visitor.h"
diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c
index a60830d37a..0f587e63d3 100644
--- a/hw/arm/xlnx-zynqmp.c
+++ b/hw/arm/xlnx-zynqmp.c
@@ -24,6 +24,7 @@
#include "hw/boards.h"
#include "exec/address-spaces.h"
#include "sysemu/kvm.h"
+#include "sysemu/sysemu.h"
#include "kvm_arm.h"
#define GIC_NUM_SPI_INTR 160
diff --git a/hw/arm/z2.c b/hw/arm/z2.c
index 44aa748d39..3923b87e4c 100644
--- a/hw/arm/z2.c
+++ b/hw/arm/z2.c
@@ -12,13 +12,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/arm/pxa.h"
#include "hw/arm/boot.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "hw/boards.h"
-#include "sysemu/sysemu.h"
#include "hw/block/flash.h"
#include "ui/console.h"
#include "hw/audio/wm8750.h"
diff --git a/hw/audio/ac97.c b/hw/audio/ac97.c
index fb98da2678..115ee51c7c 100644
--- a/hw/audio/ac97.c
+++ b/hw/audio/ac97.c
@@ -18,10 +18,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
diff --git a/hw/audio/adlib.c b/hw/audio/adlib.c
index 7dd9a89b89..2f4aacbf43 100644
--- a/hw/audio/adlib.c
+++ b/hw/audio/adlib.c
@@ -25,10 +25,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
//#define DEBUG
diff --git a/hw/audio/cs4231.c b/hw/audio/cs4231.c
index 8372299ebb..b5d3e895ce 100644
--- a/hw/audio/cs4231.c
+++ b/hw/audio/cs4231.c
@@ -24,6 +24,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "trace.h"
diff --git a/hw/audio/cs4231a.c b/hw/audio/cs4231a.c
index 7216b41cc1..d77a4e713e 100644
--- a/hw/audio/cs4231a.c
+++ b/hw/audio/cs4231a.c
@@ -23,11 +23,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "qapi/error.h"
diff --git a/hw/audio/es1370.c b/hw/audio/es1370.c
index 260c142b70..39deecbbc6 100644
--- a/hw/audio/es1370.c
+++ b/hw/audio/es1370.c
@@ -27,10 +27,10 @@
#define SILENT_ES1370
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
diff --git a/hw/audio/gus.c b/hw/audio/gus.c
index 9ab51631d9..dbfe7cf634 100644
--- a/hw/audio/gus.c
+++ b/hw/audio/gus.c
@@ -25,10 +25,12 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "gusemu.h"
#include "gustate.h"
diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c
index 84639b5424..4fee0673d9 100644
--- a/hw/audio/hda-codec.c
+++ b/hw/audio/hda-codec.c
@@ -18,9 +18,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "intel-hda.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "intel-hda-defs.h"
#include "audio/audio.h"
diff --git a/hw/audio/intel-hda.c b/hw/audio/intel-hda.c
index b78baac295..6ecd383540 100644
--- a/hw/audio/intel-hda.c
+++ b/hw/audio/intel-hda.c
@@ -18,8 +18,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/msi.h"
#include "qemu/timer.h"
#include "qemu/bitops.h"
@@ -27,6 +27,7 @@
#include "qemu/module.h"
#include "hw/audio/soundhw.h"
#include "intel-hda.h"
+#include "migration/vmstate.h"
#include "intel-hda-defs.h"
#include "sysemu/dma.h"
#include "qapi/error.h"
diff --git a/hw/audio/intel-hda.h b/hw/audio/intel-hda.h
index 53b78da4df..eee6fee5af 100644
--- a/hw/audio/intel-hda.h
+++ b/hw/audio/intel-hda.h
@@ -1,7 +1,7 @@
#ifndef HW_INTEL_HDA_H
#define HW_INTEL_HDA_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
/* --------------------------------------------------------------------- */
/* hda bus */
diff --git a/hw/audio/lm4549.c b/hw/audio/lm4549.c
index af8b22b541..32b1481b56 100644
--- a/hw/audio/lm4549.c
+++ b/hw/audio/lm4549.c
@@ -17,6 +17,7 @@
#include "hw/hw.h"
#include "audio/audio.h"
#include "lm4549.h"
+#include "migration/vmstate.h"
#if 0
#define LM4549_DEBUG 1
diff --git a/hw/audio/lm4549.h b/hw/audio/lm4549.h
index 74c3ee8934..aba9bb5b07 100644
--- a/hw/audio/lm4549.h
+++ b/hw/audio/lm4549.h
@@ -13,6 +13,7 @@
#define HW_LM4549_H
#include "audio/audio.h"
+#include "exec/hwaddr.h"
typedef void (*lm4549_callback)(void *opaque);
diff --git a/hw/audio/marvell_88w8618.c b/hw/audio/marvell_88w8618.c
index ff1a0d0d8f..883ef74c8b 100644
--- a/hw/audio/marvell_88w8618.c
+++ b/hw/audio/marvell_88w8618.c
@@ -12,7 +12,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/audio/wm8750.h"
#include "audio/audio.h"
#include "qapi/error.h"
diff --git a/hw/audio/milkymist-ac97.c b/hw/audio/milkymist-ac97.c
index bf6a5a6b96..481dde10a1 100644
--- a/hw/audio/milkymist-ac97.c
+++ b/hw/audio/milkymist-ac97.c
@@ -22,8 +22,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "audio/audio.h"
#include "qemu/error-report.h"
diff --git a/hw/audio/pcspk.c b/hw/audio/pcspk.c
index a7b3ab0c2b..016946d4b2 100644
--- a/hw/audio/pcspk.c
+++ b/hw/audio/pcspk.c
@@ -23,13 +23,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/timer/i8254.h"
+#include "migration/vmstate.h"
#include "hw/audio/pcspk.h"
#include "qapi/error.h"
diff --git a/hw/audio/pl041.c b/hw/audio/pl041.c
index 59c6ce1f2e..ca91399078 100644
--- a/hw/audio/pl041.c
+++ b/hw/audio/pl041.c
@@ -21,12 +21,15 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "pl041.h"
#include "lm4549.h"
+#include "migration/vmstate.h"
#if 0
#define PL041_DEBUG_LEVEL 1
diff --git a/hw/audio/sb16.c b/hw/audio/sb16.c
index a2db06a2bb..3ad01f3599 100644
--- a/hw/audio/sb16.c
+++ b/hw/audio/sb16.c
@@ -23,11 +23,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/audio/soundhw.h"
#include "audio/audio.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "qemu/host-utils.h"
#include "qemu/log.h"
diff --git a/hw/audio/wm8750.c b/hw/audio/wm8750.c
index 81f83eea88..9f6df5d59c 100644
--- a/hw/audio/wm8750.c
+++ b/hw/audio/wm8750.c
@@ -9,6 +9,7 @@
#include "qemu/osdep.h"
#include "hw/i2c/i2c.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/audio/wm8750.h"
#include "audio/audio.h"
diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c
index 158c78f852..9299a1a7c2 100644
--- a/hw/block/dataplane/virtio-blk.c
+++ b/hw/block/dataplane/virtio-blk.c
@@ -16,6 +16,7 @@
#include "qapi/error.h"
#include "trace.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/thread.h"
#include "qemu/error-report.h"
#include "hw/virtio/virtio-access.h"
diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 0f200c5fb0..3b9caeb2fa 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -20,8 +20,8 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/xen/xen_common.h"
#include "hw/block/xen_blkif.h"
#include "sysemu/block-backend.h"
diff --git a/hw/block/ecc.c b/hw/block/ecc.c
index 48311d2609..1a182367ee 100644
--- a/hw/block/ecc.c
+++ b/hw/block/ecc.c
@@ -12,7 +12,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
#include "hw/block/flash.h"
/*
diff --git a/hw/block/fdc.c b/hw/block/fdc.c
index 9b24cb9b85..ac5d31e8c1 100644
--- a/hw/block/fdc.c
+++ b/hw/block/fdc.c
@@ -28,18 +28,21 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/block/fdc.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/timer.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/block/block.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
#include "sysemu/sysemu.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "trace.h"
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index dd87affcf5..47159de3a4 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -23,9 +23,10 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "sysemu/block-backend.h"
+#include "hw/qdev-properties.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/block/nand.c b/hw/block/nand.c
index 0a2736b50e..e396004315 100644
--- a/hw/block/nand.c
+++ b/hw/block/nand.c
@@ -20,9 +20,10 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/qdev-properties.h"
#include "hw/block/flash.h"
#include "sysemu/block-backend.h"
-#include "hw/qdev.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/block/nvme.c b/hw/block/nvme.c
index 36d6a8bb3a..12d8254250 100644
--- a/hw/block/nvme.c
+++ b/hw/block/nvme.c
@@ -28,9 +28,10 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "hw/block/block.h"
-#include "hw/hw.h"
#include "hw/pci/msix.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "sysemu/sysemu.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
diff --git a/hw/block/onenand.c b/hw/block/onenand.c
index b3644f7e89..fcc5a69b90 100644
--- a/hw/block/onenand.c
+++ b/hw/block/onenand.c
@@ -23,9 +23,11 @@
#include "hw/hw.h"
#include "hw/block/flash.h"
#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "sysemu/block-backend.h"
#include "exec/memory.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
index a1ec1faae5..566c0acb77 100644
--- a/hw/block/pflash_cfi01.c
+++ b/hw/block/pflash_cfi01.c
@@ -37,9 +37,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/block/block.h"
#include "hw/block/flash.h"
+#include "hw/qdev-properties.h"
#include "sysemu/block-backend.h"
#include "qapi/error.h"
#include "qemu/timer.h"
@@ -50,8 +50,9 @@
#include "qemu/module.h"
#include "qemu/option.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "sysemu/blockdev.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "trace.h"
/* #define PFLASH_DEBUG */
diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
index 42886f6af5..4baca701b7 100644
--- a/hw/block/pflash_cfi02.c
+++ b/hw/block/pflash_cfi02.c
@@ -33,9 +33,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/block/block.h"
#include "hw/block/flash.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/bitmap.h"
#include "qemu/timer.h"
@@ -43,6 +43,7 @@
#include "qemu/host-utils.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define PFLASH_DEBUG false
diff --git a/hw/block/tc58128.c b/hw/block/tc58128.c
index d0fae248dc..9888f01ac6 100644
--- a/hw/block/tc58128.c
+++ b/hw/block/tc58128.c
@@ -1,6 +1,5 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/sh4/sh.h"
#include "hw/loader.h"
#include "sysemu/qtest.h"
diff --git a/hw/block/vhost-user-blk.c b/hw/block/vhost-user-blk.c
index 85bc4017e7..0b8c5dfeab 100644
--- a/hw/block/vhost-user-blk.c
+++ b/hw/block/vhost-user-blk.c
@@ -22,11 +22,14 @@
#include "qemu/cutils.h"
#include "qom/object.h"
#include "hw/qdev-core.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-user-blk.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-access.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
static const int user_feature_bits[] = {
VIRTIO_BLK_F_SIZE_MAX,
diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index cbb3729158..18851601cb 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -18,7 +18,10 @@
#include "qemu/error-report.h"
#include "trace.h"
#include "hw/block/block.h"
+#include "hw/qdev-properties.h"
#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "hw/virtio/virtio-blk.h"
#include "dataplane/virtio-blk.h"
#include "scsi/constants.h"
@@ -26,6 +29,7 @@
# include <scsi/sg.h>
#endif
#include "hw/virtio/virtio-bus.h"
+#include "migration/qemu-file-types.h"
#include "hw/virtio/virtio-access.h"
/* Config size before the discard support (hide associated config fields) */
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 69d73196e2..f77343db60 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -7,6 +7,7 @@
#include "qemu/osdep.h"
#include "qemu/cutils.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "qapi/error.h"
@@ -17,9 +18,9 @@
#include "qapi/visitor.h"
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qstring.h"
-#include "hw/hw.h"
#include "hw/xen/xen_common.h"
#include "hw/block/xen_blkif.h"
+#include "hw/qdev-properties.h"
#include "hw/xen/xen-block.h"
#include "hw/xen/xen-backend.h"
#include "sysemu/blockdev.h"
diff --git a/hw/char/bcm2835_aux.c b/hw/char/bcm2835_aux.c
index 94679d276c..3f855196e3 100644
--- a/hw/char/bcm2835_aux.c
+++ b/hw/char/bcm2835_aux.c
@@ -22,6 +22,9 @@
#include "qemu/osdep.h"
#include "hw/char/bcm2835_aux.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/char/cadence_uart.c b/hw/char/cadence_uart.c
index fa25fe24da..0e315b2376 100644
--- a/hw/char/cadence_uart.c
+++ b/hw/char/cadence_uart.c
@@ -23,12 +23,14 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "chardev/char-fe.h"
#include "chardev/char-serial.h"
#include "qemu/timer.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/char/cadence_uart.h"
+#include "hw/irq.h"
#ifdef CADENCE_UART_ERR_DEBUG
#define DB_PRINT(...) do { \
diff --git a/hw/char/cmsdk-apb-uart.c b/hw/char/cmsdk-apb-uart.c
index 606c9cc7d6..9e1aa43bd3 100644
--- a/hw/char/cmsdk-apb-uart.c
+++ b/hw/char/cmsdk-apb-uart.c
@@ -21,10 +21,12 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
#include "chardev/char-fe.h"
#include "chardev/char-serial.h"
#include "hw/char/cmsdk-apb-uart.h"
+#include "hw/irq.h"
REG32(DATA, 0)
REG32(STATE, 4)
diff --git a/hw/char/debugcon.c b/hw/char/debugcon.c
index e1b6d1190f..5c592e091b 100644
--- a/hw/char/debugcon.c
+++ b/hw/char/debugcon.c
@@ -27,9 +27,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "chardev/char-fe.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#define TYPE_ISA_DEBUGCON_DEVICE "isa-debugcon"
#define ISA_DEBUGCON_DEVICE(obj) \
diff --git a/hw/char/digic-uart.c b/hw/char/digic-uart.c
index e4ac8435c8..974a2619dd 100644
--- a/hw/char/digic-uart.c
+++ b/hw/char/digic-uart.c
@@ -27,13 +27,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "chardev/char-fe.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/char/digic-uart.h"
+#include "hw/qdev-properties.h"
enum {
ST_RX_RDY = (1 << 0),
diff --git a/hw/char/escc.c b/hw/char/escc.c
index 8ddbb4be4f..e185522e27 100644
--- a/hw/char/escc.c
+++ b/hw/char/escc.c
@@ -23,8 +23,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/char/escc.h"
#include "ui/console.h"
diff --git a/hw/char/etraxfs_ser.c b/hw/char/etraxfs_ser.c
index 9745bca86c..15ac12ef22 100644
--- a/hw/char/etraxfs_ser.c
+++ b/hw/char/etraxfs_ser.c
@@ -23,6 +23,8 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
#include "qemu/log.h"
diff --git a/hw/char/exynos4210_uart.c b/hw/char/exynos4210_uart.c
index c5700eeaec..d6b6b62366 100644
--- a/hw/char/exynos4210_uart.c
+++ b/hw/char/exynos4210_uart.c
@@ -21,13 +21,15 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "chardev/char-fe.h"
#include "chardev/char-serial.h"
#include "hw/arm/exynos4210.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#undef DEBUG_UART
#undef DEBUG_UART_EXTEND
diff --git a/hw/char/grlib_apbuart.c b/hw/char/grlib_apbuart.c
index c2bb3ac153..fe3cbf41a3 100644
--- a/hw/char/grlib_apbuart.c
+++ b/hw/char/grlib_apbuart.c
@@ -23,6 +23,8 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sparc/grlib.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
diff --git a/hw/char/imx_serial.c b/hw/char/imx_serial.c
index 0655a9571b..fddde9b43d 100644
--- a/hw/char/imx_serial.c
+++ b/hw/char/imx_serial.c
@@ -20,7 +20,9 @@
#include "qemu/osdep.h"
#include "hw/char/imx_serial.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/char/ipoctal232.c b/hw/char/ipoctal232.c
index 5ab731e408..66c163ba26 100644
--- a/hw/char/ipoctal232.c
+++ b/hw/char/ipoctal232.c
@@ -10,6 +10,9 @@
#include "qemu/osdep.h"
#include "hw/ipack/ipack.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/module.h"
#include "chardev/char-fe.h"
diff --git a/hw/char/lm32_juart.c b/hw/char/lm32_juart.c
index 41a3ec81e3..e0b1bd6555 100644
--- a/hw/char/lm32_juart.c
+++ b/hw/char/lm32_juart.c
@@ -18,13 +18,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "trace.h"
#include "chardev/char-fe.h"
#include "hw/char/lm32_juart.h"
+#include "hw/qdev-properties.h"
enum {
LM32_JUART_MIN_SAVE_VERSION = 0,
diff --git a/hw/char/lm32_uart.c b/hw/char/lm32_uart.c
index d047a44e34..32f29c44cf 100644
--- a/hw/char/lm32_uart.c
+++ b/hw/char/lm32_uart.c
@@ -23,8 +23,10 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "chardev/char-fe.h"
#include "qemu/error-report.h"
diff --git a/hw/char/mcf_uart.c b/hw/char/mcf_uart.c
index 7b06110c4d..58323baf43 100644
--- a/hw/char/mcf_uart.c
+++ b/hw/char/mcf_uart.c
@@ -7,10 +7,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "hw/m68k/mcf.h"
+#include "hw/qdev-properties.h"
#include "chardev/char-fe.h"
typedef struct {
diff --git a/hw/char/milkymist-uart.c b/hw/char/milkymist-uart.c
index 8a78fcca8f..c358ca07f3 100644
--- a/hw/char/milkymist-uart.c
+++ b/hw/char/milkymist-uart.c
@@ -22,8 +22,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "chardev/char-fe.h"
#include "qemu/error-report.h"
diff --git a/hw/char/nrf51_uart.c b/hw/char/nrf51_uart.c
index c90b491477..2777afe366 100644
--- a/hw/char/nrf51_uart.c
+++ b/hw/char/nrf51_uart.c
@@ -16,6 +16,9 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/char/nrf51_uart.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "trace.h"
static void nrf51_uart_update_irq(NRF51UARTState *s)
diff --git a/hw/char/omap_uart.c b/hw/char/omap_uart.c
index b3bb1cfcec..13e4f43c4c 100644
--- a/hw/char/omap_uart.c
+++ b/hw/char/omap_uart.c
@@ -19,7 +19,6 @@
*/
#include "qemu/osdep.h"
#include "chardev/char.h"
-#include "hw/hw.h"
#include "hw/arm/omap.h"
#include "hw/char/serial.h"
#include "exec/address-spaces.h"
diff --git a/hw/char/parallel-isa.c b/hw/char/parallel-isa.c
index a043832e72..bcc577f61c 100644
--- a/hw/char/parallel-isa.c
+++ b/hw/char/parallel-isa.c
@@ -8,9 +8,11 @@
*
* SPDX-License-Identifier: MIT
*/
+
#include "qemu/osdep.h"
#include "sysemu/sysemu.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "hw/char/parallel.h"
static void parallel_init(ISABus *bus, int index, Chardev *chr)
diff --git a/hw/char/parallel.c b/hw/char/parallel.c
index 1cd4c54a02..40174eeda1 100644
--- a/hw/char/parallel.c
+++ b/hw/char/parallel.c
@@ -26,11 +26,14 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "chardev/char-parallel.h"
#include "chardev/char-fe.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/char/parallel.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "trace.h"
diff --git a/hw/char/pl011.c b/hw/char/pl011.c
index c1ae2f31f5..84ad8ff9fb 100644
--- a/hw/char/pl011.c
+++ b/hw/char/pl011.c
@@ -20,7 +20,9 @@
#include "qemu/osdep.h"
#include "hw/char/pl011.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "chardev/char-fe.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/char/sclpconsole-lm.c b/hw/char/sclpconsole-lm.c
index 691dc870ed..392606259d 100644
--- a/hw/char/sclpconsole-lm.c
+++ b/hw/char/sclpconsole-lm.c
@@ -14,14 +14,15 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
#include "qemu/thread.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "chardev/char-fe.h"
#include "hw/s390x/sclp.h"
+#include "migration/vmstate.h"
#include "hw/s390x/event-facility.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/ebcdic.h"
#define SIZE_BUFFER 4096
diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c
index 09b1d45d7a..da126f0133 100644
--- a/hw/char/sclpconsole.c
+++ b/hw/char/sclpconsole.c
@@ -13,12 +13,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
#include "qemu/thread.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "hw/s390x/sclp.h"
+#include "migration/vmstate.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/event-facility.h"
#include "chardev/char-fe.h"
diff --git a/hw/char/serial-isa.c b/hw/char/serial-isa.c
index 610426111a..9e31c51bb6 100644
--- a/hw/char/serial-isa.c
+++ b/hw/char/serial-isa.c
@@ -26,8 +26,11 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
+#include "sysemu/sysemu.h"
#include "hw/char/serial.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define ISA_SERIAL(obj) OBJECT_CHECK(ISASerialState, (obj), TYPE_ISA_SERIAL)
diff --git a/hw/char/serial-pci-multi.c b/hw/char/serial-pci-multi.c
index 63dcbaa984..5f13b5663b 100644
--- a/hw/char/serial-pci-multi.c
+++ b/hw/char/serial-pci-multi.c
@@ -30,7 +30,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/char/serial.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define PCI_SERIAL_MAX_PORTS 4
diff --git a/hw/char/serial-pci.c b/hw/char/serial-pci.c
index 9028efbda8..cb9b76e22b 100644
--- a/hw/char/serial-pci.c
+++ b/hw/char/serial-pci.c
@@ -29,7 +29,10 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/char/serial.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
typedef struct PCISerialState {
PCIDevice dev;
diff --git a/hw/char/serial.c b/hw/char/serial.c
index 7c42a2abfc..b4aa250950 100644
--- a/hw/char/serial.c
+++ b/hw/char/serial.c
@@ -25,9 +25,13 @@
#include "qemu/osdep.h"
#include "hw/char/serial.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "chardev/char-serial.h"
#include "qapi/error.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/error-report.h"
#include "trace.h"
diff --git a/hw/char/sh_serial.c b/hw/char/sh_serial.c
index 67740b7ee6..07dc16be13 100644
--- a/hw/char/sh_serial.c
+++ b/hw/char/sh_serial.c
@@ -24,8 +24,9 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sh4/sh.h"
#include "chardev/char-fe.h"
#include "qapi/error.h"
diff --git a/hw/char/spapr_vty.c b/hw/char/spapr_vty.c
index 871d2666f3..7f860fcce7 100644
--- a/hw/char/spapr_vty.c
+++ b/hw/char/spapr_vty.c
@@ -3,10 +3,12 @@
#include "qemu/module.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/qdev.h"
+#include "migration/vmstate.h"
#include "chardev/char-fe.h"
+#include "hw/irq.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
+#include "hw/qdev-properties.h"
#define VTERM_BUFSIZE 16
diff --git a/hw/char/stm32f2xx_usart.c b/hw/char/stm32f2xx_usart.c
index 40c365b908..4ec843de38 100644
--- a/hw/char/stm32f2xx_usart.c
+++ b/hw/char/stm32f2xx_usart.c
@@ -24,6 +24,8 @@
#include "qemu/osdep.h"
#include "hw/char/stm32f2xx_usart.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/char/terminal3270.c b/hw/char/terminal3270.c
index 3785886c25..6859c1bcb2 100644
--- a/hw/char/terminal3270.c
+++ b/hw/char/terminal3270.c
@@ -15,6 +15,7 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "chardev/char-fe.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/3270-ccw.h"
/* Enough spaces for different window sizes. */
diff --git a/hw/char/virtio-console.c b/hw/char/virtio-console.c
index 1bbeb00fae..c13649f1ef 100644
--- a/hw/char/virtio-console.c
+++ b/hw/char/virtio-console.c
@@ -15,6 +15,7 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "trace.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-serial.h"
#include "qapi/error.h"
#include "qapi/qapi-events-char.h"
diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c
index f7a54f261b..4e0ed829ae 100644
--- a/hw/char/virtio-serial-bus.c
+++ b/hw/char/virtio-serial-bus.c
@@ -21,10 +21,13 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
+#include "migration/qemu-file-types.h"
#include "monitor/monitor.h"
#include "qemu/error-report.h"
#include "qemu/queue.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "trace.h"
#include "hw/virtio/virtio-serial.h"
diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 47e1092263..63153dfde4 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -24,7 +24,7 @@
#include <termios.h>
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "sysemu/sysemu.h"
#include "chardev/char-fe.h"
#include "hw/xen/xen-legacy-backend.h"
diff --git a/hw/char/xilinx_uartlite.c b/hw/char/xilinx_uartlite.c
index 880962a756..2c47275068 100644
--- a/hw/char/xilinx_uartlite.c
+++ b/hw/char/xilinx_uartlite.c
@@ -23,6 +23,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "chardev/char-fe.h"
diff --git a/hw/core/bus.c b/hw/core/bus.c
index 17bc1edcde..7f3d2a3dbd 100644
--- a/hw/core/bus.c
+++ b/hw/core/bus.c
@@ -18,9 +18,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "qemu/ctype.h"
#include "qemu/module.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
void qbus_set_hotplug_handler(BusState *bus, Object *handler, Error **errp)
diff --git a/hw/core/empty_slot.c b/hw/core/empty_slot.c
index c694532046..3ba450e1ca 100644
--- a/hw/core/empty_slot.c
+++ b/hw/core/empty_slot.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "hw/empty_slot.h"
diff --git a/hw/core/generic-loader.c b/hw/core/generic-loader.c
index 79a493e577..06d8d6466e 100644
--- a/hw/core/generic-loader.c
+++ b/hw/core/generic-loader.c
@@ -34,7 +34,9 @@
#include "qom/cpu.h"
#include "hw/sysbus.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/core/generic-loader.h"
diff --git a/hw/core/loader-fit.c b/hw/core/loader-fit.c
index f27b6af942..953b16bc82 100644
--- a/hw/core/loader-fit.c
+++ b/hw/core/loader-fit.c
@@ -26,7 +26,6 @@
#include "qemu/cutils.h"
#include "qemu/error-report.h"
#include "sysemu/device_tree.h"
-#include "sysemu/sysemu.h"
#include <libfdt.h>
#include <zlib.h>
diff --git a/hw/core/loader.c b/hw/core/loader.c
index 425bf69a99..84e4f3efac 100644
--- a/hw/core/loader.c
+++ b/hw/core/loader.c
@@ -47,7 +47,9 @@
#include "qapi/error.h"
#include "hw/hw.h"
#include "disas/disas.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "uboot_image.h"
#include "hw/loader.h"
diff --git a/hw/core/machine-qmp-cmds.c b/hw/core/machine-qmp-cmds.c
index 5bd95b8ab0..526fbd5ced 100644
--- a/hw/core/machine-qmp-cmds.c
+++ b/hw/core/machine-qmp-cmds.c
@@ -13,9 +13,11 @@
#include "qapi/error.h"
#include "qapi/qapi-commands-machine.h"
#include "qapi/qmp/qerror.h"
+#include "qemu/main-loop.h"
#include "sysemu/hostmem.h"
#include "sysemu/hw_accel.h"
#include "sysemu/numa.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
CpuInfoList *qmp_query_cpus(Error **errp)
diff --git a/hw/core/null-machine.c b/hw/core/null-machine.c
index 04a1e2b02a..30b1991b52 100644
--- a/hw/core/null-machine.c
+++ b/hw/core/null-machine.c
@@ -13,7 +13,6 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
diff --git a/hw/core/numa.c b/hw/core/numa.c
index a11431483c..7a63ddc4c6 100644
--- a/hw/core/numa.c
+++ b/hw/core/numa.c
@@ -23,7 +23,9 @@
*/
#include "qemu/osdep.h"
+#include "sysemu/hostmem.h"
#include "sysemu/numa.h"
+#include "sysemu/sysemu.h"
#include "exec/cpu-common.h"
#include "exec/ramlist.h"
#include "qemu/bitmap.h"
@@ -32,7 +34,10 @@
#include "qapi/opts-visitor.h"
#include "qapi/qapi-visit-machine.h"
#include "sysemu/qtest.h"
+#include "qom/cpu.h"
#include "hw/mem/pc-dimm.h"
+#include "migration/vmstate.h"
+#include "hw/boards.h"
#include "hw/mem/memory-device.h"
#include "qemu/option.h"
#include "qemu/config-file.h"
diff --git a/hw/core/or-irq.c b/hw/core/or-irq.c
index 123a8c644a..18d63831cd 100644
--- a/hw/core/or-irq.c
+++ b/hw/core/or-irq.c
@@ -23,7 +23,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/or-irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
static void or_irq_handler(void *opaque, int n, int level)
diff --git a/hw/core/platform-bus.c b/hw/core/platform-bus.c
index 5fecb29239..edb0da1de8 100644
--- a/hw/core/platform-bus.c
+++ b/hw/core/platform-bus.c
@@ -21,9 +21,9 @@
#include "qemu/osdep.h"
#include "hw/platform-bus.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
/*
diff --git a/hw/core/ptimer.c b/hw/core/ptimer.c
index 170fd34d8b..d58e2dfdb0 100644
--- a/hw/core/ptimer.c
+++ b/hw/core/ptimer.c
@@ -5,10 +5,11 @@
*
* This code is licensed under the GNU LGPL.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
#include "hw/ptimer.h"
+#include "migration/vmstate.h"
#include "qemu/host-utils.h"
#include "sysemu/replay.h"
#include "sysemu/qtest.h"
diff --git a/hw/core/qdev-fw.c b/hw/core/qdev-fw.c
index aa35e9d0ac..a31958355f 100644
--- a/hw/core/qdev-fw.c
+++ b/hw/core/qdev-fw.c
@@ -16,8 +16,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
#include "hw/fw-path-provider.h"
+#include "hw/qdev-core.h"
const char *qdev_fw_name(DeviceState *dev)
{
diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c
index ba412dd2ca..fceab9afd5 100644
--- a/hw/core/qdev-properties-system.c
+++ b/hw/core/qdev-properties-system.c
@@ -12,7 +12,7 @@
#include "qemu/osdep.h"
#include "net/net.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qapi/qmp/qerror.h"
#include "sysemu/block-backend.h"
diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index 81c97f48a7..ac28890e5a 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -1,8 +1,10 @@
#include "qemu/osdep.h"
#include "net/net.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "hw/pci/pci.h"
+#include "qapi/qapi-types-block.h"
+#include "qapi/qapi-types-misc.h"
#include "qapi/qmp/qerror.h"
#include "qemu/ctype.h"
#include "qemu/error-report.h"
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index 94ebc0a4a1..60d66c2f39 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -26,8 +26,6 @@
this API directly. */
#include "qemu/osdep.h"
-#include "hw/qdev.h"
-#include "sysemu/sysemu.h"
#include "qapi/error.h"
#include "qapi/qapi-events-qdev.h"
#include "qapi/qmp/qerror.h"
@@ -35,8 +33,11 @@
#include "qemu/error-report.h"
#include "qemu/option.h"
#include "hw/hotplug.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/boards.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
bool qdev_hotplug = false;
static bool qdev_hot_added = false;
diff --git a/hw/core/register.c b/hw/core/register.c
index bb5ab9d479..3c77396587 100644
--- a/hw/core/register.c
+++ b/hw/core/register.c
@@ -17,7 +17,6 @@
#include "qemu/osdep.h"
#include "hw/register.h"
-#include "hw/qdev.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/core/split-irq.c b/hw/core/split-irq.c
index c606f4a802..b5acc669fb 100644
--- a/hw/core/split-irq.c
+++ b/hw/core/split-irq.c
@@ -25,6 +25,8 @@
#include "qemu/osdep.h"
#include "hw/core/split-irq.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/core/vm-change-state-handler.c b/hw/core/vm-change-state-handler.c
index f814813bdd..1f3630986d 100644
--- a/hw/core/vm-change-state-handler.c
+++ b/hw/core/vm-change-state-handler.c
@@ -16,7 +16,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
+#include "sysemu/runstate.h"
static int qdev_get_dev_tree_depth(DeviceState *dev)
{
diff --git a/hw/cpu/a15mpcore.c b/hw/cpu/a15mpcore.c
index 980f230d75..7e9983aa19 100644
--- a/hw/cpu/a15mpcore.c
+++ b/hw/cpu/a15mpcore.c
@@ -22,6 +22,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/cpu/a15mpcore.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
diff --git a/hw/cpu/a9mpcore.c b/hw/cpu/a9mpcore.c
index 187e4d939e..cd1e165faf 100644
--- a/hw/cpu/a9mpcore.c
+++ b/hw/cpu/a9mpcore.c
@@ -12,6 +12,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/cpu/a9mpcore.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qom/cpu.h"
static void a9mp_priv_set_irq(void *opaque, int irq, int level)
diff --git a/hw/cpu/arm11mpcore.c b/hw/cpu/arm11mpcore.c
index 2404f93a3e..e78f5d080c 100644
--- a/hw/cpu/arm11mpcore.c
+++ b/hw/cpu/arm11mpcore.c
@@ -12,6 +12,8 @@
#include "qemu/module.h"
#include "hw/cpu/arm11mpcore.h"
#include "hw/intc/realview_gic.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
static void mpcore_priv_set_irq(void *opaque, int irq, int level)
diff --git a/hw/cpu/cluster.c b/hw/cpu/cluster.c
index 6f5f037b3c..74d8d43c00 100644
--- a/hw/cpu/cluster.c
+++ b/hw/cpu/cluster.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "hw/cpu/cluster.h"
+#include "hw/qdev-properties.h"
#include "qom/cpu.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/cpu/realview_mpcore.c b/hw/cpu/realview_mpcore.c
index f06294bb5e..ae2c9913f6 100644
--- a/hw/cpu/realview_mpcore.c
+++ b/hw/cpu/realview_mpcore.c
@@ -13,6 +13,8 @@
#include "qemu/module.h"
#include "hw/cpu/arm11mpcore.h"
#include "hw/intc/realview_gic.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#define TYPE_REALVIEW_MPCORE_RIRQ "realview_mpcore"
#define REALVIEW_MPCORE_RIRQ(obj) \
diff --git a/hw/cris/boot.c b/hw/cris/boot.c
index 602f538ef6..2d2cc0c7a5 100644
--- a/hw/cris/boot.c
+++ b/hw/cris/boot.c
@@ -24,11 +24,11 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/loader.h"
#include "elf.h"
#include "boot.h"
#include "qemu/cutils.h"
+#include "sysemu/reset.h"
static void main_cpu_reset(void *opaque)
{
diff --git a/hw/display/ads7846.c b/hw/display/ads7846.c
index 1a97e97638..c12272ae72 100644
--- a/hw/display/ads7846.c
+++ b/hw/display/ads7846.c
@@ -11,7 +11,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "ui/console.h"
diff --git a/hw/display/ati.c b/hw/display/ati.c
index a747c4cc98..35f49a591b 100644
--- a/hw/display/ati.c
+++ b/hw/display/ati.c
@@ -19,12 +19,12 @@
#include "qemu/osdep.h"
#include "ati_int.h"
#include "ati_regs.h"
+#include "hw/qdev-properties.h"
#include "vga_regs.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "hw/display/i2c-ddc.h"
#include "trace.h"
diff --git a/hw/display/bcm2835_fb.c b/hw/display/bcm2835_fb.c
index 2311ec75b8..8f856878cd 100644
--- a/hw/display/bcm2835_fb.c
+++ b/hw/display/bcm2835_fb.c
@@ -26,9 +26,13 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/display/bcm2835_fb.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "framebuffer.h"
#include "ui/pixel_ops.h"
#include "hw/misc/bcm2835_mbox_defs.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/display/bochs-display.c b/hw/display/bochs-display.c
index 8e83b5164b..dc1bd1641d 100644
--- a/hw/display/bochs-display.c
+++ b/hw/display/bochs-display.c
@@ -8,8 +8,9 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/display/bochs-vbe.h"
#include "hw/display/edid.h"
diff --git a/hw/display/cg3.c b/hw/display/cg3.c
index a7340dc1c2..f90baae4de 100644
--- a/hw/display/cg3.c
+++ b/hw/display/cg3.c
@@ -29,7 +29,10 @@
#include "qemu/error-report.h"
#include "ui/console.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c
index 2e4911a1e3..cd283e53b4 100644
--- a/hw/display/cirrus_vga.c
+++ b/hw/display/cirrus_vga.c
@@ -35,10 +35,12 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "qemu/units.h"
+#include "sysemu/reset.h"
#include "qapi/error.h"
#include "trace.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "ui/pixel_ops.h"
#include "cirrus_vga_internal.h"
diff --git a/hw/display/cirrus_vga_isa.c b/hw/display/cirrus_vga_isa.c
index 69cdb9e066..7ef8e59224 100644
--- a/hw/display/cirrus_vga_isa.c
+++ b/hw/display/cirrus_vga_isa.c
@@ -26,8 +26,8 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#include "cirrus_vga_internal.h"
diff --git a/hw/display/dpcd.c b/hw/display/dpcd.c
index 88cde54821..170545c605 100644
--- a/hw/display/dpcd.c
+++ b/hw/display/dpcd.c
@@ -30,6 +30,7 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/misc/auxbus.h"
+#include "migration/vmstate.h"
#include "hw/display/dpcd.h"
#ifndef DEBUG_DPCD
diff --git a/hw/display/edid-region.c b/hw/display/edid-region.c
index d0d31bad3d..675429dc18 100644
--- a/hw/display/edid-region.c
+++ b/hw/display/edid-region.c
@@ -1,4 +1,5 @@
#include "qemu/osdep.h"
+#include "exec/memory.h"
#include "hw/display/edid.h"
static uint64_t edid_region_read(void *ptr, hwaddr addr, unsigned size)
diff --git a/hw/display/exynos4210_fimd.c b/hw/display/exynos4210_fimd.c
index 61f7408b1c..c1071ecd46 100644
--- a/hw/display/exynos4210_fimd.c
+++ b/hw/display/exynos4210_fimd.c
@@ -23,7 +23,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "ui/console.h"
#include "ui/pixel_ops.h"
#include "qemu/bswap.h"
diff --git a/hw/display/framebuffer.c b/hw/display/framebuffer.c
index 36e3db189a..4485aa335b 100644
--- a/hw/display/framebuffer.c
+++ b/hw/display/framebuffer.c
@@ -18,7 +18,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "framebuffer.h"
diff --git a/hw/display/g364fb.c b/hw/display/g364fb.c
index 1774b4452e..839d26eca1 100644
--- a/hw/display/g364fb.c
+++ b/hw/display/g364fb.c
@@ -20,12 +20,15 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "ui/console.h"
#include "ui/pixel_ops.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
typedef struct G364State {
/* hardware */
diff --git a/hw/display/i2c-ddc.c b/hw/display/i2c-ddc.c
index 041fc4f408..fc70b7930c 100644
--- a/hw/display/i2c-ddc.c
+++ b/hw/display/i2c-ddc.c
@@ -20,6 +20,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/i2c/i2c.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/display/i2c-ddc.h"
#ifndef DEBUG_I2CDDC
diff --git a/hw/display/jazz_led.c b/hw/display/jazz_led.c
index 783189ebcd..3e0112b1ca 100644
--- a/hw/display/jazz_led.c
+++ b/hw/display/jazz_led.c
@@ -28,6 +28,7 @@
#include "ui/pixel_ops.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
typedef enum {
REDRAW_NONE = 0, REDRAW_SEGMENTS = 1, REDRAW_BACKGROUND = 2,
diff --git a/hw/display/milkymist-tmu2.c b/hw/display/milkymist-tmu2.c
index e1ed018b8f..199f1227e7 100644
--- a/hw/display/milkymist-tmu2.c
+++ b/hw/display/milkymist-tmu2.c
@@ -25,8 +25,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
diff --git a/hw/display/milkymist-vgafb.c b/hw/display/milkymist-vgafb.c
index dce1dd7ad6..8b0da4660a 100644
--- a/hw/display/milkymist-vgafb.c
+++ b/hw/display/milkymist-vgafb.c
@@ -24,6 +24,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "trace.h"
#include "ui/console.h"
@@ -33,6 +34,7 @@
#include "qemu/module.h"
#define BITS 8
+#include "migration/vmstate.h"
#include "milkymist-vgafb_template.h"
#define BITS 15
#include "milkymist-vgafb_template.h"
diff --git a/hw/display/omap_dss.c b/hw/display/omap_dss.c
index 601f178fdd..637aae8d39 100644
--- a/hw/display/omap_dss.c
+++ b/hw/display/omap_dss.c
@@ -17,8 +17,10 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "ui/console.h"
#include "hw/arm/omap.h"
diff --git a/hw/display/omap_lcdc.c b/hw/display/omap_lcdc.c
index 07a5effe04..6ad13f2e9e 100644
--- a/hw/display/omap_lcdc.c
+++ b/hw/display/omap_lcdc.c
@@ -16,8 +16,9 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "ui/console.h"
#include "hw/arm/omap.h"
#include "framebuffer.h"
diff --git a/hw/display/pl110.c b/hw/display/pl110.c
index 2bdfc3cc49..c2991a28d2 100644
--- a/hw/display/pl110.c
+++ b/hw/display/pl110.c
@@ -8,7 +8,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "ui/console.h"
#include "framebuffer.h"
#include "ui/pixel_ops.h"
diff --git a/hw/display/pxa2xx_lcd.c b/hw/display/pxa2xx_lcd.c
index b83f80753a..05f5f84671 100644
--- a/hw/display/pxa2xx_lcd.c
+++ b/hw/display/pxa2xx_lcd.c
@@ -12,6 +12,8 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "ui/console.h"
#include "hw/arm/pxa.h"
#include "ui/pixel_ops.h"
diff --git a/hw/display/qxl-render.c b/hw/display/qxl-render.c
index 14ad2b352d..f7fdc4901e 100644
--- a/hw/display/qxl-render.c
+++ b/hw/display/qxl-render.c
@@ -21,6 +21,7 @@
#include "qemu/osdep.h"
#include "qxl.h"
+#include "sysemu/runstate.h"
#include "trace.h"
static void qxl_blit(PCIQXLDevice *qxl, QXLRect *rect)
diff --git a/hw/display/qxl.c b/hw/display/qxl.c
index 98c7410032..cd7eb39d20 100644
--- a/hw/display/qxl.c
+++ b/hw/display/qxl.c
@@ -26,9 +26,12 @@
#include "qemu/timer.h"
#include "qemu/queue.h"
#include "qemu/atomic.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-properties.h"
+#include "sysemu/runstate.h"
#include "migration/blocker.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qxl.h"
diff --git a/hw/display/qxl.h b/hw/display/qxl.h
index 4adfdb1e5d..80eb0d2672 100644
--- a/hw/display/qxl.h
+++ b/hw/display/qxl.h
@@ -2,7 +2,6 @@
#define HW_QXL_H
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "vga_int.h"
#include "qemu/thread.h"
diff --git a/hw/display/ramfb-standalone.c b/hw/display/ramfb-standalone.c
index 56215ef88c..1f72450303 100644
--- a/hw/display/ramfb-standalone.c
+++ b/hw/display/ramfb-standalone.c
@@ -2,10 +2,10 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#include "hw/display/ramfb.h"
#include "ui/console.h"
-#include "sysemu/sysemu.h"
#define RAMFB(obj) OBJECT_CHECK(RAMFBStandaloneState, (obj), TYPE_RAMFB_DEVICE)
diff --git a/hw/display/ramfb.c b/hw/display/ramfb.c
index b4eb283ef8..cd94940223 100644
--- a/hw/display/ramfb.c
+++ b/hw/display/ramfb.c
@@ -10,13 +10,14 @@
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/option.h"
#include "hw/loader.h"
#include "hw/display/ramfb.h"
#include "ui/console.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
struct QEMU_PACKED RAMFBCfg {
uint64_t addr;
diff --git a/hw/display/sii9022.c b/hw/display/sii9022.c
index 0bebb85a58..0710ce9de5 100644
--- a/hw/display/sii9022.c
+++ b/hw/display/sii9022.c
@@ -16,6 +16,7 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "hw/i2c/i2c.h"
+#include "migration/vmstate.h"
#include "hw/display/i2c-ddc.h"
#include "trace.h"
diff --git a/hw/display/sm501.c b/hw/display/sm501.c
index 5918f59b2b..d9e5762e36 100644
--- a/hw/display/sm501.c
+++ b/hw/display/sm501.c
@@ -29,11 +29,12 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/char/serial.h"
#include "ui/console.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/i2c/i2c.h"
#include "hw/display/i2c-ddc.h"
#include "qemu/range.h"
diff --git a/hw/display/ssd0303.c b/hw/display/ssd0303.c
index f2a60c44c9..718378f6de 100644
--- a/hw/display/ssd0303.c
+++ b/hw/display/ssd0303.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/i2c/i2c.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "ui/console.h"
diff --git a/hw/display/ssd0323.c b/hw/display/ssd0323.c
index ac373f1e78..c3bdb18742 100644
--- a/hw/display/ssd0323.c
+++ b/hw/display/ssd0323.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "ui/console.h"
diff --git a/hw/display/tc6393xb.c b/hw/display/tc6393xb.c
index 0b7c59cde7..49a676d1b0 100644
--- a/hw/display/tc6393xb.c
+++ b/hw/display/tc6393xb.c
@@ -10,11 +10,13 @@
* Contributions after 2012-01-13 are licensed under the terms of the
* GNU GPL, version 2 or (at your option) any later version.
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/host-utils.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/display/tc6393xb.h"
+#include "exec/memory.h"
#include "hw/block/flash.h"
#include "ui/console.h"
#include "ui/pixel_ops.h"
diff --git a/hw/display/tcx.c b/hw/display/tcx.c
index cdabcbc746..14e829d3fa 100644
--- a/hw/display/tcx.c
+++ b/hw/display/tcx.c
@@ -28,7 +28,9 @@
#include "ui/console.h"
#include "ui/pixel_ops.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/display/vga-isa-mm.c b/hw/display/vga-isa-mm.c
index 215e649719..e9c43e5530 100644
--- a/hw/display/vga-isa-mm.c
+++ b/hw/display/vga-isa-mm.c
@@ -21,9 +21,11 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
+#include "qemu/bitops.h"
#include "qemu/units.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
#include "hw/display/vga.h"
#include "vga_int.h"
#include "ui/pixel_ops.h"
diff --git a/hw/display/vga-isa.c b/hw/display/vga-isa.c
index 945952a9b0..873e5e9706 100644
--- a/hw/display/vga-isa.c
+++ b/hw/display/vga-isa.c
@@ -25,13 +25,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "vga_int.h"
#include "ui/pixel_ops.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#define TYPE_ISA_VGA "isa-vga"
#define ISA_VGA(obj) OBJECT_CHECK(ISAVGAState, (obj), TYPE_ISA_VGA)
diff --git a/hw/display/vga-pci.c b/hw/display/vga-pci.c
index dedac5d128..a27b88122d 100644
--- a/hw/display/vga-pci.c
+++ b/hw/display/vga-pci.c
@@ -25,8 +25,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "vga_int.h"
#include "ui/pixel_ops.h"
#include "qemu/module.h"
diff --git a/hw/display/vga.c b/hw/display/vga.c
index 910a23c12e..573d223d46 100644
--- a/hw/display/vga.c
+++ b/hw/display/vga.c
@@ -21,10 +21,11 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
+#include "sysemu/reset.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/display/vga.h"
#include "hw/pci/pci.h"
#include "vga_int.h"
@@ -32,6 +33,7 @@
#include "ui/pixel_ops.h"
#include "qemu/timer.h"
#include "hw/xen/xen.h"
+#include "migration/vmstate.h"
#include "trace.h"
//#define DEBUG_VGA_MEM
diff --git a/hw/display/vhost-user-gpu.c b/hw/display/vhost-user-gpu.c
index 7181d9cdba..279877886e 100644
--- a/hw/display/vhost-user-gpu.c
+++ b/hw/display/vhost-user-gpu.c
@@ -11,6 +11,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-gpu.h"
#include "chardev/char-fe.h"
#include "qapi/error.h"
diff --git a/hw/display/virtio-gpu-pci.c b/hw/display/virtio-gpu-pci.c
index e4c7eb6193..25e4038874 100644
--- a/hw/display/virtio-gpu-pci.c
+++ b/hw/display/virtio-gpu-pci.c
@@ -15,6 +15,7 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-gpu-pci.h"
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 25d9e327fc..28e868c021 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -17,12 +17,15 @@
#include "ui/console.h"
#include "trace.h"
#include "sysemu/dma.h"
+#include "sysemu/sysemu.h"
#include "hw/virtio/virtio.h"
+#include "migration/qemu-file-types.h"
#include "hw/virtio/virtio-gpu.h"
#include "hw/virtio/virtio-gpu-bswap.h"
#include "hw/virtio/virtio-gpu-pixman.h"
#include "hw/virtio/virtio-bus.h"
#include "hw/display/edid.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c
index 79a145e284..cc6e66ea1c 100644
--- a/hw/display/virtio-vga.c
+++ b/hw/display/virtio-vga.c
@@ -1,6 +1,6 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-gpu.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/display/vmware_vga.c b/hw/display/vmware_vga.c
index 249a179bf6..23dc8910cc 100644
--- a/hw/display/vmware_vga.c
+++ b/hw/display/vmware_vga.c
@@ -26,11 +26,12 @@
#include "qemu/module.h"
#include "qemu/units.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/loader.h"
#include "trace.h"
#include "ui/vnc.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#undef VERBOSE
#define HW_RECT_ACCEL
diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
index 3c79913b31..838260b6ad 100644
--- a/hw/display/xenfb.c
+++ b/hw/display/xenfb.c
@@ -27,7 +27,6 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "ui/input.h"
#include "ui/console.h"
#include "hw/xen/xen-legacy-backend.h"
diff --git a/hw/display/xlnx_dp.c b/hw/display/xlnx_dp.c
index cc5b650df0..fde3b21ea5 100644
--- a/hw/display/xlnx_dp.c
+++ b/hw/display/xlnx_dp.c
@@ -27,6 +27,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/display/xlnx_dp.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#ifndef DEBUG_DP
#define DEBUG_DP 0
diff --git a/hw/dma/bcm2835_dma.c b/hw/dma/bcm2835_dma.c
index a39e8f4968..192bd377a0 100644
--- a/hw/dma/bcm2835_dma.c
+++ b/hw/dma/bcm2835_dma.c
@@ -6,6 +6,8 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/dma/bcm2835_dma.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/dma/etraxfs_dma.c b/hw/dma/etraxfs_dma.c
index 85783eb847..47e1c6df12 100644
--- a/hw/dma/etraxfs_dma.c
+++ b/hw/dma/etraxfs_dma.c
@@ -21,10 +21,13 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "qemu/main-loop.h"
+#include "sysemu/runstate.h"
#include "exec/address-spaces.h"
-#include "sysemu/sysemu.h"
#include "hw/cris/etraxfs_dma.h"
diff --git a/hw/dma/i82374.c b/hw/dma/i82374.c
index 68fad2dd12..b788b3681a 100644
--- a/hw/dma/i82374.c
+++ b/hw/dma/i82374.c
@@ -26,6 +26,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/dma/i8257.h"
#define TYPE_I82374 "i82374"
diff --git a/hw/dma/i8257.c b/hw/dma/i8257.c
index 30a3442437..792f617eb4 100644
--- a/hw/dma/i8257.c
+++ b/hw/dma/i8257.c
@@ -23,8 +23,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/dma/i8257.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/dma/pl080.c b/hw/dma/pl080.c
index 7e5762457b..52ba23f4bf 100644
--- a/hw/dma/pl080.c
+++ b/hw/dma/pl080.c
@@ -9,10 +9,14 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "exec/address-spaces.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/dma/pl080.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#define PL080_CONF_E 0x1
diff --git a/hw/dma/pl330.c b/hw/dma/pl330.c
index a56a3e7771..f2bb2d9ac1 100644
--- a/hw/dma/pl330.c
+++ b/hw/dma/pl330.c
@@ -16,7 +16,10 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/timer.h"
#include "sysemu/dma.h"
diff --git a/hw/dma/puv3_dma.c b/hw/dma/puv3_dma.c
index 122f87aff1..5488d388a9 100644
--- a/hw/dma/puv3_dma.c
+++ b/hw/dma/puv3_dma.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#undef DEBUG_PUV3
diff --git a/hw/dma/pxa2xx_dma.c b/hw/dma/pxa2xx_dma.c
index d6fb957417..18e7a0b694 100644
--- a/hw/dma/pxa2xx_dma.c
+++ b/hw/dma/pxa2xx_dma.c
@@ -10,8 +10,11 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/pxa.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/dma/rc4030.c b/hw/dma/rc4030.c
index 155af9b26a..d54e296d3a 100644
--- a/hw/dma/rc4030.c
+++ b/hw/dma/rc4030.c
@@ -24,9 +24,10 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/mips/mips.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/dma/sparc32_dma.c b/hw/dma/sparc32_dma.c
index 88765d0c25..0e5bbcdc7f 100644
--- a/hw/dma/sparc32_dma.c
+++ b/hw/dma/sparc32_dma.c
@@ -26,10 +26,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sparc/sparc32_dma.h"
#include "hw/sparc/sun4m_iommu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/dma/xilinx_axidma.c b/hw/dma/xilinx_axidma.c
index 921be178d9..d176df6d44 100644
--- a/hw/dma/xilinx_axidma.c
+++ b/hw/dma/xilinx_axidma.c
@@ -26,7 +26,10 @@
#include "hw/sysbus.h"
#include "qapi/error.h"
#include "qemu/timer.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c
index 51e1ead4fa..75b660988f 100644
--- a/hw/dma/xlnx-zdma.c
+++ b/hw/dma/xlnx-zdma.c
@@ -28,6 +28,9 @@
#include "qemu/osdep.h"
#include "hw/dma/xlnx-zdma.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/dma/xlnx-zynq-devcfg.c b/hw/dma/xlnx-zynq-devcfg.c
index 7a03ce1b02..e33112b6f0 100644
--- a/hw/dma/xlnx-zynq-devcfg.c
+++ b/hw/dma/xlnx-zynq-devcfg.c
@@ -26,8 +26,9 @@
#include "qemu/osdep.h"
#include "hw/dma/xlnx-zynq-devcfg.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
-#include "sysemu/sysemu.h"
#include "sysemu/dma.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/dma/xlnx_dpdma.c b/hw/dma/xlnx_dpdma.c
index e834f81e17..b40c897de2 100644
--- a/hw/dma/xlnx_dpdma.c
+++ b/hw/dma/xlnx_dpdma.c
@@ -27,6 +27,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/dma/xlnx_dpdma.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#ifndef DEBUG_DPDMA
#define DEBUG_DPDMA 0
diff --git a/hw/gpio/bcm2835_gpio.c b/hw/gpio/bcm2835_gpio.c
index ba8dd6c393..91ce3d10cc 100644
--- a/hw/gpio/bcm2835_gpio.c
+++ b/hw/gpio/bcm2835_gpio.c
@@ -17,8 +17,10 @@
#include "qemu/timer.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/sd/sd.h"
#include "hw/gpio/bcm2835_gpio.h"
+#include "hw/irq.h"
#define GPFSEL0 0x00
#define GPFSEL1 0x04
diff --git a/hw/gpio/gpio_key.c b/hw/gpio/gpio_key.c
index 7d5510257e..46bbd42772 100644
--- a/hw/gpio/gpio_key.c
+++ b/hw/gpio/gpio_key.c
@@ -23,7 +23,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/gpio/imx_gpio.c b/hw/gpio/imx_gpio.c
index a51af72c1f..ac8304ec56 100644
--- a/hw/gpio/imx_gpio.c
+++ b/hw/gpio/imx_gpio.c
@@ -19,6 +19,9 @@
#include "qemu/osdep.h"
#include "hw/gpio/imx_gpio.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/gpio/max7310.c b/hw/gpio/max7310.c
index 273da622ca..bebb4030d2 100644
--- a/hw/gpio/max7310.c
+++ b/hw/gpio/max7310.c
@@ -8,7 +8,11 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#define TYPE_MAX7310 "max7310"
diff --git a/hw/gpio/mpc8xxx.c b/hw/gpio/mpc8xxx.c
index 6ff56dc3f2..1d99667094 100644
--- a/hw/gpio/mpc8xxx.c
+++ b/hw/gpio/mpc8xxx.c
@@ -20,7 +20,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#define TYPE_MPC8XXX_GPIO "mpc8xxx_gpio"
diff --git a/hw/gpio/nrf51_gpio.c b/hw/gpio/nrf51_gpio.c
index dd6c16a841..b47fddf4ed 100644
--- a/hw/gpio/nrf51_gpio.c
+++ b/hw/gpio/nrf51_gpio.c
@@ -14,6 +14,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/gpio/nrf51_gpio.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "trace.h"
/*
diff --git a/hw/gpio/omap_gpio.c b/hw/gpio/omap_gpio.c
index e2785c5dc7..41e1aa798c 100644
--- a/hw/gpio/omap_gpio.c
+++ b/hw/gpio/omap_gpio.c
@@ -19,7 +19,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/omap.h"
#include "hw/sysbus.h"
#include "qemu/error-report.h"
diff --git a/hw/gpio/pl061.c b/hw/gpio/pl061.c
index 02c01fd521..2a828260bd 100644
--- a/hw/gpio/pl061.c
+++ b/hw/gpio/pl061.c
@@ -9,7 +9,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/gpio/puv3_gpio.c b/hw/gpio/puv3_gpio.c
index 54d30cada2..d19e342514 100644
--- a/hw/gpio/puv3_gpio.c
+++ b/hw/gpio/puv3_gpio.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#undef DEBUG_PUV3
diff --git a/hw/gpio/zaurus.c b/hw/gpio/zaurus.c
index f2f1f67266..9a12c68342 100644
--- a/hw/gpio/zaurus.c
+++ b/hw/gpio/zaurus.c
@@ -17,9 +17,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/arm/sharpsl.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#undef REG_FMT
diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c
index e94614abbd..e0466ee055 100644
--- a/hw/hppa/dino.c
+++ b/hw/hppa/dino.c
@@ -15,10 +15,10 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
+#include "migration/vmstate.h"
#include "hppa_sys.h"
#include "exec/address-spaces.h"
diff --git a/hw/hppa/hppa_sys.h b/hw/hppa/hppa_sys.h
index f5f983bf4c..43d25d21fc 100644
--- a/hw/hppa/hppa_sys.h
+++ b/hw/hppa/hppa_sys.h
@@ -7,7 +7,6 @@
#include "hw/pci/pci_host.h"
#include "hw/ide.h"
#include "hw/i386/pc.h"
-#include "hw/irq.h"
#include "hppa_hardware.h"
diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c
index 662838d83b..2736ce835e 100644
--- a/hw/hppa/machine.c
+++ b/hw/hppa/machine.c
@@ -6,11 +6,11 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "elf.h"
#include "hw/loader.h"
#include "hw/boards.h"
#include "qemu/error-report.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "hw/timer/mc146818rtc.h"
#include "hw/ide.h"
diff --git a/hw/hppa/pci.c b/hw/hppa/pci.c
index b6606d9719..32609aba63 100644
--- a/hw/hppa/pci.c
+++ b/hw/hppa/pci.c
@@ -6,7 +6,6 @@
#include "qemu/osdep.h"
#include "hppa_sys.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
diff --git a/hw/hyperv/hyperv_testdev.c b/hw/hyperv/hyperv_testdev.c
index 0d343a8bc0..88a5a63782 100644
--- a/hw/hyperv/hyperv_testdev.c
+++ b/hw/hyperv/hyperv_testdev.c
@@ -15,7 +15,6 @@
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/queue.h"
-#include "hw/qdev.h"
#include "hw/isa/isa.h"
#include "hw/hyperv/hyperv.h"
diff --git a/hw/i2c/aspeed_i2c.c b/hw/i2c/aspeed_i2c.c
index 219ad3806f..a956eb3849 100644
--- a/hw/i2c/aspeed_i2c.c
+++ b/hw/i2c/aspeed_i2c.c
@@ -20,9 +20,11 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/i2c/aspeed_i2c.h"
+#include "hw/irq.h"
/* I2C Global Register */
diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c
index 60c7a9be0b..b000952b98 100644
--- a/hw/i2c/bitbang_i2c.c
+++ b/hw/i2c/bitbang_i2c.c
@@ -11,7 +11,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/i2c/bitbang_i2c.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
diff --git a/hw/i2c/core.c b/hw/i2c/core.c
index 20f36f1d55..92cd489069 100644
--- a/hw/i2c/core.c
+++ b/hw/i2c/core.c
@@ -9,6 +9,8 @@
#include "qemu/osdep.h"
#include "hw/i2c/i2c.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "trace.h"
diff --git a/hw/i2c/exynos4210_i2c.c b/hw/i2c/exynos4210_i2c.c
index 70a97a3e2d..a600f65560 100644
--- a/hw/i2c/exynos4210_i2c.c
+++ b/hw/i2c/exynos4210_i2c.c
@@ -24,7 +24,9 @@
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#ifndef EXYNOS4_I2C_DEBUG
#define EXYNOS4_I2C_DEBUG 0
diff --git a/hw/i2c/imx_i2c.c b/hw/i2c/imx_i2c.c
index ce7a94c282..30b9aea247 100644
--- a/hw/i2c/imx_i2c.c
+++ b/hw/i2c/imx_i2c.c
@@ -20,6 +20,8 @@
#include "qemu/osdep.h"
#include "hw/i2c/imx_i2c.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "hw/i2c/i2c.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/i2c/microbit_i2c.c b/hw/i2c/microbit_i2c.c
index 214be07c5a..4661f05253 100644
--- a/hw/i2c/microbit_i2c.c
+++ b/hw/i2c/microbit_i2c.c
@@ -21,6 +21,7 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/i2c/microbit_i2c.h"
+#include "migration/vmstate.h"
static const uint32_t twi_read_sequence[] = {0x5A, 0x5A, 0x40};
diff --git a/hw/i2c/mpc_i2c.c b/hw/i2c/mpc_i2c.c
index e9a1127050..0aa1be3ce7 100644
--- a/hw/i2c/mpc_i2c.c
+++ b/hw/i2c/mpc_i2c.c
@@ -19,9 +19,11 @@
#include "qemu/osdep.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
/* #define DEBUG_I2C */
diff --git a/hw/i2c/omap_i2c.c b/hw/i2c/omap_i2c.c
index d7ebeae8e2..3ba965a58f 100644
--- a/hw/i2c/omap_i2c.c
+++ b/hw/i2c/omap_i2c.c
@@ -20,8 +20,9 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/omap.h"
#include "hw/sysbus.h"
#include "qemu/error-report.h"
diff --git a/hw/i2c/pm_smbus.c b/hw/i2c/pm_smbus.c
index e48544f909..36994ff585 100644
--- a/hw/i2c/pm_smbus.c
+++ b/hw/i2c/pm_smbus.c
@@ -17,11 +17,12 @@
* License along with this library; if not, see
* <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/i2c/pm_smbus.h"
#include "hw/i2c/smbus_master.h"
+#include "migration/vmstate.h"
#define SMBHSTSTS 0x00
#define SMBHSTCNT 0x02
diff --git a/hw/i2c/ppc4xx_i2c.c b/hw/i2c/ppc4xx_i2c.c
index 462729db4e..3f015a1581 100644
--- a/hw/i2c/ppc4xx_i2c.c
+++ b/hw/i2c/ppc4xx_i2c.c
@@ -28,8 +28,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/i2c/ppc4xx_i2c.h"
+#include "hw/irq.h"
#define PPC4xx_I2C_MEM_SIZE 18
diff --git a/hw/i2c/smbus_eeprom.c b/hw/i2c/smbus_eeprom.c
index 37167e7244..54c86a0112 100644
--- a/hw/i2c/smbus_eeprom.c
+++ b/hw/i2c/smbus_eeprom.c
@@ -25,10 +25,11 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/i2c/i2c.h"
#include "hw/i2c/smbus_slave.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/i2c/smbus_eeprom.h"
//#define DEBUG
diff --git a/hw/i2c/smbus_ich9.c b/hw/i2c/smbus_ich9.c
index 51a03046a6..fd50fb851a 100644
--- a/hw/i2c/smbus_ich9.c
+++ b/hw/i2c/smbus_ich9.c
@@ -21,11 +21,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/pm_smbus.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "hw/i386/ich9.h"
diff --git a/hw/i2c/smbus_master.c b/hw/i2c/smbus_master.c
index 0a6223744c..dc43b8637d 100644
--- a/hw/i2c/smbus_master.c
+++ b/hw/i2c/smbus_master.c
@@ -12,7 +12,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
#include "hw/i2c/smbus_master.h"
diff --git a/hw/i2c/smbus_slave.c b/hw/i2c/smbus_slave.c
index a9908c1a9b..5d10e27664 100644
--- a/hw/i2c/smbus_slave.c
+++ b/hw/i2c/smbus_slave.c
@@ -14,9 +14,9 @@
/* TODO: Implement PEC. */
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
#include "hw/i2c/smbus_slave.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
//#define DEBUG_SMBUS 1
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index f3fdfefcd5..5b0ec1b89e 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -46,8 +46,10 @@
#include "hw/boards.h"
#include "sysemu/tpm_backend.h"
#include "hw/timer/mc146818rtc_regs.h"
+#include "migration/vmstate.h"
#include "hw/mem/memory-device.h"
#include "sysemu/numa.h"
+#include "sysemu/reset.h"
/* Supported chipsets: */
#include "hw/acpi/piix4.h"
diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c
index 4a4e2c7fd4..08884523e2 100644
--- a/hw/i386/amd_iommu.c
+++ b/hw/i386/amd_iommu.c
@@ -19,10 +19,12 @@
*
* Cache implementation inspired by hw/i386/intel_iommu.c
*/
+
#include "qemu/osdep.h"
#include "hw/i386/pc.h"
#include "hw/pci/msi.h"
#include "hw/pci/pci_bus.h"
+#include "migration/vmstate.h"
#include "amd_iommu.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
diff --git a/hw/i386/amd_iommu.h b/hw/i386/amd_iommu.h
index 3a694b186b..e05a4eff5d 100644
--- a/hw/i386/amd_iommu.h
+++ b/hw/i386/amd_iommu.h
@@ -21,7 +21,6 @@
#ifndef AMD_IOMMU_H
#define AMD_IOMMU_H
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/i386/x86-iommu.h"
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index de86f53b4e..75ca6f9c70 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -21,12 +21,14 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
#include "exec/address-spaces.h"
#include "intel_iommu_internal.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
+#include "hw/qdev-properties.h"
#include "hw/i386/pc.h"
#include "hw/i386/apic-msidef.h"
#include "hw/boards.h"
@@ -35,6 +37,7 @@
#include "sysemu/kvm.h"
#include "hw/i386/apic_internal.h"
#include "kvm_i386.h"
+#include "migration/vmstate.h"
#include "trace.h"
/* context entry operations */
diff --git a/hw/i386/kvm/clock.c b/hw/i386/kvm/clock.c
index a5cda15b85..80c133a724 100644
--- a/hw/i386/kvm/clock.c
+++ b/hw/i386/kvm/clock.c
@@ -17,12 +17,14 @@
#include "cpu.h"
#include "qemu/host-utils.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "sysemu/hw_accel.h"
#include "kvm_i386.h"
+#include "migration/vmstate.h"
#include "hw/sysbus.h"
#include "hw/kvm/clock.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include <linux/kvm.h>
diff --git a/hw/i386/kvm/i8254.c b/hw/i386/kvm/i8254.c
index c29956ab77..6a911e23f9 100644
--- a/hw/i386/kvm/i8254.c
+++ b/hw/i386/kvm/i8254.c
@@ -25,10 +25,11 @@
#include "qemu/osdep.h"
#include <linux/kvm.h>
+#include "qapi/qapi-types-misc.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "hw/timer/i8254.h"
#include "hw/timer/i8254_internal.h"
#include "sysemu/kvm.h"
diff --git a/hw/i386/kvm/i8259.c b/hw/i386/kvm/i8259.c
index bfdeab29be..d0c1b1deac 100644
--- a/hw/i386/kvm/i8259.c
+++ b/hw/i386/kvm/i8259.c
@@ -14,6 +14,7 @@
#include "hw/isa/i8259_internal.h"
#include "qemu/module.h"
#include "hw/i386/apic_internal.h"
+#include "hw/irq.h"
#include "sysemu/kvm.h"
#define TYPE_KVM_I8259 "kvm-i8259"
diff --git a/hw/i386/kvm/ioapic.c b/hw/i386/kvm/ioapic.c
index e453692199..f94729c565 100644
--- a/hw/i386/kvm/ioapic.c
+++ b/hw/i386/kvm/ioapic.c
@@ -13,6 +13,8 @@
#include "qemu/osdep.h"
#include "monitor/monitor.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/i386/ioapic_internal.h"
#include "hw/i386/apic_internal.h"
#include "sysemu/kvm.h"
diff --git a/hw/i386/kvmvapic.c b/hw/i386/kvmvapic.c
index 9c2ab4aac5..51639202c2 100644
--- a/hw/i386/kvmvapic.c
+++ b/hw/i386/kvmvapic.c
@@ -16,9 +16,11 @@
#include "sysemu/cpus.h"
#include "sysemu/hw_accel.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "hw/i386/apic_internal.h"
#include "hw/sysbus.h"
#include "hw/boards.h"
+#include "migration/vmstate.h"
#include "tcg/tcg.h"
#define VAPIC_IO_PORT 0x7e
diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c
index a3e33fbe5e..9a59f95497 100644
--- a/hw/i386/multiboot.c
+++ b/hw/i386/multiboot.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "qemu/option.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/nvram/fw_cfg.h"
#include "multiboot.h"
#include "hw/loader.h"
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 549c437050..3ab4bcb3ca 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -24,7 +24,6 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/char/serial.h"
#include "hw/char/parallel.h"
@@ -41,11 +40,13 @@
#include "hw/firmware/smbios.h"
#include "hw/loader.h"
#include "elf.h"
+#include "migration/vmstate.h"
#include "multiboot.h"
#include "hw/timer/mc146818rtc.h"
#include "hw/dma/i8257.h"
#include "hw/timer/i8254.h"
#include "hw/input/i8042.h"
+#include "hw/irq.h"
#include "hw/audio/pcspk.h"
#include "hw/pci/msi.h"
#include "hw/sysbus.h"
@@ -54,6 +55,8 @@
#include "sysemu/numa.h"
#include "sysemu/kvm.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "kvm_i386.h"
#include "hw/xen/xen.h"
#include "hw/xen/start_info.h"
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index c2280c72ef..9e187f856a 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -26,7 +26,6 @@
#include "config-devices.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/loader.h"
#include "hw/i386/pc.h"
#include "hw/i386/apic.h"
@@ -36,8 +35,8 @@
#include "hw/pci/pci_ids.h"
#include "hw/usb.h"
#include "net/net.h"
-#include "hw/boards.h"
#include "hw/ide.h"
+#include "hw/irq.h"
#include "sysemu/kvm.h"
#include "hw/kvm/clock.h"
#include "sysemu/sysemu.h"
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 397e1fdd2f..be3464f485 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -30,17 +30,16 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/loader.h"
#include "sysemu/arch_init.h"
#include "hw/i2c/smbus_eeprom.h"
-#include "hw/boards.h"
#include "hw/timer/mc146818rtc.h"
#include "hw/xen/xen.h"
#include "sysemu/kvm.h"
#include "kvm_i386.h"
#include "hw/kvm/clock.h"
#include "hw/pci-host/q35.h"
+#include "hw/qdev-properties.h"
#include "exec/address-spaces.h"
#include "hw/i386/pc.h"
#include "hw/i386/ich9.h"
diff --git a/hw/i386/pc_sysfw.c b/hw/i386/pc_sysfw.c
index de43943af8..a9983f0bfb 100644
--- a/hw/i386/pc_sysfw.c
+++ b/hw/i386/pc_sysfw.c
@@ -31,10 +31,9 @@
#include "qemu/option.h"
#include "qemu/units.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
-#include "hw/boards.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "hw/block/flash.h"
#include "sysemu/kvm.h"
diff --git a/hw/i386/vmmouse.c b/hw/i386/vmmouse.c
index 5d2d278be4..012ab90396 100644
--- a/hw/i386/vmmouse.c
+++ b/hw/i386/vmmouse.c
@@ -21,12 +21,13 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "hw/i386/pc.h"
#include "hw/input/i8042.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
/* debug only vmmouse */
//#define DEBUG_VMMOUSE
diff --git a/hw/i386/vmport.c b/hw/i386/vmport.c
index 3bf8cfe041..1f31e27c8a 100644
--- a/hw/i386/vmport.c
+++ b/hw/i386/vmport.c
@@ -22,12 +22,10 @@
* THE SOFTWARE.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "hw/i386/pc.h"
#include "hw/input/i8042.h"
#include "sysemu/hw_accel.h"
-#include "hw/qdev.h"
#include "qemu/log.h"
#include "trace.h"
diff --git a/hw/i386/x86-iommu.c b/hw/i386/x86-iommu.c
index d1534c1ae0..1eaf2dd1bc 100644
--- a/hw/i386/x86-iommu.c
+++ b/hw/i386/x86-iommu.c
@@ -21,6 +21,7 @@
#include "hw/sysbus.h"
#include "hw/boards.h"
#include "hw/i386/x86-iommu.h"
+#include "hw/qdev-properties.h"
#include "hw/i386/pc.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
index e8e79e0917..5d3e4750e6 100644
--- a/hw/i386/xen/xen-hvm.c
+++ b/hw/i386/xen/xen-hvm.c
@@ -14,6 +14,8 @@
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
+#include "hw/hw.h"
#include "hw/i386/apic-msidef.h"
#include "hw/xen/xen_common.h"
#include "hw/xen/xen-legacy-backend.h"
@@ -21,7 +23,10 @@
#include "qapi/error.h"
#include "qapi/qapi-commands-misc.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/range.h"
+#include "sysemu/runstate.h"
+#include "sysemu/sysemu.h"
#include "sysemu/xen-mapcache.h"
#include "trace.h"
#include "exec/address-spaces.h"
diff --git a/hw/i386/xen/xen-mapcache.c b/hw/i386/xen/xen-mapcache.c
index dc73c86c61..5b120ed44b 100644
--- a/hw/i386/xen/xen-mapcache.c
+++ b/hw/i386/xen/xen-mapcache.c
@@ -17,6 +17,7 @@
#include "hw/xen/xen-legacy-backend.h"
#include "qemu/bitmap.h"
+#include "sysemu/runstate.h"
#include "sysemu/xen-mapcache.h"
#include "trace.h"
diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 7a972e46cf..0f7b05e5e1 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -25,11 +25,11 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/ide.h"
#include "hw/pci/pci.h"
#include "hw/irq.h"
#include "hw/xen/xen_common.h"
+#include "migration/vmstate.h"
#include "hw/xen/xen-legacy-backend.h"
#include "trace.h"
#include "exec/address-spaces.h"
diff --git a/hw/i386/xen/xen_pvdevice.c b/hw/i386/xen/xen_pvdevice.c
index 23748f36a2..27f646da06 100644
--- a/hw/i386/xen/xen_pvdevice.c
+++ b/hw/i386/xen/xen_pvdevice.c
@@ -32,8 +32,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define TYPE_XEN_PV_DEVICE "xen-pvdevice"
diff --git a/hw/ide/ahci-allwinner.c b/hw/ide/ahci-allwinner.c
index de08d87790..bb8393d2b6 100644
--- a/hw/ide/ahci-allwinner.c
+++ b/hw/ide/ahci-allwinner.c
@@ -16,11 +16,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
#include "hw/ide/internal.h"
+#include "migration/vmstate.h"
#include "ahci_internal.h"
#include "trace.h"
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
index 00ba422a48..d72da85605 100644
--- a/hw/ide/ahci.c
+++ b/hw/ide/ahci.c
@@ -22,12 +22,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "sysemu/block-backend.h"
#include "sysemu/dma.h"
diff --git a/hw/ide/ahci_internal.h b/hw/ide/ahci_internal.h
index 95ecddcd3c..73424516da 100644
--- a/hw/ide/ahci_internal.h
+++ b/hw/ide/ahci_internal.h
@@ -25,6 +25,7 @@
#define HW_IDE_AHCI_INTERNAL_H
#include "hw/ide/ahci.h"
+#include "hw/ide/internal.h"
#include "hw/sysbus.h"
#define AHCI_MEM_BAR_SIZE 0x1000
diff --git a/hw/ide/cmd646.c b/hw/ide/cmd646.c
index ed23aabf21..f3ccd11c79 100644
--- a/hw/ide/cmd646.c
+++ b/hw/ide/cmd646.c
@@ -24,12 +24,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/isa/isa.h"
-#include "sysemu/sysemu.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/ide/pci.h"
#include "trace.h"
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 6afadf894f..38b6cdac87 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -24,9 +24,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/timer.h"
#include "sysemu/sysemu.h"
#include "sysemu/blockdev.h"
@@ -36,7 +37,7 @@
#include "qapi/error.h"
#include "qemu/cutils.h"
#include "sysemu/replay.h"
-
+#include "sysemu/runstate.h"
#include "hw/ide/internal.h"
#include "trace.h"
diff --git a/hw/ide/ich.c b/hw/ide/ich.c
index c1ba927574..eff3188fff 100644
--- a/hw/ide/ich.c
+++ b/hw/ide/ich.c
@@ -61,9 +61,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/isa/isa.h"
#include "sysemu/dma.h"
diff --git a/hw/ide/ioport.c b/hw/ide/ioport.c
index a0b3c1f6a1..ab1f4e5d9c 100644
--- a/hw/ide/ioport.c
+++ b/hw/ide/ioport.c
@@ -24,11 +24,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "qemu/error-report.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "sysemu/blockdev.h"
#include "sysemu/dma.h"
#include "hw/block/block.h"
diff --git a/hw/ide/isa.c b/hw/ide/isa.c
index 4b5784e3fd..7b6e283679 100644
--- a/hw/ide/isa.c
+++ b/hw/ide/isa.c
@@ -24,8 +24,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
diff --git a/hw/ide/macio.c b/hw/ide/macio.c
index 54571fed12..79f787c539 100644
--- a/hw/ide/macio.c
+++ b/hw/ide/macio.c
@@ -24,9 +24,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
#include "hw/ppc/mac_dbdma.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/misc/macio/macio.h"
#include "sysemu/block-backend.h"
diff --git a/hw/ide/microdrive.c b/hw/ide/microdrive.c
index 92ee6e0af8..b0272ea14b 100644
--- a/hw/ide/microdrive.c
+++ b/hw/ide/microdrive.c
@@ -24,8 +24,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pcmcia.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
diff --git a/hw/ide/mmio.c b/hw/ide/mmio.c
index 70a58016d0..7149a9cba6 100644
--- a/hw/ide/mmio.c
+++ b/hw/ide/mmio.c
@@ -24,12 +24,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/dma.h"
#include "hw/ide/internal.h"
+#include "hw/qdev-properties.h"
/***********************************************************/
/* MMIO based ide port
diff --git a/hw/ide/pci.c b/hw/ide/pci.c
index 4c6fb9a68e..cce1da804d 100644
--- a/hw/ide/pci.c
+++ b/hw/ide/pci.c
@@ -24,8 +24,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/ide/piix.c b/hw/ide/piix.c
index b97e555072..fba6bc8bff 100644
--- a/hw/ide/piix.c
+++ b/hw/ide/piix.c
@@ -24,13 +24,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "sysemu/block-backend.h"
-#include "sysemu/sysemu.h"
#include "sysemu/blockdev.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/ide/pci.h"
#include "trace.h"
diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
index 9d8502785d..6fba6b62b8 100644
--- a/hw/ide/qdev.c
+++ b/hw/ide/qdev.c
@@ -18,16 +18,19 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "sysemu/dma.h"
#include "qapi/error.h"
+#include "qapi/qapi-types-block.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/ide/internal.h"
+#include "hw/qdev-properties.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
#include "hw/block/block.h"
#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qapi/visitor.h"
/* --------------------------------- */
diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c
index d7590d4ba4..2181260531 100644
--- a/hw/ide/sii3112.c
+++ b/hw/ide/sii3112.c
@@ -15,6 +15,7 @@
#include "qemu/osdep.h"
#include "hw/ide/pci.h"
#include "qemu/module.h"
+#include "sysemu/reset.h"
#include "trace.h"
#define TYPE_SII3112_PCI "sii3112"
diff --git a/hw/ide/via.c b/hw/ide/via.c
index c3bda909f9..7087dc676e 100644
--- a/hw/ide/via.c
+++ b/hw/ide/via.c
@@ -25,11 +25,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/ide/pci.h"
#include "trace.h"
diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c
index da361f56df..0ba8207589 100644
--- a/hw/input/adb-kbd.c
+++ b/hw/input/adb-kbd.c
@@ -24,10 +24,10 @@
#include "qemu/osdep.h"
#include "hw/input/adb.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "ui/input.h"
#include "hw/input/adb-keys.h"
-#include "sysemu/sysemu.h"
#include "adb-internal.h"
#include "trace.h"
diff --git a/hw/input/adb-mouse.c b/hw/input/adb-mouse.c
index 52526fddb7..aeba41bddd 100644
--- a/hw/input/adb-mouse.c
+++ b/hw/input/adb-mouse.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "ui/console.h"
#include "hw/input/adb.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "adb-internal.h"
#include "trace.h"
diff --git a/hw/input/adb.c b/hw/input/adb.c
index 1446f32521..478a90fae2 100644
--- a/hw/input/adb.c
+++ b/hw/input/adb.c
@@ -24,6 +24,8 @@
#include "qemu/osdep.h"
#include "hw/input/adb.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "adb-internal.h"
diff --git a/hw/input/hid.c b/hw/input/hid.c
index aa4fb826fd..89239b5634 100644
--- a/hw/input/hid.c
+++ b/hw/input/hid.c
@@ -22,11 +22,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "qemu/timer.h"
#include "hw/input/hid.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define HID_USAGE_ERROR_ROLLOVER 0x01
diff --git a/hw/input/lm832x.c b/hw/input/lm832x.c
index 5203da2bcf..a37eb854b9 100644
--- a/hw/input/lm832x.c
+++ b/hw/input/lm832x.c
@@ -19,10 +19,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
#include "ui/console.h"
#define TYPE_LM8323 "lm8323"
diff --git a/hw/input/milkymist-softusb.c b/hw/input/milkymist-softusb.c
index f779cd4370..67fcb3595f 100644
--- a/hw/input/milkymist-softusb.c
+++ b/hw/input/milkymist-softusb.c
@@ -23,11 +23,13 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "ui/console.h"
#include "hw/input/hid.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/input/pckbd.c b/hw/input/pckbd.c
index 47a606f5e3..f0acfd86f7 100644
--- a/hw/input/pckbd.c
+++ b/hw/input/pckbd.c
@@ -21,14 +21,17 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/log.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "migration/vmstate.h"
#include "hw/i386/pc.h"
#include "hw/input/ps2.h"
+#include "hw/irq.h"
#include "hw/input/i8042.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "trace.h"
diff --git a/hw/input/pl050.c b/hw/input/pl050.c
index b79bf1647d..1123037b38 100644
--- a/hw/input/pl050.c
+++ b/hw/input/pl050.c
@@ -9,7 +9,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/input/ps2.h"
+#include "hw/irq.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/input/ps2.c b/hw/input/ps2.c
index d3161f1e7c..67f92f6112 100644
--- a/hw/input/ps2.c
+++ b/hw/input/ps2.c
@@ -21,13 +21,15 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/log.h"
-#include "hw/hw.h"
#include "hw/input/ps2.h"
+#include "migration/vmstate.h"
#include "ui/console.h"
#include "ui/input.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "trace.h"
diff --git a/hw/input/pxa2xx_keypad.c b/hw/input/pxa2xx_keypad.c
index 93db9ed25b..31862a7d16 100644
--- a/hw/input/pxa2xx_keypad.c
+++ b/hw/input/pxa2xx_keypad.c
@@ -13,6 +13,8 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "hw/arm/pxa.h"
#include "ui/console.h"
diff --git a/hw/input/stellaris_input.c b/hw/input/stellaris_input.c
index 3a666d61d4..59892b07fc 100644
--- a/hw/input/stellaris_input.c
+++ b/hw/input/stellaris_input.c
@@ -6,9 +6,11 @@
*
* This code is licensed under the GPL.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/input/gamepad.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "ui/console.h"
typedef struct {
diff --git a/hw/input/tsc2005.c b/hw/input/tsc2005.c
index f82771e7a7..55d61cc843 100644
--- a/hw/input/tsc2005.c
+++ b/hw/input/tsc2005.c
@@ -20,10 +20,12 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
#include "ui/console.h"
#include "hw/input/tsc2xxx.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define TSC_CUT_RESOLUTION(value, p) ((value) >> (16 - (p ? 12 : 10)))
diff --git a/hw/input/tsc210x.c b/hw/input/tsc210x.c
index f94cb4683b..182d3725fc 100644
--- a/hw/input/tsc210x.c
+++ b/hw/input/tsc210x.c
@@ -23,9 +23,12 @@
#include "hw/hw.h"
#include "audio/audio.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
#include "ui/console.h"
#include "hw/arm/omap.h" /* For I2SCodec */
#include "hw/input/tsc2xxx.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#define TSC_DATA_REGISTERS_PAGE 0x0
#define TSC_CONTROL_REGISTERS_PAGE 0x1
diff --git a/hw/input/vhost-user-input.c b/hw/input/vhost-user-input.c
index 6da497b1a8..544452a234 100644
--- a/hw/input/vhost-user-input.c
+++ b/hw/input/vhost-user-input.c
@@ -9,7 +9,6 @@
#include "qapi/error.h"
#include "qemu-common.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio-input.h"
static int vhost_input_config_change(struct vhost_dev *dev)
diff --git a/hw/input/virtio-input-hid.c b/hw/input/virtio-input-hid.c
index f15a063fac..386a363a17 100644
--- a/hw/input/virtio-input-hid.c
+++ b/hw/input/virtio-input-hid.c
@@ -8,8 +8,8 @@
#include "qemu/iov.h"
#include "qemu/module.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-input.h"
#undef CONFIG_CURSES
diff --git a/hw/input/virtio-input-host.c b/hw/input/virtio-input-host.c
index a54c31eb09..1c3b12ba32 100644
--- a/hw/input/virtio-input-host.c
+++ b/hw/input/virtio-input-host.c
@@ -9,8 +9,8 @@
#include "qemu/module.h"
#include "qemu/sockets.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-input.h"
#include <sys/ioctl.h>
diff --git a/hw/input/virtio-input.c b/hw/input/virtio-input.c
index 9946394cf4..51617a5885 100644
--- a/hw/input/virtio-input.c
+++ b/hw/input/virtio-input.c
@@ -10,8 +10,8 @@
#include "qemu/module.h"
#include "trace.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-input.h"
#include "standard-headers/linux/input.h"
diff --git a/hw/intc/allwinner-a10-pic.c b/hw/intc/allwinner-a10-pic.c
index 080bdd791f..8cca124807 100644
--- a/hw/intc/allwinner-a10-pic.c
+++ b/hw/intc/allwinner-a10-pic.c
@@ -17,8 +17,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "hw/intc/allwinner-a10-pic.h"
+#include "hw/irq.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/apic_common.c b/hw/intc/apic_common.c
index e764a2bb03..aafd8e0e33 100644
--- a/hw/intc/apic_common.c
+++ b/hw/intc/apic_common.c
@@ -29,8 +29,10 @@
#include "trace.h"
#include "sysemu/hax.h"
#include "sysemu/kvm.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
static int apic_irq_delivered;
bool apic_report_tpr_access;
diff --git a/hw/intc/arm_gic.c b/hw/intc/arm_gic.c
index 77427a4188..7af591daac 100644
--- a/hw/intc/arm_gic.c
+++ b/hw/intc/arm_gic.c
@@ -19,6 +19,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "gic_internal.h"
#include "qapi/error.h"
diff --git a/hw/intc/arm_gic_common.c b/hw/intc/arm_gic_common.c
index ccc50d00b6..f0d0d7c467 100644
--- a/hw/intc/arm_gic_common.c
+++ b/hw/intc/arm_gic_common.c
@@ -23,6 +23,8 @@
#include "qemu/module.h"
#include "gic_internal.h"
#include "hw/arm/linux-boot-if.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
static int gic_pre_save(void *opaque)
{
diff --git a/hw/intc/arm_gicv2m.c b/hw/intc/arm_gicv2m.c
index 05f299fc7f..6e45f4ff39 100644
--- a/hw/intc/arm_gicv2m.c
+++ b/hw/intc/arm_gicv2m.c
@@ -28,7 +28,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
#include "hw/pci/msi.h"
+#include "hw/qdev-properties.h"
#include "sysemu/kvm.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/arm_gicv3_common.c b/hw/intc/arm_gicv3_common.c
index 5edabb928f..8f5f4c8e94 100644
--- a/hw/intc/arm_gicv3_common.c
+++ b/hw/intc/arm_gicv3_common.c
@@ -26,6 +26,8 @@
#include "qemu/module.h"
#include "qom/cpu.h"
#include "hw/intc/arm_gicv3_common.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "gicv3_internal.h"
#include "hw/arm/linux-boot-if.h"
#include "sysemu/kvm.h"
diff --git a/hw/intc/arm_gicv3_cpuif.c b/hw/intc/arm_gicv3_cpuif.c
index 3b212d91c8..a254b0ce87 100644
--- a/hw/intc/arm_gicv3_cpuif.c
+++ b/hw/intc/arm_gicv3_cpuif.c
@@ -17,6 +17,7 @@
#include "qemu/main-loop.h"
#include "trace.h"
#include "gicv3_internal.h"
+#include "hw/irq.h"
#include "cpu.h"
void gicv3_set_gicv3state(CPUState *cpu, GICv3CPUState *s)
diff --git a/hw/intc/arm_gicv3_its_common.c b/hw/intc/arm_gicv3_its_common.c
index efb3d51fb5..66c4c6a188 100644
--- a/hw/intc/arm_gicv3_its_common.c
+++ b/hw/intc/arm_gicv3_its_common.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "hw/pci/msi.h"
+#include "migration/vmstate.h"
#include "hw/intc/arm_gicv3_its_common.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/arm_gicv3_its_kvm.c b/hw/intc/arm_gicv3_its_kvm.c
index 52ac01aba3..d66f2431ee 100644
--- a/hw/intc/arm_gicv3_its_kvm.c
+++ b/hw/intc/arm_gicv3_its_kvm.c
@@ -22,7 +22,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/intc/arm_gicv3_its_common.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-properties.h"
+#include "sysemu/runstate.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "migration/blocker.h"
diff --git a/hw/intc/arm_gicv3_kvm.c b/hw/intc/arm_gicv3_kvm.c
index d9c72f85be..9c7f4ab871 100644
--- a/hw/intc/arm_gicv3_kvm.c
+++ b/hw/intc/arm_gicv3_kvm.c
@@ -26,7 +26,7 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "sysemu/kvm.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "kvm_arm.h"
#include "gicv3_internal.h"
#include "vgic_common.h"
diff --git a/hw/intc/armv7m_nvic.c b/hw/intc/armv7m_nvic.c
index 9f8f0d3ff5..62ab8b7273 100644
--- a/hw/intc/armv7m_nvic.c
+++ b/hw/intc/armv7m_nvic.c
@@ -14,8 +14,11 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "hw/intc/armv7m_nvic.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "target/arm/cpu.h"
#include "exec/exec-all.h"
#include "qemu/log.h"
diff --git a/hw/intc/aspeed_vic.c b/hw/intc/aspeed_vic.c
index 266a309f3b..5ba06c5262 100644
--- a/hw/intc/aspeed_vic.c
+++ b/hw/intc/aspeed_vic.c
@@ -29,6 +29,8 @@
#include "qemu/osdep.h"
#include "hw/intc/aspeed_vic.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/bcm2835_ic.c b/hw/intc/bcm2835_ic.c
index 61d37643a1..05bd28e4f9 100644
--- a/hw/intc/bcm2835_ic.c
+++ b/hw/intc/bcm2835_ic.c
@@ -14,6 +14,8 @@
#include "qemu/osdep.h"
#include "hw/intc/bcm2835_ic.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/bcm2836_control.c b/hw/intc/bcm2836_control.c
index 66417c85e4..04229b8a17 100644
--- a/hw/intc/bcm2836_control.c
+++ b/hw/intc/bcm2836_control.c
@@ -17,6 +17,8 @@
#include "qemu/osdep.h"
#include "hw/intc/bcm2836_control.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/etraxfs_pic.c b/hw/intc/etraxfs_pic.c
index 20e1391d64..77f652acec 100644
--- a/hw/intc/etraxfs_pic.c
+++ b/hw/intc/etraxfs_pic.c
@@ -25,7 +25,8 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
//#include "pc.h"
//#include "etraxfs.h"
diff --git a/hw/intc/exynos4210_combiner.c b/hw/intc/exynos4210_combiner.c
index 6fed0e8d16..5b33ca6628 100644
--- a/hw/intc/exynos4210_combiner.c
+++ b/hw/intc/exynos4210_combiner.c
@@ -29,9 +29,13 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/arm/exynos4210.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
//#define DEBUG_COMBINER
diff --git a/hw/intc/exynos4210_gic.c b/hw/intc/exynos4210_gic.c
index e37d457fcf..a1b699b6ba 100644
--- a/hw/intc/exynos4210_gic.c
+++ b/hw/intc/exynos4210_gic.c
@@ -22,8 +22,10 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/exynos4210.h"
enum ExtGicId {
diff --git a/hw/intc/grlib_irqmp.c b/hw/intc/grlib_irqmp.c
index 21c77a5ec1..bc78e1a14f 100644
--- a/hw/intc/grlib_irqmp.c
+++ b/hw/intc/grlib_irqmp.c
@@ -28,6 +28,7 @@
#include "hw/sysbus.h"
#include "cpu.h"
+#include "hw/qdev-properties.h"
#include "hw/sparc/grlib.h"
#include "trace.h"
diff --git a/hw/intc/heathrow_pic.c b/hw/intc/heathrow_pic.c
index c282ac4006..cb97c315da 100644
--- a/hw/intc/heathrow_pic.c
+++ b/hw/intc/heathrow_pic.c
@@ -24,10 +24,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/intc/heathrow_pic.h"
+#include "hw/irq.h"
#include "trace.h"
static inline int heathrow_check_irq(HeathrowPICState *pic)
diff --git a/hw/intc/i8259.c b/hw/intc/i8259.c
index 76f3d873b8..211a98962e 100644
--- a/hw/intc/i8259.c
+++ b/hw/intc/i8259.c
@@ -21,9 +21,10 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
#include "qemu/timer.h"
#include "qemu/log.h"
diff --git a/hw/intc/i8259_common.c b/hw/intc/i8259_common.c
index c75c880157..bd37bb5e68 100644
--- a/hw/intc/i8259_common.c
+++ b/hw/intc/i8259_common.c
@@ -22,9 +22,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "hw/i386/pc.h"
#include "hw/isa/i8259_internal.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
static int irq_level[16];
diff --git a/hw/intc/imx_avic.c b/hw/intc/imx_avic.c
index 83a4101528..63fc602a1a 100644
--- a/hw/intc/imx_avic.c
+++ b/hw/intc/imx_avic.c
@@ -17,6 +17,8 @@
#include "qemu/osdep.h"
#include "hw/intc/imx_avic.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/imx_gpcv2.c b/hw/intc/imx_gpcv2.c
index a83333bdea..17007a4078 100644
--- a/hw/intc/imx_gpcv2.c
+++ b/hw/intc/imx_gpcv2.c
@@ -11,6 +11,7 @@
#include "qemu/osdep.h"
#include "hw/intc/imx_gpcv2.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/ioapic.c b/hw/intc/ioapic.c
index e99c37cceb..1ede055387 100644
--- a/hw/intc/ioapic.c
+++ b/hw/intc/ioapic.c
@@ -23,13 +23,14 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "monitor/monitor.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/i386/apic.h"
#include "hw/i386/ioapic.h"
#include "hw/i386/ioapic_internal.h"
#include "hw/pci/msi.h"
+#include "hw/qdev-properties.h"
#include "sysemu/kvm.h"
+#include "sysemu/sysemu.h"
#include "hw/i386/apic-msidef.h"
#include "hw/i386/x86-iommu.h"
#include "trace.h"
diff --git a/hw/intc/ioapic_common.c b/hw/intc/ioapic_common.c
index fa50382d43..5538b5b86e 100644
--- a/hw/intc/ioapic_common.c
+++ b/hw/intc/ioapic_common.c
@@ -22,6 +22,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "hw/i386/ioapic.h"
#include "hw/i386/ioapic_internal.h"
diff --git a/hw/intc/lm32_pic.c b/hw/intc/lm32_pic.c
index 170fa7a1ac..36de670c9e 100644
--- a/hw/intc/lm32_pic.c
+++ b/hw/intc/lm32_pic.c
@@ -19,13 +19,14 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
#include "trace.h"
#include "hw/lm32/lm32_pic.h"
#include "hw/intc/intc.h"
+#include "hw/irq.h"
#define TYPE_LM32_PIC "lm32-pic"
#define LM32_PIC(obj) OBJECT_CHECK(LM32PicState, (obj), TYPE_LM32_PIC)
diff --git a/hw/intc/mips_gic.c b/hw/intc/mips_gic.c
index 33ab51c5b8..54b3059f3f 100644
--- a/hw/intc/mips_gic.c
+++ b/hw/intc/mips_gic.c
@@ -13,13 +13,14 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "exec/memory.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "kvm_mips.h"
#include "hw/intc/mips_gic.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
static void mips_gic_set_vp_irq(MIPSGICState *gic, int vp, int pin)
{
diff --git a/hw/intc/nios2_iic.c b/hw/intc/nios2_iic.c
index 7329434b91..3a5d86c2a4 100644
--- a/hw/intc/nios2_iic.c
+++ b/hw/intc/nios2_iic.c
@@ -22,6 +22,7 @@
#include "qemu/module.h"
#include "qapi/error.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "cpu.h"
diff --git a/hw/intc/omap_intc.c b/hw/intc/omap_intc.c
index 053e67c66b..854b709ca0 100644
--- a/hw/intc/omap_intc.c
+++ b/hw/intc/omap_intc.c
@@ -19,7 +19,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/arm/omap.h"
#include "hw/sysbus.h"
#include "qemu/error-report.h"
diff --git a/hw/intc/ompic.c b/hw/intc/ompic.c
index 9cb310a5dd..ca9614fda1 100644
--- a/hw/intc/ompic.c
+++ b/hw/intc/ompic.c
@@ -10,8 +10,10 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "exec/memory.h"
#define TYPE_OR1K_OMPIC "or1k-ompic"
diff --git a/hw/intc/openpic.c b/hw/intc/openpic.c
index 9b4fc6cf43..c797ba78f3 100644
--- a/hw/intc/openpic.c
+++ b/hw/intc/openpic.c
@@ -35,12 +35,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/mac.h"
#include "hw/pci/pci.h"
#include "hw/ppc/openpic.h"
#include "hw/ppc/ppc_e500.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/pci/msi.h"
#include "qapi/error.h"
#include "qemu/bitops.h"
diff --git a/hw/intc/openpic_kvm.c b/hw/intc/openpic_kvm.c
index 49fc6fa0cf..c09bebedd1 100644
--- a/hw/intc/openpic_kvm.c
+++ b/hw/intc/openpic_kvm.c
@@ -27,10 +27,10 @@
#include "cpu.h"
#include <sys/ioctl.h>
#include "exec/address-spaces.h"
-#include "hw/hw.h"
#include "hw/ppc/openpic.h"
#include "hw/ppc/openpic_kvm.h"
#include "hw/pci/msi.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "sysemu/kvm.h"
#include "qemu/log.h"
diff --git a/hw/intc/pl190.c b/hw/intc/pl190.c
index b4f31efc45..e3bd3dd121 100644
--- a/hw/intc/pl190.c
+++ b/hw/intc/pl190.c
@@ -8,7 +8,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/intc/pnv_xive.c b/hw/intc/pnv_xive.c
index 4dc92ef1e3..a8caf258fd 100644
--- a/hw/intc/pnv_xive.c
+++ b/hw/intc/pnv_xive.c
@@ -14,6 +14,7 @@
#include "target/ppc/cpu.h"
#include "sysemu/cpus.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "monitor/monitor.h"
#include "hw/ppc/fdt.h"
#include "hw/ppc/pnv.h"
@@ -21,6 +22,7 @@
#include "hw/ppc/pnv_xscom.h"
#include "hw/ppc/pnv_xive.h"
#include "hw/ppc/xive_regs.h"
+#include "hw/qdev-properties.h"
#include "hw/ppc/ppc.h"
#include <libfdt.h>
diff --git a/hw/intc/puv3_intc.c b/hw/intc/puv3_intc.c
index e2f6d9875a..e018955ce8 100644
--- a/hw/intc/puv3_intc.c
+++ b/hw/intc/puv3_intc.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#undef DEBUG_PUV3
diff --git a/hw/intc/realview_gic.c b/hw/intc/realview_gic.c
index 99557544db..73fe8cd815 100644
--- a/hw/intc/realview_gic.c
+++ b/hw/intc/realview_gic.c
@@ -11,6 +11,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/intc/realview_gic.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
static void realview_gic_set_irq(void *opaque, int irq, int level)
{
diff --git a/hw/intc/s390_flic.c b/hw/intc/s390_flic.c
index d0be755c82..a159c0c7cf 100644
--- a/hw/intc/s390_flic.c
+++ b/hw/intc/s390_flic.c
@@ -12,14 +12,15 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
#include "hw/s390x/ioinst.h"
#include "hw/s390x/s390_flic.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/css.h"
#include "trace.h"
#include "cpu.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
#include "hw/s390x/s390-virtio-ccw.h"
diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c
index ff45b4ab0b..819aa5e198 100644
--- a/hw/intc/s390_flic_kvm.c
+++ b/hw/intc/s390_flic_kvm.c
@@ -22,6 +22,7 @@
#include "hw/s390x/s390_flic.h"
#include "hw/s390x/adapter.h"
#include "hw/s390x/css.h"
+#include "migration/qemu-file-types.h"
#include "trace.h"
#define FLIC_SAVE_INITIAL_SIZE getpagesize()
diff --git a/hw/intc/sh_intc.c b/hw/intc/sh_intc.c
index bac7886f25..72a55e32dd 100644
--- a/hw/intc/sh_intc.c
+++ b/hw/intc/sh_intc.c
@@ -11,7 +11,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "hw/sh4/sh_intc.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sh4/sh.h"
//#define DEBUG_INTC
diff --git a/hw/intc/slavio_intctl.c b/hw/intc/slavio_intctl.c
index ca528753bf..c4cf9096eb 100644
--- a/hw/intc/slavio_intctl.c
+++ b/hw/intc/slavio_intctl.c
@@ -23,10 +23,12 @@
*/
#include "qemu/osdep.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
#include "hw/intc/intc.h"
+#include "hw/irq.h"
#include "trace.h"
//#define DEBUG_IRQ_COUNT
diff --git a/hw/intc/spapr_xive.c b/hw/intc/spapr_xive.c
index 3ae311d9ff..aad981cb78 100644
--- a/hw/intc/spapr_xive.c
+++ b/hw/intc/spapr_xive.c
@@ -14,6 +14,8 @@
#include "qemu/error-report.h"
#include "target/ppc/cpu.h"
#include "sysemu/cpus.h"
+#include "sysemu/reset.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "hw/ppc/fdt.h"
#include "hw/ppc/spapr.h"
@@ -21,6 +23,7 @@
#include "hw/ppc/spapr_xive.h"
#include "hw/ppc/xive.h"
#include "hw/ppc/xive_regs.h"
+#include "hw/qdev-properties.h"
/*
* XIVE Virtualization Controller BAR and Thread Managment BAR that we
diff --git a/hw/intc/spapr_xive_kvm.c b/hw/intc/spapr_xive_kvm.c
index 8898615c69..17af4d19f5 100644
--- a/hw/intc/spapr_xive_kvm.c
+++ b/hw/intc/spapr_xive_kvm.c
@@ -14,6 +14,7 @@
#include "target/ppc/cpu.h"
#include "sysemu/cpus.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_cpu_core.h"
#include "hw/ppc/spapr_xive.h"
diff --git a/hw/intc/xics.c b/hw/intc/xics.c
index faa976e2f8..b2fca2975c 100644
--- a/hw/intc/xics.c
+++ b/hw/intc/xics.c
@@ -28,16 +28,19 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "trace.h"
#include "qemu/timer.h"
#include "hw/ppc/xics.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "qapi/visitor.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "hw/intc/intc.h"
+#include "hw/irq.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
void icp_pic_print_info(ICPState *icp, Monitor *mon)
{
diff --git a/hw/intc/xics_kvm.c b/hw/intc/xics_kvm.c
index 65c35f90f9..a4d2e876cc 100644
--- a/hw/intc/xics_kvm.c
+++ b/hw/intc/xics_kvm.c
@@ -29,7 +29,6 @@
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "trace.h"
#include "sysemu/kvm.h"
#include "hw/ppc/spapr.h"
diff --git a/hw/intc/xics_pnv.c b/hw/intc/xics_pnv.c
index 67f2702e52..35f3811264 100644
--- a/hw/intc/xics_pnv.c
+++ b/hw/intc/xics_pnv.c
@@ -19,7 +19,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/ppc/xics.h"
diff --git a/hw/intc/xics_spapr.c b/hw/intc/xics_spapr.c
index 7cd3c93d71..6577be0d92 100644
--- a/hw/intc/xics_spapr.c
+++ b/hw/intc/xics_spapr.c
@@ -27,7 +27,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "trace.h"
#include "qemu/timer.h"
#include "hw/ppc/spapr.h"
diff --git a/hw/intc/xilinx_intc.c b/hw/intc/xilinx_intc.c
index d5363e977f..e15cb42b36 100644
--- a/hw/intc/xilinx_intc.c
+++ b/hw/intc/xilinx_intc.c
@@ -25,7 +25,8 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#define D(x)
diff --git a/hw/intc/xive.c b/hw/intc/xive.c
index da148e9f6f..7a6e4b763a 100644
--- a/hw/intc/xive.c
+++ b/hw/intc/xive.c
@@ -14,8 +14,11 @@
#include "target/ppc/cpu.h"
#include "sysemu/cpus.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
+#include "hw/irq.h"
#include "hw/ppc/xive.h"
#include "hw/ppc/xive_regs.h"
diff --git a/hw/intc/xlnx-pmu-iomod-intc.c b/hw/intc/xlnx-pmu-iomod-intc.c
index 0b8ff897dc..f9a1401a94 100644
--- a/hw/intc/xlnx-pmu-iomod-intc.c
+++ b/hw/intc/xlnx-pmu-iomod-intc.c
@@ -26,11 +26,14 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/register.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/intc/xlnx-pmu-iomod-intc.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#ifndef XLNX_PMU_IO_INTC_ERR_DEBUG
#define XLNX_PMU_IO_INTC_ERR_DEBUG 0
diff --git a/hw/intc/xlnx-zynqmp-ipi.c b/hw/intc/xlnx-zynqmp-ipi.c
index 0dad6c04f5..adc1179014 100644
--- a/hw/intc/xlnx-zynqmp-ipi.c
+++ b/hw/intc/xlnx-zynqmp-ipi.c
@@ -27,11 +27,13 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/register.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/intc/xlnx-zynqmp-ipi.h"
+#include "hw/irq.h"
#ifndef XLNX_ZYNQMP_IPI_ERR_DEBUG
#define XLNX_ZYNQMP_IPI_ERR_DEBUG 0
diff --git a/hw/ipack/ipack.c b/hw/ipack/ipack.c
index 6b1b72f94d..30e16696c0 100644
--- a/hw/ipack/ipack.c
+++ b/hw/ipack/ipack.c
@@ -12,6 +12,9 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/ipack/ipack.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
IPackDevice *ipack_device_find(IPackBus *bus, int32_t slot)
{
diff --git a/hw/ipack/tpci200.c b/hw/ipack/tpci200.c
index d4d85107d0..f931d4df62 100644
--- a/hw/ipack/tpci200.c
+++ b/hw/ipack/tpci200.c
@@ -11,7 +11,9 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "hw/ipack/ipack.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/module.h"
diff --git a/hw/ipmi/ipmi.c b/hw/ipmi/ipmi.c
index a837f91782..136c86b7a7 100644
--- a/hw/ipmi/ipmi.c
+++ b/hw/ipmi/ipmi.c
@@ -23,10 +23,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/ipmi/ipmi.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-properties.h"
#include "qom/object_interfaces.h"
+#include "sysemu/runstate.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-misc.h"
#include "qapi/visitor.h"
diff --git a/hw/ipmi/ipmi_bmc_extern.c b/hw/ipmi/ipmi_bmc_extern.c
index c0a8dac346..573428eca1 100644
--- a/hw/ipmi/ipmi_bmc_extern.c
+++ b/hw/ipmi/ipmi_bmc_extern.c
@@ -33,8 +33,9 @@
#include "qapi/error.h"
#include "qemu/timer.h"
#include "chardev/char-fe.h"
-#include "sysemu/sysemu.h"
#include "hw/ipmi/ipmi.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define VM_MSG_CHAR 0xA0 /* Marks end of message */
#define VM_CMD_CHAR 0xA1 /* Marks end of a command */
diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c
index 1980536517..246a6d390c 100644
--- a/hw/ipmi/ipmi_bmc_sim.c
+++ b/hw/ipmi/ipmi_bmc_sim.c
@@ -29,6 +29,8 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define IPMI_NETFN_CHASSIS 0x00
diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c
index 1846d5b9a4..a696096cbb 100644
--- a/hw/ipmi/isa_ipmi_bt.c
+++ b/hw/ipmi/isa_ipmi_bt.c
@@ -26,9 +26,11 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/ipmi/ipmi.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
/* Control register */
#define IPMI_BT_CLR_WR_BIT 0
diff --git a/hw/ipmi/isa_ipmi_kcs.c b/hw/ipmi/isa_ipmi_kcs.c
index 068f341256..374b2a0709 100644
--- a/hw/ipmi/isa_ipmi_kcs.c
+++ b/hw/ipmi/isa_ipmi_kcs.c
@@ -26,9 +26,11 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/ipmi/ipmi.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define IPMI_KCS_OBF_BIT 0
#define IPMI_KCS_IBF_BIT 1
diff --git a/hw/isa/apm.c b/hw/isa/apm.c
index c3101ef52f..6300b1ba7a 100644
--- a/hw/isa/apm.c
+++ b/hw/isa/apm.c
@@ -22,8 +22,8 @@
#include "qemu/osdep.h"
#include "hw/isa/apm.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
//#define DEBUG
diff --git a/hw/isa/i82378.c b/hw/isa/i82378.c
index c08970b24a..de276cdf10 100644
--- a/hw/isa/i82378.c
+++ b/hw/isa/i82378.c
@@ -20,7 +20,9 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/timer/i8254.h"
+#include "migration/vmstate.h"
#include "hw/audio/pcspk.h"
#define TYPE_I82378 "i82378"
diff --git a/hw/isa/isa-superio.c b/hw/isa/isa-superio.c
index 4c73c2100f..c4e391916c 100644
--- a/hw/isa/isa-superio.c
+++ b/hw/isa/isa-superio.c
@@ -18,6 +18,7 @@
#include "sysemu/blockdev.h"
#include "chardev/char.h"
#include "hw/isa/superio.h"
+#include "hw/qdev-properties.h"
#include "hw/input/i8042.h"
#include "hw/char/serial.h"
#include "trace.h"
diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
index a7081bd52d..eec9eb31c1 100644
--- a/hw/isa/lpc_ich9.c
+++ b/hw/isa/lpc_ich9.c
@@ -27,14 +27,16 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "qapi/visitor.h"
#include "qemu/range.h"
#include "hw/isa/isa.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/isa/apm.h"
#include "hw/i386/ioapic.h"
#include "hw/pci/pci.h"
@@ -43,7 +45,9 @@
#include "hw/acpi/acpi.h"
#include "hw/acpi/ich9.h"
#include "hw/pci/pci_bus.h"
+#include "hw/qdev-properties.h"
#include "exec/address-spaces.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "qom/cpu.h"
#include "hw/nvram/fw_cfg.h"
diff --git a/hw/isa/pc87312.c b/hw/isa/pc87312.c
index 85dbc94439..b9bd57471e 100644
--- a/hw/isa/pc87312.c
+++ b/hw/isa/pc87312.c
@@ -25,6 +25,8 @@
#include "qemu/osdep.h"
#include "hw/isa/pc87312.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/isa/piix4.c b/hw/isa/piix4.c
index 6b8bc3faf0..3294056cd5 100644
--- a/hw/isa/piix4.c
+++ b/hw/isa/piix4.c
@@ -23,11 +23,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/pci/pci.h"
#include "hw/isa/isa.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "sysemu/reset.h"
PCIDevice *piix4_dev;
diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c
index 12c460590f..50bd28fa82 100644
--- a/hw/isa/vt82c686.c
+++ b/hw/isa/vt82c686.c
@@ -11,18 +11,19 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/vt82c686.h"
#include "hw/i2c/i2c.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#include "hw/isa/superio.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/mips/mips.h"
#include "hw/isa/apm.h"
#include "hw/acpi/acpi.h"
#include "hw/i2c/pm_smbus.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "exec/address-spaces.h"
diff --git a/hw/lm32/lm32.h b/hw/lm32/lm32.h
index d1514a61b3..98de07acf2 100644
--- a/hw/lm32/lm32.h
+++ b/hw/lm32/lm32.h
@@ -2,6 +2,7 @@
#define HW_LM32_H
#include "hw/char/lm32_juart.h"
+#include "hw/qdev-properties.h"
static inline DeviceState *lm32_pic_init(qemu_irq cpu_irq)
{
diff --git a/hw/lm32/lm32_boards.c b/hw/lm32/lm32_boards.c
index fb9d52d54f..5ae308bfcf 100644
--- a/hw/lm32/lm32_boards.c
+++ b/hw/lm32/lm32_boards.c
@@ -22,7 +22,7 @@
#include "qemu/error-report.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/block/flash.h"
#include "hw/boards.h"
#include "hw/loader.h"
@@ -30,6 +30,7 @@
#include "lm32_hwsetup.h"
#include "lm32.h"
#include "exec/address-spaces.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
typedef struct {
diff --git a/hw/lm32/milkymist-hw.h b/hw/lm32/milkymist-hw.h
index 976cf9254d..5f63024355 100644
--- a/hw/lm32/milkymist-hw.h
+++ b/hw/lm32/milkymist-hw.h
@@ -1,7 +1,7 @@
#ifndef QEMU_HW_MILKYMIST_HW_H
#define QEMU_HW_MILKYMIST_HW_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "net/net.h"
static inline DeviceState *milkymist_uart_create(hwaddr base,
diff --git a/hw/lm32/milkymist.c b/hw/lm32/milkymist.c
index 689e633199..460d322de5 100644
--- a/hw/lm32/milkymist.c
+++ b/hw/lm32/milkymist.c
@@ -23,12 +23,14 @@
#include "qemu-common.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "hw/boards.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "elf.h"
#include "milkymist-hw.h"
#include "hw/display/milkymist_tmu2.h"
diff --git a/hw/m68k/an5206.c b/hw/m68k/an5206.c
index 68d15a6ebe..54ccbe1a82 100644
--- a/hw/m68k/an5206.c
+++ b/hw/m68k/an5206.c
@@ -9,7 +9,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/m68k/mcf.h"
#include "hw/boards.h"
#include "hw/loader.h"
diff --git a/hw/m68k/mcf5206.c b/hw/m68k/mcf5206.c
index 1c17f83eed..a9c2c95b0d 100644
--- a/hw/m68k/mcf5206.c
+++ b/hw/m68k/mcf5206.c
@@ -5,10 +5,13 @@
*
* This code is licensed under the GPL
*/
+
#include "qemu/osdep.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "cpu.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/m68k/mcf.h"
#include "qemu/timer.h"
#include "hw/ptimer.h"
diff --git a/hw/m68k/mcf5208.c b/hw/m68k/mcf5208.c
index 6f6efae9fc..012710d057 100644
--- a/hw/m68k/mcf5208.c
+++ b/hw/m68k/mcf5208.c
@@ -5,13 +5,16 @@
*
* This code is licensed under the GPL
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/m68k/mcf.h"
#include "hw/m68k/mcf_fec.h"
#include "qemu/timer.h"
diff --git a/hw/m68k/mcf_intc.c b/hw/m68k/mcf_intc.c
index a613aed820..d9e03a06ab 100644
--- a/hw/m68k/mcf_intc.c
+++ b/hw/m68k/mcf_intc.c
@@ -10,6 +10,7 @@
#include "qemu/module.h"
#include "cpu.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "hw/m68k/mcf.h"
diff --git a/hw/mem/memory-device.c b/hw/mem/memory-device.c
index 5f2c408036..53953fdc3a 100644
--- a/hw/mem/memory-device.c
+++ b/hw/mem/memory-device.c
@@ -11,7 +11,6 @@
#include "qemu/osdep.h"
#include "hw/mem/memory-device.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
#include "hw/boards.h"
#include "qemu/range.h"
diff --git a/hw/mem/nvdimm.c b/hw/mem/nvdimm.c
index f438abb387..375f9a588a 100644
--- a/hw/mem/nvdimm.c
+++ b/hw/mem/nvdimm.c
@@ -28,7 +28,9 @@
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "hw/mem/nvdimm.h"
+#include "hw/qdev-properties.h"
#include "hw/mem/memory-device.h"
+#include "sysemu/hostmem.h"
static void nvdimm_get_label_size(Object *obj, Visitor *v, const char *name,
void *opaque, Error **errp)
diff --git a/hw/mem/pc-dimm.c b/hw/mem/pc-dimm.c
index 29c785799c..7c324a1329 100644
--- a/hw/mem/pc-dimm.c
+++ b/hw/mem/pc-dimm.c
@@ -19,12 +19,16 @@
*/
#include "qemu/osdep.h"
+#include "hw/boards.h"
#include "hw/mem/pc-dimm.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/mem/nvdimm.h"
#include "hw/mem/memory-device.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "qemu/module.h"
+#include "sysemu/hostmem.h"
#include "sysemu/numa.h"
#include "trace.h"
diff --git a/hw/microblaze/boot.c b/hw/microblaze/boot.c
index a7af4c0704..bade4d22c0 100644
--- a/hw/microblaze/boot.c
+++ b/hw/microblaze/boot.c
@@ -31,6 +31,7 @@
#include "qemu/config-file.h"
#include "qemu/error-report.h"
#include "sysemu/device_tree.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "hw/loader.h"
#include "elf.h"
diff --git a/hw/microblaze/boot.h b/hw/microblaze/boot.h
index dd1090d8b5..5a8c2f7975 100644
--- a/hw/microblaze/boot.h
+++ b/hw/microblaze/boot.h
@@ -1,7 +1,6 @@
#ifndef MICROBLAZE_BOOT_H
#define MICROBLAZE_BOOT_H
-#include "hw/hw.h"
void microblaze_load_kernel(MicroBlazeCPU *cpu, hwaddr ddr_base,
uint32_t ramsize,
diff --git a/hw/microblaze/petalogix_ml605_mmu.c b/hw/microblaze/petalogix_ml605_mmu.c
index a88bf16cc8..09486bc8bf 100644
--- a/hw/microblaze/petalogix_ml605_mmu.c
+++ b/hw/microblaze/petalogix_ml605_mmu.c
@@ -30,12 +30,12 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "net/net.h"
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/char/serial.h"
+#include "hw/qdev-properties.h"
#include "exec/address-spaces.h"
#include "hw/ssi/ssi.h"
diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c
index 8d83474262..849bafc186 100644
--- a/hw/microblaze/petalogix_s3adsp1800_mmu.c
+++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c
@@ -28,7 +28,6 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "net/net.h"
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
diff --git a/hw/microblaze/xlnx-zynqmp-pmu.c b/hw/microblaze/xlnx-zynqmp-pmu.c
index 67cedec4ef..028f31894d 100644
--- a/hw/microblaze/xlnx-zynqmp-pmu.c
+++ b/hw/microblaze/xlnx-zynqmp-pmu.c
@@ -19,7 +19,6 @@
#include "qapi/error.h"
#include "exec/address-spaces.h"
#include "hw/boards.h"
-#include "hw/qdev-properties.h"
#include "cpu.h"
#include "boot.h"
diff --git a/hw/mips/addr.c b/hw/mips/addr.c
index 4da46e1731..2f138fe1ea 100644
--- a/hw/mips/addr.c
+++ b/hw/mips/addr.c
@@ -21,7 +21,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/mips/cpudevs.h"
static int mips_um_ksegs;
diff --git a/hw/mips/boston.c b/hw/mips/boston.c
index 9eeccbea9a..ca7d813a52 100644
--- a/hw/mips/boston.c
+++ b/hw/mips/boston.c
@@ -23,7 +23,6 @@
#include "exec/address-spaces.h"
#include "hw/boards.h"
#include "hw/char/serial.h"
-#include "hw/hw.h"
#include "hw/ide/pci.h"
#include "hw/ide/ahci.h"
#include "hw/loader.h"
@@ -31,6 +30,7 @@
#include "hw/mips/cps.h"
#include "hw/mips/cpudevs.h"
#include "hw/pci-host/xilinx-pcie.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
@@ -38,6 +38,7 @@
#include "sysemu/device_tree.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/runstate.h"
#include <libfdt.h>
diff --git a/hw/mips/cps.c b/hw/mips/cps.c
index 0d459c4141..cd8b07ded2 100644
--- a/hw/mips/cps.c
+++ b/hw/mips/cps.c
@@ -22,8 +22,10 @@
#include "qemu/module.h"
#include "hw/mips/cps.h"
#include "hw/mips/mips.h"
+#include "hw/qdev-properties.h"
#include "hw/mips/cpudevs.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
qemu_irq get_cps_irq(MIPSCPSState *s, int pin_number)
{
diff --git a/hw/mips/gt64xxx_pci.c b/hw/mips/gt64xxx_pci.c
index 2fa313f498..f325bd6c1c 100644
--- a/hw/mips/gt64xxx_pci.c
+++ b/hw/mips/gt64xxx_pci.c
@@ -25,11 +25,12 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qemu/log.h"
-#include "hw/hw.h"
#include "hw/mips/mips.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
+#include "migration/vmstate.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "exec/address-spaces.h"
#include "trace.h"
diff --git a/hw/mips/mips_fulong2e.c b/hw/mips/mips_fulong2e.c
index 5dbaa3bfcc..6e4fba285b 100644
--- a/hw/mips/mips_fulong2e.c
+++ b/hw/mips/mips_fulong2e.c
@@ -23,7 +23,6 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/dma/i8257.h"
#include "hw/isa/superio.h"
@@ -44,6 +43,7 @@
#include "hw/timer/i8254.h"
#include "exec/address-spaces.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "qemu/error-report.h"
#define DEBUG_FULONG2E_INIT
diff --git a/hw/mips/mips_int.c b/hw/mips/mips_int.c
index f899f6ceb3..74cf587d5b 100644
--- a/hw/mips/mips_int.c
+++ b/hw/mips/mips_int.c
@@ -22,7 +22,7 @@
#include "qemu/osdep.h"
#include "qemu/main-loop.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/mips/cpudevs.h"
#include "cpu.h"
#include "sysemu/kvm.h"
diff --git a/hw/mips/mips_jazz.c b/hw/mips/mips_jazz.c
index fa8775d428..388c15c376 100644
--- a/hw/mips/mips_jazz.c
+++ b/hw/mips/mips_jazz.c
@@ -24,7 +24,6 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "hw/mips/mips.h"
#include "hw/mips/cpudevs.h"
#include "hw/i386/pc.h"
@@ -48,6 +47,7 @@
#include "hw/sysbus.h"
#include "exec/address-spaces.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/help_option.h"
diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
index 20e019bf66..9fec2b08e4 100644
--- a/hw/mips/mips_malta.c
+++ b/hw/mips/mips_malta.c
@@ -26,7 +26,6 @@
#include "qemu/units.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/isa/superio.h"
#include "hw/dma/i8257.h"
@@ -43,6 +42,7 @@
#include "qemu/log.h"
#include "hw/mips/bios.h"
#include "hw/ide.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "elf.h"
#include "hw/timer/mc146818rtc.h"
@@ -51,6 +51,8 @@
#include "hw/sysbus.h" /* SysBusDevice */
#include "qemu/host-utils.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "hw/empty_slot.h"
diff --git a/hw/mips/mips_mipssim.c b/hw/mips/mips_mipssim.c
index 824abda657..1ca7e909d1 100644
--- a/hw/mips/mips_mipssim.c
+++ b/hw/mips/mips_mipssim.c
@@ -24,11 +24,11 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/mips/mips.h"
#include "hw/mips/cpudevs.h"
#include "hw/char/serial.h"
@@ -43,6 +43,7 @@
#include "exec/address-spaces.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
static struct _loaderparams {
int ram_size;
diff --git a/hw/mips/mips_r4k.c b/hw/mips/mips_r4k.c
index 93dbf76bb4..bc0be26544 100644
--- a/hw/mips/mips_r4k.c
+++ b/hw/mips/mips_r4k.c
@@ -7,12 +7,12 @@
* All peripherial devices are attached to this "bus" with
* the standard PC ISA addresses.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/mips/mips.h"
#include "hw/mips/cpudevs.h"
#include "hw/i386/pc.h"
@@ -33,6 +33,8 @@
#include "hw/timer/i8254.h"
#include "exec/address-spaces.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/error-report.h"
#define MAX_IDE_BUS 2
diff --git a/hw/misc/a9scu.c b/hw/misc/a9scu.c
index 4307f0082b..45c91db303 100644
--- a/hw/misc/a9scu.c
+++ b/hw/misc/a9scu.c
@@ -10,6 +10,8 @@
#include "qemu/osdep.h"
#include "hw/misc/a9scu.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
static uint64_t a9_scu_read(void *opaque, hwaddr offset,
diff --git a/hw/misc/applesmc.c b/hw/misc/applesmc.c
index 2d7eb3c7e2..24d57e8677 100644
--- a/hw/misc/applesmc.c
+++ b/hw/misc/applesmc.c
@@ -31,8 +31,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "ui/console.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/misc/arm11scu.c b/hw/misc/arm11scu.c
index 84275df885..3023284d6f 100644
--- a/hw/misc/arm11scu.c
+++ b/hw/misc/arm11scu.c
@@ -10,6 +10,7 @@
#include "qemu/osdep.h"
#include "hw/misc/arm11scu.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/arm_integrator_debug.c b/hw/misc/arm_integrator_debug.c
index 2646107b97..3e23201ae6 100644
--- a/hw/misc/arm_integrator_debug.c
+++ b/hw/misc/arm_integrator_debug.c
@@ -15,7 +15,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/misc/arm_integrator_debug.h"
#include "qemu/log.h"
diff --git a/hw/misc/arm_l2x0.c b/hw/misc/arm_l2x0.c
index b88f40ae7e..af2c7af4a0 100644
--- a/hw/misc/arm_l2x0.c
+++ b/hw/misc/arm_l2x0.c
@@ -19,7 +19,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/arm_sysctl.c b/hw/misc/arm_sysctl.c
index 457dfadfab..fc79522ece 100644
--- a/hw/misc/arm_sysctl.c
+++ b/hw/misc/arm_sysctl.c
@@ -8,12 +8,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "qemu/bitops.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/primecell.h"
-#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/armsse-cpuid.c b/hw/misc/armsse-cpuid.c
index 05c08f3db5..8ab15fea81 100644
--- a/hw/misc/armsse-cpuid.c
+++ b/hw/misc/armsse-cpuid.c
@@ -23,10 +23,10 @@
#include "qemu/module.h"
#include "trace.h"
#include "qapi/error.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#include "hw/registerfields.h"
#include "hw/misc/armsse-cpuid.h"
+#include "hw/qdev-properties.h"
REG32(CPUID, 0x0)
REG32(PID4, 0xfd0)
diff --git a/hw/misc/armsse-mhu.c b/hw/misc/armsse-mhu.c
index 514321a9ec..a45d97fada 100644
--- a/hw/misc/armsse-mhu.c
+++ b/hw/misc/armsse-mhu.c
@@ -20,9 +20,10 @@
#include "qemu/module.h"
#include "trace.h"
#include "qapi/error.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
+#include "hw/irq.h"
#include "hw/misc/armsse-mhu.h"
REG32(CPU0INTR_STAT, 0x0)
diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c
index 71a0d4b7be..268cb24e56 100644
--- a/hw/misc/aspeed_scu.c
+++ b/hw/misc/aspeed_scu.c
@@ -12,6 +12,7 @@
#include "qemu/osdep.h"
#include "hw/misc/aspeed_scu.h"
#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "qemu/bitops.h"
diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c
index b84676d36d..cb13c63ec8 100644
--- a/hw/misc/aspeed_sdmc.c
+++ b/hw/misc/aspeed_sdmc.c
@@ -14,6 +14,7 @@
#include "hw/misc/aspeed_sdmc.h"
#include "hw/misc/aspeed_scu.h"
#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "trace.h"
diff --git a/hw/misc/aspeed_xdma.c b/hw/misc/aspeed_xdma.c
index eebd4ad540..dca5585a75 100644
--- a/hw/misc/aspeed_xdma.c
+++ b/hw/misc/aspeed_xdma.c
@@ -9,7 +9,9 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "qemu/error-report.h"
+#include "hw/irq.h"
#include "hw/misc/aspeed_xdma.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "trace.h"
diff --git a/hw/misc/bcm2835_mbox.c b/hw/misc/bcm2835_mbox.c
index a87da5ee53..79bad11631 100644
--- a/hw/misc/bcm2835_mbox.c
+++ b/hw/misc/bcm2835_mbox.c
@@ -10,7 +10,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "hw/irq.h"
#include "hw/misc/bcm2835_mbox.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/bcm2835_property.c b/hw/misc/bcm2835_property.c
index 0bf789cf60..d86d510572 100644
--- a/hw/misc/bcm2835_property.c
+++ b/hw/misc/bcm2835_property.c
@@ -6,6 +6,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/misc/bcm2835_property.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/misc/bcm2835_mbox_defs.h"
#include "sysemu/dma.h"
#include "qemu/log.h"
diff --git a/hw/misc/bcm2835_rng.c b/hw/misc/bcm2835_rng.c
index e882c87568..d0c4e64e88 100644
--- a/hw/misc/bcm2835_rng.c
+++ b/hw/misc/bcm2835_rng.c
@@ -12,6 +12,7 @@
#include "qemu/guest-random.h"
#include "qemu/module.h"
#include "hw/misc/bcm2835_rng.h"
+#include "migration/vmstate.h"
static uint32_t get_random_bytes(void)
{
diff --git a/hw/misc/cbus.c b/hw/misc/cbus.c
index 16ee704bca..3c3721ad2d 100644
--- a/hw/misc/cbus.c
+++ b/hw/misc/cbus.c
@@ -24,7 +24,7 @@
#include "hw/hw.h"
#include "hw/irq.h"
#include "hw/misc/cbus.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
//#define DEBUG
diff --git a/hw/misc/debugexit.c b/hw/misc/debugexit.c
index 8e4a2fc701..ccf02bdbd4 100644
--- a/hw/misc/debugexit.c
+++ b/hw/misc/debugexit.c
@@ -8,8 +8,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "qemu/module.h"
#define TYPE_ISA_DEBUG_EXIT_DEVICE "isa-debug-exit"
diff --git a/hw/misc/eccmemctl.c b/hw/misc/eccmemctl.c
index 8386db07df..4b1f2b675a 100644
--- a/hw/misc/eccmemctl.c
+++ b/hw/misc/eccmemctl.c
@@ -23,7 +23,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "trace.h"
diff --git a/hw/misc/edu.c b/hw/misc/edu.c
index 3b6dba2c72..d5e2bdbb57 100644
--- a/hw/misc/edu.c
+++ b/hw/misc/edu.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "hw/pci/pci.h"
+#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "qemu/timer.h"
#include "qemu/main-loop.h" /* iothread mutex */
diff --git a/hw/misc/exynos4210_clk.c b/hw/misc/exynos4210_clk.c
index 821d9eab3f..bc1463ff89 100644
--- a/hw/misc/exynos4210_clk.c
+++ b/hw/misc/exynos4210_clk.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/exynos4210_pmu.c b/hw/misc/exynos4210_pmu.c
index 8712774768..500f28343f 100644
--- a/hw/misc/exynos4210_pmu.c
+++ b/hw/misc/exynos4210_pmu.c
@@ -26,8 +26,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#ifndef DEBUG_PMU
#define DEBUG_PMU 0
diff --git a/hw/misc/exynos4210_rng.c b/hw/misc/exynos4210_rng.c
index b88fe3a26d..38cd61c7ea 100644
--- a/hw/misc/exynos4210_rng.c
+++ b/hw/misc/exynos4210_rng.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/log.h"
#include "qemu/guest-random.h"
diff --git a/hw/misc/imx25_ccm.c b/hw/misc/imx25_ccm.c
index 693ea81040..d3107e5ca2 100644
--- a/hw/misc/imx25_ccm.c
+++ b/hw/misc/imx25_ccm.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/misc/imx25_ccm.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/imx31_ccm.c b/hw/misc/imx31_ccm.c
index 38a19aa0d0..6e246827ab 100644
--- a/hw/misc/imx31_ccm.c
+++ b/hw/misc/imx31_ccm.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/misc/imx31_ccm.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/imx6_ccm.c b/hw/misc/imx6_ccm.c
index 9478007f41..7fec8f0a47 100644
--- a/hw/misc/imx6_ccm.c
+++ b/hw/misc/imx6_ccm.c
@@ -12,6 +12,7 @@
#include "qemu/osdep.h"
#include "hw/misc/imx6_ccm.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/imx6_src.c b/hw/misc/imx6_src.c
index 878ffcdc71..8ab18967b5 100644
--- a/hw/misc/imx6_src.c
+++ b/hw/misc/imx6_src.c
@@ -10,9 +10,10 @@
#include "qemu/osdep.h"
#include "hw/misc/imx6_src.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "arm-powerctl.h"
#include "qom/cpu.h"
diff --git a/hw/misc/imx6ul_ccm.c b/hw/misc/imx6ul_ccm.c
index 37b472d125..a2fc1d0364 100644
--- a/hw/misc/imx6ul_ccm.c
+++ b/hw/misc/imx6ul_ccm.c
@@ -12,6 +12,7 @@
#include "qemu/osdep.h"
#include "hw/registerfields.h"
+#include "migration/vmstate.h"
#include "hw/misc/imx6ul_ccm.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/imx7_ccm.c b/hw/misc/imx7_ccm.c
index d9bdcf1027..02fc1ae8d0 100644
--- a/hw/misc/imx7_ccm.c
+++ b/hw/misc/imx7_ccm.c
@@ -14,6 +14,7 @@
#include "qemu/module.h"
#include "hw/misc/imx7_ccm.h"
+#include "migration/vmstate.h"
static void imx7_analog_reset(DeviceState *dev)
{
diff --git a/hw/misc/imx7_gpr.c b/hw/misc/imx7_gpr.c
index 09d57d4710..b03341a2eb 100644
--- a/hw/misc/imx7_gpr.c
+++ b/hw/misc/imx7_gpr.c
@@ -16,7 +16,6 @@
#include "hw/misc/imx7_gpr.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
diff --git a/hw/misc/imx7_snvs.c b/hw/misc/imx7_snvs.c
index 55b962a453..45972a5920 100644
--- a/hw/misc/imx7_snvs.c
+++ b/hw/misc/imx7_snvs.c
@@ -16,7 +16,7 @@
#include "hw/misc/imx7_snvs.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
static uint64_t imx7_snvs_read(void *opaque, hwaddr offset, unsigned size)
{
diff --git a/hw/misc/iotkit-secctl.c b/hw/misc/iotkit-secctl.c
index 58fd94b14f..609869821a 100644
--- a/hw/misc/iotkit-secctl.c
+++ b/hw/misc/iotkit-secctl.c
@@ -15,7 +15,9 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
+#include "hw/irq.h"
#include "hw/misc/iotkit-secctl.h"
/* Registers in the secure privilege control block */
diff --git a/hw/misc/iotkit-sysctl.c b/hw/misc/iotkit-sysctl.c
index 00d4faa6db..9aa8109463 100644
--- a/hw/misc/iotkit-sysctl.c
+++ b/hw/misc/iotkit-sysctl.c
@@ -20,12 +20,14 @@
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "trace.h"
#include "qapi/error.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
#include "hw/misc/iotkit-sysctl.h"
+#include "hw/qdev-properties.h"
#include "target/arm/arm-powerctl.h"
#include "target/arm/cpu.h"
diff --git a/hw/misc/iotkit-sysinfo.c b/hw/misc/iotkit-sysinfo.c
index 3e1cf0ec34..783e613959 100644
--- a/hw/misc/iotkit-sysinfo.c
+++ b/hw/misc/iotkit-sysinfo.c
@@ -22,10 +22,10 @@
#include "qemu/module.h"
#include "trace.h"
#include "qapi/error.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#include "hw/registerfields.h"
#include "hw/misc/iotkit-sysinfo.h"
+#include "hw/qdev-properties.h"
REG32(SYS_VERSION, 0x0)
REG32(SYS_CONFIG, 0x4)
diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c
index f9cc66aba8..5e3b05eae0 100644
--- a/hw/misc/ivshmem.c
+++ b/hw/misc/ivshmem.c
@@ -21,12 +21,13 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "qemu/cutils.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
#include "sysemu/kvm.h"
#include "migration/blocker.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/event_notifier.h"
#include "qemu/module.h"
diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
index 4f532efe34..e38becba6a 100644
--- a/hw/misc/macio/cuda.c
+++ b/hw/misc/macio/cuda.c
@@ -25,13 +25,14 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/input/adb.h"
#include "hw/misc/mos6522.h"
#include "hw/misc/macio/cuda.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qemu/cutils.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/macio/gpio.c b/hw/misc/macio/gpio.c
index 31811ab513..6cca6b27d6 100644
--- a/hw/misc/macio/gpio.c
+++ b/hw/misc/macio/gpio.c
@@ -24,8 +24,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/misc/macio/macio.h"
#include "hw/misc/macio/gpio.h"
#include "hw/nmi.h"
diff --git a/hw/misc/macio/mac_dbdma.c b/hw/misc/macio/mac_dbdma.c
index 548625a5f0..e220f1a927 100644
--- a/hw/misc/macio/mac_dbdma.c
+++ b/hw/misc/macio/mac_dbdma.c
@@ -38,8 +38,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/mac_dbdma.h"
+#include "migration/vmstate.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/log.h"
diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
index 82492096f8..50f20d8206 100644
--- a/hw/misc/macio/macio.c
+++ b/hw/misc/macio/macio.c
@@ -26,14 +26,16 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
#include "hw/misc/macio/cuda.h"
#include "hw/pci/pci.h"
#include "hw/ppc/mac_dbdma.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/char/escc.h"
#include "hw/misc/macio/macio.h"
#include "hw/intc/heathrow_pic.h"
+#include "sysemu/sysemu.h"
#include "trace.h"
/* Note: this code is strongly inspirated from the corresponding code
diff --git a/hw/misc/macio/pmu.c b/hw/misc/macio/pmu.c
index 753561d3f1..769aed8052 100644
--- a/hw/misc/macio/pmu.c
+++ b/hw/misc/macio/pmu.c
@@ -30,14 +30,16 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/input/adb.h"
+#include "hw/irq.h"
#include "hw/misc/mos6522.h"
#include "hw/misc/macio/gpio.h"
#include "hw/misc/macio/pmu.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qemu/cutils.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/max111x.c b/hw/misc/max111x.c
index d373ece0c9..a713149f16 100644
--- a/hw/misc/max111x.c
+++ b/hw/misc/max111x.c
@@ -11,7 +11,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
typedef struct {
diff --git a/hw/misc/milkymist-hpdmc.c b/hw/misc/milkymist-hpdmc.c
index 701c79e81c..61e86e6b34 100644
--- a/hw/misc/milkymist-hpdmc.c
+++ b/hw/misc/milkymist-hpdmc.c
@@ -22,8 +22,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/misc/milkymist-pfpu.c b/hw/misc/milkymist-pfpu.c
index 1c27f1a4bc..516825e83d 100644
--- a/hw/misc/milkymist-pfpu.c
+++ b/hw/misc/milkymist-pfpu.c
@@ -23,8 +23,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/mips_cmgcr.c b/hw/misc/mips_cmgcr.c
index edec164605..8176d91c0c 100644
--- a/hw/misc/mips_cmgcr.c
+++ b/hw/misc/mips_cmgcr.c
@@ -12,11 +12,11 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "hw/misc/mips_cmgcr.h"
#include "hw/misc/mips_cpc.h"
+#include "hw/qdev-properties.h"
#include "hw/intc/mips_gic.h"
static inline bool is_cpc_connected(MIPSGCRState *s)
diff --git a/hw/misc/mips_cpc.c b/hw/misc/mips_cpc.c
index 446b1ad397..19ea016b87 100644
--- a/hw/misc/mips_cpc.c
+++ b/hw/misc/mips_cpc.c
@@ -23,8 +23,10 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/misc/mips_cpc.h"
+#include "hw/qdev-properties.h"
static inline uint64_t cpc_vp_run_mask(MIPSCPCState *cpc)
{
diff --git a/hw/misc/mips_itu.c b/hw/misc/mips_itu.c
index e8ba4a3cd0..ea0cf9726b 100644
--- a/hw/misc/mips_itu.c
+++ b/hw/misc/mips_itu.c
@@ -25,6 +25,7 @@
#include "cpu.h"
#include "exec/exec-all.h"
#include "hw/misc/mips_itu.h"
+#include "hw/qdev-properties.h"
#define ITC_TAG_ADDRSPACE_SZ (ITC_ADDRESSMAP_NUM * 8)
/* Initialize as 4kB area to fit all 32 cells with default 128B grain.
diff --git a/hw/misc/mos6522.c b/hw/misc/mos6522.c
index e72ed69d51..57f13db266 100644
--- a/hw/misc/mos6522.c
+++ b/hw/misc/mos6522.c
@@ -25,11 +25,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/input/adb.h"
+#include "hw/irq.h"
#include "hw/misc/mos6522.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "qemu/cutils.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/mps2-fpgaio.c b/hw/misc/mps2-fpgaio.c
index b97ad42d75..5e8b103914 100644
--- a/hw/misc/mps2-fpgaio.c
+++ b/hw/misc/mps2-fpgaio.c
@@ -21,8 +21,10 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
#include "hw/misc/mps2-fpgaio.h"
+#include "hw/qdev-properties.h"
#include "qemu/timer.h"
REG32(LED0, 0)
diff --git a/hw/misc/mps2-scc.c b/hw/misc/mps2-scc.c
index 1fdf5d22bd..25779a1dca 100644
--- a/hw/misc/mps2-scc.c
+++ b/hw/misc/mps2-scc.c
@@ -22,8 +22,10 @@
#include "qemu/module.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
#include "hw/misc/mps2-scc.h"
+#include "hw/qdev-properties.h"
REG32(CFG0, 0)
REG32(CFG1, 4)
diff --git a/hw/misc/msf2-sysreg.c b/hw/misc/msf2-sysreg.c
index 21a2863821..ddc5a30c80 100644
--- a/hw/misc/msf2-sysreg.c
+++ b/hw/misc/msf2-sysreg.c
@@ -17,6 +17,8 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/misc/msf2-sysreg.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "trace.h"
diff --git a/hw/misc/mst_fpga.c b/hw/misc/mst_fpga.c
index fd18303724..81abdf8ede 100644
--- a/hw/misc/mst_fpga.c
+++ b/hw/misc/mst_fpga.c
@@ -12,8 +12,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
/* Mainstone FPGA for extern irqs */
diff --git a/hw/misc/nrf51_rng.c b/hw/misc/nrf51_rng.c
index 96ef4330eb..5140981c96 100644
--- a/hw/misc/nrf51_rng.c
+++ b/hw/misc/nrf51_rng.c
@@ -14,7 +14,10 @@
#include "qemu/module.h"
#include "qapi/error.h"
#include "hw/arm/nrf51.h"
+#include "hw/irq.h"
#include "hw/misc/nrf51_rng.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/guest-random.h"
static void update_irq(NRF51RNGState *s)
diff --git a/hw/misc/omap_clk.c b/hw/misc/omap_clk.c
index 9ea14186d4..c77ca2fc74 100644
--- a/hw/misc/omap_clk.c
+++ b/hw/misc/omap_clk.c
@@ -18,8 +18,10 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/arm/omap.h"
struct clk {
diff --git a/hw/misc/omap_gpmc.c b/hw/misc/omap_gpmc.c
index 84f9e4c612..10de7a5523 100644
--- a/hw/misc/omap_gpmc.c
+++ b/hw/misc/omap_gpmc.c
@@ -18,8 +18,9 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/block/flash.h"
#include "hw/arm/omap.h"
#include "exec/memory.h"
diff --git a/hw/misc/omap_l4.c b/hw/misc/omap_l4.c
index c217728c78..61b6df564a 100644
--- a/hw/misc/omap_l4.c
+++ b/hw/misc/omap_l4.c
@@ -18,7 +18,6 @@
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/arm/omap.h"
struct omap_l4_s {
diff --git a/hw/misc/omap_sdrc.c b/hw/misc/omap_sdrc.c
index 7b38c5568c..f2f72f6810 100644
--- a/hw/misc/omap_sdrc.c
+++ b/hw/misc/omap_sdrc.c
@@ -18,7 +18,6 @@
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/arm/omap.h"
/* SDRAM Controller Subsystem */
diff --git a/hw/misc/pc-testdev.c b/hw/misc/pc-testdev.c
index 1f9abd52b8..0fb84ddc6b 100644
--- a/hw/misc/pc-testdev.c
+++ b/hw/misc/pc-testdev.c
@@ -36,9 +36,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
-#include "hw/qdev.h"
#include "qemu/module.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
#define IOMEM_LEN 0x10000
diff --git a/hw/misc/pca9552.c b/hw/misc/pca9552.c
index 3422397f89..73be28d936 100644
--- a/hw/misc/pca9552.c
+++ b/hw/misc/pca9552.c
@@ -12,9 +12,9 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/misc/pca9552.h"
#include "hw/misc/pca9552_regs.h"
+#include "migration/vmstate.h"
#define PCA9552_LED_ON 0x0
#define PCA9552_LED_OFF 0x1
diff --git a/hw/misc/pci-testdev.c b/hw/misc/pci-testdev.c
index d4d89df4cf..74d8571a73 100644
--- a/hw/misc/pci-testdev.c
+++ b/hw/misc/pci-testdev.c
@@ -19,8 +19,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "qemu/event_notifier.h"
#include "qemu/module.h"
#include "sysemu/kvm.h"
diff --git a/hw/misc/puv3_pm.c b/hw/misc/puv3_pm.c
index b538b4afbb..c213500d9c 100644
--- a/hw/misc/puv3_pm.c
+++ b/hw/misc/puv3_pm.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#undef DEBUG_PUV3
diff --git a/hw/misc/pvpanic.c b/hw/misc/pvpanic.c
index 1da24c621e..d65ac86478 100644
--- a/hw/misc/pvpanic.c
+++ b/hw/misc/pvpanic.c
@@ -13,11 +13,12 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "hw/nvram/fw_cfg.h"
+#include "hw/qdev-properties.h"
#include "hw/misc/pvpanic.h"
/* The bit of supported pv event */
diff --git a/hw/misc/sga.c b/hw/misc/sga.c
index da04924f5f..6866bf72cb 100644
--- a/hw/misc/sga.c
+++ b/hw/misc/sga.c
@@ -29,7 +29,6 @@
#include "hw/isa/isa.h"
#include "hw/loader.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#define SGABIOS_FILENAME "sgabios.bin"
diff --git a/hw/misc/slavio_misc.c b/hw/misc/slavio_misc.c
index 9c2cf04646..279b38dfc7 100644
--- a/hw/misc/slavio_misc.c
+++ b/hw/misc/slavio_misc.c
@@ -23,9 +23,11 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "trace.h"
/*
diff --git a/hw/misc/tmp105.c b/hw/misc/tmp105.c
index 19def5c20f..75ddad3a12 100644
--- a/hw/misc/tmp105.c
+++ b/hw/misc/tmp105.c
@@ -19,8 +19,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "tmp105.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
diff --git a/hw/misc/tmp421.c b/hw/misc/tmp421.c
index 69ee5db4b7..9f044705fa 100644
--- a/hw/misc/tmp421.c
+++ b/hw/misc/tmp421.c
@@ -25,8 +25,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "qemu/module.h"
diff --git a/hw/misc/tz-mpc.c b/hw/misc/tz-mpc.c
index 45a3e31c3d..49dd6050bd 100644
--- a/hw/misc/tz-mpc.c
+++ b/hw/misc/tz-mpc.c
@@ -15,8 +15,11 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
+#include "hw/irq.h"
#include "hw/misc/tz-mpc.h"
+#include "hw/qdev-properties.h"
/* Our IOMMU has two IOMMU indexes, one for secure transactions and one for
* non-secure transactions.
diff --git a/hw/misc/tz-msc.c b/hw/misc/tz-msc.c
index 52b96ba70d..7d522ac0ec 100644
--- a/hw/misc/tz-msc.c
+++ b/hw/misc/tz-msc.c
@@ -15,8 +15,11 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
+#include "hw/irq.h"
#include "hw/misc/tz-msc.h"
+#include "hw/qdev-properties.h"
static void tz_msc_update_irq(TZMSC *s)
{
diff --git a/hw/misc/tz-ppc.c b/hw/misc/tz-ppc.c
index 2a14a26f29..181a5f1e81 100644
--- a/hw/misc/tz-ppc.c
+++ b/hw/misc/tz-ppc.c
@@ -15,8 +15,11 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/registerfields.h"
+#include "hw/irq.h"
#include "hw/misc/tz-ppc.h"
+#include "hw/qdev-properties.h"
static void tz_ppc_update_irq(TZPPC *s)
{
diff --git a/hw/misc/unimp.c b/hw/misc/unimp.c
index 7f8e42cc2c..0e1cb24629 100644
--- a/hw/misc/unimp.c
+++ b/hw/misc/unimp.c
@@ -12,7 +12,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/misc/unimp.h"
#include "qemu/log.h"
diff --git a/hw/misc/vmcoreinfo.c b/hw/misc/vmcoreinfo.c
index 987d6f52af..326a3ce8f4 100644
--- a/hw/misc/vmcoreinfo.c
+++ b/hw/misc/vmcoreinfo.c
@@ -13,7 +13,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
+#include "sysemu/reset.h"
#include "hw/nvram/fw_cfg.h"
+#include "migration/vmstate.h"
#include "hw/misc/vmcoreinfo.h"
static void fw_cfg_vmci_write(void *dev, off_t offset, size_t len)
diff --git a/hw/misc/zynq-xadc.c b/hw/misc/zynq-xadc.c
index f1e48601dc..7b1972ce06 100644
--- a/hw/misc/zynq-xadc.c
+++ b/hw/misc/zynq-xadc.c
@@ -14,10 +14,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/misc/zynq-xadc.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/misc/zynq_slcr.c b/hw/misc/zynq_slcr.c
index 6b51ae5ff1..04adf618e5 100644
--- a/hw/misc/zynq_slcr.c
+++ b/hw/misc/zynq_slcr.c
@@ -15,10 +15,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/moxie/moxiesim.c b/hw/moxie/moxiesim.c
index d771d393c2..57af1b4891 100644
--- a/hw/moxie/moxiesim.c
+++ b/hw/moxie/moxiesim.c
@@ -24,13 +24,14 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "net/net.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/loader.h"
diff --git a/hw/net/allwinner_emac.c b/hw/net/allwinner_emac.c
index eecda52800..e055a661c4 100644
--- a/hw/net/allwinner_emac.c
+++ b/hw/net/allwinner_emac.c
@@ -19,9 +19,12 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "qemu/fifo8.h"
+#include "hw/irq.h"
#include "hw/net/allwinner_emac.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include <zlib.h>
diff --git a/hw/net/cadence_gem.c b/hw/net/cadence_gem.c
index d412085884..7f9cb5ab95 100644
--- a/hw/net/cadence_gem.c
+++ b/hw/net/cadence_gem.c
@@ -25,7 +25,10 @@
#include "qemu/osdep.h"
#include <zlib.h> /* For crc32 */
+#include "hw/irq.h"
#include "hw/net/cadence_gem.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/net/can/can_kvaser_pci.c b/hw/net/can/can_kvaser_pci.c
index df639f8fa0..16861b8f9f 100644
--- a/hw/net/can/can_kvaser_pci.c
+++ b/hw/net/can/can_kvaser_pci.c
@@ -36,8 +36,10 @@
#include "qemu/sockets.h"
#include "qapi/error.h"
#include "chardev/char.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/can_emu.h"
#include "can_sja1000.h"
diff --git a/hw/net/can/can_mioe3680_pci.c b/hw/net/can/can_mioe3680_pci.c
index 7af0993d7a..965e252d9d 100644
--- a/hw/net/can/can_mioe3680_pci.c
+++ b/hw/net/can/can_mioe3680_pci.c
@@ -32,8 +32,10 @@
#include "qemu/sockets.h"
#include "qapi/error.h"
#include "chardev/char.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/can_emu.h"
#include "can_sja1000.h"
diff --git a/hw/net/can/can_pcm3680_pci.c b/hw/net/can/can_pcm3680_pci.c
index 3f7312af07..51b6540072 100644
--- a/hw/net/can/can_pcm3680_pci.c
+++ b/hw/net/can/can_pcm3680_pci.c
@@ -32,8 +32,10 @@
#include "qemu/sockets.h"
#include "qapi/error.h"
#include "chardev/char.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/can_emu.h"
#include "can_sja1000.h"
diff --git a/hw/net/can/can_sja1000.c b/hw/net/can/can_sja1000.c
index 9a85038c8a..1f81341554 100644
--- a/hw/net/can/can_sja1000.c
+++ b/hw/net/can/can_sja1000.c
@@ -24,10 +24,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "chardev/char.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "net/can_emu.h"
#include "can_sja1000.h"
diff --git a/hw/net/can/can_sja1000.h b/hw/net/can/can_sja1000.h
index 4731cbbd2a..220a622087 100644
--- a/hw/net/can/can_sja1000.h
+++ b/hw/net/can/can_sja1000.h
@@ -27,6 +27,7 @@
#ifndef HW_CAN_SJA1000_H
#define HW_CAN_SJA1000_H
+#include "exec/hwaddr.h"
#include "net/can_emu.h"
#define CAN_SJA_MEM_SIZE 128
diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
index bdb0b3b2c2..a5678e11fa 100644
--- a/hw/net/dp8393x.c
+++ b/hw/net/dp8393x.c
@@ -18,7 +18,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index a023ceb27c..8ae4e08f1e 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -26,8 +26,9 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "net/checksum.h"
#include "sysemu/sysemu.h"
diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c
index 581f7d03d5..b69fd7d8ad 100644
--- a/hw/net/e1000e.c
+++ b/hw/net/e1000e.c
@@ -40,8 +40,11 @@
#include "qemu/module.h"
#include "qemu/range.h"
#include "sysemu/sysemu.h"
+#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "e1000_regs.h"
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index 2a221c2ef9..9b76f82db5 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -34,11 +34,12 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "net/net.h"
#include "net/tap.h"
+#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
+#include "sysemu/runstate.h"
#include "net_tx_pkt.h"
#include "net_rx_pkt.h"
diff --git a/hw/net/e1000x_common.c b/hw/net/e1000x_common.c
index 09047806f2..717f9df1c9 100644
--- a/hw/net/e1000x_common.c
+++ b/hw/net/e1000x_common.c
@@ -24,7 +24,6 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "net/net.h"
diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c
index 6607c9142d..cc2dd8b1c9 100644
--- a/hw/net/eepro100.c
+++ b/hw/net/eepro100.c
@@ -42,13 +42,15 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "net/eth.h"
#include "hw/nvram/eeprom93xx.h"
#include "sysemu/sysemu.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "qemu/bitops.h"
#include "qemu/module.h"
#include "qapi/error.h"
diff --git a/hw/net/fsl_etsec/etsec.c b/hw/net/fsl_etsec/etsec.c
index 2a8b99a2e4..8451c17fb8 100644
--- a/hw/net/fsl_etsec/etsec.c
+++ b/hw/net/fsl_etsec/etsec.c
@@ -27,12 +27,14 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "etsec.h"
#include "registers.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
/* #define HEX_DUMP */
diff --git a/hw/net/fsl_etsec/etsec.h b/hw/net/fsl_etsec/etsec.h
index 877988572e..09d05c2133 100644
--- a/hw/net/fsl_etsec/etsec.h
+++ b/hw/net/fsl_etsec/etsec.h
@@ -25,7 +25,6 @@
#ifndef ETSEC_H
#define ETSEC_H
-#include "hw/qdev.h"
#include "hw/sysbus.h"
#include "net/net.h"
#include "hw/ptimer.h"
diff --git a/hw/net/ftgmac100.c b/hw/net/ftgmac100.c
index d2cded5e94..04c78e8517 100644
--- a/hw/net/ftgmac100.c
+++ b/hw/net/ftgmac100.c
@@ -12,6 +12,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/net/ftgmac100.h"
#include "sysemu/dma.h"
#include "qemu/log.h"
@@ -19,6 +20,8 @@
#include "net/checksum.h"
#include "net/eth.h"
#include "hw/net/mii.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
/* For crc32 */
#include <zlib.h>
diff --git a/hw/net/imx_fec.c b/hw/net/imx_fec.c
index 404154ebbf..7ac4ed7c12 100644
--- a/hw/net/imx_fec.c
+++ b/hw/net/imx_fec.c
@@ -22,7 +22,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/net/imx_fec.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c
index f6120be219..8bba2a8056 100644
--- a/hw/net/lan9118.c
+++ b/hw/net/lan9118.c
@@ -12,12 +12,16 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "net/eth.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/net/lan9118.h"
-#include "sysemu/sysemu.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
/* For crc32 */
#include <zlib.h>
diff --git a/hw/net/lance.c b/hw/net/lance.c
index 2978c01d58..6631e2a4e0 100644
--- a/hw/net/lance.c
+++ b/hw/net/lance.c
@@ -39,7 +39,9 @@
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/sparc/sparc32_dma.h"
+#include "migration/vmstate.h"
#include "hw/net/lance.h"
+#include "hw/qdev-properties.h"
#include "trace.h"
#include "sysemu/sysemu.h"
diff --git a/hw/net/mcf_fec.c b/hw/net/mcf_fec.c
index 78468fad6b..8fcf354a4b 100644
--- a/hw/net/mcf_fec.c
+++ b/hw/net/mcf_fec.c
@@ -8,11 +8,13 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "net/net.h"
#include "qemu/module.h"
#include "hw/m68k/mcf.h"
#include "hw/m68k/mcf_fec.h"
#include "hw/net/mii.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
/* For crc32 */
#include <zlib.h>
diff --git a/hw/net/milkymist-minimac2.c b/hw/net/milkymist-minimac2.c
index 41ef7a4456..86b6d28033 100644
--- a/hw/net/milkymist-minimac2.c
+++ b/hw/net/milkymist-minimac2.c
@@ -25,8 +25,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h" /* FIXME: why does this use TARGET_PAGE_ALIGN? */
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "net/net.h"
#include "qemu/log.h"
diff --git a/hw/net/mipsnet.c b/hw/net/mipsnet.c
index c5fbd8431f..f7ae1ced4d 100644
--- a/hw/net/mipsnet.c
+++ b/hw/net/mipsnet.c
@@ -1,9 +1,11 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "net/net.h"
#include "qemu/module.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
/* MIPSnet register offsets */
diff --git a/hw/net/ne2000-isa.c b/hw/net/ne2000-isa.c
index 3490e54c5a..6fcf3d5cd9 100644
--- a/hw/net/ne2000-isa.c
+++ b/hw/net/ne2000-isa.c
@@ -25,7 +25,7 @@
#include "qemu/osdep.h"
#include "hw/isa/isa.h"
#include "hw/net/ne2000-isa.h"
-#include "hw/qdev.h"
+#include "migration/vmstate.h"
#include "ne2000.h"
#include "sysemu/sysemu.h"
#include "qapi/error.h"
diff --git a/hw/net/ne2000-pci.c b/hw/net/ne2000-pci.c
index cb05744f3c..9a20d427e3 100644
--- a/hw/net/ne2000-pci.c
+++ b/hw/net/ne2000-pci.c
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "ne2000.h"
#include "sysemu/sysemu.h"
diff --git a/hw/net/ne2000.c b/hw/net/ne2000.c
index 1cf4b57341..6c17ee1ae2 100644
--- a/hw/net/ne2000.c
+++ b/hw/net/ne2000.c
@@ -25,8 +25,10 @@
#include "qemu/osdep.h"
#include "net/eth.h"
#include "qemu/module.h"
+#include "exec/memory.h"
+#include "hw/irq.h"
+#include "migration/vmstate.h"
#include "ne2000.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
/* debug NE2000 card */
diff --git a/hw/net/ne2000.h b/hw/net/ne2000.h
index 2cd193e4c6..fc75843703 100644
--- a/hw/net/ne2000.h
+++ b/hw/net/ne2000.h
@@ -2,7 +2,6 @@
#define HW_NE2000_H
#include "qemu/units.h"
-#include "hw/hw.h"
#include "net/net.h"
#define NE2000_PMEM_SIZE (32 * KiB)
diff --git a/hw/net/opencores_eth.c b/hw/net/opencores_eth.c
index a5abb8df46..84a95da1d5 100644
--- a/hw/net/opencores_eth.c
+++ b/hw/net/opencores_eth.c
@@ -32,13 +32,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/net/mii.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "net/net.h"
#include "qemu/module.h"
#include "net/eth.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
/* RECSMALL is not used because it breaks tap networking in linux:
diff --git a/hw/net/pcnet-pci.c b/hw/net/pcnet-pci.c
index 600d09ce92..4723c30c79 100644
--- a/hw/net/pcnet-pci.c
+++ b/hw/net/pcnet-pci.c
@@ -28,7 +28,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c
index 16683091c9..f3f18d8598 100644
--- a/hw/net/pcnet.c
+++ b/hw/net/pcnet.c
@@ -37,11 +37,12 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
-#include "hw/qdev.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "net/eth.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
#include "pcnet.h"
diff --git a/hw/net/pcnet.h b/hw/net/pcnet.h
index 40831a7845..28d19a5c6f 100644
--- a/hw/net/pcnet.h
+++ b/hw/net/pcnet.h
@@ -8,6 +8,7 @@
#define PCNET_LOOPTEST_NOCRC 2
#include "exec/memory.h"
+#include "hw/irq.h"
/* BUS CONFIGURATION REGISTERS */
#define BCR_MSRDA 0
diff --git a/hw/net/rocker/rocker.c b/hw/net/rocker/rocker.c
index bd54612f2a..50f9e33e2f 100644
--- a/hw/net/rocker/rocker.c
+++ b/hw/net/rocker/rocker.c
@@ -16,8 +16,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/pci/msix.h"
#include "net/net.h"
#include "net/eth.h"
diff --git a/hw/net/rocker/rocker_desc.c b/hw/net/rocker/rocker_desc.c
index b009da4f89..01845f1157 100644
--- a/hw/net/rocker/rocker_desc.c
+++ b/hw/net/rocker/rocker_desc.c
@@ -16,7 +16,6 @@
#include "qemu/osdep.h"
#include "net/net.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "rocker.h"
diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
index 09273171e5..88a97d756d 100644
--- a/hw/net/rtl8139.c
+++ b/hw/net/rtl8139.c
@@ -53,8 +53,9 @@
#include "qemu/osdep.h"
#include <zlib.h>
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/net/smc91c111.c b/hw/net/smc91c111.c
index 4a612eebe9..e574635969 100644
--- a/hw/net/smc91c111.c
+++ b/hw/net/smc91c111.c
@@ -9,8 +9,11 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "net/net.h"
+#include "hw/irq.h"
#include "hw/net/smc91c111.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
/* For crc32 */
diff --git a/hw/net/spapr_llan.c b/hw/net/spapr_llan.c
index f162d49025..701e6e1514 100644
--- a/hw/net/spapr_llan.c
+++ b/hw/net/spapr_llan.c
@@ -27,13 +27,14 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "net/net.h"
-#include "hw/qdev.h"
+#include "migration/vmstate.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "trace.h"
diff --git a/hw/net/stellaris_enet.c b/hw/net/stellaris_enet.c
index 2f645bfb71..3aca2a09f3 100644
--- a/hw/net/stellaris_enet.c
+++ b/hw/net/stellaris_enet.c
@@ -8,7 +8,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "net/net.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/net/sungem.c b/hw/net/sungem.c
index 89bcf749d1..f31d41ac5b 100644
--- a/hw/net/sungem.c
+++ b/hw/net/sungem.c
@@ -9,6 +9,8 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "net/net.h"
diff --git a/hw/net/sunhme.c b/hw/net/sunhme.c
index 8b8603e696..2243b7cf7b 100644
--- a/hw/net/sunhme.c
+++ b/hw/net/sunhme.c
@@ -23,8 +23,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/net/mii.h"
#include "net/net.h"
#include "qemu/module.h"
diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c
index a6b719035c..e975700f95 100644
--- a/hw/net/vhost_net.c
+++ b/hw/net/vhost_net.c
@@ -22,7 +22,7 @@
#include "hw/virtio/virtio-net.h"
#include "net/vhost_net.h"
#include "qemu/error-report.h"
-
+#include "qemu/main-loop.h"
#include <sys/socket.h>
#include <net/if.h>
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index b9e1cd71cf..9f11422337 100644
--- a/hw/net/virtio-net.c
+++ b/hw/net/virtio-net.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/virtio/virtio.h"
#include "net/net.h"
@@ -26,9 +27,11 @@
#include "hw/virtio/virtio-bus.h"
#include "qapi/error.h"
#include "qapi/qapi-events-net.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-access.h"
#include "migration/misc.h"
#include "standard-headers/linux/ethtool.h"
+#include "sysemu/sysemu.h"
#include "trace.h"
#define VIRTIO_NET_VM_VERSION 11
diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
index 8b17548b02..b07adeed9c 100644
--- a/hw/net/vmxnet3.c
+++ b/hw/net/vmxnet3.c
@@ -18,6 +18,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "net/tap.h"
#include "net/checksum.h"
#include "sysemu/sysemu.h"
@@ -26,6 +27,7 @@
#include "hw/pci/msix.h"
#include "hw/pci/msi.h"
#include "migration/register.h"
+#include "migration/vmstate.h"
#include "vmxnet3.h"
#include "vmxnet3_defs.h"
diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index ffb3b5898d..00a7fdf843 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -24,7 +24,6 @@
#include <sys/ioctl.h>
#include <sys/wait.h>
-#include "hw/hw.h"
#include "net/net.h"
#include "net/checksum.h"
#include "net/util.h"
diff --git a/hw/net/xgmac.c b/hw/net/xgmac.c
index f49df95b07..2ea8d2ec72 100644
--- a/hw/net/xgmac.c
+++ b/hw/net/xgmac.c
@@ -25,7 +25,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "net/net.h"
diff --git a/hw/net/xilinx_axienet.c b/hw/net/xilinx_axienet.c
index feeaca680e..d8716a1f73 100644
--- a/hw/net/xilinx_axienet.c
+++ b/hw/net/xilinx_axienet.c
@@ -23,6 +23,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qapi/error.h"
#include "qemu/log.h"
@@ -30,6 +31,9 @@
#include "net/net.h"
#include "net/checksum.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/stream.h"
#define DPHY(x)
diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c
index 8f3a8f8597..384e72b157 100644
--- a/hw/net/xilinx_ethlite.c
+++ b/hw/net/xilinx_ethlite.c
@@ -26,7 +26,8 @@
#include "qemu/module.h"
#include "cpu.h" /* FIXME should not use tswap* */
#include "hw/sysbus.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "net/net.h"
#define D(x)
diff --git a/hw/nios2/10m50_devboard.c b/hw/nios2/10m50_devboard.c
index 2c3388f5cf..ad8b2fc670 100644
--- a/hw/nios2/10m50_devboard.c
+++ b/hw/nios2/10m50_devboard.c
@@ -27,8 +27,8 @@
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/char/serial.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "exec/memory.h"
diff --git a/hw/nios2/boot.c b/hw/nios2/boot.c
index 276068c842..d78bc9ed0e 100644
--- a/hw/nios2/boot.c
+++ b/hw/nios2/boot.c
@@ -36,6 +36,7 @@
#include "qemu/config-file.h"
#include "qemu/error-report.h"
#include "sysemu/device_tree.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "hw/loader.h"
#include "elf.h"
diff --git a/hw/nios2/boot.h b/hw/nios2/boot.h
index 3116753818..59b9fbfc62 100644
--- a/hw/nios2/boot.h
+++ b/hw/nios2/boot.h
@@ -1,7 +1,6 @@
#ifndef NIOS2_BOOT_H
#define NIOS2_BOOT_H
-#include "hw/hw.h"
#include "cpu.h"
void nios2_load_kernel(Nios2CPU *cpu, hwaddr ddr_base, uint32_t ramsize,
diff --git a/hw/nios2/cpu_pic.c b/hw/nios2/cpu_pic.c
index 5525e25ff0..1c1989d56a 100644
--- a/hw/nios2/cpu_pic.c
+++ b/hw/nios2/cpu_pic.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
+#include "hw/irq.h"
#include "qemu/config-file.h"
diff --git a/hw/nios2/generic_nommu.c b/hw/nios2/generic_nommu.c
index 1788ffa7a4..19899e2c1e 100644
--- a/hw/nios2/generic_nommu.c
+++ b/hw/nios2/generic_nommu.c
@@ -32,9 +32,7 @@
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/char/serial.h"
-#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "exec/memory.h"
#include "exec/address-spaces.h"
diff --git a/hw/nvram/chrp_nvram.c b/hw/nvram/chrp_nvram.c
index 3837510dd2..d969f26704 100644
--- a/hw/nvram/chrp_nvram.c
+++ b/hw/nvram/chrp_nvram.c
@@ -21,7 +21,6 @@
#include "qemu/osdep.h"
#include "qemu/cutils.h"
-#include "hw/hw.h"
#include "hw/nvram/chrp_nvram.h"
#include "sysemu/sysemu.h"
diff --git a/hw/nvram/ds1225y.c b/hw/nvram/ds1225y.c
index fd49283f41..934e09bf75 100644
--- a/hw/nvram/ds1225y.c
+++ b/hw/nvram/ds1225y.c
@@ -23,7 +23,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/nvram/eeprom93xx.c b/hw/nvram/eeprom93xx.c
index 2db3d7cce6..5b01b9b03f 100644
--- a/hw/nvram/eeprom93xx.c
+++ b/hw/nvram/eeprom93xx.c
@@ -36,8 +36,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/nvram/eeprom93xx.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
/* Debug EEPROM emulation. */
//~ #define DEBUG_EEPROM
diff --git a/hw/nvram/eeprom_at24c.c b/hw/nvram/eeprom_at24c.c
index f75a485738..3416367523 100644
--- a/hw/nvram/eeprom_at24c.c
+++ b/hw/nvram/eeprom_at24c.c
@@ -11,8 +11,8 @@
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/i2c/i2c.h"
+#include "hw/qdev-properties.h"
#include "sysemu/block-backend.h"
/* #define DEBUG_AT24C */
diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c
index dcfd6d2ed3..7dc3ac378e 100644
--- a/hw/nvram/fw_cfg.c
+++ b/hw/nvram/fw_cfg.c
@@ -24,12 +24,15 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "sysemu/sysemu.h"
#include "sysemu/dma.h"
+#include "sysemu/reset.h"
#include "hw/boards.h"
#include "hw/nvram/fw_cfg.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/error-report.h"
#include "qemu/option.h"
diff --git a/hw/nvram/mac_nvram.c b/hw/nvram/mac_nvram.c
index a60426c469..9a47e35b8e 100644
--- a/hw/nvram/mac_nvram.c
+++ b/hw/nvram/mac_nvram.c
@@ -24,9 +24,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/nvram/chrp_nvram.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/cutils.h"
#include "qemu/module.h"
#include <zlib.h>
diff --git a/hw/nvram/nrf51_nvm.c b/hw/nvram/nrf51_nvm.c
index eca0cb35b5..4d678f994e 100644
--- a/hw/nvram/nrf51_nvm.c
+++ b/hw/nvram/nrf51_nvm.c
@@ -24,6 +24,8 @@
#include "exec/address-spaces.h"
#include "hw/arm/nrf51.h"
#include "hw/nvram/nrf51_nvm.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
/*
* FICR Registers Assignments
diff --git a/hw/nvram/spapr_nvram.c b/hw/nvram/spapr_nvram.c
index 09efd886bf..838082b451 100644
--- a/hw/nvram/spapr_nvram.c
+++ b/hw/nvram/spapr_nvram.c
@@ -31,10 +31,14 @@
#include "sysemu/block-backend.h"
#include "sysemu/device_tree.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/nvram/chrp_nvram.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
+#include "hw/qdev-properties.h"
typedef struct SpaprNvram {
SpaprVioDevice sdev;
diff --git a/hw/openrisc/cputimer.c b/hw/openrisc/cputimer.c
index fe95efc41c..93268815d8 100644
--- a/hw/openrisc/cputimer.c
+++ b/hw/openrisc/cputimer.c
@@ -20,7 +20,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#define TIMER_PERIOD 50 /* 50 ns period for 20 MHz timer */
diff --git a/hw/openrisc/openrisc_sim.c b/hw/openrisc/openrisc_sim.c
index b85f0df323..79e70493fc 100644
--- a/hw/openrisc/openrisc_sim.c
+++ b/hw/openrisc/openrisc_sim.c
@@ -22,16 +22,18 @@
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/boards.h"
#include "elf.h"
#include "hw/char/serial.h"
#include "net/net.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "exec/address-spaces.h"
#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#define KERNEL_LOAD_ADDR 0x100
diff --git a/hw/openrisc/pic_cpu.c b/hw/openrisc/pic_cpu.c
index 2f53cfc82e..36f9350830 100644
--- a/hw/openrisc/pic_cpu.c
+++ b/hw/openrisc/pic_cpu.c
@@ -19,7 +19,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "cpu.h"
/* OpenRISC pic handler */
diff --git a/hw/pci-bridge/gen_pcie_root_port.c b/hw/pci-bridge/gen_pcie_root_port.c
index 44acda7cb9..9eaefebca8 100644
--- a/hw/pci-bridge/gen_pcie_root_port.c
+++ b/hw/pci-bridge/gen_pcie_root_port.c
@@ -15,6 +15,8 @@
#include "qemu/module.h"
#include "hw/pci/msix.h"
#include "hw/pci/pcie_port.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#define TYPE_GEN_PCIE_ROOT_PORT "pcie-root-port"
#define GEN_PCIE_ROOT_PORT(obj) \
diff --git a/hw/pci-bridge/i82801b11.c b/hw/pci-bridge/i82801b11.c
index db77a3541b..2b3907655b 100644
--- a/hw/pci-bridge/i82801b11.c
+++ b/hw/pci-bridge/i82801b11.c
@@ -43,6 +43,7 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "hw/i386/ich9.h"
diff --git a/hw/pci-bridge/ioh3420.c b/hw/pci-bridge/ioh3420.c
index 310af04af9..f1e16135a3 100644
--- a/hw/pci-bridge/ioh3420.c
+++ b/hw/pci-bridge/ioh3420.c
@@ -25,6 +25,7 @@
#include "hw/pci/msi.h"
#include "hw/pci/pcie.h"
#include "hw/pci/pcie_port.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#define PCI_DEVICE_ID_IOH_EPORT 0x3420 /* D0:F0 express mode */
diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c
index 5fe96d02b3..cc80cb4898 100644
--- a/hw/pci-bridge/pci_bridge_dev.c
+++ b/hw/pci-bridge/pci_bridge_dev.c
@@ -27,6 +27,7 @@
#include "hw/pci/msi.h"
#include "hw/pci/shpc.h"
#include "hw/pci/slotid_cap.h"
+#include "hw/qdev-properties.h"
#include "exec/memory.h"
#include "hw/pci/pci_bus.h"
#include "hw/hotplug.h"
diff --git a/hw/pci-bridge/pci_expander_bridge.c b/hw/pci-bridge/pci_expander_bridge.c
index aecf3d7ddf..06a7c018d7 100644
--- a/hw/pci-bridge/pci_expander_bridge.c
+++ b/hw/pci-bridge/pci_expander_bridge.c
@@ -15,6 +15,7 @@
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/pci_bridge.h"
#include "qemu/range.h"
#include "qemu/error-report.h"
diff --git a/hw/pci-bridge/pcie_pci_bridge.c b/hw/pci-bridge/pcie_pci_bridge.c
index d0bfa0189a..7679bef6c1 100644
--- a/hw/pci-bridge/pcie_pci_bridge.c
+++ b/hw/pci-bridge/pcie_pci_bridge.c
@@ -16,6 +16,7 @@
#include "hw/pci/msi.h"
#include "hw/pci/shpc.h"
#include "hw/pci/slotid_cap.h"
+#include "hw/qdev-properties.h"
typedef struct PCIEPCIBridge {
/*< private >*/
diff --git a/hw/pci-bridge/pcie_root_port.c b/hw/pci-bridge/pcie_root_port.c
index 1d8a778709..012c2cb12c 100644
--- a/hw/pci-bridge/pcie_root_port.c
+++ b/hw/pci-bridge/pcie_root_port.c
@@ -16,6 +16,7 @@
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/pci/pcie_port.h"
+#include "hw/qdev-properties.h"
static void rp_aer_vector_update(PCIDevice *d)
{
diff --git a/hw/pci-bridge/xio3130_downstream.c b/hw/pci-bridge/xio3130_downstream.c
index 182e164f74..a9f084b863 100644
--- a/hw/pci-bridge/xio3130_downstream.c
+++ b/hw/pci-bridge/xio3130_downstream.c
@@ -24,6 +24,8 @@
#include "hw/pci/msi.h"
#include "hw/pci/pcie.h"
#include "hw/pci/pcie_port.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/pci-bridge/xio3130_upstream.c b/hw/pci-bridge/xio3130_upstream.c
index b8cb31355f..5cd3af4fbc 100644
--- a/hw/pci-bridge/xio3130_upstream.c
+++ b/hw/pci-bridge/xio3130_upstream.c
@@ -24,6 +24,7 @@
#include "hw/pci/msi.h"
#include "hw/pci/pcie.h"
#include "hw/pci/pcie_port.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#define PCI_DEVICE_ID_TI_XIO3130U 0x8232 /* upstream port */
diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c
index dde4437595..ceee463a11 100644
--- a/hw/pci-host/bonito.c
+++ b/hw/pci-host/bonito.c
@@ -39,12 +39,14 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/mips/mips.h"
#include "hw/pci/pci_host.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "exec/address-spaces.h"
//#define DEBUG_BONITO
diff --git a/hw/pci-host/designware.c b/hw/pci-host/designware.c
index 9ae8c0deb7..71e9b0d9b5 100644
--- a/hw/pci-host/designware.c
+++ b/hw/pci-host/designware.c
@@ -25,6 +25,9 @@
#include "hw/pci/pci_bridge.h"
#include "hw/pci/pci_host.h"
#include "hw/pci/pcie_port.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/pci-host/designware.h"
#define DESIGNWARE_PCIE_PORT_LINK_CONTROL 0x710
diff --git a/hw/pci-host/gpex.c b/hw/pci-host/gpex.c
index 629d1a4624..0ca604dc62 100644
--- a/hw/pci-host/gpex.c
+++ b/hw/pci-host/gpex.c
@@ -31,8 +31,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci-host/gpex.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
/****************************************************************************
diff --git a/hw/pci-host/grackle.c b/hw/pci-host/grackle.c
index ed3b3c361f..537273e578 100644
--- a/hw/pci-host/grackle.c
+++ b/hw/pci-host/grackle.c
@@ -26,8 +26,10 @@
#include "qemu/osdep.h"
#include "hw/pci/pci_host.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/pci.h"
#include "hw/intc/heathrow_pic.h"
+#include "hw/irq.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "trace.h"
diff --git a/hw/pci-host/pam.c b/hw/pci-host/pam.c
index aa5ecfd0c2..45c4333cd3 100644
--- a/hw/pci-host/pam.c
+++ b/hw/pci-host/pam.c
@@ -29,7 +29,6 @@
#include "qemu/osdep.h"
#include "qom/object.h"
-#include "sysemu/sysemu.h"
#include "hw/pci-host/pam.h"
void init_pam(DeviceState *dev, MemoryRegion *ram_memory,
diff --git a/hw/pci-host/piix.c b/hw/pci-host/piix.c
index d9c70f7ce6..135c645535 100644
--- a/hw/pci-host/piix.c
+++ b/hw/pci-host/piix.c
@@ -23,17 +23,21 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#include "hw/sysbus.h"
#include "qapi/error.h"
#include "qemu/range.h"
#include "hw/xen/xen.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "hw/pci-host/pam.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "hw/i386/ioapic.h"
#include "qapi/visitor.h"
#include "qemu/error-report.h"
diff --git a/hw/pci-host/ppce500.c b/hw/pci-host/ppce500.c
index 21eaa30a20..8bed8e8941 100644
--- a/hw/pci-host/ppce500.c
+++ b/hw/pci-host/ppce500.c
@@ -15,8 +15,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/e500-ccsr.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
#include "qemu/bswap.h"
diff --git a/hw/pci-host/prep.c b/hw/pci-host/prep.c
index c564f234af..85d7ba9037 100644
--- a/hw/pci-host/prep.c
+++ b/hw/pci-host/prep.c
@@ -27,11 +27,13 @@
#include "qemu-common.h"
#include "qemu/units.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "hw/or-irq.h"
#include "exec/address-spaces.h"
diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c
index 0a010be4cf..158d270b9f 100644
--- a/hw/pci-host/q35.c
+++ b/hw/pci-host/q35.c
@@ -29,8 +29,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci-host/q35.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "qemu/module.h"
diff --git a/hw/pci-host/sabre.c b/hw/pci-host/sabre.c
index 2cec1116af..fae20ee97c 100644
--- a/hw/pci-host/sabre.c
+++ b/hw/pci-host/sabre.c
@@ -28,14 +28,16 @@
#include "hw/sysbus.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/pci_bridge.h"
#include "hw/pci/pci_bus.h"
+#include "hw/irq.h"
#include "hw/pci-bridge/simba.h"
#include "hw/pci-host/sabre.h"
-#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "trace.h"
/*
diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c
index 680fefd066..75bc506965 100644
--- a/hw/pci-host/uninorth.c
+++ b/hw/pci-host/uninorth.c
@@ -23,8 +23,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/mac.h"
+#include "hw/qdev-properties.h"
#include "qemu/module.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
diff --git a/hw/pci-host/versatile.c b/hw/pci-host/versatile.c
index 791b321ea0..b731d0544f 100644
--- a/hw/pci-host/versatile.c
+++ b/hw/pci-host/versatile.c
@@ -9,9 +9,12 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/pci-host/xilinx-pcie.c b/hw/pci-host/xilinx-pcie.c
index 192b697453..17d5024349 100644
--- a/hw/pci-host/xilinx-pcie.c
+++ b/hw/pci-host/xilinx-pcie.c
@@ -22,6 +22,8 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "hw/pci/pci_bridge.h"
+#include "hw/qdev-properties.h"
+#include "hw/irq.h"
#include "hw/pci-host/xilinx-pcie.h"
enum root_cfg_reg {
diff --git a/hw/pci/msix.c b/hw/pci/msix.c
index d39dcf32e8..29187898f2 100644
--- a/hw/pci/msix.c
+++ b/hw/pci/msix.c
@@ -15,11 +15,12 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
#include "hw/pci/pci.h"
#include "hw/xen/xen.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "qemu/range.h"
#include "qapi/error.h"
#include "trace.h"
diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index 8076a80ab3..aa05c2b9b2 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -24,13 +24,17 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bridge.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "net/net.h"
+#include "sysemu/numa.h"
#include "sysemu/sysemu.h"
#include "hw/loader.h"
#include "qemu/error-report.h"
diff --git a/hw/pci/pcie_aer.c b/hw/pci/pcie_aer.c
index 939da0b778..27f9cc56af 100644
--- a/hw/pci/pcie_aer.c
+++ b/hw/pci/pcie_aer.c
@@ -21,6 +21,7 @@
#include "qemu/osdep.h"
#include "sysemu/sysemu.h"
#include "qapi/qmp/qdict.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "hw/pci/pci_bridge.h"
#include "hw/pci/pcie.h"
diff --git a/hw/pci/pcie_host.c b/hw/pci/pcie_host.c
index d6768b8eb6..3534006f99 100644
--- a/hw/pci/pcie_host.c
+++ b/hw/pci/pcie_host.c
@@ -20,7 +20,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/pci/pcie_host.h"
#include "qemu/module.h"
diff --git a/hw/pci/pcie_port.c b/hw/pci/pcie_port.c
index c9c3ba540a..c19a9be592 100644
--- a/hw/pci/pcie_port.c
+++ b/hw/pci/pcie_port.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "hw/pci/pcie_port.h"
+#include "hw/qdev-properties.h"
#include "qemu/module.h"
#include "hw/hotplug.h"
diff --git a/hw/pci/shpc.c b/hw/pci/shpc.c
index 5a10c6e9a5..7f0aa28e44 100644
--- a/hw/pci/shpc.c
+++ b/hw/pci/shpc.c
@@ -4,6 +4,7 @@
#include "qemu/range.h"
#include "qemu/error-report.h"
#include "hw/pci/shpc.h"
+#include "migration/qemu-file-types.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/msi.h"
diff --git a/hw/pcmcia/pcmcia.c b/hw/pcmcia/pcmcia.c
index c16b12db01..03d13e7d67 100644
--- a/hw/pcmcia/pcmcia.c
+++ b/hw/pcmcia/pcmcia.c
@@ -6,7 +6,6 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/pcmcia.h"
static const TypeInfo pcmcia_card_type_info = {
diff --git a/hw/pcmcia/pxa2xx.c b/hw/pcmcia/pxa2xx.c
index 8993b784bb..14e4dfe8b1 100644
--- a/hw/pcmcia/pxa2xx.c
+++ b/hw/pcmcia/pxa2xx.c
@@ -11,7 +11,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "hw/pcmcia.h"
diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index a3eac7f057..91cd4c26f9 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -22,17 +22,19 @@
#include "e500-ccsr.h"
#include "net/net.h"
#include "qemu/config-file.h"
-#include "hw/hw.h"
#include "hw/char/serial.h"
#include "hw/pci/pci.h"
#include "hw/boards.h"
#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "kvm_ppc.h"
#include "sysemu/device_tree.h"
#include "hw/ppc/openpic.h"
#include "hw/ppc/openpic_kvm.h"
#include "hw/ppc/ppc.h"
+#include "hw/qdev-properties.h"
#include "hw/loader.h"
#include "elf.h"
#include "hw/sysbus.h"
@@ -44,6 +46,7 @@
#include "hw/platform-bus.h"
#include "hw/net/fsl_etsec/etsec.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
#define EPAPR_MAGIC (0x45504150)
#define BINARY_DEVICE_TREE_FILE "mpc8544ds.dtb"
diff --git a/hw/ppc/e500plat.c b/hw/ppc/e500plat.c
index 2b82a58592..7078386300 100644
--- a/hw/ppc/e500plat.c
+++ b/hw/ppc/e500plat.c
@@ -13,7 +13,6 @@
#include "qemu/units.h"
#include "e500.h"
#include "hw/net/fsl_etsec/etsec.h"
-#include "hw/boards.h"
#include "sysemu/device_tree.h"
#include "sysemu/kvm.h"
#include "hw/sysbus.h"
diff --git a/hw/ppc/mac.h b/hw/ppc/mac.h
index a741300ac9..6af87d1fa0 100644
--- a/hw/ppc/mac.h
+++ b/hw/ppc/mac.h
@@ -30,7 +30,6 @@
#include "exec/memory.h"
#include "hw/boards.h"
#include "hw/sysbus.h"
-#include "hw/ide/internal.h"
#include "hw/input/adb.h"
#include "hw/misc/mos6522.h"
#include "hw/pci/pci_host.h"
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c
index 09bc6068f3..c5bbcc7433 100644
--- a/hw/ppc/mac_newworld.c
+++ b/hw/ppc/mac_newworld.c
@@ -49,8 +49,8 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/ppc/ppc.h"
+#include "hw/qdev-properties.h"
#include "hw/ppc/mac.h"
#include "hw/input/adb.h"
#include "hw/ppc/mac_dbdma.h"
@@ -68,6 +68,7 @@
#include "elf.h"
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "kvm_ppc.h"
#include "hw/usb.h"
#include "exec/address-spaces.h"
diff --git a/hw/ppc/mac_oldworld.c b/hw/ppc/mac_oldworld.c
index 9ffde5b6f7..0fa680b749 100644
--- a/hw/ppc/mac_oldworld.c
+++ b/hw/ppc/mac_oldworld.c
@@ -28,8 +28,8 @@
#include "qemu-common.h"
#include "qemu/units.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/ppc/ppc.h"
+#include "hw/qdev-properties.h"
#include "mac.h"
#include "hw/input/adb.h"
#include "sysemu/sysemu.h"
@@ -47,6 +47,7 @@
#include "elf.h"
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "kvm_ppc.h"
#include "exec/address-spaces.h"
diff --git a/hw/ppc/mpc8544_guts.c b/hw/ppc/mpc8544_guts.c
index 2b7cc14060..b96ea36f98 100644
--- a/hw/ppc/mpc8544_guts.c
+++ b/hw/ppc/mpc8544_guts.c
@@ -19,9 +19,8 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#define MPC8544_GUTS_MMIO_SIZE 0x1000
diff --git a/hw/ppc/mpc8544ds.c b/hw/ppc/mpc8544ds.c
index 6a4657c3cd..c2c5e11fa1 100644
--- a/hw/ppc/mpc8544ds.c
+++ b/hw/ppc/mpc8544ds.c
@@ -11,7 +11,6 @@
#include "qemu/osdep.h"
#include "e500.h"
-#include "hw/boards.h"
#include "sysemu/device_tree.h"
#include "hw/ppc/openpic.h"
#include "qemu/error-report.h"
diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
index bd4531c822..d95086fbbd 100644
--- a/hw/ppc/pnv.c
+++ b/hw/ppc/pnv.c
@@ -23,9 +23,10 @@
#include "qapi/error.h"
#include "sysemu/sysemu.h"
#include "sysemu/numa.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/cpus.h"
#include "sysemu/device_tree.h"
-#include "hw/hw.h"
#include "target/ppc/cpu.h"
#include "qemu/log.h"
#include "hw/ppc/fdt.h"
@@ -41,9 +42,11 @@
#include "target/ppc/mmu-hash64.h"
#include "hw/ppc/xics.h"
+#include "hw/qdev-properties.h"
#include "hw/ppc/pnv_xscom.h"
#include "hw/isa/isa.h"
+#include "hw/boards.h"
#include "hw/char/serial.h"
#include "hw/timer/mc146818rtc.h"
diff --git a/hw/ppc/pnv_bmc.c b/hw/ppc/pnv_bmc.c
index 4b76d34f0a..e5eb6e5a70 100644
--- a/hw/ppc/pnv_bmc.c
+++ b/hw/ppc/pnv_bmc.c
@@ -17,8 +17,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
#include "target/ppc/cpu.h"
#include "qemu/log.h"
#include "hw/ipmi/ipmi.h"
diff --git a/hw/ppc/pnv_core.c b/hw/ppc/pnv_core.c
index c6411ecc1d..b1a7489e7a 100644
--- a/hw/ppc/pnv_core.c
+++ b/hw/ppc/pnv_core.c
@@ -18,7 +18,7 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
#include "qapi/error.h"
#include "qemu/log.h"
#include "qemu/module.h"
@@ -28,6 +28,7 @@
#include "hw/ppc/pnv_core.h"
#include "hw/ppc/pnv_xscom.h"
#include "hw/ppc/xics.h"
+#include "hw/qdev-properties.h"
static const char *pnv_core_cpu_typename(PnvCore *pc)
{
diff --git a/hw/ppc/pnv_lpc.c b/hw/ppc/pnv_lpc.c
index a9f150c3ca..9466d4a1be 100644
--- a/hw/ppc/pnv_lpc.c
+++ b/hw/ppc/pnv_lpc.c
@@ -18,11 +18,11 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "target/ppc/cpu.h"
#include "qapi/error.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
#include "hw/ppc/pnv.h"
diff --git a/hw/ppc/pnv_occ.c b/hw/ppc/pnv_occ.c
index 636f91f311..8bead2c930 100644
--- a/hw/ppc/pnv_occ.c
+++ b/hw/ppc/pnv_occ.c
@@ -17,8 +17,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
#include "target/ppc/cpu.h"
#include "qapi/error.h"
#include "qemu/log.h"
diff --git a/hw/ppc/pnv_psi.c b/hw/ppc/pnv_psi.c
index d7b6f5d75b..88ba8e7b9b 100644
--- a/hw/ppc/pnv_psi.c
+++ b/hw/ppc/pnv_psi.c
@@ -18,10 +18,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "target/ppc/cpu.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "sysemu/reset.h"
#include "qapi/error.h"
#include "monitor/monitor.h"
@@ -30,6 +31,7 @@
#include "hw/ppc/fdt.h"
#include "hw/ppc/pnv.h"
#include "hw/ppc/pnv_xscom.h"
+#include "hw/qdev-properties.h"
#include "hw/ppc/pnv_psi.h"
#include <libfdt.h>
diff --git a/hw/ppc/pnv_xscom.c b/hw/ppc/pnv_xscom.c
index 2b81c75f56..0e31c5786b 100644
--- a/hw/ppc/pnv_xscom.c
+++ b/hw/ppc/pnv_xscom.c
@@ -18,7 +18,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "sysemu/hw_accel.h"
diff --git a/hw/ppc/ppc.c b/hw/ppc/ppc.c
index a9e508c496..7963feeab4 100644
--- a/hw/ppc/ppc.c
+++ b/hw/ppc/ppc.c
@@ -21,18 +21,21 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/ppc.h"
#include "hw/ppc/ppc_e500.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "sysemu/cpus.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "kvm_ppc.h"
+#include "migration/vmstate.h"
#include "trace.h"
//#define PPC_DEBUG_IRQ
diff --git a/hw/ppc/ppc405_boards.c b/hw/ppc/ppc405_boards.c
index 13318a9faf..388cae0b43 100644
--- a/hw/ppc/ppc405_boards.c
+++ b/hw/ppc/ppc405_boards.c
@@ -21,18 +21,19 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/ppc/ppc.h"
#include "ppc405.h"
#include "hw/timer/m48t59.h"
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "sysemu/block-backend.h"
#include "hw/boards.h"
#include "qemu/log.h"
diff --git a/hw/ppc/ppc405_uc.c b/hw/ppc/ppc405_uc.c
index edb6b2d190..381720aced 100644
--- a/hw/ppc/ppc405_uc.c
+++ b/hw/ppc/ppc405_uc.c
@@ -21,17 +21,18 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/ppc/ppc.h"
-#include "hw/boards.h"
#include "hw/i2c/ppc4xx_i2c.h"
+#include "hw/irq.h"
#include "ppc405.h"
#include "hw/char/serial.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "qemu/log.h"
#include "exec/address-spaces.h"
diff --git a/hw/ppc/ppc440_bamboo.c b/hw/ppc/ppc440_bamboo.c
index b4da099e3e..4d95c0f8a8 100644
--- a/hw/ppc/ppc440_bamboo.c
+++ b/hw/ppc/ppc440_bamboo.c
@@ -17,7 +17,6 @@
#include "qemu-common.h"
#include "qemu/error-report.h"
#include "net/net.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/boards.h"
#include "sysemu/kvm.h"
@@ -31,6 +30,7 @@
#include "ppc405.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "hw/sysbus.h"
#define BINARY_DEVICE_TREE_FILE "bamboo.dtb"
diff --git a/hw/ppc/ppc440_pcix.c b/hw/ppc/ppc440_pcix.c
index ca54631f9d..2ee2d4f4fc 100644
--- a/hw/ppc/ppc440_pcix.c
+++ b/hw/ppc/ppc440_pcix.c
@@ -23,7 +23,7 @@
#include "qemu/error-report.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/ppc.h"
#include "hw/ppc/ppc4xx.h"
#include "hw/pci/pci.h"
diff --git a/hw/ppc/ppc440_uc.c b/hw/ppc/ppc440_uc.c
index 5c1a53d6e7..95475c9c5f 100644
--- a/hw/ppc/ppc440_uc.c
+++ b/hw/ppc/ppc440_uc.c
@@ -13,14 +13,17 @@
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "exec/address-spaces.h"
#include "exec/memory.h"
#include "hw/ppc/ppc.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/pci.h"
#include "sysemu/block-backend.h"
+#include "sysemu/reset.h"
#include "ppc440.h"
/*****************************************************************************/
diff --git a/hw/ppc/ppc4xx_devs.c b/hw/ppc/ppc4xx_devs.c
index fdfeb67e65..c2e50138aa 100644
--- a/hw/ppc/ppc4xx_devs.c
+++ b/hw/ppc/ppc4xx_devs.c
@@ -21,10 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
+#include "sysemu/reset.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/ppc.h"
#include "hw/ppc/ppc4xx.h"
#include "hw/boards.h"
diff --git a/hw/ppc/ppc4xx_pci.c b/hw/ppc/ppc4xx_pci.c
index e7cf8d50a5..3ea47df71f 100644
--- a/hw/ppc/ppc4xx_pci.c
+++ b/hw/ppc/ppc4xx_pci.c
@@ -20,10 +20,12 @@
* 4xx SoCs, such as the 440EP. */
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ppc/ppc.h"
#include "hw/ppc/ppc4xx.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
+#include "sysemu/reset.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
#include "exec/address-spaces.h"
diff --git a/hw/ppc/ppc_booke.c b/hw/ppc/ppc_booke.c
index 18d1457581..652a21b806 100644
--- a/hw/ppc/ppc_booke.c
+++ b/hw/ppc/ppc_booke.c
@@ -21,12 +21,13 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/ppc/ppc.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/log.h"
#include "hw/loader.h"
#include "kvm_ppc.h"
diff --git a/hw/ppc/ppce500_spin.c b/hw/ppc/ppce500_spin.c
index 0060fcb43f..66c1065db2 100644
--- a/hw/ppc/ppce500_spin.c
+++ b/hw/ppc/ppce500_spin.c
@@ -33,7 +33,6 @@
#include "hw/hw.h"
#include "hw/sysbus.h"
#include "sysemu/hw_accel.h"
-#include "sysemu/sysemu.h"
#include "e500.h"
#define MAX_CPUS 32
diff --git a/hw/ppc/prep.c b/hw/ppc/prep.c
index ab3c1df1fc..4f3c6bf190 100644
--- a/hw/ppc/prep.c
+++ b/hw/ppc/prep.c
@@ -22,9 +22,9 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/timer/m48t59.h"
#include "hw/char/serial.h"
#include "hw/block/fdc.h"
@@ -38,6 +38,7 @@
#include "qemu/error-report.h"
#include "qemu/log.h"
#include "hw/ide.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "hw/timer/mc146818rtc.h"
#include "hw/isa/pc87312.h"
@@ -45,6 +46,7 @@
#include "sysemu/arch_init.h"
#include "sysemu/kvm.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "exec/address-spaces.h"
#include "trace.h"
#include "elf.h"
diff --git a/hw/ppc/prep_systemio.c b/hw/ppc/prep_systemio.c
index df7603b986..86e83e278f 100644
--- a/hw/ppc/prep_systemio.c
+++ b/hw/ppc/prep_systemio.c
@@ -23,11 +23,14 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "exec/address-spaces.h"
#include "qemu/error-report.h" /* for error_report() */
#include "qemu/module.h"
-#include "sysemu/sysemu.h" /* for vm_stop() */
+#include "sysemu/runstate.h"
#include "cpu.h"
#include "trace.h"
diff --git a/hw/ppc/rs6000_mc.c b/hw/ppc/rs6000_mc.c
index 45cb95e08a..df7c0006fc 100644
--- a/hw/ppc/rs6000_mc.c
+++ b/hw/ppc/rs6000_mc.c
@@ -20,6 +20,8 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "exec/address-spaces.h"
#include "hw/boards.h"
#include "qapi/error.h"
diff --git a/hw/ppc/sam460ex.c b/hw/ppc/sam460ex.c
index fbcddc5b00..437e214210 100644
--- a/hw/ppc/sam460ex.c
+++ b/hw/ppc/sam460ex.c
@@ -16,7 +16,6 @@
#include "qemu-common.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "sysemu/kvm.h"
#include "kvm_ppc.h"
@@ -31,12 +30,14 @@
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "hw/sysbus.h"
#include "hw/char/serial.h"
#include "hw/i2c/ppc4xx_i2c.h"
#include "hw/i2c/smbus_eeprom.h"
#include "hw/usb/hcd-ehci.h"
#include "hw/ppc/fdt.h"
+#include "hw/qdev-properties.h"
#include <libfdt.h>
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 12ed4b065c..e09c67eb75 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -29,9 +29,11 @@
#include "qapi/error.h"
#include "qapi/visitor.h"
#include "sysemu/sysemu.h"
+#include "sysemu/hostmem.h"
#include "sysemu/numa.h"
#include "sysemu/qtest.h"
-#include "hw/hw.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/log.h"
#include "hw/fw-path-provider.h"
#include "elf.h"
@@ -41,6 +43,7 @@
#include "sysemu/hw_accel.h"
#include "kvm_ppc.h"
#include "migration/misc.h"
+#include "migration/qemu-file-types.h"
#include "migration/global_state.h"
#include "migration/register.h"
#include "mmu-hash64.h"
@@ -55,6 +58,7 @@
#include "hw/ppc/fdt.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
+#include "hw/qdev-properties.h"
#include "hw/pci-host/spapr.h"
#include "hw/pci/msi.h"
diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
index bbb001f84a..7830d66d77 100644
--- a/hw/ppc/spapr_caps.c
+++ b/hw/ppc/spapr_caps.c
@@ -32,6 +32,7 @@
#include "target/ppc/mmu-hash64.h"
#include "cpu-models.h"
#include "kvm_ppc.h"
+#include "migration/vmstate.h"
#include "sysemu/qtest.h"
#include "sysemu/tcg.h"
diff --git a/hw/ppc/spapr_cpu_core.c b/hw/ppc/spapr_cpu_core.c
index 5621fb9a3d..bf47fbdf6f 100644
--- a/hw/ppc/spapr_cpu_core.c
+++ b/hw/ppc/spapr_cpu_core.c
@@ -6,12 +6,14 @@
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*/
+
#include "qemu/osdep.h"
#include "hw/cpu/core.h"
#include "hw/ppc/spapr_cpu_core.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "target/ppc/cpu.h"
#include "hw/ppc/spapr.h"
-#include "hw/boards.h"
#include "qapi/error.h"
#include "sysemu/cpus.h"
#include "sysemu/kvm.h"
@@ -19,6 +21,7 @@
#include "hw/ppc/ppc.h"
#include "target/ppc/mmu-hash64.h"
#include "sysemu/numa.h"
+#include "sysemu/reset.h"
#include "sysemu/hw_accel.h"
#include "qemu/error-report.h"
diff --git a/hw/ppc/spapr_drc.c b/hw/ppc/spapr_drc.c
index bacadfcac5..09255f4951 100644
--- a/hw/ppc/spapr_drc.c
+++ b/hw/ppc/spapr_drc.c
@@ -17,12 +17,13 @@
#include "qemu/cutils.h"
#include "hw/ppc/spapr_drc.h"
#include "qom/object.h"
-#include "hw/qdev.h"
+#include "migration/vmstate.h"
#include "qapi/visitor.h"
#include "qemu/error-report.h"
#include "hw/ppc/spapr.h" /* for RTAS return codes */
#include "hw/pci-host/spapr.h" /* spapr_phb_remove_pci_device_cb callback */
#include "sysemu/device_tree.h"
+#include "sysemu/reset.h"
#include "trace.h"
#define DRC_CONTAINER_PATH "/dr-connector"
diff --git a/hw/ppc/spapr_events.c b/hw/ppc/spapr_events.c
index ae0f093f59..163a6cd25b 100644
--- a/hw/ppc/spapr_events.c
+++ b/hw/ppc/spapr_events.c
@@ -24,17 +24,18 @@
* THE SOFTWARE.
*
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "sysemu/sysemu.h"
-#include "hw/qdev.h"
#include "sysemu/device_tree.h"
+#include "sysemu/runstate.h"
#include "hw/ppc/fdt.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
#include "hw/pci/pci.h"
+#include "hw/irq.h"
#include "hw/pci-host/spapr.h"
#include "hw/ppc/spapr_drc.h"
#include "qemu/help_option.h"
diff --git a/hw/ppc/spapr_hcall.c b/hw/ppc/spapr_hcall.c
index 6808d4cda8..225c60a9fc 100644
--- a/hw/ppc/spapr_hcall.c
+++ b/hw/ppc/spapr_hcall.c
@@ -1,8 +1,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "sysemu/hw_accel.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/error-report.h"
#include "cpu.h"
diff --git a/hw/ppc/spapr_iommu.c b/hw/ppc/spapr_iommu.c
index bd3d0256a6..ce85f8ac63 100644
--- a/hw/ppc/spapr_iommu.c
+++ b/hw/ppc/spapr_iommu.c
@@ -19,12 +19,11 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
-#include "hw/hw.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "sysemu/kvm.h"
-#include "hw/qdev.h"
#include "kvm_ppc.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "exec/address-spaces.h"
#include "trace.h"
diff --git a/hw/ppc/spapr_irq.c b/hw/ppc/spapr_irq.c
index d07aed8ca9..2f87fe08f3 100644
--- a/hw/ppc/spapr_irq.c
+++ b/hw/ppc/spapr_irq.c
@@ -11,11 +11,13 @@
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
+#include "hw/irq.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_cpu_core.h"
#include "hw/ppc/spapr_xive.h"
#include "hw/ppc/xics.h"
#include "hw/ppc/xics_spapr.h"
+#include "hw/qdev-properties.h"
#include "cpu-models.h"
#include "sysemu/kvm.h"
diff --git a/hw/ppc/spapr_ovec.c b/hw/ppc/spapr_ovec.c
index a65b7c7da9..811fadf143 100644
--- a/hw/ppc/spapr_ovec.c
+++ b/hw/ppc/spapr_ovec.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/ppc/spapr_ovec.h"
+#include "migration/vmstate.h"
#include "qemu/bitmap.h"
#include "exec/address-spaces.h"
#include "qemu/error-report.h"
diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c
index 9003fe9010..bf31fd854c 100644
--- a/hw/ppc/spapr_pci.c
+++ b/hw/ppc/spapr_pci.c
@@ -26,8 +26,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
@@ -46,6 +47,7 @@
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_ids.h"
#include "hw/ppc/spapr_drc.h"
+#include "hw/qdev-properties.h"
#include "sysemu/device_tree.h"
#include "sysemu/kvm.h"
#include "sysemu/hostmem.h"
diff --git a/hw/ppc/spapr_rng.c b/hw/ppc/spapr_rng.c
index 0e1c7ebcf8..954e4aec4b 100644
--- a/hw/ppc/spapr_rng.c
+++ b/hw/ppc/spapr_rng.c
@@ -21,11 +21,12 @@
#include "qapi/error.h"
#include "cpu.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "sysemu/device_tree.h"
#include "sysemu/rng.h"
#include "hw/ppc/spapr.h"
+#include "hw/qdev-properties.h"
#include "kvm_ppc.h"
#define SPAPR_RNG(obj) \
diff --git a/hw/ppc/spapr_rtas.c b/hw/ppc/spapr_rtas.c
index a618a2ac0f..d3f9a69a51 100644
--- a/hw/ppc/spapr_rtas.c
+++ b/hw/ppc/spapr_rtas.c
@@ -24,15 +24,16 @@
* THE SOFTWARE.
*
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "sysemu/sysemu.h"
-#include "hw/qdev.h"
#include "sysemu/device_tree.h"
#include "sysemu/cpus.h"
#include "sysemu/hw_accel.h"
+#include "sysemu/runstate.h"
#include "kvm_ppc.h"
#include "hw/ppc/spapr.h"
diff --git a/hw/ppc/spapr_rtc.c b/hw/ppc/spapr_rtc.c
index 6cf0113b34..42ff72c269 100644
--- a/hw/ppc/spapr_rtc.c
+++ b/hw/ppc/spapr_rtc.c
@@ -31,6 +31,7 @@
#include "qemu/timer.h"
#include "sysemu/sysemu.h"
#include "hw/ppc/spapr.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/qapi-events-misc-target.h"
#include "qemu/cutils.h"
diff --git a/hw/ppc/spapr_vio.c b/hw/ppc/spapr_vio.c
index 583c13deda..0803649658 100644
--- a/hw/ppc/spapr_vio.c
+++ b/hw/ppc/spapr_vio.c
@@ -23,16 +23,15 @@
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
-#include "hw/boards.h"
#include "hw/loader.h"
#include "elf.h"
#include "hw/sysbus.h"
#include "sysemu/kvm.h"
#include "sysemu/device_tree.h"
#include "kvm_ppc.h"
+#include "migration/vmstate.h"
#include "sysemu/qtest.h"
#include "hw/ppc/spapr.h"
diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c
index 834053a7d2..68625522d8 100644
--- a/hw/ppc/virtex_ml507.c
+++ b/hw/ppc/virtex_ml507.c
@@ -27,11 +27,11 @@
#include "qemu/units.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/char/serial.h"
#include "hw/block/flash.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "hw/boards.h"
#include "sysemu/device_tree.h"
#include "hw/loader.h"
@@ -43,6 +43,7 @@
#include "hw/ppc/ppc.h"
#include "hw/ppc/ppc4xx.h"
+#include "hw/qdev-properties.h"
#include "ppc405.h"
#define EPAPR_MAGIC (0x45504150)
diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c
index 8d70c0d23d..692125ac26 100644
--- a/hw/rdma/vmw/pvrdma_cmd.c
+++ b/hw/rdma/vmw/pvrdma_cmd.c
@@ -15,7 +15,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_ids.h"
diff --git a/hw/rdma/vmw/pvrdma_main.c b/hw/rdma/vmw/pvrdma_main.c
index adcf79cd63..3e36e13013 100644
--- a/hw/rdma/vmw/pvrdma_main.c
+++ b/hw/rdma/vmw/pvrdma_main.c
@@ -16,16 +16,13 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_ids.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
-#include "hw/qdev-core.h"
#include "hw/qdev-properties.h"
#include "cpu.h"
#include "trace.h"
-#include "sysemu/sysemu.h"
#include "monitor/monitor.h"
#include "hw/rdma/rdma.h"
@@ -36,6 +33,7 @@
#include <infiniband/verbs.h>
#include "pvrdma.h"
#include "standard-headers/rdma/vmw_pvrdma-abi.h"
+#include "sysemu/runstate.h"
#include "standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h"
#include "pvrdma_qp_ops.h"
diff --git a/hw/riscv/boot.c b/hw/riscv/boot.c
index 6b7d322e85..4c63b5cf8a 100644
--- a/hw/riscv/boot.c
+++ b/hw/riscv/boot.c
@@ -22,9 +22,9 @@
#include "qemu/units.h"
#include "qemu/error-report.h"
#include "exec/cpu-defs.h"
+#include "hw/boards.h"
#include "hw/loader.h"
#include "hw/riscv/boot.h"
-#include "hw/boards.h"
#include "elf.h"
#include "sysemu/qtest.h"
diff --git a/hw/riscv/riscv_hart.c b/hw/riscv/riscv_hart.c
index ca69a1bcd8..d0f3199968 100644
--- a/hw/riscv/riscv_hart.c
+++ b/hw/riscv/riscv_hart.c
@@ -21,8 +21,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
+#include "sysemu/reset.h"
#include "hw/sysbus.h"
#include "target/riscv/cpu.h"
+#include "hw/qdev-properties.h"
#include "hw/riscv/riscv_hart.h"
static Property riscv_harts_props[] = {
diff --git a/hw/riscv/sifive_clint.c b/hw/riscv/sifive_clint.c
index 591d70deb3..e5a8f75cee 100644
--- a/hw/riscv/sifive_clint.c
+++ b/hw/riscv/sifive_clint.c
@@ -24,6 +24,7 @@
#include "qemu/module.h"
#include "hw/sysbus.h"
#include "target/riscv/cpu.h"
+#include "hw/qdev-properties.h"
#include "hw/riscv/sifive_clint.h"
#include "qemu/timer.h"
diff --git a/hw/riscv/sifive_e.c b/hw/riscv/sifive_e.c
index 2a499d8ed2..792d75a1a3 100644
--- a/hw/riscv/sifive_e.c
+++ b/hw/riscv/sifive_e.c
@@ -32,7 +32,6 @@
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "hw/sysbus.h"
@@ -47,6 +46,7 @@
#include "hw/riscv/boot.h"
#include "chardev/char.h"
#include "sysemu/arch_init.h"
+#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
static const struct MemmapEntry {
diff --git a/hw/riscv/sifive_gpio.c b/hw/riscv/sifive_gpio.c
index 06bd8112d7..5c7c596e6b 100644
--- a/hw/riscv/sifive_gpio.c
+++ b/hw/riscv/sifive_gpio.c
@@ -13,7 +13,9 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
+#include "hw/irq.h"
#include "hw/riscv/sifive_gpio.h"
+#include "migration/vmstate.h"
#include "trace.h"
static void update_output_irq(SIFIVEGPIOState *s)
diff --git a/hw/riscv/sifive_plic.c b/hw/riscv/sifive_plic.c
index 0950e89e15..64a1a10380 100644
--- a/hw/riscv/sifive_plic.c
+++ b/hw/riscv/sifive_plic.c
@@ -25,6 +25,7 @@
#include "hw/sysbus.h"
#include "hw/pci/msi.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "target/riscv/cpu.h"
#include "sysemu/sysemu.h"
#include "hw/riscv/sifive_plic.h"
diff --git a/hw/riscv/sifive_prci.c b/hw/riscv/sifive_prci.c
index f406682c91..9837b6166f 100644
--- a/hw/riscv/sifive_prci.c
+++ b/hw/riscv/sifive_prci.c
@@ -19,9 +19,11 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "target/riscv/cpu.h"
+#include "hw/hw.h"
#include "hw/riscv/sifive_prci.h"
static uint64_t sifive_prci_read(void *opaque, hwaddr addr, unsigned int size)
diff --git a/hw/riscv/sifive_test.c b/hw/riscv/sifive_test.c
index 24a04d7b36..afbb3aaf34 100644
--- a/hw/riscv/sifive_test.c
+++ b/hw/riscv/sifive_test.c
@@ -19,9 +19,11 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "target/riscv/cpu.h"
+#include "hw/hw.h"
#include "hw/riscv/sifive_test.h"
static uint64_t sifive_test_read(void *opaque, hwaddr addr, unsigned int size)
diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c
index 71b8083c05..9910fa6708 100644
--- a/hw/riscv/sifive_u.c
+++ b/hw/riscv/sifive_u.c
@@ -29,7 +29,6 @@
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "hw/sysbus.h"
@@ -45,6 +44,7 @@
#include "chardev/char.h"
#include "sysemu/arch_init.h"
#include "sysemu/device_tree.h"
+#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include <libfdt.h>
diff --git a/hw/riscv/sifive_uart.c b/hw/riscv/sifive_uart.c
index 3b3f94f51d..9de42b1680 100644
--- a/hw/riscv/sifive_uart.c
+++ b/hw/riscv/sifive_uart.c
@@ -22,6 +22,8 @@
#include "chardev/char.h"
#include "chardev/char-fe.h"
#include "target/riscv/cpu.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/riscv/sifive_uart.h"
/*
diff --git a/hw/riscv/spike.c b/hw/riscv/spike.c
index 2991b341a2..7c04bd554f 100644
--- a/hw/riscv/spike.c
+++ b/hw/riscv/spike.c
@@ -27,7 +27,6 @@
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "hw/sysbus.h"
@@ -41,6 +40,7 @@
#include "sysemu/arch_init.h"
#include "sysemu/device_tree.h"
#include "sysemu/qtest.h"
+#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include <libfdt.h>
diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
index 25faf3b417..9bced28486 100644
--- a/hw/riscv/virt.c
+++ b/hw/riscv/virt.c
@@ -23,7 +23,6 @@
#include "qemu/log.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "hw/sysbus.h"
@@ -38,6 +37,7 @@
#include "chardev/char.h"
#include "sysemu/arch_init.h"
#include "sysemu/device_tree.h"
+#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "hw/pci/pci.h"
#include "hw/pci-host/gpex.h"
diff --git a/hw/s390x/3270-ccw.c b/hw/s390x/3270-ccw.c
index 14882242c3..c19a75b9b7 100644
--- a/hw/s390x/3270-ccw.c
+++ b/hw/s390x/3270-ccw.c
@@ -9,12 +9,14 @@
* your option) any later version. See the COPYING file in the top-level
* directory.
*/
+
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "cpu.h"
#include "hw/s390x/css.h"
#include "hw/s390x/css-bridge.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/3270-ccw.h"
/* Handle READ ccw commands from guest */
diff --git a/hw/s390x/ap-device.c b/hw/s390x/ap-device.c
index f5ac8db968..fc0b41e937 100644
--- a/hw/s390x/ap-device.c
+++ b/hw/s390x/ap-device.c
@@ -10,7 +10,6 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/qdev.h"
#include "hw/s390x/ap-device.h"
static void ap_class_init(ObjectClass *klass, void *data)
diff --git a/hw/s390x/ccw-device.c b/hw/s390x/ccw-device.c
index 24f17bb6ca..4d222ad202 100644
--- a/hw/s390x/ccw-device.c
+++ b/hw/s390x/ccw-device.c
@@ -11,6 +11,7 @@
#include "qemu/osdep.h"
#include "ccw-device.h"
+#include "hw/qdev-properties.h"
#include "qemu/module.h"
static void ccw_device_refill_ids(CcwDevice *dev)
diff --git a/hw/s390x/css-bridge.c b/hw/s390x/css-bridge.c
index 4e9ff481e8..15a8ed96de 100644
--- a/hw/s390x/css-bridge.c
+++ b/hw/s390x/css-bridge.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/hotplug.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "qemu/bitops.h"
#include "qemu/module.h"
diff --git a/hw/s390x/css.c b/hw/s390x/css.c
index b92395f165..844caab408 100644
--- a/hw/s390x/css.c
+++ b/hw/s390x/css.c
@@ -12,12 +12,12 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
-#include "hw/qdev.h"
#include "qemu/bitops.h"
#include "qemu/error-report.h"
#include "exec/address-spaces.h"
#include "cpu.h"
#include "hw/s390x/ioinst.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/css.h"
#include "trace.h"
#include "hw/s390x/s390_flic.h"
diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
index 61f3b74714..797ecbb7a9 100644
--- a/hw/s390x/event-facility.c
+++ b/hw/s390x/event-facility.c
@@ -18,9 +18,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "hw/s390x/sclp.h"
+#include "migration/vmstate.h"
#include "hw/s390x/event-facility.h"
typedef struct SCLPEventsBus {
diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c
index 60bd081d3e..ca544d64c5 100644
--- a/hw/s390x/ipl.c
+++ b/hw/s390x/ipl.c
@@ -14,11 +14,14 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qapi/error.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#include "cpu.h"
#include "elf.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "hw/boards.h"
#include "hw/s390x/virtio-ccw.h"
#include "hw/s390x/vfio-ccw.h"
diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h
index b3a07a12d8..d4813105db 100644
--- a/hw/s390x/ipl.h
+++ b/hw/s390x/ipl.h
@@ -12,8 +12,8 @@
#ifndef HW_S390_IPL_H
#define HW_S390_IPL_H
-#include "hw/qdev.h"
#include "cpu.h"
+#include "hw/qdev-core.h"
struct IplBlockCcw {
uint8_t reserved0[85];
diff --git a/hw/s390x/s390-ccw.c b/hw/s390x/s390-ccw.c
index 22c6878b84..0c5a5b60bd 100644
--- a/hw/s390x/s390-ccw.c
+++ b/hw/s390x/s390-ccw.c
@@ -19,6 +19,7 @@
#include "hw/s390x/css.h"
#include "hw/s390x/css-bridge.h"
#include "hw/s390x/s390-ccw.h"
+#include "sysemu/sysemu.h"
IOInstEnding s390_ccw_cmd_request(SubchDev *sch)
{
diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
index 2c6e084e2c..963a41c7f5 100644
--- a/hw/s390x/s390-pci-bus.c
+++ b/hw/s390x/s390-pci-bus.c
@@ -18,6 +18,7 @@
#include "s390-pci-bus.h"
#include "s390-pci-inst.h"
#include "hw/pci/pci_bus.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/pci_bridge.h"
#include "hw/pci/msi.h"
#include "qemu/error-report.h"
diff --git a/hw/s390x/s390-skeys.c b/hw/s390x/s390-skeys.c
index e5bd92c0c7..d4807f7777 100644
--- a/hw/s390x/s390-skeys.c
+++ b/hw/s390x/s390-skeys.c
@@ -18,6 +18,7 @@
#include "qapi/qmp/qdict.h"
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
+#include "migration/qemu-file-types.h"
#include "migration/register.h"
#define S390_SKEYS_BUFFER_SIZE (128 * KiB) /* Room for 128k storage keys */
diff --git a/hw/s390x/s390-stattrib.c b/hw/s390x/s390-stattrib.c
index 766f2015a4..eda5ca3bb6 100644
--- a/hw/s390x/s390-stattrib.c
+++ b/hw/s390x/s390-stattrib.c
@@ -11,7 +11,6 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/boards.h"
#include "cpu.h"
#include "migration/qemu-file.h"
#include "migration/register.h"
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 5b6a9a4e55..434d933ec9 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -27,6 +27,7 @@
#include "qemu/error-report.h"
#include "qemu/option.h"
#include "s390-pci-bus.h"
+#include "sysemu/reset.h"
#include "hw/s390x/storage-keys.h"
#include "hw/s390x/storage-attributes.h"
#include "hw/s390x/event-facility.h"
@@ -37,7 +38,9 @@
#include "migration/register.h"
#include "cpu_models.h"
#include "hw/nmi.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/tod.h"
+#include "sysemu/sysemu.h"
S390CPU *s390_cpu_addr2state(uint16_t cpu_addr)
{
diff --git a/hw/s390x/sclpcpu.c b/hw/s390x/sclpcpu.c
index a4aab7df51..62806d3273 100644
--- a/hw/s390x/sclpcpu.c
+++ b/hw/s390x/sclpcpu.c
@@ -14,7 +14,6 @@
*/
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "hw/s390x/sclp.h"
#include "qemu/module.h"
#include "hw/s390x/event-facility.h"
diff --git a/hw/s390x/sclpquiesce.c b/hw/s390x/sclpquiesce.c
index 4f73471537..ce07b16884 100644
--- a/hw/s390x/sclpquiesce.c
+++ b/hw/s390x/sclpquiesce.c
@@ -13,10 +13,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
-#include "sysemu/sysemu.h"
#include "hw/s390x/sclp.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "hw/s390x/event-facility.h"
typedef struct SignalQuiesce {
diff --git a/hw/s390x/tod-kvm.c b/hw/s390x/tod-kvm.c
index bebe4744af..6e21d83181 100644
--- a/hw/s390x/tod-kvm.c
+++ b/hw/s390x/tod-kvm.c
@@ -11,7 +11,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "hw/s390x/tod.h"
#include "kvm_s390x.h"
diff --git a/hw/s390x/tod.c b/hw/s390x/tod.c
index a9fca8eb0b..1bf0875afa 100644
--- a/hw/s390x/tod.c
+++ b/hw/s390x/tod.c
@@ -14,6 +14,7 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "sysemu/kvm.h"
+#include "migration/qemu-file-types.h"
#include "migration/register.h"
void s390_init_tod(void)
diff --git a/hw/s390x/vhost-vsock-ccw.c b/hw/s390x/vhost-vsock-ccw.c
index 076f733390..1835812bd1 100644
--- a/hw/s390x/vhost-vsock-ccw.c
+++ b/hw/s390x/vhost-vsock-ccw.c
@@ -7,6 +7,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-9p.c b/hw/s390x/virtio-ccw-9p.c
index 67b2c537cc..5453a964d2 100644
--- a/hw/s390x/virtio-ccw-9p.c
+++ b/hw/s390x/virtio-ccw-9p.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-balloon.c b/hw/s390x/virtio-ccw-balloon.c
index 35e43e89fb..7088612f6b 100644
--- a/hw/s390x/virtio-ccw-balloon.c
+++ b/hw/s390x/virtio-ccw-balloon.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-blk.c b/hw/s390x/virtio-ccw-blk.c
index 83636cb6d7..1512af8974 100644
--- a/hw/s390x/virtio-ccw-blk.c
+++ b/hw/s390x/virtio-ccw-blk.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-crypto.c b/hw/s390x/virtio-ccw-crypto.c
index 4569fe0649..086b397ad2 100644
--- a/hw/s390x/virtio-ccw-crypto.c
+++ b/hw/s390x/virtio-ccw-crypto.c
@@ -9,6 +9,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-gpu.c b/hw/s390x/virtio-ccw-gpu.c
index 10ee4b86eb..be46ca7a96 100644
--- a/hw/s390x/virtio-ccw-gpu.c
+++ b/hw/s390x/virtio-ccw-gpu.c
@@ -9,6 +9,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-input.c b/hw/s390x/virtio-ccw-input.c
index 075bb094ee..370b776790 100644
--- a/hw/s390x/virtio-ccw-input.c
+++ b/hw/s390x/virtio-ccw-input.c
@@ -9,6 +9,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-net.c b/hw/s390x/virtio-ccw-net.c
index 8ff184265e..12c03d73c4 100644
--- a/hw/s390x/virtio-ccw-net.c
+++ b/hw/s390x/virtio-ccw-net.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-rng.c b/hw/s390x/virtio-ccw-rng.c
index dc60f084a5..854254dd50 100644
--- a/hw/s390x/virtio-ccw-rng.c
+++ b/hw/s390x/virtio-ccw-rng.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-scsi.c b/hw/s390x/virtio-ccw-scsi.c
index 26fa086ef0..4662288b5b 100644
--- a/hw/s390x/virtio-ccw-scsi.c
+++ b/hw/s390x/virtio-ccw-scsi.c
@@ -10,6 +10,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/s390x/virtio-ccw-serial.c b/hw/s390x/virtio-ccw-serial.c
index 8cf5a529a5..eafb7d5c1f 100644
--- a/hw/s390x/virtio-ccw-serial.c
+++ b/hw/s390x/virtio-ccw-serial.c
@@ -12,6 +12,7 @@
#include "qemu/osdep.h"
#include "hw/virtio/virtio.h"
#include "qemu/module.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-serial.h"
#include "virtio-ccw.h"
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
index 43d3a1b029..6580ce5907 100644
--- a/hw/s390x/virtio-ccw.c
+++ b/hw/s390x/virtio-ccw.c
@@ -12,11 +12,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "net/net.h"
#include "hw/virtio/virtio.h"
+#include "migration/qemu-file-types.h"
#include "hw/virtio/virtio-net.h"
#include "hw/sysbus.h"
#include "qemu/bitops.h"
diff --git a/hw/scsi/esp-pci.c b/hw/scsi/esp-pci.c
index 342f500f82..d5a1f9e017 100644
--- a/hw/scsi/esp-pci.c
+++ b/hw/scsi/esp-pci.c
@@ -25,8 +25,10 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
+#include "hw/irq.h"
#include "hw/nvram/eeprom93xx.h"
#include "hw/scsi/esp.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qapi/error.h"
#include "qemu/log.h"
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 7508d035ca..841d79b60e 100644
--- a/hw/scsi/esp.c
+++ b/hw/scsi/esp.c
@@ -25,6 +25,8 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/scsi/esp.h"
#include "trace.h"
#include "qemu/log.h"
diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
index 10468c1ec1..222a286d44 100644
--- a/hw/scsi/lsi53c895a.c
+++ b/hw/scsi/lsi53c895a.c
@@ -15,9 +15,10 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/scsi/scsi.h"
+#include "migration/vmstate.h"
#include "sysemu/dma.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c
index 0c4399930a..de9bd20887 100644
--- a/hw/scsi/megasas.c
+++ b/hw/scsi/megasas.c
@@ -20,8 +20,8 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "sysemu/dma.h"
#include "sysemu/block-backend.h"
#include "hw/pci/msi.h"
@@ -33,6 +33,7 @@
#include "trace.h"
#include "qapi/error.h"
#include "mfi.h"
+#include "migration/vmstate.h"
#define MEGASAS_VERSION_GEN1 "1.70"
#define MEGASAS_VERSION_GEN2 "1.80"
diff --git a/hw/scsi/mptconfig.c b/hw/scsi/mptconfig.c
index 87a416a5cb..3b2a857b5c 100644
--- a/hw/scsi/mptconfig.c
+++ b/hw/scsi/mptconfig.c
@@ -16,7 +16,6 @@
* Lesser General Public License for more details.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/scsi/scsi.h"
diff --git a/hw/scsi/mptendian.c b/hw/scsi/mptendian.c
index 79f99734d2..313f40edf9 100644
--- a/hw/scsi/mptendian.c
+++ b/hw/scsi/mptendian.c
@@ -21,7 +21,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "sysemu/dma.h"
#include "hw/pci/msi.h"
diff --git a/hw/scsi/mptsas.c b/hw/scsi/mptsas.c
index 3f94d5ab55..b8a4b37cf3 100644
--- a/hw/scsi/mptsas.c
+++ b/hw/scsi/mptsas.c
@@ -23,17 +23,20 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "sysemu/dma.h"
#include "hw/pci/msi.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/scsi/scsi.h"
#include "scsi/constants.h"
#include "trace.h"
#include "qapi/error.h"
#include "mptsas.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "mpi.h"
#define NAA_LOCALLY_ASSIGNED_ID 0x3ULL
diff --git a/hw/scsi/scsi-bus.c b/hw/scsi/scsi-bus.c
index fdc3a0e4e0..bccb7cc4c6 100644
--- a/hw/scsi/scsi-bus.c
+++ b/hw/scsi/scsi-bus.c
@@ -1,14 +1,17 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "qemu/option.h"
+#include "hw/qdev-properties.h"
#include "hw/scsi/scsi.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "scsi/constants.h"
-#include "hw/qdev.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "trace.h"
#include "sysemu/dma.h"
#include "qemu/cutils.h"
diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c
index af3e622dc5..915641a0f1 100644
--- a/hw/scsi/scsi-disk.c
+++ b/hw/scsi/scsi-disk.c
@@ -23,14 +23,17 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/scsi/scsi.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "hw/scsi/emulation.h"
#include "scsi/constants.h"
-#include "sysemu/sysemu.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
#include "hw/block/block.h"
+#include "hw/qdev-properties.h"
#include "sysemu/dma.h"
#include "qemu/cutils.h"
#include "trace.h"
diff --git a/hw/scsi/scsi-generic.c b/hw/scsi/scsi-generic.c
index c11a0c9a84..e7798ebcd0 100644
--- a/hw/scsi/scsi-generic.c
+++ b/hw/scsi/scsi-generic.c
@@ -17,6 +17,8 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "hw/scsi/scsi.h"
+#include "migration/qemu-file-types.h"
+#include "hw/qdev-properties.h"
#include "hw/scsi/emulation.h"
#include "sysemu/block-backend.h"
#include "trace.h"
diff --git a/hw/scsi/spapr_vscsi.c b/hw/scsi/spapr_vscsi.c
index 0e491c911d..2120ceb051 100644
--- a/hw/scsi/spapr_vscsi.c
+++ b/hw/scsi/spapr_vscsi.c
@@ -35,13 +35,13 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/scsi/scsi.h"
+#include "migration/vmstate.h"
#include "scsi/constants.h"
#include "srp.h"
-#include "hw/qdev.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
+#include "hw/qdev-properties.h"
#include "viosrp.h"
#include "trace.h"
diff --git a/hw/scsi/vhost-scsi.c b/hw/scsi/vhost-scsi.c
index 343ca8be7a..c693fc748a 100644
--- a/hw/scsi/vhost-scsi.c
+++ b/hw/scsi/vhost-scsi.c
@@ -20,7 +20,6 @@
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
-#include "qemu/queue.h"
#include "monitor/monitor.h"
#include "migration/blocker.h"
#include "hw/virtio/vhost-scsi.h"
@@ -29,7 +28,9 @@
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-access.h"
#include "hw/fw-path-provider.h"
+#include "hw/qdev-properties.h"
#include "qemu/cutils.h"
+#include "sysemu/sysemu.h"
/* Features supported by host kernel. */
static const int kernel_feature_bits[] = {
diff --git a/hw/scsi/vhost-user-scsi.c b/hw/scsi/vhost-user-scsi.c
index fcee67d5a7..31c9d34637 100644
--- a/hw/scsi/vhost-user-scsi.c
+++ b/hw/scsi/vhost-user-scsi.c
@@ -21,12 +21,14 @@
#include "qom/object.h"
#include "hw/fw-path-provider.h"
#include "hw/qdev-core.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-backend.h"
#include "hw/virtio/vhost-user-scsi.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-access.h"
#include "chardev/char-fe.h"
+#include "sysemu/sysemu.h"
/* Features supported by the host application */
static const int user_feature_bits[] = {
diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c
index 8b9e5e2b49..ee52aa7d17 100644
--- a/hw/scsi/virtio-scsi.c
+++ b/hw/scsi/virtio-scsi.c
@@ -17,10 +17,12 @@
#include "qapi/error.h"
#include "standard-headers/linux/virtio_ids.h"
#include "hw/virtio/virtio-scsi.h"
+#include "migration/qemu-file-types.h"
#include "qemu/error-report.h"
#include "qemu/iov.h"
#include "qemu/module.h"
#include "sysemu/block-backend.h"
+#include "hw/qdev-properties.h"
#include "hw/scsi/scsi.h"
#include "scsi/constants.h"
#include "hw/virtio/virtio-bus.h"
diff --git a/hw/scsi/vmw_pvscsi.c b/hw/scsi/vmw_pvscsi.c
index 14641df1c8..452a3b63b2 100644
--- a/hw/scsi/vmw_pvscsi.c
+++ b/hw/scsi/vmw_pvscsi.c
@@ -27,10 +27,13 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/scsi/scsi.h"
+#include "migration/vmstate.h"
#include "scsi/constants.h"
#include "hw/pci/msi.h"
+#include "hw/qdev-properties.h"
#include "vmw_pvscsi.h"
#include "trace.h"
diff --git a/hw/sd/bcm2835_sdhost.c b/hw/sd/bcm2835_sdhost.c
index 2778fb0de4..4a80fbcc86 100644
--- a/hw/sd/bcm2835_sdhost.c
+++ b/hw/sd/bcm2835_sdhost.c
@@ -15,7 +15,9 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "sysemu/blockdev.h"
+#include "hw/irq.h"
#include "hw/sd/bcm2835_sdhost.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define TYPE_BCM2835_SDHOST_BUS "bcm2835-sdhost-bus"
diff --git a/hw/sd/milkymist-memcard.c b/hw/sd/milkymist-memcard.c
index b8d2347d46..926e1af475 100644
--- a/hw/sd/milkymist-memcard.c
+++ b/hw/sd/milkymist-memcard.c
@@ -24,13 +24,13 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "qemu/module.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qapi/error.h"
#include "sysemu/block-backend.h"
#include "sysemu/blockdev.h"
+#include "hw/qdev-properties.h"
#include "hw/sd/sd.h"
enum {
diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c
index d0c98ca021..c6e516b611 100644
--- a/hw/sd/omap_mmc.c
+++ b/hw/sd/omap_mmc.c
@@ -18,9 +18,10 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "qemu/log.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/arm/omap.h"
#include "hw/sd/sd.h"
diff --git a/hw/sd/pl181.c b/hw/sd/pl181.c
index 81b406dbf0..8033fe455d 100644
--- a/hw/sd/pl181.c
+++ b/hw/sd/pl181.c
@@ -10,6 +10,8 @@
#include "qemu/osdep.h"
#include "sysemu/blockdev.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/sd/sd.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/sd/pxa2xx_mmci.c b/hw/sd/pxa2xx_mmci.c
index 81ff5cea86..8f9ab0ec16 100644
--- a/hw/sd/pxa2xx_mmci.c
+++ b/hw/sd/pxa2xx_mmci.c
@@ -12,11 +12,11 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "hw/arm/pxa.h"
#include "hw/sd/sd.h"
-#include "hw/qdev.h"
#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
diff --git a/hw/sd/sd.c b/hw/sd/sd.c
index 917195a65b..49b83576e7 100644
--- a/hw/sd/sd.c
+++ b/hw/sd/sd.c
@@ -32,11 +32,11 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
-#include "hw/qdev.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/registerfields.h"
#include "sysemu/block-backend.h"
#include "hw/sd/sd.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/bitmap.h"
#include "hw/qdev-properties.h"
diff --git a/hw/sd/sdhci-pci.c b/hw/sd/sdhci-pci.c
index 9370181993..2c8d8f59b5 100644
--- a/hw/sd/sdhci-pci.c
+++ b/hw/sd/sdhci-pci.c
@@ -18,7 +18,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/module.h"
-#include "hw/hw.h"
+#include "hw/qdev-properties.h"
#include "hw/sd/sdhci.h"
#include "sdhci-internal.h"
diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c
index 7b80b1d93f..e08ec3e398 100644
--- a/hw/sd/sdhci.c
+++ b/hw/sd/sdhci.c
@@ -26,11 +26,13 @@
#include "qemu/units.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "sysemu/dma.h"
#include "qemu/timer.h"
#include "qemu/bitops.h"
#include "hw/sd/sdhci.h"
+#include "migration/vmstate.h"
#include "sdhci-internal.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/sd/ssi-sd.c b/hw/sd/ssi-sd.c
index 9bd6511ec8..91db069212 100644
--- a/hw/sd/ssi-sd.c
+++ b/hw/sd/ssi-sd.c
@@ -13,6 +13,8 @@
#include "qemu/osdep.h"
#include "sysemu/blockdev.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
+#include "hw/qdev-properties.h"
#include "hw/sd/sd.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/semihosting/config.c b/hw/semihosting/config.c
index 2a8e7e1045..9807f10cb0 100644
--- a/hw/semihosting/config.c
+++ b/hw/semihosting/config.c
@@ -24,6 +24,7 @@
#include "qemu/error-report.h"
#include "hw/semihosting/semihost.h"
#include "chardev/char.h"
+#include "sysemu/sysemu.h"
QemuOptsList qemu_semihosting_config_opts = {
.name = "semihosting-config",
diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c
index f22c79c867..ee0840f380 100644
--- a/hw/sh4/r2d.c
+++ b/hw/sh4/r2d.c
@@ -28,14 +28,17 @@
#include "qapi/error.h"
#include "cpu.h"
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/sh4/sh.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "net/net.h"
#include "sh7750_regs.h"
#include "hw/ide.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "hw/usb.h"
#include "hw/block/flash.h"
diff --git a/hw/sh4/sh7750.c b/hw/sh4/sh7750.c
index 2fb6e618d9..d660714443 100644
--- a/hw/sh4/sh7750.c
+++ b/hw/sh4/sh7750.c
@@ -22,8 +22,9 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sh4/sh.h"
#include "sysemu/sysemu.h"
#include "sh7750_regs.h"
diff --git a/hw/sh4/sh7750_regnames.c b/hw/sh4/sh7750_regnames.c
index 34b4f99b86..0630fe3cf4 100644
--- a/hw/sh4/sh7750_regnames.c
+++ b/hw/sh4/sh7750_regnames.c
@@ -1,5 +1,4 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sh4/sh.h"
#include "sh7750_regs.h"
#include "sh7750_regnames.h"
diff --git a/hw/sh4/sh_pci.c b/hw/sh4/sh_pci.c
index b15f264e99..71afd23b67 100644
--- a/hw/sh4/sh_pci.c
+++ b/hw/sh4/sh_pci.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
#include "hw/sh4/sh.h"
+#include "hw/irq.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_host.h"
#include "qemu/bswap.h"
diff --git a/hw/sh4/shix.c b/hw/sh4/shix.c
index 6a1c7238e9..2fc2915428 100644
--- a/hw/sh4/shix.c
+++ b/hw/sh4/shix.c
@@ -30,7 +30,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/sh4/sh.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
index 7bcd67b098..11d476c4a2 100644
--- a/hw/smbios/smbios.c
+++ b/hw/smbios/smbios.c
@@ -28,7 +28,6 @@
#include "hw/firmware/smbios.h"
#include "hw/loader.h"
#include "hw/boards.h"
-#include "exec/cpu-common.h"
#include "smbios_build.h"
/* legacy structures and constants for <= 2.0 machines */
diff --git a/hw/sparc/leon3.c b/hw/sparc/leon3.c
index 19cedebd16..c5f1b1ee72 100644
--- a/hw/sparc/leon3.c
+++ b/hw/sparc/leon3.c
@@ -21,17 +21,20 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/timer.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/reset.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "elf.h"
diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c
index b2342f2a89..6c5a17a020 100644
--- a/hw/sparc/sun4m.c
+++ b/hw/sparc/sun4m.c
@@ -21,6 +21,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qapi/error.h"
@@ -31,17 +32,22 @@
#include "qemu/timer.h"
#include "hw/sparc/sun4m_iommu.h"
#include "hw/timer/m48t59.h"
+#include "migration/vmstate.h"
#include "hw/sparc/sparc32_dma.h"
#include "hw/block/fdc.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "net/net.h"
#include "hw/boards.h"
#include "hw/scsi/esp.h"
#include "hw/nvram/sun_nvram.h"
+#include "hw/qdev-properties.h"
#include "hw/nvram/chrp_nvram.h"
#include "hw/nvram/fw_cfg.h"
#include "hw/char/escc.h"
#include "hw/empty_slot.h"
+#include "hw/irq.h"
#include "hw/loader.h"
#include "elf.h"
#include "trace.h"
diff --git a/hw/sparc/sun4m_iommu.c b/hw/sparc/sun4m_iommu.c
index 45a61ecf87..ccf46a5147 100644
--- a/hw/sparc/sun4m_iommu.c
+++ b/hw/sparc/sun4m_iommu.c
@@ -23,8 +23,11 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sparc/sun4m_iommu.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "exec/address-spaces.h"
#include "trace.h"
diff --git a/hw/sparc64/niagara.c b/hw/sparc64/niagara.c
index dc0ce7eda4..167143bffe 100644
--- a/hw/sparc64/niagara.c
+++ b/hw/sparc64/niagara.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/char/serial.h"
#include "hw/misc/unimp.h"
@@ -36,7 +35,7 @@
#include "sysemu/block-backend.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
-
+#include "sysemu/sysemu.h"
typedef struct NiagaraBoardState {
MemoryRegion hv_ram;
diff --git a/hw/sparc64/sparc64.c b/hw/sparc64/sparc64.c
index 689801f37d..100b2fab17 100644
--- a/hw/sparc64/sparc64.c
+++ b/hw/sparc64/sparc64.c
@@ -28,6 +28,7 @@
#include "hw/char/serial.h"
#include "hw/sparc/sparc64.h"
#include "qemu/timer.h"
+#include "sysemu/reset.h"
#include "trace.h"
diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c
index 5d87be811d..1ded2a4c9a 100644
--- a/hw/sparc64/sun4u.c
+++ b/hw/sparc64/sun4u.c
@@ -21,25 +21,28 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bridge.h"
#include "hw/pci/pci_bus.h"
#include "hw/pci/pci_host.h"
+#include "hw/qdev-properties.h"
#include "hw/pci-host/sabre.h"
#include "hw/char/serial.h"
#include "hw/char/parallel.h"
#include "hw/timer/m48t59.h"
+#include "migration/vmstate.h"
#include "hw/input/i8042.h"
#include "hw/block/fdc.h"
#include "net/net.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/nvram/sun_nvram.h"
diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c
index 81f2fb7f70..9f3cff5fb6 100644
--- a/hw/ssi/aspeed_smc.c
+++ b/hw/ssi/aspeed_smc.c
@@ -24,11 +24,13 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "qemu/error-report.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/ssi/aspeed_smc.h"
/* CE Type Setting Register */
diff --git a/hw/ssi/imx_spi.c b/hw/ssi/imx_spi.c
index 5cec9b5d05..2dd9a631e1 100644
--- a/hw/ssi/imx_spi.c
+++ b/hw/ssi/imx_spi.c
@@ -9,8 +9,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/ssi/imx_spi.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/ssi/mss-spi.c b/hw/ssi/mss-spi.c
index 4c9da5d2b2..3050fabb69 100644
--- a/hw/ssi/mss-spi.c
+++ b/hw/ssi/mss-spi.c
@@ -24,7 +24,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/ssi/mss-spi.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/ssi/omap_spi.c b/hw/ssi/omap_spi.c
index f278a55160..7c7e689707 100644
--- a/hw/ssi/omap_spi.c
+++ b/hw/ssi/omap_spi.c
@@ -19,9 +19,11 @@
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
+
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/arm/omap.h"
/* Multichannel SPI */
diff --git a/hw/ssi/pl022.c b/hw/ssi/pl022.c
index fec73cae26..cade2e92a8 100644
--- a/hw/ssi/pl022.c
+++ b/hw/ssi/pl022.c
@@ -9,6 +9,8 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/ssi/pl022.h"
#include "hw/ssi/ssi.h"
#include "qemu/log.h"
diff --git a/hw/ssi/ssi.c b/hw/ssi/ssi.c
index cda7c96a64..c6415eb6e3 100644
--- a/hw/ssi/ssi.c
+++ b/hw/ssi/ssi.c
@@ -14,6 +14,7 @@
#include "qemu/osdep.h"
#include "hw/ssi/ssi.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
struct SSIBus {
diff --git a/hw/ssi/stm32f2xx_spi.c b/hw/ssi/stm32f2xx_spi.c
index 4249101386..cd6e8443db 100644
--- a/hw/ssi/stm32f2xx_spi.c
+++ b/hw/ssi/stm32f2xx_spi.c
@@ -26,6 +26,7 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/ssi/stm32f2xx_spi.h"
+#include "migration/vmstate.h"
#ifndef STM_SPI_ERR_DEBUG
#define STM_SPI_ERR_DEBUG 0
diff --git a/hw/ssi/xilinx_spi.c b/hw/ssi/xilinx_spi.c
index 1379cb164b..a1be0de039 100644
--- a/hw/ssi/xilinx_spi.c
+++ b/hw/ssi/xilinx_spi.c
@@ -26,11 +26,13 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "qemu/fifo8.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/ssi/ssi.h"
#ifdef XILINX_SPI_ERR_DEBUG
diff --git a/hw/ssi/xilinx_spips.c b/hw/ssi/xilinx_spips.c
index b29e0a4a89..a309c712ca 100644
--- a/hw/ssi/xilinx_spips.c
+++ b/hw/ssi/xilinx_spips.c
@@ -24,8 +24,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/module.h"
#include "qemu/bitops.h"
@@ -34,6 +35,7 @@
#include "hw/register.h"
#include "sysemu/dma.h"
#include "migration/blocker.h"
+#include "migration/vmstate.h"
#ifndef XILINX_SPIPS_ERR_DEBUG
#define XILINX_SPIPS_ERR_DEBUG 0
diff --git a/hw/timer/a9gtimer.c b/hw/timer/a9gtimer.c
index 09e2a7b7bf..75f1867174 100644
--- a/hw/timer/a9gtimer.c
+++ b/hw/timer/a9gtimer.c
@@ -21,7 +21,11 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/a9gtimer.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/timer.h"
#include "qemu/bitops.h"
diff --git a/hw/timer/allwinner-a10-pit.c b/hw/timer/allwinner-a10-pit.c
index 763e1090ec..ca5a905059 100644
--- a/hw/timer/allwinner-a10-pit.c
+++ b/hw/timer/allwinner-a10-pit.c
@@ -16,10 +16,13 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
#include "hw/timer/allwinner-a10-pit.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
static void a10_pit_update_irq(AwA10PITState *s)
diff --git a/hw/timer/altera_timer.c b/hw/timer/altera_timer.c
index 5c1d9e4074..936b31311d 100644
--- a/hw/timer/altera_timer.c
+++ b/hw/timer/altera_timer.c
@@ -19,12 +19,14 @@
*/
#include "qemu/osdep.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qapi/error.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#define R_STATUS 0
#define R_CONTROL 1
diff --git a/hw/timer/arm_mptimer.c b/hw/timer/arm_mptimer.c
index 93044aacfd..983e61847e 100644
--- a/hw/timer/arm_mptimer.c
+++ b/hw/timer/arm_mptimer.c
@@ -20,8 +20,12 @@
*/
#include "qemu/osdep.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/arm_mptimer.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/arm_timer.c b/hw/timer/arm_timer.c
index f0a753404d..c2e6211188 100644
--- a/hw/timer/arm_timer.c
+++ b/hw/timer/arm_timer.c
@@ -9,9 +9,11 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
-#include "hw/qdev.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/log.h"
diff --git a/hw/timer/armv7m_systick.c b/hw/timer/armv7m_systick.c
index 94640743b5..85d122dbcb 100644
--- a/hw/timer/armv7m_systick.c
+++ b/hw/timer/armv7m_systick.c
@@ -11,6 +11,8 @@
#include "qemu/osdep.h"
#include "hw/timer/armv7m_systick.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "qemu/timer.h"
#include "qemu/log.h"
diff --git a/hw/timer/aspeed_rtc.c b/hw/timer/aspeed_rtc.c
index 19f061c846..5313017353 100644
--- a/hw/timer/aspeed_rtc.c
+++ b/hw/timer/aspeed_rtc.c
@@ -9,6 +9,7 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "hw/timer/aspeed_rtc.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/timer.h"
diff --git a/hw/timer/aspeed_timer.c b/hw/timer/aspeed_timer.c
index 29cc5e8070..ed81d5c44c 100644
--- a/hw/timer/aspeed_timer.c
+++ b/hw/timer/aspeed_timer.c
@@ -11,8 +11,10 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
#include "hw/timer/aspeed_timer.h"
+#include "migration/vmstate.h"
#include "qemu/bitops.h"
#include "qemu/timer.h"
#include "qemu/log.h"
diff --git a/hw/timer/cadence_ttc.c b/hw/timer/cadence_ttc.c
index 115d935f84..5e3128c1e3 100644
--- a/hw/timer/cadence_ttc.c
+++ b/hw/timer/cadence_ttc.c
@@ -17,7 +17,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/timer/cmsdk-apb-dualtimer.c b/hw/timer/cmsdk-apb-dualtimer.c
index 383f6e12b1..5e2352dd32 100644
--- a/hw/timer/cmsdk-apb-dualtimer.c
+++ b/hw/timer/cmsdk-apb-dualtimer.c
@@ -23,8 +23,11 @@
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/registerfields.h"
#include "hw/timer/cmsdk-apb-dualtimer.h"
+#include "migration/vmstate.h"
REG32(TIMER1LOAD, 0x0)
REG32(TIMER1VALUE, 0x4)
diff --git a/hw/timer/cmsdk-apb-timer.c b/hw/timer/cmsdk-apb-timer.c
index 2e7318b81f..c83e26566a 100644
--- a/hw/timer/cmsdk-apb-timer.c
+++ b/hw/timer/cmsdk-apb-timer.c
@@ -34,8 +34,10 @@
#include "qapi/error.h"
#include "trace.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
#include "hw/registerfields.h"
#include "hw/timer/cmsdk-apb-timer.h"
+#include "migration/vmstate.h"
REG32(CTRL, 0)
FIELD(CTRL, EN, 0, 1)
diff --git a/hw/timer/digic-timer.c b/hw/timer/digic-timer.c
index c818ed1d98..021c4ef714 100644
--- a/hw/timer/digic-timer.c
+++ b/hw/timer/digic-timer.c
@@ -34,6 +34,7 @@
#include "qemu/log.h"
#include "hw/timer/digic-timer.h"
+#include "migration/vmstate.h"
static const VMStateDescription vmstate_digic_timer = {
.name = "digic.timer",
diff --git a/hw/timer/ds1338.c b/hw/timer/ds1338.c
index 30d2d21408..588a9ba9be 100644
--- a/hw/timer/ds1338.c
+++ b/hw/timer/ds1338.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "hw/i2c/i2c.h"
+#include "migration/vmstate.h"
#include "qemu/bcd.h"
#include "qemu/module.h"
diff --git a/hw/timer/etraxfs_timer.c b/hw/timer/etraxfs_timer.c
index 53834e197f..d62025b879 100644
--- a/hw/timer/etraxfs_timer.c
+++ b/hw/timer/etraxfs_timer.c
@@ -24,9 +24,12 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/timer.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
#define D(x)
diff --git a/hw/timer/exynos4210_mct.c b/hw/timer/exynos4210_mct.c
index 874c7b8522..77b9af05f4 100644
--- a/hw/timer/exynos4210_mct.c
+++ b/hw/timer/exynos4210_mct.c
@@ -54,13 +54,17 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
+#include "hw/hw.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/ptimer.h"
#include "hw/arm/exynos4210.h"
+#include "hw/hw.h"
+#include "hw/irq.h"
//#define DEBUG_MCT
diff --git a/hw/timer/exynos4210_pwm.c b/hw/timer/exynos4210_pwm.c
index 9bc0327785..b7fad2ad44 100644
--- a/hw/timer/exynos4210_pwm.c
+++ b/hw/timer/exynos4210_pwm.c
@@ -23,12 +23,14 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/ptimer.h"
#include "hw/arm/exynos4210.h"
+#include "hw/irq.h"
//#define DEBUG_PWM
diff --git a/hw/timer/exynos4210_rtc.c b/hw/timer/exynos4210_rtc.c
index 0ecedf7394..ea68904229 100644
--- a/hw/timer/exynos4210_rtc.c
+++ b/hw/timer/exynos4210_rtc.c
@@ -28,14 +28,15 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/timer.h"
#include "qemu/bcd.h"
#include "hw/ptimer.h"
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
+#include "hw/irq.h"
#include "hw/arm/exynos4210.h"
diff --git a/hw/timer/grlib_gptimer.c b/hw/timer/grlib_gptimer.c
index e45a49075b..32dbf870d4 100644
--- a/hw/timer/grlib_gptimer.c
+++ b/hw/timer/grlib_gptimer.c
@@ -26,7 +26,9 @@
#include "hw/sparc/grlib.h"
#include "hw/sysbus.h"
#include "qemu/timer.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c
index 41024f39fb..1ddae4e7d7 100644
--- a/hw/timer/hpet.c
+++ b/hw/timer/hpet.c
@@ -25,8 +25,8 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
+#include "hw/irq.h"
#include "ui/console.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
@@ -34,6 +34,7 @@
#include "hw/timer/hpet.h"
#include "hw/sysbus.h"
#include "hw/timer/mc146818rtc.h"
+#include "migration/vmstate.h"
#include "hw/timer/i8254.h"
//#define HPET_DEBUG
diff --git a/hw/timer/i8254.c b/hw/timer/i8254.c
index 0972c4724e..a4be7330ef 100644
--- a/hw/timer/i8254.c
+++ b/hw/timer/i8254.c
@@ -23,7 +23,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/timer/i8254.h"
diff --git a/hw/timer/i8254_common.c b/hw/timer/i8254_common.c
index 76ca6ec444..57bf10cc94 100644
--- a/hw/timer/i8254_common.c
+++ b/hw/timer/i8254_common.c
@@ -24,12 +24,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/timer/i8254.h"
#include "hw/timer/i8254_internal.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
/* val must be 0 or 1 */
void pit_set_gate(ISADevice *dev, int channel, int val)
diff --git a/hw/timer/imx_epit.c b/hw/timer/imx_epit.c
index 7a883160f4..f54e059910 100644
--- a/hw/timer/imx_epit.c
+++ b/hw/timer/imx_epit.c
@@ -14,6 +14,8 @@
#include "qemu/osdep.h"
#include "hw/timer/imx_epit.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
#include "hw/misc/imx_ccm.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/imx_gpt.c b/hw/timer/imx_gpt.c
index 3086c03774..49a441f451 100644
--- a/hw/timer/imx_gpt.c
+++ b/hw/timer/imx_gpt.c
@@ -13,7 +13,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/timer/imx_gpt.h"
+#include "migration/vmstate.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/log.h"
diff --git a/hw/timer/lm32_timer.c b/hw/timer/lm32_timer.c
index 6ce876c6ae..ac3edaff4f 100644
--- a/hw/timer/lm32_timer.c
+++ b/hw/timer/lm32_timer.c
@@ -22,11 +22,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/timer.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/m48t59-isa.c b/hw/timer/m48t59-isa.c
index cbc5e61ddd..5e5432abfd 100644
--- a/hw/timer/m48t59-isa.c
+++ b/hw/timer/m48t59-isa.c
@@ -25,6 +25,7 @@
#include "qemu/osdep.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/m48t59.h"
#include "m48t59-internal.h"
#include "qemu/module.h"
diff --git a/hw/timer/m48t59.c b/hw/timer/m48t59.c
index 030c8872a2..a9fc2f981a 100644
--- a/hw/timer/m48t59.c
+++ b/hw/timer/m48t59.c
@@ -25,9 +25,11 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/m48t59.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "hw/sysbus.h"
#include "exec/address-spaces.h"
@@ -35,6 +37,7 @@
#include "qemu/module.h"
#include "m48t59-internal.h"
+#include "migration/vmstate.h"
#define TYPE_M48TXX_SYS_BUS "sysbus-m48txx"
#define M48TXX_SYS_BUS_GET_CLASS(obj) \
diff --git a/hw/timer/mc146818rtc.c b/hw/timer/mc146818rtc.c
index ce4550b6f2..26618842c9 100644
--- a/hw/timer/mc146818rtc.c
+++ b/hw/timer/mc146818rtc.c
@@ -27,11 +27,15 @@
#include "qemu/cutils.h"
#include "qemu/module.h"
#include "qemu/bcd.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/timer.h"
#include "sysemu/sysemu.h"
#include "sysemu/replay.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "hw/timer/mc146818rtc.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-misc-target.h"
#include "qapi/qapi-events-misc-target.h"
diff --git a/hw/timer/milkymist-sysctl.c b/hw/timer/milkymist-sysctl.c
index a9d250877c..958350767a 100644
--- a/hw/timer/milkymist-sysctl.c
+++ b/hw/timer/milkymist-sysctl.c
@@ -22,13 +22,16 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sysbus.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
enum {
diff --git a/hw/timer/mips_gictimer.c b/hw/timer/mips_gictimer.c
index f5c5806724..bc44cd934e 100644
--- a/hw/timer/mips_gictimer.c
+++ b/hw/timer/mips_gictimer.c
@@ -7,7 +7,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qemu/timer.h"
#include "hw/timer/mips_gictimer.h"
diff --git a/hw/timer/mss-timer.c b/hw/timer/mss-timer.c
index 6add47af99..45f1cf42f9 100644
--- a/hw/timer/mss-timer.c
+++ b/hw/timer/mss-timer.c
@@ -27,7 +27,10 @@
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/log.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/mss-timer.h"
+#include "migration/vmstate.h"
#ifndef MSS_TIMER_ERR_DEBUG
#define MSS_TIMER_ERR_DEBUG 0
diff --git a/hw/timer/nrf51_timer.c b/hw/timer/nrf51_timer.c
index 29fb81a744..e04046eb15 100644
--- a/hw/timer/nrf51_timer.c
+++ b/hw/timer/nrf51_timer.c
@@ -15,7 +15,9 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "hw/arm/nrf51.h"
+#include "hw/irq.h"
#include "hw/timer/nrf51_timer.h"
+#include "migration/vmstate.h"
#include "trace.h"
#define TIMER_CLK_FREQ 16000000UL
diff --git a/hw/timer/omap_gptimer.c b/hw/timer/omap_gptimer.c
index ae2dc99832..c407190138 100644
--- a/hw/timer/omap_gptimer.c
+++ b/hw/timer/omap_gptimer.c
@@ -17,8 +17,9 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/timer.h"
#include "hw/arm/omap.h"
diff --git a/hw/timer/omap_synctimer.c b/hw/timer/omap_synctimer.c
index 0d75a90f3a..72b997939b 100644
--- a/hw/timer/omap_synctimer.c
+++ b/hw/timer/omap_synctimer.c
@@ -18,7 +18,6 @@
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
#include "hw/arm/omap.h"
struct omap_synctimer_s {
diff --git a/hw/timer/pl031.c b/hw/timer/pl031.c
index 1a7e2ee06b..2b3e261006 100644
--- a/hw/timer/pl031.c
+++ b/hw/timer/pl031.c
@@ -14,6 +14,9 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "hw/timer/pl031.h"
+#include "migration/vmstate.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "qemu/timer.h"
#include "sysemu/sysemu.h"
diff --git a/hw/timer/puv3_ost.c b/hw/timer/puv3_ost.c
index 4a8ae37ffd..6fe370049b 100644
--- a/hw/timer/puv3_ost.c
+++ b/hw/timer/puv3_ost.c
@@ -11,6 +11,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/pxa2xx_timer.c b/hw/timer/pxa2xx_timer.c
index 8c1ef43cd5..311cd38aac 100644
--- a/hw/timer/pxa2xx_timer.c
+++ b/hw/timer/pxa2xx_timer.c
@@ -8,11 +8,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "hw/arm/pxa.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/timer/sh_timer.c b/hw/timer/sh_timer.c
index 91b18ba312..adcc0c138e 100644
--- a/hw/timer/sh_timer.c
+++ b/hw/timer/sh_timer.c
@@ -10,6 +10,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/sh4/sh.h"
#include "qemu/timer.h"
#include "qemu/main-loop.h"
diff --git a/hw/timer/slavio_timer.c b/hw/timer/slavio_timer.c
index 005fd599e8..38fd32b62a 100644
--- a/hw/timer/slavio_timer.c
+++ b/hw/timer/slavio_timer.c
@@ -24,8 +24,11 @@
#include "qemu/osdep.h"
#include "qemu/timer.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/stm32f2xx_timer.c b/hw/timer/stm32f2xx_timer.c
index 4c49dc4995..edc557a4b9 100644
--- a/hw/timer/stm32f2xx_timer.c
+++ b/hw/timer/stm32f2xx_timer.c
@@ -23,7 +23,10 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/timer/stm32f2xx_timer.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/timer/sun4v-rtc.c b/hw/timer/sun4v-rtc.c
index ba62adc826..54272a822f 100644
--- a/hw/timer/sun4v-rtc.c
+++ b/hw/timer/sun4v-rtc.c
@@ -10,7 +10,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "qemu/module.h"
#include "qemu/timer.h"
diff --git a/hw/timer/twl92230.c b/hw/timer/twl92230.c
index 0ef4fc1fc1..63bd13d2ca 100644
--- a/hw/timer/twl92230.c
+++ b/hw/timer/twl92230.c
@@ -21,9 +21,11 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
#include "hw/i2c/i2c.h"
+#include "hw/irq.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
#include "sysemu/sysemu.h"
#include "ui/console.h"
#include "qemu/bcd.h"
diff --git a/hw/timer/xilinx_timer.c b/hw/timer/xilinx_timer.c
index 16bcd0393b..355518232c 100644
--- a/hw/timer/xilinx_timer.c
+++ b/hw/timer/xilinx_timer.c
@@ -24,7 +24,9 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
diff --git a/hw/timer/xlnx-zynqmp-rtc.c b/hw/timer/xlnx-zynqmp-rtc.c
index 36daf0c7e7..5692db98c2 100644
--- a/hw/timer/xlnx-zynqmp-rtc.c
+++ b/hw/timer/xlnx-zynqmp-rtc.c
@@ -31,11 +31,13 @@
#include "qemu/bitops.h"
#include "qemu/log.h"
#include "qemu/module.h"
+#include "hw/irq.h"
#include "hw/ptimer.h"
#include "qemu/cutils.h"
#include "sysemu/sysemu.h"
#include "trace.h"
#include "hw/timer/xlnx-zynqmp-rtc.h"
+#include "migration/vmstate.h"
#ifndef XLNX_ZYNQMP_RTC_ERR_DEBUG
#define XLNX_ZYNQMP_RTC_ERR_DEBUG 0
diff --git a/hw/tpm/tpm_crb.c b/hw/tpm/tpm_crb.c
index db0e3e7c67..faae733120 100644
--- a/hw/tpm/tpm_crb.c
+++ b/hw/tpm/tpm_crb.c
@@ -19,8 +19,6 @@
#include "qemu/module.h"
#include "qapi/error.h"
#include "exec/address-spaces.h"
-
-#include "hw/qdev-core.h"
#include "hw/qdev-properties.h"
#include "hw/pci/pci_ids.h"
#include "hw/acpi/tpm.h"
diff --git a/hw/tpm/tpm_emulator.c b/hw/tpm/tpm_emulator.c
index fc0b512f4f..22f9113432 100644
--- a/hw/tpm/tpm_emulator.c
+++ b/hw/tpm/tpm_emulator.c
@@ -33,10 +33,10 @@
#include "io/channel-socket.h"
#include "sysemu/tpm_backend.h"
#include "tpm_int.h"
-#include "hw/hw.h"
#include "tpm_util.h"
#include "tpm_ioctl.h"
#include "migration/blocker.h"
+#include "migration/vmstate.h"
#include "qapi/error.h"
#include "qapi/clone-visitor.h"
#include "qapi/qapi-visit-tpm.h"
diff --git a/hw/tpm/tpm_passthrough.c b/hw/tpm/tpm_passthrough.c
index 897e3d5864..f67244b5d4 100644
--- a/hw/tpm/tpm_passthrough.c
+++ b/hw/tpm/tpm_passthrough.c
@@ -29,7 +29,6 @@
#include "qemu/sockets.h"
#include "sysemu/tpm_backend.h"
#include "tpm_int.h"
-#include "hw/hw.h"
#include "qapi/clone-visitor.h"
#include "qapi/qapi-visit-tpm.h"
#include "tpm_util.h"
diff --git a/hw/tpm/tpm_ppi.c b/hw/tpm/tpm_ppi.c
index cd8205f212..ff314592b4 100644
--- a/hw/tpm/tpm_ppi.c
+++ b/hw/tpm/tpm_ppi.c
@@ -16,7 +16,6 @@
#include "qapi/error.h"
#include "cpu.h"
#include "sysemu/memory_mapping.h"
-#include "sysemu/reset.h"
#include "migration/vmstate.h"
#include "tpm_ppi.h"
#include "trace.h"
diff --git a/hw/tpm/tpm_tis.c b/hw/tpm/tpm_tis.c
index d6b3212890..7aaf9b946d 100644
--- a/hw/tpm/tpm_tis.c
+++ b/hw/tpm/tpm_tis.c
@@ -23,12 +23,15 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "hw/acpi/tpm.h"
#include "hw/pci/pci_ids.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "sysemu/tpm_backend.h"
#include "tpm_int.h"
#include "tpm_util.h"
diff --git a/hw/tpm/tpm_util.c b/hw/tpm/tpm_util.c
index ee41757ea2..62b091f0c0 100644
--- a/hw/tpm/tpm_util.c
+++ b/hw/tpm/tpm_util.c
@@ -26,8 +26,8 @@
#include "tpm_util.h"
#include "tpm_int.h"
#include "exec/memory.h"
+#include "hw/qdev-properties.h"
#include "sysemu/tpm_backend.h"
-#include "hw/qdev.h"
#include "trace.h"
/* tpm backend property */
diff --git a/hw/tpm/trace-events b/hw/tpm/trace-events
index 0b94aa1526..89804bcd64 100644
--- a/hw/tpm/trace-events
+++ b/hw/tpm/trace-events
@@ -1,8 +1,8 @@
# See docs/devel/tracing.txt for syntax documentation.
# tpm_crb.c
-tpm_crb_mmio_read(uint64_t addr, unsigned size, uint32_t val) "CRB read 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx32
-tpm_crb_mmio_write(uint64_t addr, unsigned size, uint32_t val) "CRB write 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx32
+tpm_crb_mmio_read(uint64_t addr, unsigned size, uint32_t val) "CRB read 0x%016" PRIx64 " len:%u val: 0x%" PRIx32
+tpm_crb_mmio_write(uint64_t addr, unsigned size, uint32_t val) "CRB write 0x%016" PRIx64 " len:%u val: 0x%" PRIx32
# tpm_passthrough.c
tpm_passthrough_handle_request(void *cmd) "processing command %p"
diff --git a/hw/tricore/tricore_testboard.c b/hw/tricore/tricore_testboard.c
index be397ebf92..aef3289f8c 100644
--- a/hw/tricore/tricore_testboard.c
+++ b/hw/tricore/tricore_testboard.c
@@ -22,9 +22,7 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "net/net.h"
-#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/loader.h"
#include "exec/address-spaces.h"
diff --git a/hw/unicore32/puv3.c b/hw/unicore32/puv3.c
index 132e6086ee..7e933de228 100644
--- a/hw/unicore32/puv3.c
+++ b/hw/unicore32/puv3.c
@@ -20,6 +20,7 @@
#undef DEBUG_PUV3
#include "hw/unicore32/puv3.h"
#include "hw/input/i8042.h"
+#include "hw/irq.h"
#define KERNEL_LOAD_ADDR 0x03000000
#define KERNEL_MAX_SIZE 0x00800000 /* Just a guess */
diff --git a/hw/usb/bus.c b/hw/usb/bus.c
index a28e9e3b33..a6522f5429 100644
--- a/hw/usb/bus.c
+++ b/hw/usb/bus.c
@@ -1,11 +1,11 @@
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "trace.h"
#include "qemu/cutils.h"
diff --git a/hw/usb/ccid-card-emulated.c b/hw/usb/ccid-card-emulated.c
index e20f8ed293..291e41db8a 100644
--- a/hw/usb/ccid-card-emulated.c
+++ b/hw/usb/ccid-card-emulated.c
@@ -33,6 +33,7 @@
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "ccid.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#define DPRINTF(card, lvl, fmt, ...) \
diff --git a/hw/usb/ccid-card-passthru.c b/hw/usb/ccid-card-passthru.c
index d1dac6e012..267ed9a8a0 100644
--- a/hw/usb/ccid-card-passthru.c
+++ b/hw/usb/ccid-card-passthru.c
@@ -13,6 +13,8 @@
#include "qemu/units.h"
#include <libcacard.h>
#include "chardev/char-fe.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "qemu/sockets.h"
diff --git a/hw/usb/ccid.h b/hw/usb/ccid.h
index 3920733f13..bb2fdbfff3 100644
--- a/hw/usb/ccid.h
+++ b/hw/usb/ccid.h
@@ -10,7 +10,7 @@
#ifndef CCID_H
#define CCID_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
typedef struct CCIDCardState CCIDCardState;
typedef struct CCIDCardInfo CCIDCardInfo;
diff --git a/hw/usb/dev-audio.c b/hw/usb/dev-audio.c
index 718ab53cbb..d3ca3bd1ab 100644
--- a/hw/usb/dev-audio.c
+++ b/hw/usb/dev-audio.c
@@ -31,9 +31,10 @@
#include "qemu/osdep.h"
#include "qemu/module.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
-#include "hw/hw.h"
#include "audio/audio.h"
#define USBAUDIO_VENDOR_NUM 0x46f4 /* CRC16() of "QEMU" */
diff --git a/hw/usb/dev-bluetooth.c b/hw/usb/dev-bluetooth.c
index 670ba32290..f6944fa74f 100644
--- a/hw/usb/dev-bluetooth.c
+++ b/hw/usb/dev-bluetooth.c
@@ -22,6 +22,7 @@
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "sysemu/bt.h"
#include "hw/bt.h"
diff --git a/hw/usb/dev-hid.c b/hw/usb/dev-hid.c
index 62793eaf26..88492f26e6 100644
--- a/hw/usb/dev-hid.c
+++ b/hw/usb/dev-hid.c
@@ -24,14 +24,15 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/input/hid.h"
+#include "hw/qdev-properties.h"
/* HID interface requests */
#define GET_REPORT 0xa101
diff --git a/hw/usb/dev-hub.c b/hw/usb/dev-hub.c
index 89f55dd25c..07ecfefc12 100644
--- a/hw/usb/dev-hub.c
+++ b/hw/usb/dev-hub.c
@@ -26,7 +26,9 @@
#include "qapi/error.h"
#include "qemu/timer.h"
#include "trace.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index fd1b3394a5..9846e4b513 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -23,7 +23,9 @@
#include "qemu/module.h"
#include "qemu/filemonitor.h"
#include "trace.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "qemu/units.h"
diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c
index 889069dd5a..5de6213cc4 100644
--- a/hw/usb/dev-network.c
+++ b/hw/usb/dev-network.c
@@ -25,7 +25,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "net/net.h"
#include "qemu/error-report.h"
diff --git a/hw/usb/dev-serial.c b/hw/usb/dev-serial.c
index b82f854103..45cc74128a 100644
--- a/hw/usb/dev-serial.c
+++ b/hw/usb/dev-serial.c
@@ -13,7 +13,9 @@
#include "qemu/cutils.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "chardev/char-serial.h"
#include "chardev/char-fe.h"
diff --git a/hw/usb/dev-smartcard-reader.c b/hw/usb/dev-smartcard-reader.c
index 8d7e516fe7..4568db2568 100644
--- a/hw/usb/dev-smartcard-reader.c
+++ b/hw/usb/dev-smartcard-reader.c
@@ -40,7 +40,9 @@
#include "qemu-common.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
#include "ccid.h"
diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c
index 9ffb88ea5b..8545193488 100644
--- a/hw/usb/dev-storage.c
+++ b/hw/usb/dev-storage.c
@@ -15,8 +15,10 @@
#include "qemu/config-file.h"
#include "hw/usb.h"
#include "desc.h"
+#include "hw/qdev-properties.h"
#include "hw/scsi/scsi.h"
#include "ui/console.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "sysemu/sysemu.h"
#include "sysemu/block-backend.h"
diff --git a/hw/usb/dev-uas.c b/hw/usb/dev-uas.c
index abd8070d0c..6d6d1073b9 100644
--- a/hw/usb/dev-uas.c
+++ b/hw/usb/dev-uas.c
@@ -14,10 +14,13 @@
#include "qemu/config-file.h"
#include "trace.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "desc.h"
+#include "hw/qdev-properties.h"
#include "hw/scsi/scsi.h"
#include "scsi/constants.h"
diff --git a/hw/usb/dev-wacom.c b/hw/usb/dev-wacom.c
index 8c43db9335..8ed57b3b44 100644
--- a/hw/usb/dev-wacom.c
+++ b/hw/usb/dev-wacom.c
@@ -27,9 +27,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "ui/console.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "desc.h"
diff --git a/hw/usb/hcd-ehci-pci.c b/hw/usb/hcd-ehci-pci.c
index 03d3a39067..5b9a8d3dc1 100644
--- a/hw/usb/hcd-ehci-pci.c
+++ b/hw/usb/hcd-ehci-pci.c
@@ -16,7 +16,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/usb/hcd-ehci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
#include "qemu/range.h"
diff --git a/hw/usb/hcd-ehci-sysbus.c b/hw/usb/hcd-ehci-sysbus.c
index cd1f3c70a4..020211fd10 100644
--- a/hw/usb/hcd-ehci-sysbus.c
+++ b/hw/usb/hcd-ehci-sysbus.c
@@ -16,7 +16,9 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/usb/hcd-ehci.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
static const VMStateDescription vmstate_ehci_sysbus = {
diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c
index 62dab0592f..9ca7b87a80 100644
--- a/hw/usb/hcd-ehci.c
+++ b/hw/usb/hcd-ehci.c
@@ -28,10 +28,14 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "hw/irq.h"
#include "hw/usb/ehci-regs.h"
#include "hw/usb/hcd-ehci.h"
+#include "migration/vmstate.h"
#include "trace.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
+#include "sysemu/runstate.h"
#define FRAME_TIMER_FREQ 1000
#define FRAME_TIMER_NS (NANOSECONDS_PER_SECOND / FRAME_TIMER_FREQ)
diff --git a/hw/usb/hcd-ehci.h b/hw/usb/hcd-ehci.h
index fedf82c611..0298238f0b 100644
--- a/hw/usb/hcd-ehci.h
+++ b/hw/usb/hcd-ehci.h
@@ -18,11 +18,9 @@
#ifndef HW_USB_HCD_EHCI_H
#define HW_USB_HCD_EHCI_H
-#include "hw/hw.h"
#include "qemu/timer.h"
#include "hw/usb.h"
#include "sysemu/dma.h"
-#include "sysemu/sysemu.h"
#include "hw/pci/pci.h"
#include "hw/sysbus.h"
diff --git a/hw/usb/hcd-ohci-pci.c b/hw/usb/hcd-ohci-pci.c
index e8f372c6ad..c052f10521 100644
--- a/hw/usb/hcd-ohci-pci.c
+++ b/hw/usb/hcd-ohci-pci.c
@@ -19,13 +19,14 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qapi/error.h"
#include "qemu/timer.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
#include "hw/sysbus.h"
#include "hw/qdev-dma.h"
+#include "hw/qdev-properties.h"
#include "trace.h"
#include "hcd-ohci.h"
diff --git a/hw/usb/hcd-ohci.c b/hw/usb/hcd-ohci.c
index 4f6fdbc0a7..145ee21fd6 100644
--- a/hw/usb/hcd-ohci.c
+++ b/hw/usb/hcd-ohci.c
@@ -26,13 +26,15 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qapi/error.h"
#include "qemu/module.h"
#include "qemu/timer.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "hw/sysbus.h"
#include "hw/qdev-dma.h"
+#include "hw/qdev-properties.h"
#include "trace.h"
#include "hcd-ohci.h"
diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c
index 98bd5cf49d..23507ad3b5 100644
--- a/hw/usb/hcd-uhci.c
+++ b/hw/usb/hcd-uhci.c
@@ -27,10 +27,11 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/usb.h"
#include "hw/usb/uhci-regs.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/timer.h"
#include "qemu/iov.h"
diff --git a/hw/usb/hcd-xhci-nec.c b/hw/usb/hcd-xhci-nec.c
index e099382b24..05fb3f54b3 100644
--- a/hw/usb/hcd-xhci-nec.c
+++ b/hw/usb/hcd-xhci-nec.c
@@ -20,10 +20,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/usb.h"
#include "qemu/module.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hcd-xhci.h"
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index 5894a18663..f698224c8a 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -20,12 +20,13 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/timer.h"
#include "qemu/module.h"
#include "qemu/queue.h"
#include "hw/usb.h"
+#include "migration/vmstate.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
#include "trace.h"
diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c
index 83ebc51620..472cc26fc4 100644
--- a/hw/usb/host-libusb.c
+++ b/hw/usb/host-libusb.c
@@ -40,12 +40,16 @@
#include <libusb.h>
#include "qapi/error.h"
+#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "trace.h"
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
/* ------------------------------------------------------------------------ */
diff --git a/hw/usb/libhw.c b/hw/usb/libhw.c
index adbee2f642..9c33a1640f 100644
--- a/hw/usb/libhw.c
+++ b/hw/usb/libhw.c
@@ -20,7 +20,6 @@
* THE SOFTWARE.
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/usb.h"
#include "sysemu/dma.h"
diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
index 998fc6e4b0..fc9fe0c00f 100644
--- a/hw/usb/redirect.c
+++ b/hw/usb/redirect.c
@@ -30,6 +30,7 @@
#include "qemu/units.h"
#include "qapi/error.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "qapi/qmp/qerror.h"
#include "qemu/error-report.h"
@@ -40,7 +41,10 @@
#include <usbredirparser.h>
#include <usbredirfilter.h>
+#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
/* ERROR is defined below. Remove any previous definition. */
#undef ERROR
diff --git a/hw/usb/tusb6010.c b/hw/usb/tusb6010.c
index a61b0f6354..17580876c6 100644
--- a/hw/usb/tusb6010.c
+++ b/hw/usb/tusb6010.c
@@ -24,6 +24,7 @@
#include "qemu/timer.h"
#include "hw/usb.h"
#include "hw/arm/omap.h"
+#include "hw/hw.h"
#include "hw/irq.h"
#include "hw/sysbus.h"
diff --git a/hw/usb/xen-usb.c b/hw/usb/xen-usb.c
index dfbb418e77..1fc2f32ce9 100644
--- a/hw/usb/xen-usb.c
+++ b/hw/usb/xen-usb.c
@@ -24,6 +24,7 @@
#include <sys/user.h>
#include "qemu/config-file.h"
+#include "qemu/main-loop.h"
#include "qemu/option.h"
#include "hw/sysbus.h"
#include "hw/usb.h"
diff --git a/hw/vfio/amd-xgbe.c b/hw/vfio/amd-xgbe.c
index eedd48cfc1..96bd608b8d 100644
--- a/hw/vfio/amd-xgbe.c
+++ b/hw/vfio/amd-xgbe.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/vfio/vfio-amd-xgbe.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
static void amd_xgbe_realize(DeviceState *dev, Error **errp)
diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c
index a995b86cd4..da6a20669d 100644
--- a/hw/vfio/ap.c
+++ b/hw/vfio/ap.c
@@ -20,12 +20,12 @@
#include "hw/s390x/ap-device.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
-#include "qemu/queue.h"
#include "qemu/option.h"
#include "qemu/config-file.h"
#include "cpu.h"
#include "kvm_s390x.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/ap-bridge.h"
#include "exec/address-spaces.h"
diff --git a/hw/vfio/calxeda-xgmac.c b/hw/vfio/calxeda-xgmac.c
index 59233e8d7e..87c382e736 100644
--- a/hw/vfio/calxeda-xgmac.c
+++ b/hw/vfio/calxeda-xgmac.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "hw/vfio/vfio-calxeda-xgmac.h"
+#include "migration/vmstate.h"
#include "qemu/module.h"
static void calxeda_xgmac_realize(DeviceState *dev, Error **errp)
diff --git a/hw/vfio/ccw.c b/hw/vfio/ccw.c
index 16f200e6fe..6863f6c69f 100644
--- a/hw/vfio/ccw.c
+++ b/hw/vfio/ccw.c
@@ -25,9 +25,11 @@
#include "hw/vfio/vfio-common.h"
#include "hw/s390x/s390-ccw.h"
#include "hw/s390x/vfio-ccw.h"
+#include "hw/qdev-properties.h"
#include "hw/s390x/ccw-device.h"
#include "exec/address-spaces.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
struct VFIOCCWDevice {
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index a859298fda..3e03c495d8 100644
--- a/hw/vfio/common.c
+++ b/hw/vfio/common.c
@@ -31,9 +31,11 @@
#include "exec/memory.h"
#include "hw/hw.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/range.h"
#include "sysemu/balloon.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "trace.h"
#include "qapi/error.h"
diff --git a/hw/vfio/pci-quirks.c b/hw/vfio/pci-quirks.c
index b35a640030..f71aace156 100644
--- a/hw/vfio/pci-quirks.c
+++ b/hw/vfio/pci-quirks.c
@@ -19,7 +19,9 @@
#include "qapi/error.h"
#include "qapi/visitor.h"
#include <sys/ioctl.h>
+#include "hw/hw.h"
#include "hw/nvram/fw_cfg.h"
+#include "hw/qdev-properties.h"
#include "pci.h"
#include "trace.h"
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index d7a4e1875c..dc3479c374 100644
--- a/hw/vfio/pci.c
+++ b/hw/vfio/pci.c
@@ -22,15 +22,20 @@
#include <linux/vfio.h>
#include <sys/ioctl.h>
+#include "hw/hw.h"
#include "hw/pci/msi.h"
#include "hw/pci/msix.h"
#include "hw/pci/pci_bridge.h"
+#include "hw/qdev-properties.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/range.h"
#include "qemu/units.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "pci.h"
#include "trace.h"
diff --git a/hw/vfio/platform.c b/hw/vfio/platform.c
index 622e609fb4..d7598c6152 100644
--- a/hw/vfio/platform.c
+++ b/hw/vfio/platform.c
@@ -20,16 +20,19 @@
#include <linux/vfio.h>
#include "hw/vfio/vfio-platform.h"
+#include "migration/vmstate.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/range.h"
-#include "sysemu/sysemu.h"
#include "exec/memory.h"
#include "exec/address-spaces.h"
#include "qemu/queue.h"
#include "hw/sysbus.h"
#include "trace.h"
+#include "hw/irq.h"
#include "hw/platform-bus.h"
+#include "hw/qdev-properties.h"
#include "sysemu/kvm.h"
/*
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost-backend.c
index 96b8d3c95d..48905383f8 100644
--- a/hw/virtio/vhost-backend.c
+++ b/hw/virtio/vhost-backend.c
@@ -12,6 +12,7 @@
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-backend.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "standard-headers/linux/vhost_types.h"
#ifdef CONFIG_VHOST_KERNEL
diff --git a/hw/virtio/vhost-scsi-pci.c b/hw/virtio/vhost-scsi-pci.c
index 95a1f32439..e8dfbfc60f 100644
--- a/hw/virtio/vhost-scsi-pci.c
+++ b/hw/virtio/vhost-scsi-pci.c
@@ -17,6 +17,7 @@
#include "qemu/osdep.h"
#include "standard-headers/linux/virtio_pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/vhost-scsi.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/virtio/vhost-user-blk-pci.c b/hw/virtio/vhost-user-blk-pci.c
index ed81614d43..1dc834a3ff 100644
--- a/hw/virtio/vhost-user-blk-pci.c
+++ b/hw/virtio/vhost-user-blk-pci.c
@@ -22,6 +22,7 @@
#include "hw/virtio/virtio.h"
#include "hw/virtio/vhost-user-blk.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/virtio/vhost-user-scsi-pci.c b/hw/virtio/vhost-user-scsi-pci.c
index daeea77ce1..ff13af7030 100644
--- a/hw/virtio/vhost-user-scsi-pci.c
+++ b/hw/virtio/vhost-user-scsi-pci.c
@@ -22,6 +22,7 @@
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-scsi.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 4ca5b2551e..02a9b25199 100644
--- a/hw/virtio/vhost-user.c
+++ b/hw/virtio/vhost-user.c
@@ -18,6 +18,7 @@
#include "chardev/char-fe.h"
#include "sysemu/kvm.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/sockets.h"
#include "sysemu/cryptodev.h"
#include "migration/migration.h"
diff --git a/hw/virtio/vhost-vsock-pci.c b/hw/virtio/vhost-vsock-pci.c
index c06c9a83b9..4ca097ffff 100644
--- a/hw/virtio/vhost-vsock-pci.c
+++ b/hw/virtio/vhost-vsock-pci.c
@@ -14,6 +14,7 @@
#include "qemu/osdep.h"
#include "virtio-pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/vhost-vsock.h"
#include "qemu/module.h"
diff --git a/hw/virtio/vhost-vsock.c b/hw/virtio/vhost-vsock.c
index 0371493197..f5744363a8 100644
--- a/hw/virtio/vhost-vsock.c
+++ b/hw/virtio/vhost-vsock.c
@@ -18,6 +18,7 @@
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-access.h"
#include "qemu/error-report.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/vhost-vsock.h"
#include "qemu/iov.h"
#include "qemu/module.h"
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index bc899fc60e..34accdf615 100644
--- a/hw/virtio/vhost.c
+++ b/hw/virtio/vhost.c
@@ -16,7 +16,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "hw/virtio/vhost.h"
-#include "hw/hw.h"
#include "qemu/atomic.h"
#include "qemu/range.h"
#include "qemu/error-report.h"
@@ -26,6 +25,7 @@
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-access.h"
#include "migration/blocker.h"
+#include "migration/qemu-file-types.h"
#include "sysemu/dma.h"
#include "trace.h"
diff --git a/hw/virtio/virtio-9p-pci.c b/hw/virtio/virtio-9p-pci.c
index 29c3712feb..22a183cca7 100644
--- a/hw/virtio/virtio-9p-pci.c
+++ b/hw/virtio/virtio-9p-pci.c
@@ -17,6 +17,7 @@
#include "virtio-pci.h"
#include "hw/9pfs/virtio-9p.h"
+#include "hw/qdev-properties.h"
#include "qemu/module.h"
/*
diff --git a/hw/virtio/virtio-balloon-pci.c b/hw/virtio/virtio-balloon-pci.c
index 7393435a98..69ca057911 100644
--- a/hw/virtio/virtio-balloon-pci.c
+++ b/hw/virtio/virtio-balloon-pci.c
@@ -15,6 +15,7 @@
#include "qemu/osdep.h"
#include "virtio-pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-balloon.h"
#include "qapi/error.h"
#include "qemu/module.h"
diff --git a/hw/virtio/virtio-balloon.c b/hw/virtio/virtio-balloon.c
index 25de154307..40b04f5180 100644
--- a/hw/virtio/virtio-balloon.c
+++ b/hw/virtio/virtio-balloon.c
@@ -19,6 +19,7 @@
#include "qemu/timer.h"
#include "hw/virtio/virtio.h"
#include "hw/mem/pc-dimm.h"
+#include "hw/qdev-properties.h"
#include "sysemu/balloon.h"
#include "hw/virtio/virtio-balloon.h"
#include "exec/address-spaces.h"
diff --git a/hw/virtio/virtio-blk-pci.c b/hw/virtio/virtio-blk-pci.c
index d790b07a99..d9b69a5af3 100644
--- a/hw/virtio/virtio-blk-pci.c
+++ b/hw/virtio/virtio-blk-pci.c
@@ -17,6 +17,7 @@
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-blk.h"
#include "virtio-pci.h"
#include "qapi/error.h"
diff --git a/hw/virtio/virtio-bus.c b/hw/virtio/virtio-bus.c
index 1d29a631f3..b2c804292e 100644
--- a/hw/virtio/virtio-bus.c
+++ b/hw/virtio/virtio-bus.c
@@ -23,11 +23,9 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio.h"
#include "exec/address-spaces.h"
diff --git a/hw/virtio/virtio-crypto-pci.c b/hw/virtio/virtio-crypto-pci.c
index 91d4446080..d853dc460c 100644
--- a/hw/virtio/virtio-crypto-pci.c
+++ b/hw/virtio/virtio-crypto-pci.c
@@ -14,6 +14,7 @@
#include "qemu/osdep.h"
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-bus.h"
#include "hw/virtio/virtio-pci.h"
diff --git a/hw/virtio/virtio-crypto.c b/hw/virtio/virtio-crypto.c
index 45187d3344..6d42f95a89 100644
--- a/hw/virtio/virtio-crypto.c
+++ b/hw/virtio/virtio-crypto.c
@@ -13,13 +13,14 @@
#include "qemu/osdep.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
-#include "hw/qdev.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-crypto.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-access.h"
#include "standard-headers/linux/virtio_ids.h"
#include "sysemu/cryptodev-vhost.h"
diff --git a/hw/virtio/virtio-input-pci.c b/hw/virtio/virtio-input-pci.c
index ad7774e93e..80b1172c90 100644
--- a/hw/virtio/virtio-input-pci.c
+++ b/hw/virtio/virtio-input-pci.c
@@ -9,6 +9,7 @@
#include "qemu/osdep.h"
#include "virtio-pci.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-input.h"
#include "qemu/module.h"
diff --git a/hw/virtio/virtio-mmio.c b/hw/virtio/virtio-mmio.c
index 97b7f35496..eccc795f28 100644
--- a/hw/virtio/virtio-mmio.c
+++ b/hw/virtio/virtio-mmio.c
@@ -21,8 +21,11 @@
#include "qemu/osdep.h"
#include "standard-headers/linux/virtio_mmio.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "hw/virtio/virtio.h"
+#include "migration/qemu-file-types.h"
#include "qemu/host-utils.h"
#include "qemu/module.h"
#include "sysemu/kvm.h"
diff --git a/hw/virtio/virtio-net-pci.c b/hw/virtio/virtio-net-pci.c
index 5df36f26bf..f670aed0a7 100644
--- a/hw/virtio/virtio-net-pci.c
+++ b/hw/virtio/virtio-net-pci.c
@@ -17,6 +17,7 @@
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-net.h"
#include "virtio-pci.h"
#include "qapi/error.h"
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index f6d2223e78..8babd92e59 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -19,8 +19,10 @@
#include "standard-headers/linux/virtio_pci.h"
#include "hw/virtio/virtio.h"
+#include "migration/qemu-file-types.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c
index 17c196d107..c0c9395e55 100644
--- a/hw/virtio/virtio-pmem.c
+++ b/hw/virtio/virtio-pmem.c
@@ -15,10 +15,13 @@
#include "qapi/error.h"
#include "qemu-common.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "hw/virtio/virtio-pmem.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-access.h"
#include "standard-headers/linux/virtio_ids.h"
#include "standard-headers/linux/virtio_pmem.h"
+#include "sysemu/hostmem.h"
#include "block/aio.h"
#include "block/thread-pool.h"
diff --git a/hw/virtio/virtio-rng.c b/hw/virtio/virtio-rng.c
index db6d1d9454..d1650e1dee 100644
--- a/hw/virtio/virtio-rng.c
+++ b/hw/virtio/virtio-rng.c
@@ -13,10 +13,12 @@
#include "qapi/error.h"
#include "qemu/iov.h"
#include "qemu/module.h"
-#include "hw/qdev.h"
+#include "qemu/timer.h"
#include "hw/virtio/virtio.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-rng.h"
#include "sysemu/rng.h"
+#include "sysemu/runstate.h"
#include "qom/object_interfaces.h"
#include "trace.h"
diff --git a/hw/virtio/virtio-scsi-pci.c b/hw/virtio/virtio-scsi-pci.c
index f68f689aee..3c55dc19a1 100644
--- a/hw/virtio/virtio-scsi-pci.c
+++ b/hw/virtio/virtio-scsi-pci.c
@@ -15,6 +15,7 @@
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-scsi.h"
#include "qemu/module.h"
#include "virtio-pci.h"
diff --git a/hw/virtio/virtio-serial-pci.c b/hw/virtio/virtio-serial-pci.c
index ac74b44dae..953abbd13a 100644
--- a/hw/virtio/virtio-serial-pci.c
+++ b/hw/virtio/virtio-serial-pci.c
@@ -17,6 +17,7 @@
#include "qemu/osdep.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-serial.h"
#include "qemu/module.h"
#include "virtio-pci.h"
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
index a94ea18a9c..527df03bfd 100644
--- a/hw/virtio/virtio.c
+++ b/hw/virtio/virtio.c
@@ -17,12 +17,16 @@
#include "trace.h"
#include "exec/address-spaces.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "hw/virtio/virtio.h"
+#include "migration/qemu-file-types.h"
#include "qemu/atomic.h"
#include "hw/virtio/virtio-bus.h"
+#include "hw/qdev-properties.h"
#include "hw/virtio/virtio-access.h"
#include "sysemu/dma.h"
+#include "sysemu/runstate.h"
/*
* The alignment to use between consumer and producer parts of vring.
diff --git a/hw/watchdog/cmsdk-apb-watchdog.c b/hw/watchdog/cmsdk-apb-watchdog.c
index 54ac393020..6bf43f943f 100644
--- a/hw/watchdog/cmsdk-apb-watchdog.c
+++ b/hw/watchdog/cmsdk-apb-watchdog.c
@@ -28,8 +28,11 @@
#include "qemu/module.h"
#include "sysemu/watchdog.h"
#include "hw/sysbus.h"
+#include "hw/irq.h"
+#include "hw/qdev-properties.h"
#include "hw/registerfields.h"
#include "hw/watchdog/cmsdk-apb-watchdog.h"
+#include "migration/vmstate.h"
REG32(WDOGLOAD, 0x0)
REG32(WDOGVALUE, 0x4)
diff --git a/hw/watchdog/watchdog.c b/hw/watchdog/watchdog.c
index dce7c1db14..0e98ffb73f 100644
--- a/hw/watchdog/watchdog.c
+++ b/hw/watchdog/watchdog.c
@@ -26,7 +26,7 @@
#include "qapi/error.h"
#include "qapi/qapi-commands-run-state.h"
#include "qapi/qapi-events-run-state.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "sysemu/watchdog.h"
#include "hw/nmi.h"
#include "qemu/help_option.h"
diff --git a/hw/watchdog/wdt_aspeed.c b/hw/watchdog/wdt_aspeed.c
index 57fe24ae6b..9b93213417 100644
--- a/hw/watchdog/wdt_aspeed.c
+++ b/hw/watchdog/wdt_aspeed.c
@@ -15,8 +15,10 @@
#include "qemu/timer.h"
#include "sysemu/watchdog.h"
#include "hw/misc/aspeed_scu.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "hw/watchdog/wdt_aspeed.h"
+#include "migration/vmstate.h"
#define WDT_STATUS (0x00 / 4)
#define WDT_RELOAD_VALUE (0x04 / 4)
diff --git a/hw/watchdog/wdt_diag288.c b/hw/watchdog/wdt_diag288.c
index 29e5b5dcf6..5b6eb2b09f 100644
--- a/hw/watchdog/wdt_diag288.c
+++ b/hw/watchdog/wdt_diag288.c
@@ -12,10 +12,12 @@
*/
#include "qemu/osdep.h"
+#include "sysemu/reset.h"
#include "sysemu/watchdog.h"
#include "hw/sysbus.h"
#include "qemu/timer.h"
#include "hw/watchdog/wdt_diag288.h"
+#include "migration/vmstate.h"
#include "qemu/log.h"
#include "qemu/module.h"
diff --git a/hw/watchdog/wdt_i6300esb.c b/hw/watchdog/wdt_i6300esb.c
index 6780f01add..370cf92e85 100644
--- a/hw/watchdog/wdt_i6300esb.c
+++ b/hw/watchdog/wdt_i6300esb.c
@@ -24,8 +24,8 @@
#include "qemu/module.h"
#include "qemu/timer.h"
#include "sysemu/watchdog.h"
-#include "hw/hw.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
/*#define I6300ESB_DEBUG 1*/
diff --git a/hw/watchdog/wdt_ib700.c b/hw/watchdog/wdt_ib700.c
index e0e5beb99d..985944a84a 100644
--- a/hw/watchdog/wdt_ib700.c
+++ b/hw/watchdog/wdt_ib700.c
@@ -23,8 +23,8 @@
#include "qemu/module.h"
#include "qemu/timer.h"
#include "sysemu/watchdog.h"
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "migration/vmstate.h"
/*#define IB700_DEBUG 1*/
diff --git a/hw/xen/xen-bus-helper.c b/hw/xen/xen-bus-helper.c
index 5f7a4b2612..b459bb9396 100644
--- a/hw/xen/xen-bus-helper.c
+++ b/hw/xen/xen-bus-helper.c
@@ -6,7 +6,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/xen/xen.h"
#include "hw/xen/xen-bus.h"
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 7503eea9e9..e40500242d 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -9,7 +9,7 @@
#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/uuid.h"
-#include "hw/hw.h"
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "hw/xen/xen.h"
#include "hw/xen/xen-backend.h"
diff --git a/hw/xen/xen-common.c b/hw/xen/xen-common.c
index 32503cfc1c..5284b0dec1 100644
--- a/hw/xen/xen-common.c
+++ b/hw/xen/xen-common.c
@@ -14,6 +14,7 @@
#include "hw/xen/xen-legacy-backend.h"
#include "chardev/char.h"
#include "sysemu/accel.h"
+#include "sysemu/runstate.h"
#include "migration/misc.h"
#include "migration/global_state.h"
diff --git a/hw/xen/xen-legacy-backend.c b/hw/xen/xen-legacy-backend.c
index 3715c94fa6..4412d7aa76 100644
--- a/hw/xen/xen-legacy-backend.c
+++ b/hw/xen/xen-legacy-backend.c
@@ -25,10 +25,11 @@
#include "qemu/osdep.h"
#include <sys/signal.h>
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qapi/error.h"
#include "hw/xen/xen-legacy-backend.h"
#include "hw/xen/xen_pvdev.h"
diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 315dbc9c51..46ee4a7f02 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -2,6 +2,7 @@
#include "hw/xen/xen-legacy-backend.h"
#include "qemu/option.h"
#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
/* ------------------------------------------------------------- */
diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c
index 5539d56c3a..8fbaf2eae9 100644
--- a/hw/xen/xen_pt.c
+++ b/hw/xen/xen_pt.c
@@ -57,6 +57,7 @@
#include <sys/ioctl.h>
#include "hw/pci/pci.h"
+#include "hw/qdev-properties.h"
#include "hw/xen/xen.h"
#include "hw/i386/pc.h"
#include "hw/xen/xen-legacy-backend.h"
diff --git a/hw/xen/xen_pt_load_rom.c b/hw/xen/xen_pt_load_rom.c
index e6a86ca818..307a5c93e2 100644
--- a/hw/xen/xen_pt_load_rom.c
+++ b/hw/xen/xen_pt_load_rom.c
@@ -3,14 +3,12 @@
*/
#include "qemu/osdep.h"
#include "qapi/error.h"
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "qemu/error-report.h"
#include "ui/console.h"
#include "hw/loader.h"
#include "monitor/monitor.h"
#include "qemu/range.h"
-#include "sysemu/sysemu.h"
#include "hw/pci/pci.h"
#include "xen_pt.h"
diff --git a/hw/xen/xen_pvdev.c b/hw/xen/xen_pvdev.c
index 6ef09cbf9d..43a336aabf 100644
--- a/hw/xen/xen_pvdev.c
+++ b/hw/xen/xen_pvdev.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "hw/qdev-core.h"
#include "hw/xen/xen-legacy-backend.h"
#include "hw/xen/xen_pvdev.h"
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index dcaf2a01a3..3a8af1a1e0 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -24,11 +24,11 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
-#include "hw/hw.h"
#include "hw/boards.h"
#include "hw/xen/xen-legacy-backend.h"
#include "hw/xen/xen-bus.h"
#include "sysemu/block-backend.h"
+#include "sysemu/sysemu.h"
static void xen_init_pv(MachineState *machine)
{
diff --git a/hw/xtensa/mx_pic.c b/hw/xtensa/mx_pic.c
index 7075db9d4b..d889f953d1 100644
--- a/hw/xtensa/mx_pic.c
+++ b/hw/xtensa/mx_pic.c
@@ -26,7 +26,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "hw/xtensa/mx_pic.h"
#include "qemu/log.h"
diff --git a/hw/xtensa/pic_cpu.c b/hw/xtensa/pic_cpu.c
index df3acbb541..edd53c9241 100644
--- a/hw/xtensa/pic_cpu.c
+++ b/hw/xtensa/pic_cpu.c
@@ -27,7 +27,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
+#include "hw/irq.h"
#include "qemu/log.h"
#include "qemu/timer.h"
diff --git a/hw/xtensa/sim.c b/hw/xtensa/sim.c
index 09165b6f4d..981dbb7bbe 100644
--- a/hw/xtensa/sim.c
+++ b/hw/xtensa/sim.c
@@ -28,6 +28,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
+#include "sysemu/reset.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/loader.h"
diff --git a/hw/xtensa/xtensa_memory.c b/hw/xtensa/xtensa_memory.c
index 394d0cf227..1c5f62b014 100644
--- a/hw/xtensa/xtensa_memory.c
+++ b/hw/xtensa/xtensa_memory.c
@@ -28,8 +28,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "cpu.h"
-#include "sysemu/sysemu.h"
-#include "hw/boards.h"
#include "exec/memory.h"
#include "qemu/error-report.h"
#include "xtensa_memory.h"
diff --git a/hw/xtensa/xtensa_memory.h b/hw/xtensa/xtensa_memory.h
index d50a3cccc0..af7e8025e3 100644
--- a/hw/xtensa/xtensa_memory.h
+++ b/hw/xtensa/xtensa_memory.h
@@ -29,7 +29,6 @@
#define XTENSA_MEMORY_H
#include "cpu.h"
-#include "exec/memory.h"
void xtensa_create_memory_regions(const XtensaMemory *memory,
const char *name,
diff --git a/hw/xtensa/xtfpga.c b/hw/xtensa/xtfpga.c
index f7f3e11e93..8220c7a379 100644
--- a/hw/xtensa/xtfpga.c
+++ b/hw/xtensa/xtfpga.c
@@ -32,6 +32,7 @@
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/loader.h"
+#include "hw/qdev-properties.h"
#include "elf.h"
#include "exec/memory.h"
#include "exec/address-spaces.h"
@@ -41,11 +42,14 @@
#include "hw/block/flash.h"
#include "chardev/char.h"
#include "sysemu/device_tree.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/error-report.h"
#include "qemu/option.h"
#include "bootparam.h"
#include "xtensa_memory.h"
#include "hw/xtensa/mx_pic.h"
+#include "migration/vmstate.h"
typedef struct XtfpgaFlashDesc {
hwaddr base;
diff --git a/include/authz/listfile.h b/include/authz/listfile.h
index 33b728d873..24ae2e606c 100644
--- a/include/authz/listfile.h
+++ b/include/authz/listfile.h
@@ -22,7 +22,6 @@
#define QAUTHZ_LISTFILE_H
#include "authz/list.h"
-#include "qapi/qapi-types-authz.h"
#include "qemu/filemonitor.h"
#define TYPE_QAUTHZ_LIST_FILE "authz-list-file"
diff --git a/include/block/block.h b/include/block/block.h
index 50a07c1c33..ae79b70e2d 100644
--- a/include/block/block.h
+++ b/include/block/block.h
@@ -2,7 +2,6 @@
#define BLOCK_H
#include "block/aio.h"
-#include "qapi/qapi-types-block-core.h"
#include "block/aio-wait.h"
#include "qemu/iov.h"
#include "qemu/coroutine.h"
diff --git a/include/block/block_int.h b/include/block/block_int.h
index 3aa1e832a8..6207a105ff 100644
--- a/include/block/block_int.h
+++ b/include/block/block_int.h
@@ -33,7 +33,6 @@
#include "qemu/timer.h"
#include "qemu/hbitmap.h"
#include "block/snapshot.h"
-#include "qemu/main-loop.h"
#include "qemu/throttle.h"
#define BLOCK_FLAG_LAZY_REFCOUNTS 8
diff --git a/include/block/raw-aio.h b/include/block/raw-aio.h
index 0cb7cc74a2..4629f24d08 100644
--- a/include/block/raw-aio.h
+++ b/include/block/raw-aio.h
@@ -12,9 +12,11 @@
* Contributions after 2012-01-13 are licensed under the terms of the
* GNU GPL, version 2 or (at your option) any later version.
*/
+
#ifndef QEMU_RAW_AIO_H
#define QEMU_RAW_AIO_H
+#include "block/aio.h"
#include "qemu/coroutine.h"
#include "qemu/iov.h"
diff --git a/include/block/write-threshold.h b/include/block/write-threshold.h
index 80d8aab5d0..c646f267a4 100644
--- a/include/block/write-threshold.h
+++ b/include/block/write-threshold.h
@@ -9,9 +9,11 @@
* This work is licensed under the terms of the GNU LGPL, version 2 or later.
* See the COPYING.LIB file in the top-level directory.
*/
+
#ifndef BLOCK_WRITE_THRESHOLD_H
#define BLOCK_WRITE_THRESHOLD_H
+#include "block/block_int.h"
/*
* bdrv_write_threshold_set:
diff --git a/include/chardev/char-fe.h b/include/chardev/char-fe.h
index aa1b864ccd..67601dc9a4 100644
--- a/include/chardev/char-fe.h
+++ b/include/chardev/char-fe.h
@@ -2,6 +2,7 @@
#define QEMU_CHAR_FE_H
#include "chardev/char.h"
+#include "qemu/main-loop.h"
typedef void IOEventHandler(void *opaque, int event);
typedef int BackendChangeHandler(void *opaque);
diff --git a/include/chardev/char-io.h b/include/chardev/char-io.h
index 1709b59c9f..ac379ea70e 100644
--- a/include/chardev/char-io.h
+++ b/include/chardev/char-io.h
@@ -26,6 +26,7 @@
#include "io/channel.h"
#include "chardev/char.h"
+#include "qemu/main-loop.h"
/* Can only be used for read */
GSource *io_add_watch_poll(Chardev *chr,
diff --git a/include/chardev/char.h b/include/chardev/char.h
index c0b57f7685..087b202b62 100644
--- a/include/chardev/char.h
+++ b/include/chardev/char.h
@@ -2,8 +2,8 @@
#define QEMU_CHAR_H
#include "qapi/qapi-types-char.h"
-#include "qemu/main-loop.h"
#include "qemu/bitmap.h"
+#include "qemu/thread.h"
#include "qom/object.h"
#define IAC_EOR 239
diff --git a/include/disas/disas.h b/include/disas/disas.h
index 15da511f49..ba47e9197c 100644
--- a/include/disas/disas.h
+++ b/include/disas/disas.h
@@ -1,6 +1,7 @@
#ifndef QEMU_DISAS_H
#define QEMU_DISAS_H
+#include "exec/hwaddr.h"
#ifdef NEED_CPU_H
#include "cpu.h"
diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
index 9bc713a70b..57a9a4ffd9 100644
--- a/include/exec/cpu-defs.h
+++ b/include/exec/cpu-defs.h
@@ -25,7 +25,6 @@
#include "qemu/host-utils.h"
#include "qemu/thread.h"
-#include "qemu/queue.h"
#ifdef CONFIG_TCG
#include "tcg-target.h"
#endif
diff --git a/include/exec/cputlb.h b/include/exec/cputlb.h
index 5373188be3..a62cfb28d5 100644
--- a/include/exec/cputlb.h
+++ b/include/exec/cputlb.h
@@ -16,9 +16,12 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#ifndef CPUTLB_H
#define CPUTLB_H
+#include "exec/cpu-common.h"
+
#if !defined(CONFIG_USER_ONLY)
/* cputlb.c */
void tlb_protect_code(ram_addr_t ram_addr);
diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index 16034ee651..135aeaab0d 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -20,6 +20,7 @@
#ifndef EXEC_ALL_H
#define EXEC_ALL_H
+#include "cpu.h"
#include "exec/tb-context.h"
#include "sysemu/cpus.h"
diff --git a/include/exec/ioport.h b/include/exec/ioport.h
index a298b89ce1..97feb296d2 100644
--- a/include/exec/ioport.h
+++ b/include/exec/ioport.h
@@ -24,6 +24,8 @@
#ifndef IOPORT_H
#define IOPORT_H
+#include "exec/memory.h"
+
#define MAX_IOPORTS (64 * 1024)
#define IOPORTS_MASK (MAX_IOPORTS - 1)
diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h
index d1a9dd1ec8..ef4fb92371 100644
--- a/include/exec/memory-internal.h
+++ b/include/exec/memory-internal.h
@@ -20,6 +20,8 @@
#ifndef MEMORY_INTERNAL_H
#define MEMORY_INTERNAL_H
+#include "cpu.h"
+
#ifndef CONFIG_USER_ONLY
static inline AddressSpaceDispatch *flatview_to_dispatch(FlatView *fv)
{
diff --git a/include/exec/memory.h b/include/exec/memory.h
index bb0961ddb9..d99eb25d2e 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -20,12 +20,12 @@
#include "exec/hwaddr.h"
#include "exec/memattrs.h"
#include "exec/ramlist.h"
+#include "qemu/bswap.h"
#include "qemu/queue.h"
#include "qemu/int128.h"
#include "qemu/notify.h"
#include "qom/object.h"
#include "qemu/rcu.h"
-#include "hw/qdev-core.h"
#define RAM_ADDR_INVALID (~(ram_addr_t)0)
@@ -205,6 +205,12 @@ struct MemoryRegionOps {
} impl;
};
+typedef struct MemoryRegionClass {
+ /* private */
+ ObjectClass parent_class;
+} MemoryRegionClass;
+
+
enum IOMMUMemoryRegionAttr {
IOMMU_ATTR_SPAPR_TCE_FD
};
@@ -237,7 +243,7 @@ enum IOMMUMemoryRegionAttr {
*/
typedef struct IOMMUMemoryRegionClass {
/* private */
- struct DeviceClass parent_class;
+ MemoryRegionClass parent_class;
/*
* Return a TLB entry that contains a given address.
diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
index b7b2e60ff6..a327a80cfe 100644
--- a/include/exec/ram_addr.h
+++ b/include/exec/ram_addr.h
@@ -20,6 +20,7 @@
#define RAM_ADDR_H
#ifndef CONFIG_USER_ONLY
+#include "cpu.h"
#include "hw/xen/xen.h"
#include "sysemu/tcg.h"
#include "exec/ramlist.h"
diff --git a/include/exec/softmmu-semi.h b/include/exec/softmmu-semi.h
index 970837992e..fbcae88f4b 100644
--- a/include/exec/softmmu-semi.h
+++ b/include/exec/softmmu-semi.h
@@ -10,6 +10,8 @@
#ifndef SOFTMMU_SEMI_H
#define SOFTMMU_SEMI_H
+#include "cpu.h"
+
static inline uint64_t softmmu_tget64(CPUArchState *env, target_ulong addr)
{
uint64_t val;
diff --git a/include/exec/tb-hash.h b/include/exec/tb-hash.h
index 4f3a37d927..805235d321 100644
--- a/include/exec/tb-hash.h
+++ b/include/exec/tb-hash.h
@@ -20,6 +20,8 @@
#ifndef EXEC_TB_HASH_H
#define EXEC_TB_HASH_H
+#include "exec/cpu-defs.h"
+#include "exec/exec-all.h"
#include "qemu/xxhash.h"
#ifdef CONFIG_SOFTMMU
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
index 8d3af5a3be..eae2c27f99 100644
--- a/include/exec/user/thunk.h
+++ b/include/exec/user/thunk.h
@@ -16,10 +16,12 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#ifndef THUNK_H
#define THUNK_H
#include "cpu.h"
+#include "exec/user/abitypes.h"
/* types enums definitions */
diff --git a/include/fpu/softfloat-macros.h b/include/fpu/softfloat-macros.h
index c55aa6d174..be83a833ec 100644
--- a/include/fpu/softfloat-macros.h
+++ b/include/fpu/softfloat-macros.h
@@ -82,6 +82,8 @@ this code that are retained.
#ifndef FPU_SOFTFLOAT_MACROS_H
#define FPU_SOFTFLOAT_MACROS_H
+#include "fpu/softfloat.h"
+
/*----------------------------------------------------------------------------
| Shifts `a' right by the number of bits given in `count'. If any nonzero
| bits are shifted off, they are ``jammed'' into the least significant bit of
diff --git a/include/hw/acpi/acpi.h b/include/hw/acpi/acpi.h
index c91e2b9df2..1f2dafbd7d 100644
--- a/include/hw/acpi/acpi.h
+++ b/include/hw/acpi/acpi.h
@@ -22,7 +22,6 @@
#include "qemu/notify.h"
#include "exec/memory.h"
-#include "hw/irq.h"
#include "hw/acpi/acpi_dev_interface.h"
/*
diff --git a/include/hw/acpi/acpi_dev_interface.h b/include/hw/acpi/acpi_dev_interface.h
index 43ff119179..0ba90effd2 100644
--- a/include/hw/acpi/acpi_dev_interface.h
+++ b/include/hw/acpi/acpi_dev_interface.h
@@ -1,8 +1,10 @@
#ifndef ACPI_DEV_INTERFACE_H
#define ACPI_DEV_INTERFACE_H
+#include "qapi/qapi-types-misc.h"
#include "qom/object.h"
#include "hw/boards.h"
+#include "hw/qdev-core.h"
/* These values are part of guest ABI, and can not be changed */
typedef enum {
diff --git a/include/hw/acpi/pci.h b/include/hw/acpi/pci.h
index 8bbd32cf45..bf2a3ed0ba 100644
--- a/include/hw/acpi/pci.h
+++ b/include/hw/acpi/pci.h
@@ -22,9 +22,12 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#ifndef HW_ACPI_PCI_H
#define HW_ACPI_PCI_H
+#include "hw/acpi/bios-linker-loader.h"
+
typedef struct AcpiMcfgInfo {
uint64_t base;
uint32_t size;
diff --git a/include/hw/acpi/tco.h b/include/hw/acpi/tco.h
index d19dd59353..a1e0da8213 100644
--- a/include/hw/acpi/tco.h
+++ b/include/hw/acpi/tco.h
@@ -6,9 +6,11 @@
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*/
+
#ifndef HW_ACPI_TCO_H
#define HW_ACPI_TCO_H
+#include "exec/memory.h"
/* As per ICH9 spec, the internal timer has an error of ~0.6s on every tick */
#define TCO_TICK_NSEC 600000000LL
diff --git a/include/hw/acpi/vmgenid.h b/include/hw/acpi/vmgenid.h
index 38586ecbdf..c49d913f3e 100644
--- a/include/hw/acpi/vmgenid.h
+++ b/include/hw/acpi/vmgenid.h
@@ -2,7 +2,7 @@
#define ACPI_VMGENID_H
#include "hw/acpi/bios-linker-loader.h"
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "qemu/uuid.h"
#define VMGENID_DEVICE "vmgenid"
diff --git a/include/hw/adc/stm32f2xx_adc.h b/include/hw/adc/stm32f2xx_adc.h
index a72f734eb1..663b79f4f3 100644
--- a/include/hw/adc/stm32f2xx_adc.h
+++ b/include/hw/adc/stm32f2xx_adc.h
@@ -25,6 +25,8 @@
#ifndef HW_STM32F2XX_ADC_H
#define HW_STM32F2XX_ADC_H
+#include "hw/sysbus.h"
+
#define ADC_SR 0x00
#define ADC_CR1 0x04
#define ADC_CR2 0x08
diff --git a/include/hw/arm/allwinner-a10.h b/include/hw/arm/allwinner-a10.h
index e99fe2ea2e..7d2d215630 100644
--- a/include/hw/arm/allwinner-a10.h
+++ b/include/hw/arm/allwinner-a10.h
@@ -7,10 +7,9 @@
#include "hw/timer/allwinner-a10-pit.h"
#include "hw/intc/allwinner-a10-pic.h"
#include "hw/net/allwinner_emac.h"
-#include "hw/ide/pci.h"
#include "hw/ide/ahci.h"
-#include "sysemu/sysemu.h"
+#include "target/arm/cpu.h"
#define AW_A10_PIC_REG_BASE 0x01c20400
diff --git a/include/hw/arm/aspeed_soc.h b/include/hw/arm/aspeed_soc.h
index cef605ad6b..976fd6be93 100644
--- a/include/hw/arm/aspeed_soc.h
+++ b/include/hw/arm/aspeed_soc.h
@@ -22,6 +22,7 @@
#include "hw/ssi/aspeed_smc.h"
#include "hw/watchdog/wdt_aspeed.h"
#include "hw/net/ftgmac100.h"
+#include "target/arm/cpu.h"
#define ASPEED_SPIS_NUM 2
#define ASPEED_WDTS_NUM 3
diff --git a/include/hw/arm/bcm2836.h b/include/hw/arm/bcm2836.h
index a2cb8454de..97187f72be 100644
--- a/include/hw/arm/bcm2836.h
+++ b/include/hw/arm/bcm2836.h
@@ -13,6 +13,7 @@
#include "hw/arm/bcm2835_peripherals.h"
#include "hw/intc/bcm2836_control.h"
+#include "target/arm/cpu.h"
#define TYPE_BCM283X "bcm283x"
#define BCM283X(obj) OBJECT_CHECK(BCM283XState, (obj), TYPE_BCM283X)
diff --git a/include/hw/arm/boot.h b/include/hw/arm/boot.h
index c48cc4c2bc..5714dea1a2 100644
--- a/include/hw/arm/boot.h
+++ b/include/hw/arm/boot.h
@@ -11,9 +11,7 @@
#ifndef HW_ARM_BOOT_H
#define HW_ARM_BOOT_H
-#include "exec/memory.h"
#include "target/arm/cpu-qom.h"
-#include "hw/irq.h"
#include "qemu/notify.h"
typedef enum {
diff --git a/include/hw/arm/exynos4210.h b/include/hw/arm/exynos4210.h
index aa137271c0..f0f23b0e9b 100644
--- a/include/hw/arm/exynos4210.h
+++ b/include/hw/arm/exynos4210.h
@@ -19,13 +19,12 @@
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, see <http://www.gnu.org/licenses/>.
- *
*/
#ifndef EXYNOS4210_H
#define EXYNOS4210_H
-#include "exec/memory.h"
+#include "hw/sysbus.h"
#include "target/arm/cpu-qom.h"
#define EXYNOS4210_NCPUS 2
diff --git a/include/hw/arm/fsl-imx25.h b/include/hw/arm/fsl-imx25.h
index 3280ab1fb0..241efb52ae 100644
--- a/include/hw/arm/fsl-imx25.h
+++ b/include/hw/arm/fsl-imx25.h
@@ -27,6 +27,7 @@
#include "hw/i2c/imx_i2c.h"
#include "hw/gpio/imx_gpio.h"
#include "exec/memory.h"
+#include "target/arm/cpu.h"
#define TYPE_FSL_IMX25 "fsl,imx25"
#define FSL_IMX25(obj) OBJECT_CHECK(FslIMX25State, (obj), TYPE_FSL_IMX25)
diff --git a/include/hw/arm/fsl-imx31.h b/include/hw/arm/fsl-imx31.h
index e68a81efd7..ac5ca9826a 100644
--- a/include/hw/arm/fsl-imx31.h
+++ b/include/hw/arm/fsl-imx31.h
@@ -26,6 +26,7 @@
#include "hw/i2c/imx_i2c.h"
#include "hw/gpio/imx_gpio.h"
#include "exec/memory.h"
+#include "target/arm/cpu.h"
#define TYPE_FSL_IMX31 "fsl,imx31"
#define FSL_IMX31(obj) OBJECT_CHECK(FslIMX31State, (obj), TYPE_FSL_IMX31)
diff --git a/include/hw/arm/fsl-imx7.h b/include/hw/arm/fsl-imx7.h
index 8003d45d1e..706aef2e7e 100644
--- a/include/hw/arm/fsl-imx7.h
+++ b/include/hw/arm/fsl-imx7.h
@@ -38,7 +38,6 @@
#include "hw/net/imx_fec.h"
#include "hw/pci-host/designware.h"
#include "hw/usb/chipidea.h"
-#include "exec/memory.h"
#include "cpu.h"
#define TYPE_FSL_IMX7 "fsl,imx7"
diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h
index d21e418242..2fda996648 100644
--- a/include/hw/arm/omap.h
+++ b/include/hw/arm/omap.h
@@ -21,7 +21,6 @@
#define HW_ARM_OMAP_H
#include "exec/memory.h"
-#include "hw/irq.h"
#include "hw/input/tsc2xxx.h"
#include "target/arm/cpu-qom.h"
#include "qemu/log.h"
diff --git a/include/hw/arm/sharpsl.h b/include/hw/arm/sharpsl.h
index 5bf6db1fa2..89e168fbff 100644
--- a/include/hw/arm/sharpsl.h
+++ b/include/hw/arm/sharpsl.h
@@ -3,9 +3,12 @@
*
* This file is licensed under the GNU GPL.
*/
+
#ifndef QEMU_SHARPSL_H
#define QEMU_SHARPSL_H
+#include "exec/hwaddr.h"
+
#define zaurus_printf(format, ...) \
fprintf(stderr, "%s: " format, __func__, ##__VA_ARGS__)
diff --git a/include/hw/arm/soc_dma.h b/include/hw/arm/soc_dma.h
index fae322997e..e93a7499a8 100644
--- a/include/hw/arm/soc_dma.h
+++ b/include/hw/arm/soc_dma.h
@@ -21,8 +21,7 @@
#ifndef HW_SOC_DMA_H
#define HW_SOC_DMA_H
-#include "exec/memory.h"
-#include "hw/irq.h"
+#include "exec/hwaddr.h"
struct soc_dma_s;
struct soc_dma_ch_s;
diff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h
index 35804ea80a..d7483c3b42 100644
--- a/include/hw/arm/xlnx-zynqmp.h
+++ b/include/hw/arm/xlnx-zynqmp.h
@@ -22,7 +22,6 @@
#include "hw/intc/arm_gic.h"
#include "hw/net/cadence_gem.h"
#include "hw/char/cadence_uart.h"
-#include "hw/ide/pci.h"
#include "hw/ide/ahci.h"
#include "hw/sd/sdhci.h"
#include "hw/ssi/xilinx_spips.h"
@@ -32,6 +31,7 @@
#include "hw/intc/xlnx-zynqmp-ipi.h"
#include "hw/timer/xlnx-zynqmp-rtc.h"
#include "hw/cpu/cluster.h"
+#include "target/arm/cpu.h"
#define TYPE_XLNX_ZYNQMP "xlnx,zynqmp"
#define XLNX_ZYNQMP(obj) OBJECT_CHECK(XlnxZynqMPState, (obj), \
diff --git a/include/hw/audio/pcspk.h b/include/hw/audio/pcspk.h
index 172afbf146..632cce9f68 100644
--- a/include/hw/audio/pcspk.h
+++ b/include/hw/audio/pcspk.h
@@ -25,8 +25,8 @@
#ifndef HW_PCSPK_H
#define HW_PCSPK_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#define TYPE_PC_SPEAKER "isa-pcspk"
diff --git a/include/hw/audio/wm8750.h b/include/hw/audio/wm8750.h
index e12cb886d1..f7bafd5e38 100644
--- a/include/hw/audio/wm8750.h
+++ b/include/hw/audio/wm8750.h
@@ -14,7 +14,6 @@
#ifndef HW_DAC_WM8750_H
#define HW_DAC_WM8750_H
-#include "hw/hw.h"
#define TYPE_WM8750 "wm8750"
#define TYPE_MV88W8618_AUDIO "mv88w8618_audio"
diff --git a/include/hw/block/fdc.h b/include/hw/block/fdc.h
index 8cece84326..c15ff4c623 100644
--- a/include/hw/block/fdc.h
+++ b/include/hw/block/fdc.h
@@ -1,6 +1,7 @@
#ifndef HW_FDC_H
#define HW_FDC_H
+#include "exec/hwaddr.h"
#include "qapi/qapi-types-block.h"
/* fdc.c */
diff --git a/include/hw/block/flash.h b/include/hw/block/flash.h
index 1acaf7de80..2136a2d5e4 100644
--- a/include/hw/block/flash.h
+++ b/include/hw/block/flash.h
@@ -3,7 +3,7 @@
/* NOR flash devices */
-#include "exec/memory.h"
+#include "exec/hwaddr.h"
/* pflash_cfi01.c */
diff --git a/include/hw/boards.h b/include/hw/boards.h
index a71d1a53a5..739d109fe1 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -3,9 +3,9 @@
#ifndef HW_BOARDS_H
#define HW_BOARDS_H
+#include "exec/memory.h"
#include "sysemu/blockdev.h"
#include "sysemu/accel.h"
-#include "hw/qdev.h"
#include "qapi/qapi-types-machine.h"
#include "qemu/module.h"
#include "qom/object.h"
@@ -86,7 +86,7 @@ void machine_class_allow_dynamic_sysbus_dev(MachineClass *mc, const char *type);
* @props - CPU object properties, initialized by board
* #vcpus_count - number of threads provided by @cpu object
*/
-typedef struct {
+typedef struct CPUArchId {
uint64_t arch_id;
int64_t vcpus_count;
CpuInstanceProperties props;
diff --git a/include/hw/bt.h b/include/hw/bt.h
index b5e11d4d43..d9ee2fc29a 100644
--- a/include/hw/bt.h
+++ b/include/hw/bt.h
@@ -26,7 +26,6 @@
#ifndef HW_BT_H
#define HW_BT_H
-#include "hw/irq.h"
/* BD Address */
typedef struct {
diff --git a/include/hw/char/cadence_uart.h b/include/hw/char/cadence_uart.h
index e1cf33e94c..47cec956c4 100644
--- a/include/hw/char/cadence_uart.h
+++ b/include/hw/char/cadence_uart.h
@@ -19,6 +19,7 @@
#ifndef CADENCE_UART_H
#define CADENCE_UART_H
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
#include "qemu/timer.h"
diff --git a/include/hw/char/cmsdk-apb-uart.h b/include/hw/char/cmsdk-apb-uart.h
index c41fba9a27..3c1b53db4e 100644
--- a/include/hw/char/cmsdk-apb-uart.h
+++ b/include/hw/char/cmsdk-apb-uart.h
@@ -12,6 +12,7 @@
#ifndef CMSDK_APB_UART_H
#define CMSDK_APB_UART_H
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
diff --git a/include/hw/char/escc.h b/include/hw/char/escc.h
index 42aca83611..d5196c53e6 100644
--- a/include/hw/char/escc.h
+++ b/include/hw/char/escc.h
@@ -3,6 +3,7 @@
#include "chardev/char-fe.h"
#include "chardev/char-serial.h"
+#include "hw/sysbus.h"
#include "ui/input.h"
/* escc.c */
diff --git a/include/hw/char/lm32_juart.h b/include/hw/char/lm32_juart.h
index e7c6fb5a3b..6fce278326 100644
--- a/include/hw/char/lm32_juart.h
+++ b/include/hw/char/lm32_juart.h
@@ -1,7 +1,7 @@
#ifndef QEMU_HW_CHAR_LM32_JUART_H
#define QEMU_HW_CHAR_LM32_JUART_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define TYPE_LM32_JUART "lm32-juart"
diff --git a/include/hw/char/parallel.h b/include/hw/char/parallel.h
index d6dd62fb9f..0a23c0f57e 100644
--- a/include/hw/char/parallel.h
+++ b/include/hw/char/parallel.h
@@ -1,7 +1,6 @@
#ifndef HW_PARALLEL_H
#define HW_PARALLEL_H
-#include "exec/memory.h"
#include "hw/isa/isa.h"
#include "chardev/char.h"
diff --git a/include/hw/char/pl011.h b/include/hw/char/pl011.h
index dad3cf2912..14187165c6 100644
--- a/include/hw/char/pl011.h
+++ b/include/hw/char/pl011.h
@@ -15,6 +15,7 @@
#ifndef HW_PL011_H
#define HW_PL011_H
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
diff --git a/include/hw/char/serial.h b/include/hw/char/serial.h
index abd5cf71a9..8be3d8a4f9 100644
--- a/include/hw/char/serial.h
+++ b/include/hw/char/serial.h
@@ -26,8 +26,6 @@
#ifndef HW_SERIAL_H
#define HW_SERIAL_H
-#include "hw/hw.h"
-#include "sysemu/sysemu.h"
#include "chardev/char-fe.h"
#include "exec/memory.h"
#include "qemu/fifo8.h"
diff --git a/include/hw/char/stm32f2xx_usart.h b/include/hw/char/stm32f2xx_usart.h
index 84c4029777..8e112671e3 100644
--- a/include/hw/char/stm32f2xx_usart.h
+++ b/include/hw/char/stm32f2xx_usart.h
@@ -27,7 +27,6 @@
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
-#include "hw/hw.h"
#define USART_SR 0x00
#define USART_DR 0x04
diff --git a/include/hw/char/xilinx_uartlite.h b/include/hw/char/xilinx_uartlite.h
index 634086b657..194e2feafe 100644
--- a/include/hw/char/xilinx_uartlite.h
+++ b/include/hw/char/xilinx_uartlite.h
@@ -15,6 +15,9 @@
#ifndef XILINX_UARTLITE_H
#define XILINX_UARTLITE_H
+#include "hw/qdev-properties.h"
+#include "hw/sysbus.h"
+
static inline DeviceState *xilinx_uartlite_create(hwaddr addr,
qemu_irq irq,
Chardev *chr)
diff --git a/include/hw/core/generic-loader.h b/include/hw/core/generic-loader.h
index dd27c42ab0..9ffce1c5a3 100644
--- a/include/hw/core/generic-loader.h
+++ b/include/hw/core/generic-loader.h
@@ -19,6 +19,7 @@
#define GENERIC_LOADER_H
#include "elf.h"
+#include "hw/qdev-core.h"
typedef struct GenericLoaderState {
/* <private> */
diff --git a/include/hw/core/split-irq.h b/include/hw/core/split-irq.h
index bb87157c5a..872a39aa4f 100644
--- a/include/hw/core/split-irq.h
+++ b/include/hw/core/split-irq.h
@@ -35,7 +35,6 @@
#ifndef HW_SPLIT_IRQ_H
#define HW_SPLIT_IRQ_H
-#include "hw/irq.h"
#include "hw/sysbus.h"
#include "qom/object.h"
diff --git a/include/hw/cpu/cluster.h b/include/hw/cpu/cluster.h
index 01c1e50cd2..a616501a55 100644
--- a/include/hw/cpu/cluster.h
+++ b/include/hw/cpu/cluster.h
@@ -20,7 +20,7 @@
#ifndef HW_CPU_CLUSTER_H
#define HW_CPU_CLUSTER_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
/*
* CPU Cluster type
diff --git a/include/hw/cpu/core.h b/include/hw/cpu/core.h
index b7470644d8..555ad831bb 100644
--- a/include/hw/cpu/core.h
+++ b/include/hw/cpu/core.h
@@ -9,7 +9,7 @@
#ifndef HW_CPU_CORE_H
#define HW_CPU_CORE_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define TYPE_CPU_CORE "cpu-core"
diff --git a/include/hw/cris/etraxfs.h b/include/hw/cris/etraxfs.h
index 8da965addb..aa146a2cd8 100644
--- a/include/hw/cris/etraxfs.h
+++ b/include/hw/cris/etraxfs.h
@@ -27,6 +27,8 @@
#include "net/net.h"
#include "hw/cris/etraxfs_dma.h"
+#include "hw/qdev-properties.h"
+#include "hw/sysbus.h"
/* Instantiate an ETRAXFS Ethernet MAC. */
static inline DeviceState *
diff --git a/include/hw/cris/etraxfs_dma.h b/include/hw/cris/etraxfs_dma.h
index f6f33e0980..095d76b956 100644
--- a/include/hw/cris/etraxfs_dma.h
+++ b/include/hw/cris/etraxfs_dma.h
@@ -1,6 +1,8 @@
#ifndef HW_ETRAXFS_DMA_H
#define HW_ETRAXFS_DMA_H
+#include "exec/hwaddr.h"
+
struct dma_context_metadata {
/* data descriptor md */
uint16_t metadata;
diff --git a/include/hw/display/blizzard.h b/include/hw/display/blizzard.h
index ef72bbc186..5b33018835 100644
--- a/include/hw/display/blizzard.h
+++ b/include/hw/display/blizzard.h
@@ -11,7 +11,6 @@
#ifndef HW_DISPLAY_BLIZZARD_H
#define HW_DISPLAY_BLIZZARD_H
-#include "hw/irq.h"
void *s1d13745_init(qemu_irq gpio_int);
void s1d13745_write(void *opaque, int dc, uint16_t value);
diff --git a/include/hw/display/edid.h b/include/hw/display/edid.h
index 7948bd2c40..ff99dc0a05 100644
--- a/include/hw/display/edid.h
+++ b/include/hw/display/edid.h
@@ -1,7 +1,7 @@
#ifndef EDID_H
#define EDID_H
-#include "hw/hw.h"
+#include "qom/object.h"
typedef struct qemu_edid_info {
const char *vendor; /* http://www.uefi.org/pnp_id_list */
diff --git a/include/hw/display/i2c-ddc.h b/include/hw/display/i2c-ddc.h
index c29443c5af..1cf53a0c8d 100644
--- a/include/hw/display/i2c-ddc.h
+++ b/include/hw/display/i2c-ddc.h
@@ -20,6 +20,7 @@
#define I2C_DDC_H
#include "hw/display/edid.h"
+#include "hw/i2c/i2c.h"
/* A simple I2C slave which just returns the contents of its EDID blob. */
struct I2CDDCState {
diff --git a/include/hw/display/milkymist_tmu2.h b/include/hw/display/milkymist_tmu2.h
index 148a119a1d..e3394ff158 100644
--- a/include/hw/display/milkymist_tmu2.h
+++ b/include/hw/display/milkymist_tmu2.h
@@ -27,7 +27,8 @@
#ifndef HW_DISPLAY_MILKYMIST_TMU2_H
#define HW_DISPLAY_MILKYMIST_TMU2_H
-#include "hw/qdev.h"
+#include "exec/hwaddr.h"
+#include "hw/qdev-core.h"
#if defined(CONFIG_X11) && defined(CONFIG_OPENGL)
DeviceState *milkymist_tmu2_create(hwaddr base, qemu_irq irq);
diff --git a/include/hw/display/tc6393xb.h b/include/hw/display/tc6393xb.h
index 5c4da91f80..f9263bf98a 100644
--- a/include/hw/display/tc6393xb.h
+++ b/include/hw/display/tc6393xb.h
@@ -12,9 +12,6 @@
#ifndef HW_DISPLAY_TC6393XB_H
#define HW_DISPLAY_TC6393XB_H
-#include "exec/memory.h"
-#include "hw/irq.h"
-
typedef struct TC6393xbState TC6393xbState;
TC6393xbState *tc6393xb_init(struct MemoryRegion *sysmem,
diff --git a/include/hw/display/vga.h b/include/hw/display/vga.h
index 0401a3a292..ca0003dbfd 100644
--- a/include/hw/display/vga.h
+++ b/include/hw/display/vga.h
@@ -9,7 +9,7 @@
#ifndef QEMU_HW_DISPLAY_VGA_H
#define QEMU_HW_DISPLAY_VGA_H
-#include "exec/memory.h"
+#include "exec/hwaddr.h"
enum vga_retrace_method {
VGA_RETRACE_DUMB,
diff --git a/include/hw/dma/i8257.h b/include/hw/dma/i8257.h
index 2cab50bb6c..03e2c166be 100644
--- a/include/hw/dma/i8257.h
+++ b/include/hw/dma/i8257.h
@@ -1,7 +1,6 @@
#ifndef HW_I8257_H
#define HW_I8257_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "exec/ioport.h"
diff --git a/include/hw/empty_slot.h b/include/hw/empty_slot.h
index 123a9f8989..cb9a221aa6 100644
--- a/include/hw/empty_slot.h
+++ b/include/hw/empty_slot.h
@@ -1,6 +1,8 @@
#ifndef HW_EMPTY_SLOT_H
#define HW_EMPTY_SLOT_H
+#include "exec/hwaddr.h"
+
/* empty_slot.c */
void empty_slot_init(hwaddr addr, uint64_t slot_size);
diff --git a/include/hw/gpio/bcm2835_gpio.h b/include/hw/gpio/bcm2835_gpio.h
index 9f8e0c720c..b0de0a3c74 100644
--- a/include/hw/gpio/bcm2835_gpio.h
+++ b/include/hw/gpio/bcm2835_gpio.h
@@ -15,6 +15,7 @@
#define BCM2835_GPIO_H
#include "hw/sd/sd.h"
+#include "hw/sysbus.h"
typedef struct BCM2835GpioState {
SysBusDevice parent_obj;
diff --git a/include/hw/hw.h b/include/hw/hw.h
index b1b79964b5..fc5301f293 100644
--- a/include/hw/hw.h
+++ b/include/hw/hw.h
@@ -1,4 +1,3 @@
-/* Declarations for use by hardware emulation. */
#ifndef QEMU_HW_H
#define QEMU_HW_H
@@ -6,14 +5,6 @@
#error Cannot include hw/hw.h from user emulation
#endif
-#include "exec/cpu-common.h"
-#include "qom/object.h"
-#include "exec/memory.h"
-#include "hw/irq.h"
-#include "migration/vmstate.h"
-#include "migration/qemu-file-types.h"
-#include "sysemu/reset.h"
-
void QEMU_NORETURN hw_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
#endif
diff --git a/include/hw/i2c/aspeed_i2c.h b/include/hw/i2c/aspeed_i2c.h
index f9020acdef..a2753f0bbb 100644
--- a/include/hw/i2c/aspeed_i2c.h
+++ b/include/hw/i2c/aspeed_i2c.h
@@ -17,10 +17,12 @@
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
+
#ifndef ASPEED_I2C_H
#define ASPEED_I2C_H
#include "hw/i2c/i2c.h"
+#include "hw/sysbus.h"
#define TYPE_ASPEED_I2C "aspeed.i2c"
#define ASPEED_I2C(obj) \
diff --git a/include/hw/i2c/i2c.h b/include/hw/i2c/i2c.h
index 75c5bd638b..4117211565 100644
--- a/include/hw/i2c/i2c.h
+++ b/include/hw/i2c/i2c.h
@@ -1,7 +1,7 @@
#ifndef QEMU_I2C_H
#define QEMU_I2C_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
/* The QEMU I2C implementation only supports simple transfers that complete
immediately. It does not support slave devices that need to be able to
diff --git a/include/hw/i2c/pm_smbus.h b/include/hw/i2c/pm_smbus.h
index fb55c44444..0d74207efb 100644
--- a/include/hw/i2c/pm_smbus.h
+++ b/include/hw/i2c/pm_smbus.h
@@ -1,6 +1,7 @@
#ifndef PM_SMBUS_H
#define PM_SMBUS_H
+#include "exec/memory.h"
#include "hw/i2c/smbus_master.h"
#define PM_SMBUS_MAX_MSG_SIZE 32
diff --git a/include/hw/i2c/smbus_eeprom.h b/include/hw/i2c/smbus_eeprom.h
index 0f96836bab..15e2151b50 100644
--- a/include/hw/i2c/smbus_eeprom.h
+++ b/include/hw/i2c/smbus_eeprom.h
@@ -23,6 +23,7 @@
#ifndef HW_SMBUS_EEPROM_H
#define HW_SMBUS_EEPROM_H
+#include "exec/cpu-common.h"
#include "hw/i2c/i2c.h"
void smbus_eeprom_init_one(I2CBus *bus, uint8_t address, uint8_t *eeprom_buf);
diff --git a/include/hw/i386/apic_internal.h b/include/hw/i386/apic_internal.h
index 1209eb483a..b04bdd947f 100644
--- a/include/hw/i386/apic_internal.h
+++ b/include/hw/i386/apic_internal.h
@@ -24,6 +24,7 @@
#include "cpu.h"
#include "exec/memory.h"
#include "qemu/timer.h"
+#include "target/i386/cpu-qom.h"
/* APIC Local Vector Table */
#define APIC_LVT_TIMER 0
diff --git a/include/hw/i386/ich9.h b/include/hw/i386/ich9.h
index 046bcf33be..72e803f6e2 100644
--- a/include/hw/i386/ich9.h
+++ b/include/hw/i386/ich9.h
@@ -1,7 +1,6 @@
#ifndef HW_ICH9_H
#define HW_ICH9_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "hw/sysbus.h"
#include "hw/i386/pc.h"
diff --git a/include/hw/i386/intel_iommu.h b/include/hw/i386/intel_iommu.h
index 12f3d266e2..66b931e526 100644
--- a/include/hw/i386/intel_iommu.h
+++ b/include/hw/i386/intel_iommu.h
@@ -21,7 +21,7 @@
#ifndef INTEL_IOMMU_H
#define INTEL_IOMMU_H
-#include "hw/qdev.h"
+
#include "sysemu/dma.h"
#include "hw/i386/x86-iommu.h"
#include "hw/i386/ioapic.h"
diff --git a/include/hw/i386/ioapic_internal.h b/include/hw/i386/ioapic_internal.h
index 07002f9662..d46c87c510 100644
--- a/include/hw/i386/ioapic_internal.h
+++ b/include/hw/i386/ioapic_internal.h
@@ -22,8 +22,8 @@
#ifndef QEMU_IOAPIC_INTERNAL_H
#define QEMU_IOAPIC_INTERNAL_H
-#include "hw/hw.h"
#include "exec/memory.h"
+#include "hw/i386/ioapic.h"
#include "hw/sysbus.h"
#include "qemu/notify.h"
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 859b64c51d..4bb9e29114 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -12,7 +12,6 @@
#include "qemu/range.h"
#include "qemu/bitmap.h"
#include "qemu/module.h"
-#include "sysemu/sysemu.h"
#include "hw/pci/pci.h"
#include "hw/mem/pc-dimm.h"
#include "hw/mem/nvdimm.h"
diff --git a/include/hw/ide/internal.h b/include/hw/ide/internal.h
index 8efd03132b..52ec197da0 100644
--- a/include/hw/ide/internal.h
+++ b/include/hw/ide/internal.h
@@ -6,10 +6,12 @@
* only files in hw/ide/ are supposed to include this file.
* non-internal declarations are in hw/ide.h
*/
+
+#include "qapi/qapi-types-run-state.h"
#include "hw/ide.h"
+#include "hw/irq.h"
#include "hw/isa/isa.h"
#include "sysemu/dma.h"
-#include "sysemu/sysemu.h"
#include "hw/block/block.h"
#include "scsi/constants.h"
diff --git a/include/hw/input/adb.h b/include/hw/input/adb.h
index f99d478252..b7b32e2b16 100644
--- a/include/hw/input/adb.h
+++ b/include/hw/input/adb.h
@@ -26,7 +26,7 @@
#ifndef ADB_H
#define ADB_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define MAX_ADB_DEVICES 16
diff --git a/include/hw/input/gamepad.h b/include/hw/input/gamepad.h
index e20211baef..6f6aa2406a 100644
--- a/include/hw/input/gamepad.h
+++ b/include/hw/input/gamepad.h
@@ -11,7 +11,6 @@
#ifndef HW_INPUT_GAMEPAD_H
#define HW_INPUT_GAMEPAD_H
-#include "hw/irq.h"
/* stellaris_input.c */
void stellaris_gamepad_init(int n, qemu_irq *irq, const int *keycode);
diff --git a/include/hw/input/hid.h b/include/hw/input/hid.h
index 2127c7ce45..6a9d7bf466 100644
--- a/include/hw/input/hid.h
+++ b/include/hw/input/hid.h
@@ -1,7 +1,6 @@
#ifndef QEMU_HID_H
#define QEMU_HID_H
-#include "migration/vmstate.h"
#include "ui/input.h"
#define HID_MOUSE 1
diff --git a/include/hw/input/i8042.h b/include/hw/input/i8042.h
index f6ff146364..246e6f3335 100644
--- a/include/hw/input/i8042.h
+++ b/include/hw/input/i8042.h
@@ -8,7 +8,6 @@
#ifndef HW_INPUT_I8042_H
#define HW_INPUT_I8042_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#define TYPE_I8042 "i8042"
diff --git a/include/hw/input/tsc2xxx.h b/include/hw/input/tsc2xxx.h
index dbfe5c55c1..3cd8f1bf55 100644
--- a/include/hw/input/tsc2xxx.h
+++ b/include/hw/input/tsc2xxx.h
@@ -11,7 +11,6 @@
#ifndef HW_INPUT_TSC2XXX_H
#define HW_INPUT_TSC2XXX_H
-#include "hw/irq.h"
#include "ui/console.h"
typedef struct uWireSlave {
diff --git a/include/hw/intc/allwinner-a10-pic.h b/include/hw/intc/allwinner-a10-pic.h
index 1d314a70d9..a5895401d1 100644
--- a/include/hw/intc/allwinner-a10-pic.h
+++ b/include/hw/intc/allwinner-a10-pic.h
@@ -1,6 +1,8 @@
#ifndef ALLWINNER_A10_PIC_H
#define ALLWINNER_A10_PIC_H
+#include "hw/sysbus.h"
+
#define TYPE_AW_A10_PIC "allwinner-a10-pic"
#define AW_A10_PIC(obj) OBJECT_CHECK(AwA10PICState, (obj), TYPE_AW_A10_PIC)
diff --git a/include/hw/intc/heathrow_pic.h b/include/hw/intc/heathrow_pic.h
index 6c91ec91bb..b163e27ab9 100644
--- a/include/hw/intc/heathrow_pic.h
+++ b/include/hw/intc/heathrow_pic.h
@@ -26,6 +26,8 @@
#ifndef HW_INTC_HEATHROW_PIC_H
#define HW_INTC_HEATHROW_PIC_H
+#include "hw/sysbus.h"
+
#define TYPE_HEATHROW "heathrow"
#define HEATHROW(obj) OBJECT_CHECK(HeathrowState, (obj), TYPE_HEATHROW)
diff --git a/include/hw/intc/mips_gic.h b/include/hw/intc/mips_gic.h
index 902a12b178..8428287bf9 100644
--- a/include/hw/intc/mips_gic.h
+++ b/include/hw/intc/mips_gic.h
@@ -13,6 +13,7 @@
#include "qemu/units.h"
#include "hw/timer/mips_gictimer.h"
+#include "hw/sysbus.h"
#include "cpu.h"
/*
* GIC Specific definitions
diff --git a/include/hw/ipack/ipack.h b/include/hw/ipack/ipack.h
index e33e032ced..1c07969bc9 100644
--- a/include/hw/ipack/ipack.h
+++ b/include/hw/ipack/ipack.h
@@ -11,7 +11,7 @@
#ifndef QEMU_IPACK_H
#define QEMU_IPACK_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
typedef struct IPackBus IPackBus;
diff --git a/include/hw/ipmi/ipmi.h b/include/hw/ipmi/ipmi.h
index 011faf22e9..70871da0a7 100644
--- a/include/hw/ipmi/ipmi.h
+++ b/include/hw/ipmi/ipmi.h
@@ -26,7 +26,7 @@
#define HW_IPMI_H
#include "exec/memory.h"
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define MAX_IPMI_MSG_SIZE 300
diff --git a/include/hw/irq.h b/include/hw/irq.h
index 7a40e3ed26..fe527f6f51 100644
--- a/include/hw/irq.h
+++ b/include/hw/irq.h
@@ -5,10 +5,6 @@
#define TYPE_IRQ "irq"
-typedef struct IRQState *qemu_irq;
-
-typedef void (*qemu_irq_handler)(void *opaque, int n, int level);
-
void qemu_set_irq(qemu_irq irq, int level);
static inline void qemu_irq_raise(qemu_irq irq)
diff --git a/include/hw/isa/apm.h b/include/hw/isa/apm.h
index 0f93602936..b6e070c00e 100644
--- a/include/hw/isa/apm.h
+++ b/include/hw/isa/apm.h
@@ -1,7 +1,6 @@
#ifndef APM_H
#define APM_H
-#include "hw/hw.h"
#include "exec/memory.h"
#define APM_CNT_IOPORT 0xb2
diff --git a/include/hw/isa/i8259_internal.h b/include/hw/isa/i8259_internal.h
index f742c2a726..ee189e4a77 100644
--- a/include/hw/isa/i8259_internal.h
+++ b/include/hw/isa/i8259_internal.h
@@ -25,7 +25,6 @@
#ifndef QEMU_I8259_INTERNAL_H
#define QEMU_I8259_INTERNAL_H
-#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/isa/isa.h"
#include "hw/intc/intc.h"
diff --git a/include/hw/isa/isa.h b/include/hw/isa/isa.h
index e62ac91c19..018ada4f6f 100644
--- a/include/hw/isa/isa.h
+++ b/include/hw/isa/isa.h
@@ -5,7 +5,7 @@
#include "exec/memory.h"
#include "exec/ioport.h"
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define ISA_NUM_IRQS 16
diff --git a/include/hw/isa/vt82c686.h b/include/hw/isa/vt82c686.h
index c3c2b6e786..f23f45dfb1 100644
--- a/include/hw/isa/vt82c686.h
+++ b/include/hw/isa/vt82c686.h
@@ -1,6 +1,7 @@
#ifndef HW_VT82C686_H
#define HW_VT82C686_H
+
#define TYPE_VT82C686B_SUPERIO "vt82c686b-superio"
/* vt82c686.c */
diff --git a/include/hw/mem/memory-device.h b/include/hw/mem/memory-device.h
index 0293a96abb..04476acb8f 100644
--- a/include/hw/mem/memory-device.h
+++ b/include/hw/mem/memory-device.h
@@ -13,8 +13,9 @@
#ifndef MEMORY_DEVICE_H
#define MEMORY_DEVICE_H
+#include "hw/qdev-core.h"
+#include "qapi/qapi-types-misc.h"
#include "qom/object.h"
-#include "hw/qdev.h"
#define TYPE_MEMORY_DEVICE "memory-device"
diff --git a/include/hw/mem/pc-dimm.h b/include/hw/mem/pc-dimm.h
index 01436b9f50..289edc0f3d 100644
--- a/include/hw/mem/pc-dimm.h
+++ b/include/hw/mem/pc-dimm.h
@@ -17,9 +17,7 @@
#define QEMU_PC_DIMM_H
#include "exec/memory.h"
-#include "sysemu/hostmem.h"
-#include "hw/qdev.h"
-#include "hw/boards.h"
+#include "hw/qdev-core.h"
#define TYPE_PC_DIMM "pc-dimm"
#define PC_DIMM(obj) \
diff --git a/include/hw/mips/cps.h b/include/hw/mips/cps.h
index aab1af926d..a941c55f27 100644
--- a/include/hw/mips/cps.h
+++ b/include/hw/mips/cps.h
@@ -25,6 +25,7 @@
#include "hw/intc/mips_gic.h"
#include "hw/misc/mips_cpc.h"
#include "hw/misc/mips_itu.h"
+#include "target/mips/cpu.h"
#define TYPE_MIPS_CPS "mips-cps"
#define MIPS_CPS(obj) OBJECT_CHECK(MIPSCPSState, (obj), TYPE_MIPS_CPS)
diff --git a/include/hw/mips/mips.h b/include/hw/mips/mips.h
index 2f6774d540..0af4c3d5d7 100644
--- a/include/hw/mips/mips.h
+++ b/include/hw/mips/mips.h
@@ -6,7 +6,6 @@
#define INITRD_PAGE_MASK (~((1 << 16) - 1))
#include "exec/memory.h"
-#include "hw/irq.h"
/* gt64xxx.c */
PCIBus *gt64120_register(qemu_irq *pic);
diff --git a/include/hw/misc/auxbus.h b/include/hw/misc/auxbus.h
index c15b444748..a539a98c4b 100644
--- a/include/hw/misc/auxbus.h
+++ b/include/hw/misc/auxbus.h
@@ -25,7 +25,8 @@
#ifndef HW_MISC_AUXBUS_H
#define HW_MISC_AUXBUS_H
-#include "hw/qdev.h"
+#include "exec/memory.h"
+#include "hw/qdev-core.h"
typedef struct AUXBus AUXBus;
typedef struct AUXSlave AUXSlave;
diff --git a/include/hw/misc/cbus.h b/include/hw/misc/cbus.h
index c899943e03..5334984020 100644
--- a/include/hw/misc/cbus.h
+++ b/include/hw/misc/cbus.h
@@ -13,7 +13,6 @@
#ifndef HW_MISC_CBUS_H
#define HW_MISC_CBUS_H
-#include "hw/irq.h"
typedef struct {
qemu_irq clk;
diff --git a/include/hw/misc/macio/cuda.h b/include/hw/misc/macio/cuda.h
index 7dad469142..5768075ac5 100644
--- a/include/hw/misc/macio/cuda.h
+++ b/include/hw/misc/macio/cuda.h
@@ -26,6 +26,8 @@
#ifndef CUDA_H
#define CUDA_H
+#include "hw/misc/mos6522.h"
+
/* CUDA commands (2nd byte) */
#define CUDA_WARM_START 0x0
#define CUDA_AUTOPOLL 0x1
diff --git a/include/hw/misc/macio/gpio.h b/include/hw/misc/macio/gpio.h
index 2838ae5fde..24a4364b39 100644
--- a/include/hw/misc/macio/gpio.h
+++ b/include/hw/misc/macio/gpio.h
@@ -26,6 +26,9 @@
#ifndef MACIO_GPIO_H
#define MACIO_GPIO_H
+#include "hw/ppc/openpic.h"
+#include "hw/sysbus.h"
+
#define TYPE_MACIO_GPIO "macio-gpio"
#define MACIO_GPIO(obj) OBJECT_CHECK(MacIOGPIOState, (obj), TYPE_MACIO_GPIO)
diff --git a/include/hw/misc/macio/macio.h b/include/hw/misc/macio/macio.h
index 970058b6ed..070a694eb5 100644
--- a/include/hw/misc/macio/macio.h
+++ b/include/hw/misc/macio/macio.h
@@ -27,10 +27,12 @@
#define MACIO_H
#include "hw/char/escc.h"
+#include "hw/ide/internal.h"
#include "hw/intc/heathrow_pic.h"
#include "hw/misc/macio/cuda.h"
#include "hw/misc/macio/gpio.h"
#include "hw/misc/macio/pmu.h"
+#include "hw/ppc/mac.h"
#include "hw/ppc/mac_dbdma.h"
#include "hw/ppc/openpic.h"
diff --git a/include/hw/misc/macio/pmu.h b/include/hw/misc/macio/pmu.h
index d10895ba5f..7ef83dee4c 100644
--- a/include/hw/misc/macio/pmu.h
+++ b/include/hw/misc/macio/pmu.h
@@ -10,6 +10,9 @@
#ifndef PMU_H
#define PMU_H
+#include "hw/misc/mos6522.h"
+#include "hw/misc/macio/gpio.h"
+
/*
* PMU commands
*/
diff --git a/include/hw/misc/mips_cmgcr.h b/include/hw/misc/mips_cmgcr.h
index c9dfcb4b84..3e6e223273 100644
--- a/include/hw/misc/mips_cmgcr.h
+++ b/include/hw/misc/mips_cmgcr.h
@@ -10,6 +10,8 @@
#ifndef MIPS_CMGCR_H
#define MIPS_CMGCR_H
+#include "hw/sysbus.h"
+
#define TYPE_MIPS_GCR "mips-gcr"
#define MIPS_GCR(obj) OBJECT_CHECK(MIPSGCRState, (obj), TYPE_MIPS_GCR)
diff --git a/include/hw/misc/mips_cpc.h b/include/hw/misc/mips_cpc.h
index 72c834e039..3f670578b0 100644
--- a/include/hw/misc/mips_cpc.h
+++ b/include/hw/misc/mips_cpc.h
@@ -20,6 +20,8 @@
#ifndef MIPS_CPC_H
#define MIPS_CPC_H
+#include "hw/sysbus.h"
+
#define CPC_ADDRSPACE_SZ 0x6000
/* CPC blocks offsets relative to base address */
diff --git a/include/hw/misc/mos6522.h b/include/hw/misc/mos6522.h
index 03d9f0c059..493c907537 100644
--- a/include/hw/misc/mos6522.h
+++ b/include/hw/misc/mos6522.h
@@ -29,7 +29,6 @@
#include "exec/memory.h"
#include "hw/sysbus.h"
-#include "hw/ide/internal.h"
#include "hw/input/adb.h"
/* Bits in ACR */
diff --git a/include/hw/misc/pvpanic.h b/include/hw/misc/pvpanic.h
index 1ee071a703..ae0c8188ce 100644
--- a/include/hw/misc/pvpanic.h
+++ b/include/hw/misc/pvpanic.h
@@ -11,9 +11,12 @@
* See the COPYING file in the top-level directory.
*
*/
+
#ifndef HW_MISC_PVPANIC_H
#define HW_MISC_PVPANIC_H
+#include "qom/object.h"
+
#define TYPE_PVPANIC "pvpanic"
#define PVPANIC_IOPORT_PROP "ioport"
diff --git a/include/hw/misc/stm32f2xx_syscfg.h b/include/hw/misc/stm32f2xx_syscfg.h
index 69e6a30fc5..84e06fdecf 100644
--- a/include/hw/misc/stm32f2xx_syscfg.h
+++ b/include/hw/misc/stm32f2xx_syscfg.h
@@ -26,7 +26,6 @@
#define HW_STM32F2XX_SYSCFG_H
#include "hw/sysbus.h"
-#include "hw/hw.h"
#define SYSCFG_MEMRMP 0x00
#define SYSCFG_PMC 0x04
diff --git a/include/hw/misc/unimp.h b/include/hw/misc/unimp.h
index 2a291ca42d..44d87be903 100644
--- a/include/hw/misc/unimp.h
+++ b/include/hw/misc/unimp.h
@@ -8,6 +8,7 @@
#ifndef HW_MISC_UNIMP_H
#define HW_MISC_UNIMP_H
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#define TYPE_UNIMPLEMENTED_DEVICE "unimplemented-device"
diff --git a/include/hw/misc/vmcoreinfo.h b/include/hw/misc/vmcoreinfo.h
index 0d11578059..d4f3d3a91c 100644
--- a/include/hw/misc/vmcoreinfo.h
+++ b/include/hw/misc/vmcoreinfo.h
@@ -12,7 +12,7 @@
#ifndef VMCOREINFO_H
#define VMCOREINFO_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "standard-headers/linux/qemu_fw_cfg.h"
#define VMCOREINFO_DEVICE "vmcoreinfo"
diff --git a/include/hw/net/allwinner_emac.h b/include/hw/net/allwinner_emac.h
index 905a43deb4..5013207d15 100644
--- a/include/hw/net/allwinner_emac.h
+++ b/include/hw/net/allwinner_emac.h
@@ -27,6 +27,7 @@
#include "net/net.h"
#include "qemu/fifo8.h"
#include "hw/net/mii.h"
+#include "hw/sysbus.h"
#define TYPE_AW_EMAC "allwinner-emac"
#define AW_EMAC(obj) OBJECT_CHECK(AwEmacState, (obj), TYPE_AW_EMAC)
diff --git a/include/hw/net/lan9118.h b/include/hw/net/lan9118.h
index 500acb4c14..3d0c67f339 100644
--- a/include/hw/net/lan9118.h
+++ b/include/hw/net/lan9118.h
@@ -11,7 +11,6 @@
#ifndef HW_NET_LAN9118_H
#define HW_NET_LAN9118_H
-#include "hw/irq.h"
#include "net/net.h"
#define TYPE_LAN9118 "lan9118"
diff --git a/include/hw/net/lance.h b/include/hw/net/lance.h
index ffdd35c4d7..0357f5f65c 100644
--- a/include/hw/net/lance.h
+++ b/include/hw/net/lance.h
@@ -31,6 +31,7 @@
#include "net/net.h"
#include "hw/net/pcnet.h"
+#include "hw/sysbus.h"
#define TYPE_LANCE "lance"
#define SYSBUS_PCNET(obj) \
diff --git a/include/hw/net/ne2000-isa.h b/include/hw/net/ne2000-isa.h
index 5acf4a494e..eef17a680d 100644
--- a/include/hw/net/ne2000-isa.h
+++ b/include/hw/net/ne2000-isa.h
@@ -10,9 +10,8 @@
#ifndef HW_NET_NE2000_ISA_H
#define HW_NET_NE2000_ISA_H
-#include "hw/hw.h"
-#include "hw/qdev.h"
#include "hw/isa/isa.h"
+#include "hw/qdev-properties.h"
#include "net/net.h"
#define TYPE_ISA_NE2000 "ne2k_isa"
diff --git a/include/hw/net/smc91c111.h b/include/hw/net/smc91c111.h
index a66ba4112f..df5b11dcef 100644
--- a/include/hw/net/smc91c111.h
+++ b/include/hw/net/smc91c111.h
@@ -11,7 +11,6 @@
#ifndef HW_NET_SMC91C111_H
#define HW_NET_SMC91C111_H
-#include "hw/irq.h"
#include "net/net.h"
void smc91c111_init(NICInfo *, uint32_t, qemu_irq);
diff --git a/include/hw/nvram/chrp_nvram.h b/include/hw/nvram/chrp_nvram.h
index b4f5b2b104..09941a9be4 100644
--- a/include/hw/nvram/chrp_nvram.h
+++ b/include/hw/nvram/chrp_nvram.h
@@ -18,6 +18,8 @@
#ifndef CHRP_NVRAM_H
#define CHRP_NVRAM_H
+#include "qemu/bswap.h"
+
/* OpenBIOS NVRAM partition */
typedef struct {
uint8_t signature;
diff --git a/include/hw/or-irq.h b/include/hw/or-irq.h
index 5a31e5a188..3a3230dd84 100644
--- a/include/hw/or-irq.h
+++ b/include/hw/or-irq.h
@@ -25,7 +25,6 @@
#ifndef HW_OR_IRQ_H
#define HW_OR_IRQ_H
-#include "hw/irq.h"
#include "hw/sysbus.h"
#include "qom/object.h"
diff --git a/include/hw/pci-host/designware.h b/include/hw/pci-host/designware.h
index 186bb36238..31c41231b1 100644
--- a/include/hw/pci-host/designware.h
+++ b/include/hw/pci-host/designware.h
@@ -21,7 +21,6 @@
#ifndef DESIGNWARE_H
#define DESIGNWARE_H
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bus.h"
diff --git a/include/hw/pci-host/gpex.h b/include/hw/pci-host/gpex.h
index 2af1c4a37e..faea040a93 100644
--- a/include/hw/pci-host/gpex.h
+++ b/include/hw/pci-host/gpex.h
@@ -20,7 +20,6 @@
#ifndef HW_GPEX_H
#define HW_GPEX_H
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/pci/pci.h"
#include "hw/pci/pcie_host.h"
diff --git a/include/hw/pci-host/q35.h b/include/hw/pci-host/q35.h
index 5ed77facd0..b3bcf2e632 100644
--- a/include/hw/pci-host/q35.h
+++ b/include/hw/pci-host/q35.h
@@ -22,7 +22,6 @@
#ifndef HW_Q35_H
#define HW_Q35_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
#include "hw/sysbus.h"
#include "hw/i386/pc.h"
diff --git a/include/hw/pci-host/sabre.h b/include/hw/pci-host/sabre.h
index 9afa4938fd..99b5aefbec 100644
--- a/include/hw/pci-host/sabre.h
+++ b/include/hw/pci-host/sabre.h
@@ -1,6 +1,8 @@
#ifndef HW_PCI_HOST_SABRE_H
#define HW_PCI_HOST_SABRE_H
+#include "hw/pci/pci.h"
+#include "hw/pci/pci_host.h"
#include "hw/sparc/sun4u_iommu.h"
#define MAX_IVEC 0x40
diff --git a/include/hw/pci-host/uninorth.h b/include/hw/pci-host/uninorth.h
index 060324536a..72d2a97355 100644
--- a/include/hw/pci-host/uninorth.h
+++ b/include/hw/pci-host/uninorth.h
@@ -25,8 +25,7 @@
#ifndef UNINORTH_H
#define UNINORTH_H
-#include "hw/hw.h"
-
+#include "hw/pci/pci_host.h"
#include "hw/ppc/openpic.h"
/* UniNorth version */
diff --git a/include/hw/pci-host/xilinx-pcie.h b/include/hw/pci-host/xilinx-pcie.h
index 74c04dc9bb..c0f15314be 100644
--- a/include/hw/pci-host/xilinx-pcie.h
+++ b/include/hw/pci-host/xilinx-pcie.h
@@ -20,7 +20,6 @@
#ifndef HW_XILINX_PCIE_H
#define HW_XILINX_PCIE_H
-#include "hw/hw.h"
#include "hw/sysbus.h"
#include "hw/pci/pci.h"
#include "hw/pci/pci_bridge.h"
diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
index aaf1b9f70d..1b840e61a2 100644
--- a/include/hw/pci/pci.h
+++ b/include/hw/pci/pci.h
@@ -1,7 +1,6 @@
#ifndef QEMU_PCI_H
#define QEMU_PCI_H
-#include "hw/qdev.h"
#include "exec/memory.h"
#include "sysemu/dma.h"
diff --git a/include/hw/pci/pcie.h b/include/hw/pci/pcie.h
index 8cf3361fc4..7064875835 100644
--- a/include/hw/pci/pcie.h
+++ b/include/hw/pci/pcie.h
@@ -21,7 +21,6 @@
#ifndef QEMU_PCIE_H
#define QEMU_PCIE_H
-#include "hw/hw.h"
#include "hw/pci/pci_regs.h"
#include "hw/pci/pcie_regs.h"
#include "hw/pci/pcie_aer.h"
diff --git a/include/hw/pci/pcie_aer.h b/include/hw/pci/pcie_aer.h
index 729a9439c8..65e71d98fe 100644
--- a/include/hw/pci/pcie_aer.h
+++ b/include/hw/pci/pcie_aer.h
@@ -21,7 +21,7 @@
#ifndef QEMU_PCIE_AER_H
#define QEMU_PCIE_AER_H
-#include "hw/hw.h"
+#include "hw/pci/pci_regs.h"
/* definitions which PCIExpressDevice uses */
diff --git a/include/hw/pci/shpc.h b/include/hw/pci/shpc.h
index bd8204f64e..d5683b7399 100644
--- a/include/hw/pci/shpc.h
+++ b/include/hw/pci/shpc.h
@@ -4,6 +4,7 @@
#include "exec/memory.h"
#include "hw/hotplug.h"
#include "hw/pci/pci.h"
+#include "migration/vmstate.h"
struct SHPCDevice {
/* Capability offset in device's config space */
diff --git a/include/hw/pcmcia.h b/include/hw/pcmcia.h
index 1b4080764f..ebad7bc504 100644
--- a/include/hw/pcmcia.h
+++ b/include/hw/pcmcia.h
@@ -3,7 +3,7 @@
/* PCMCIA/Cardbus */
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
typedef struct PCMCIASocket {
qemu_irq irq;
diff --git a/include/hw/ppc/openpic.h b/include/hw/ppc/openpic.h
index 7642a8ea1d..ec16897bfb 100644
--- a/include/hw/ppc/openpic.h
+++ b/include/hw/ppc/openpic.h
@@ -2,7 +2,6 @@
#define OPENPIC_H
#include "hw/sysbus.h"
-#include "hw/qdev-core.h"
#include "qom/cpu.h"
#define MAX_CPU 32
diff --git a/include/hw/ppc/pnv_core.h b/include/hw/ppc/pnv_core.h
index d0926454a9..bfbd2ec42a 100644
--- a/include/hw/ppc/pnv_core.h
+++ b/include/hw/ppc/pnv_core.h
@@ -21,6 +21,7 @@
#define PPC_PNV_CORE_H
#include "hw/cpu/core.h"
+#include "target/ppc/cpu.h"
#define TYPE_PNV_CORE "powernv-cpu-core"
#define PNV_CORE(obj) \
diff --git a/include/hw/ppc/ppc4xx.h b/include/hw/ppc/ppc4xx.h
index 39a7ba1ce6..7d82259051 100644
--- a/include/hw/ppc/ppc4xx.h
+++ b/include/hw/ppc/ppc4xx.h
@@ -25,6 +25,9 @@
#ifndef PPC4XX_H
#define PPC4XX_H
+#include "hw/ppc/ppc.h"
+#include "exec/memory.h"
+
/* PowerPC 4xx core initialization */
PowerPCCPU *ppc4xx_init(const char *cpu_model,
clk_setup_t *cpu_clk, clk_setup_t *tb_clk,
diff --git a/include/hw/ppc/spapr_cpu_core.h b/include/hw/ppc/spapr_cpu_core.h
index f9645a7290..35e0a7eead 100644
--- a/include/hw/ppc/spapr_cpu_core.h
+++ b/include/hw/ppc/spapr_cpu_core.h
@@ -9,8 +9,8 @@
#ifndef HW_SPAPR_CPU_CORE_H
#define HW_SPAPR_CPU_CORE_H
-#include "hw/qdev.h"
#include "hw/cpu/core.h"
+#include "hw/qdev-core.h"
#include "target/ppc/cpu-qom.h"
#include "target/ppc/cpu.h"
diff --git a/include/hw/ppc/spapr_drc.h b/include/hw/ppc/spapr_drc.h
index c2c543a591..83f03cc577 100644
--- a/include/hw/ppc/spapr_drc.h
+++ b/include/hw/ppc/spapr_drc.h
@@ -14,10 +14,9 @@
#define HW_SPAPR_DRC_H
#include <libfdt.h>
-#include "qapi/qapi-types-run-state.h"
#include "qom/object.h"
-#include "sysemu/sysemu.h"
-#include "hw/qdev.h"
+#include "sysemu/runstate.h"
+#include "hw/qdev-core.h"
#include "qapi/error.h"
#define TYPE_SPAPR_DR_CONNECTOR "spapr-dr-connector"
diff --git a/include/hw/ppc/spapr_irq.h b/include/hw/ppc/spapr_irq.h
index f965a58f89..8132e00366 100644
--- a/include/hw/ppc/spapr_irq.h
+++ b/include/hw/ppc/spapr_irq.h
@@ -10,6 +10,8 @@
#ifndef HW_SPAPR_IRQ_H
#define HW_SPAPR_IRQ_H
+#include "target/ppc/cpu-qom.h"
+
/*
* IRQ range offsets per device type
*/
diff --git a/include/hw/ppc/spapr_ovec.h b/include/hw/ppc/spapr_ovec.h
index 5de5ecf5de..7891e9caac 100644
--- a/include/hw/ppc/spapr_ovec.h
+++ b/include/hw/ppc/spapr_ovec.h
@@ -38,7 +38,6 @@
#define SPAPR_OVEC_H
#include "cpu.h"
-#include "migration/vmstate.h"
typedef struct SpaprOptionVector SpaprOptionVector;
diff --git a/include/hw/ppc/spapr_vio.h b/include/hw/ppc/spapr_vio.h
index 04609f214e..875be28cdd 100644
--- a/include/hw/ppc/spapr_vio.h
+++ b/include/hw/ppc/spapr_vio.h
@@ -22,6 +22,7 @@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+#include "hw/ppc/spapr.h"
#include "sysemu/dma.h"
#define TYPE_VIO_SPAPR_DEVICE "vio-spapr-device"
diff --git a/include/hw/ppc/spapr_xive.h b/include/hw/ppc/spapr_xive.h
index 7197144265..bfd40f01d8 100644
--- a/include/hw/ppc/spapr_xive.h
+++ b/include/hw/ppc/spapr_xive.h
@@ -10,6 +10,7 @@
#ifndef PPC_SPAPR_XIVE_H
#define PPC_SPAPR_XIVE_H
+#include "hw/ppc/spapr_irq.h"
#include "hw/ppc/xive.h"
#define TYPE_SPAPR_XIVE "spapr-xive"
diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h
index 1eb7b5cd68..f2a8d6a4b4 100644
--- a/include/hw/ppc/xics.h
+++ b/include/hw/ppc/xics.h
@@ -28,7 +28,8 @@
#ifndef XICS_H
#define XICS_H
-#include "hw/qdev.h"
+#include "exec/memory.h"
+#include "hw/qdev-core.h"
#define XICS_IPI 0x2
#define XICS_BUID 0x1
diff --git a/include/hw/ppc/xive.h b/include/hw/ppc/xive.h
index 736335174a..9399c77d2d 100644
--- a/include/hw/ppc/xive.h
+++ b/include/hw/ppc/xive.h
@@ -141,7 +141,6 @@
#define PPC_XIVE_H
#include "sysemu/kvm.h"
-#include "hw/qdev-core.h"
#include "hw/sysbus.h"
#include "hw/ppc/xive_regs.h"
diff --git a/include/hw/ppc/xive_regs.h b/include/hw/ppc/xive_regs.h
index 1a8c5b5e64..b0c68ab5f7 100644
--- a/include/hw/ppc/xive_regs.h
+++ b/include/hw/ppc/xive_regs.h
@@ -16,6 +16,9 @@
#ifndef PPC_XIVE_REGS_H
#define PPC_XIVE_REGS_H
+#include "qemu/bswap.h"
+#include "qemu/host-utils.h"
+
/*
* Interrupt source number encoding on PowerBUS
*/
diff --git a/include/hw/ptimer.h b/include/hw/ptimer.h
index 2b866902aa..9c77055229 100644
--- a/include/hw/ptimer.h
+++ b/include/hw/ptimer.h
@@ -9,7 +9,6 @@
#define PTIMER_H
#include "qemu/timer.h"
-#include "migration/vmstate.h"
/* The ptimer API implements a simple periodic countdown timer.
* The countdown timer has a value (which can be read and written via
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index 136df7774c..de70b7a19a 100644
--- a/include/hw/qdev-core.h
+++ b/include/hw/qdev-core.h
@@ -4,9 +4,7 @@
#include "qemu/queue.h"
#include "qemu/bitmap.h"
#include "qom/object.h"
-#include "hw/irq.h"
#include "hw/hotplug.h"
-#include "sysemu/sysemu.h"
enum {
DEV_NVECTORS_UNSPECIFIED = -1,
@@ -36,8 +34,6 @@ typedef void (*DeviceReset)(DeviceState *dev);
typedef void (*BusRealize)(BusState *bus, Error **errp);
typedef void (*BusUnrealize)(BusState *bus, Error **errp);
-struct VMStateDescription;
-
/**
* DeviceClass:
* @props: Properties accessing state fields.
@@ -113,7 +109,7 @@ typedef struct DeviceClass {
DeviceUnrealize unrealize;
/* device state */
- const struct VMStateDescription *vmsd;
+ const VMStateDescription *vmsd;
/* Private to qdev / bus. */
const char *bus_type;
@@ -426,7 +422,7 @@ void device_class_set_parent_unrealize(DeviceClass *dc,
DeviceUnrealize dev_unrealize,
DeviceUnrealize *parent_unrealize);
-const struct VMStateDescription *qdev_get_vmsd(DeviceState *dev);
+const VMStateDescription *qdev_get_vmsd(DeviceState *dev);
const char *qdev_fw_name(DeviceState *dev);
@@ -454,8 +450,4 @@ static inline bool qbus_is_hotpluggable(BusState *bus)
void device_listener_register(DeviceListener *listener);
void device_listener_unregister(DeviceListener *listener);
-VMChangeStateEntry *qdev_add_vm_change_state_handler(DeviceState *dev,
- VMChangeStateHandler *cb,
- void *opaque);
-
#endif
diff --git a/include/hw/qdev-properties.h b/include/hw/qdev-properties.h
index 1eae5ab056..bb34a614e2 100644
--- a/include/hw/qdev-properties.h
+++ b/include/hw/qdev-properties.h
@@ -1,8 +1,6 @@
#ifndef QEMU_QDEV_PROPERTIES_H
#define QEMU_QDEV_PROPERTIES_H
-#include "qapi/qapi-types-block.h"
-#include "qapi/qapi-types-misc.h"
#include "hw/qdev-core.h"
/*** qdev-properties.c ***/
diff --git a/include/hw/qdev.h b/include/hw/qdev.h
deleted file mode 100644
index 5cb8b080a6..0000000000
--- a/include/hw/qdev.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef QDEV_H
-#define QDEV_H
-
-#include "hw/hw.h"
-#include "hw/qdev-core.h"
-#include "hw/qdev-properties.h"
-
-#endif
diff --git a/include/hw/riscv/boot.h b/include/hw/riscv/boot.h
index d56f2ae3eb..1f21c2bef1 100644
--- a/include/hw/riscv/boot.h
+++ b/include/hw/riscv/boot.h
@@ -20,6 +20,8 @@
#ifndef RISCV_BOOT_H
#define RISCV_BOOT_H
+#include "exec/cpu-defs.h"
+
void riscv_find_and_load_firmware(MachineState *machine,
const char *default_machine_firmware,
hwaddr firmware_load_addr);
diff --git a/include/hw/riscv/riscv_hart.h b/include/hw/riscv/riscv_hart.h
index 0671d88a44..3b52b50571 100644
--- a/include/hw/riscv/riscv_hart.h
+++ b/include/hw/riscv/riscv_hart.h
@@ -21,6 +21,9 @@
#ifndef HW_RISCV_HART_H
#define HW_RISCV_HART_H
+#include "hw/sysbus.h"
+#include "target/riscv/cpu.h"
+
#define TYPE_RISCV_HART_ARRAY "riscv.hart_array"
#define RISCV_HART_ARRAY(obj) \
diff --git a/include/hw/riscv/riscv_htif.h b/include/hw/riscv/riscv_htif.h
index fb5f88129e..fb9452cf51 100644
--- a/include/hw/riscv/riscv_htif.h
+++ b/include/hw/riscv/riscv_htif.h
@@ -20,10 +20,8 @@
#ifndef HW_RISCV_HTIF_H
#define HW_RISCV_HTIF_H
-#include "hw/hw.h"
#include "chardev/char.h"
#include "chardev/char-fe.h"
-#include "sysemu/sysemu.h"
#include "exec/memory.h"
#include "target/riscv/cpu.h"
diff --git a/include/hw/riscv/sifive_clint.h b/include/hw/riscv/sifive_clint.h
index e2865be1d1..ae8286c884 100644
--- a/include/hw/riscv/sifive_clint.h
+++ b/include/hw/riscv/sifive_clint.h
@@ -20,6 +20,8 @@
#ifndef HW_SIFIVE_CLINT_H
#define HW_SIFIVE_CLINT_H
+#include "hw/sysbus.h"
+
#define TYPE_SIFIVE_CLINT "riscv.sifive.clint"
#define SIFIVE_CLINT(obj) \
diff --git a/include/hw/riscv/sifive_e.h b/include/hw/riscv/sifive_e.h
index d175b24cb2..9c868dd7f9 100644
--- a/include/hw/riscv/sifive_e.h
+++ b/include/hw/riscv/sifive_e.h
@@ -19,6 +19,7 @@
#ifndef HW_SIFIVE_E_H
#define HW_SIFIVE_E_H
+#include "hw/riscv/riscv_hart.h"
#include "hw/riscv/sifive_gpio.h"
#define TYPE_RISCV_E_SOC "riscv.sifive.e.soc"
diff --git a/include/hw/riscv/sifive_plic.h b/include/hw/riscv/sifive_plic.h
index ce8907f6aa..b0edba2884 100644
--- a/include/hw/riscv/sifive_plic.h
+++ b/include/hw/riscv/sifive_plic.h
@@ -21,7 +21,7 @@
#ifndef HW_SIFIVE_PLIC_H
#define HW_SIFIVE_PLIC_H
-#include "hw/irq.h"
+#include "hw/sysbus.h"
#define TYPE_SIFIVE_PLIC "riscv.sifive.plic"
diff --git a/include/hw/riscv/sifive_prci.h b/include/hw/riscv/sifive_prci.h
index bd51c4af3c..8b7de134f8 100644
--- a/include/hw/riscv/sifive_prci.h
+++ b/include/hw/riscv/sifive_prci.h
@@ -19,6 +19,8 @@
#ifndef HW_SIFIVE_PRCI_H
#define HW_SIFIVE_PRCI_H
+#include "hw/sysbus.h"
+
enum {
SIFIVE_PRCI_HFROSCCFG = 0x0,
SIFIVE_PRCI_HFXOSCCFG = 0x4,
diff --git a/include/hw/riscv/sifive_test.h b/include/hw/riscv/sifive_test.h
index 71d4c9fad7..3a603a6ead 100644
--- a/include/hw/riscv/sifive_test.h
+++ b/include/hw/riscv/sifive_test.h
@@ -19,6 +19,8 @@
#ifndef HW_SIFIVE_TEST_H
#define HW_SIFIVE_TEST_H
+#include "hw/sysbus.h"
+
#define TYPE_SIFIVE_TEST "riscv.sifive.test"
#define SIFIVE_TEST(obj) \
diff --git a/include/hw/riscv/sifive_u.h b/include/hw/riscv/sifive_u.h
index 892f0eee21..be021ce256 100644
--- a/include/hw/riscv/sifive_u.h
+++ b/include/hw/riscv/sifive_u.h
@@ -20,6 +20,7 @@
#define HW_SIFIVE_U_H
#include "hw/net/cadence_gem.h"
+#include "hw/riscv/riscv_hart.h"
#define TYPE_RISCV_U_SOC "riscv.sifive.u.soc"
#define RISCV_U_SOC(obj) \
diff --git a/include/hw/riscv/sifive_uart.h b/include/hw/riscv/sifive_uart.h
index c8dc1c57fd..65668825a3 100644
--- a/include/hw/riscv/sifive_uart.h
+++ b/include/hw/riscv/sifive_uart.h
@@ -20,6 +20,9 @@
#ifndef HW_SIFIVE_UART_H
#define HW_SIFIVE_UART_H
+#include "chardev/char-fe.h"
+#include "hw/sysbus.h"
+
enum {
SIFIVE_UART_TXFIFO = 0,
SIFIVE_UART_RXFIFO = 4,
diff --git a/include/hw/riscv/spike.h b/include/hw/riscv/spike.h
index 641b70da67..03d870363c 100644
--- a/include/hw/riscv/spike.h
+++ b/include/hw/riscv/spike.h
@@ -19,6 +19,9 @@
#ifndef HW_RISCV_SPIKE_H
#define HW_RISCV_SPIKE_H
+#include "hw/riscv/riscv_hart.h"
+#include "hw/sysbus.h"
+
typedef struct {
/*< private >*/
SysBusDevice parent_obj;
diff --git a/include/hw/riscv/virt.h b/include/hw/riscv/virt.h
index d01a1a85c4..6e5fbe5d3b 100644
--- a/include/hw/riscv/virt.h
+++ b/include/hw/riscv/virt.h
@@ -19,6 +19,9 @@
#ifndef HW_RISCV_VIRT_H
#define HW_RISCV_VIRT_H
+#include "hw/riscv/riscv_hart.h"
+#include "hw/sysbus.h"
+
typedef struct {
/*< private >*/
SysBusDevice parent_obj;
diff --git a/include/hw/s390x/ap-device.h b/include/hw/s390x/ap-device.h
index 765e9082a3..8df9cd2954 100644
--- a/include/hw/s390x/ap-device.h
+++ b/include/hw/s390x/ap-device.h
@@ -7,9 +7,12 @@
* your option) any later version. See the COPYING file in the top-level
* directory.
*/
+
#ifndef HW_S390X_AP_DEVICE_H
#define HW_S390X_AP_DEVICE_H
+#include "hw/qdev-core.h"
+
#define AP_DEVICE_TYPE "ap-device"
typedef struct APDevice {
diff --git a/include/hw/s390x/css-bridge.h b/include/hw/s390x/css-bridge.h
index 5a0203be5f..f7ed2d9a03 100644
--- a/include/hw/s390x/css-bridge.h
+++ b/include/hw/s390x/css-bridge.h
@@ -12,8 +12,9 @@
#ifndef HW_S390X_CSS_BRIDGE_H
#define HW_S390X_CSS_BRIDGE_H
+
#include "qom/object.h"
-#include "hw/qdev-core.h"
+#include "hw/sysbus.h"
/* virtual css bridge */
typedef struct VirtualCssBridge {
diff --git a/include/hw/s390x/css.h b/include/hw/s390x/css.h
index d033387fba..f46bcafb16 100644
--- a/include/hw/s390x/css.h
+++ b/include/hw/s390x/css.h
@@ -17,6 +17,7 @@
#include "hw/s390x/s390_flic.h"
#include "hw/s390x/ioinst.h"
#include "sysemu/kvm.h"
+#include "target/s390x/cpu-qom.h"
/* Channel subsystem constants. */
#define MAX_DEVNO 65535
diff --git a/include/hw/s390x/event-facility.h b/include/hw/s390x/event-facility.h
index 6cf71cec38..bdc32a3c09 100644
--- a/include/hw/s390x/event-facility.h
+++ b/include/hw/s390x/event-facility.h
@@ -15,8 +15,8 @@
#ifndef HW_S390_SCLP_EVENT_FACILITY_H
#define HW_S390_SCLP_EVENT_FACILITY_H
-#include "hw/qdev.h"
#include "qemu/thread.h"
+#include "hw/qdev-core.h"
#include "hw/s390x/sclp.h"
/* SCLP event types */
diff --git a/include/hw/s390x/sclp.h b/include/hw/s390x/sclp.h
index f9db243484..c54413b78c 100644
--- a/include/hw/s390x/sclp.h
+++ b/include/hw/s390x/sclp.h
@@ -15,7 +15,6 @@
#define HW_S390_SCLP_H
#include "hw/sysbus.h"
-#include "hw/qdev.h"
#include "target/s390x/cpu-qom.h"
#define SCLP_CMD_CODE_MASK 0xffff00ff
diff --git a/include/hw/s390x/storage-attributes.h b/include/hw/s390x/storage-attributes.h
index d6403a0a7e..4f7c6c0877 100644
--- a/include/hw/s390x/storage-attributes.h
+++ b/include/hw/s390x/storage-attributes.h
@@ -12,7 +12,7 @@
#ifndef S390_STORAGE_ATTRIBUTES_H
#define S390_STORAGE_ATTRIBUTES_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "monitor/monitor.h"
#define TYPE_S390_STATTRIB "s390-storage_attributes"
diff --git a/include/hw/s390x/storage-keys.h b/include/hw/s390x/storage-keys.h
index 62df48ec06..3f1ae7e778 100644
--- a/include/hw/s390x/storage-keys.h
+++ b/include/hw/s390x/storage-keys.h
@@ -12,7 +12,7 @@
#ifndef S390_STORAGE_KEYS_H
#define S390_STORAGE_KEYS_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "monitor/monitor.h"
#define TYPE_S390_SKEYS "s390-skeys"
diff --git a/include/hw/s390x/tod.h b/include/hw/s390x/tod.h
index 9c4a6000c3..4251623f7f 100644
--- a/include/hw/s390x/tod.h
+++ b/include/hw/s390x/tod.h
@@ -11,8 +11,8 @@
#ifndef HW_S390_TOD_H
#define HW_S390_TOD_H
-#include "hw/qdev.h"
-#include "s390-tod.h"
+#include "hw/qdev-core.h"
+#include "target/s390x/s390-tod.h"
typedef struct S390TOD {
uint8_t high;
diff --git a/include/hw/scsi/scsi.h b/include/hw/scsi/scsi.h
index 426566a5c6..d77a92361b 100644
--- a/include/hw/scsi/scsi.h
+++ b/include/hw/scsi/scsi.h
@@ -1,9 +1,9 @@
#ifndef QEMU_HW_SCSI_H
#define QEMU_HW_SCSI_H
-#include "hw/qdev.h"
+#include "block/aio.h"
#include "hw/block/block.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-core.h"
#include "scsi/utils.h"
#include "qemu/notify.h"
diff --git a/include/hw/sd/sd.h b/include/hw/sd/sd.h
index b865aafc33..a84b8e274a 100644
--- a/include/hw/sd/sd.h
+++ b/include/hw/sd/sd.h
@@ -30,7 +30,7 @@
#ifndef HW_SD_H
#define HW_SD_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define OUT_OF_RANGE (1 << 31)
#define ADDRESS_ERROR (1 << 30)
diff --git a/include/hw/semihosting/console.h b/include/hw/semihosting/console.h
index cfab572c0c..9be9754bcd 100644
--- a/include/hw/semihosting/console.h
+++ b/include/hw/semihosting/console.h
@@ -9,6 +9,8 @@
#ifndef SEMIHOST_CONSOLE_H
#define SEMIHOST_CONSOLE_H
+#include "cpu.h"
+
/**
* qemu_semihosting_console_outs:
* @env: CPUArchState
diff --git a/include/hw/sh4/sh_intc.h b/include/hw/sh4/sh_intc.h
index b7c2404334..65f3425057 100644
--- a/include/hw/sh4/sh_intc.h
+++ b/include/hw/sh4/sh_intc.h
@@ -1,7 +1,7 @@
#ifndef SH_INTC_H
#define SH_INTC_H
-#include "hw/irq.h"
+#include "exec/memory.h"
typedef unsigned char intc_enum;
diff --git a/include/hw/sparc/grlib.h b/include/hw/sparc/grlib.h
index 5606ff0a97..78b6178fcd 100644
--- a/include/hw/sparc/grlib.h
+++ b/include/hw/sparc/grlib.h
@@ -25,7 +25,6 @@
#ifndef GRLIB_H
#define GRLIB_H
-#include "hw/qdev.h"
#include "hw/sysbus.h"
/* Emulation of GrLib device is base on the GRLIB IP Core User's Manual:
diff --git a/include/hw/sparc/sparc64.h b/include/hw/sparc/sparc64.h
index 21ab79e343..4ced36fb5a 100644
--- a/include/hw/sparc/sparc64.h
+++ b/include/hw/sparc/sparc64.h
@@ -1,6 +1,8 @@
#ifndef HW_SPARC_SPARC64_H
#define HW_SPARC_SPARC64_H
+#include "target/sparc/cpu-qom.h"
+
#define IVEC_MAX 0x40
SPARCCPU *sparc64_cpu_devinit(const char *cpu_type, uint64_t prom_addr);
diff --git a/include/hw/ssi/aspeed_smc.h b/include/hw/ssi/aspeed_smc.h
index 591279ba1f..aa07dac4fe 100644
--- a/include/hw/ssi/aspeed_smc.h
+++ b/include/hw/ssi/aspeed_smc.h
@@ -26,6 +26,7 @@
#define ASPEED_SMC_H
#include "hw/ssi/ssi.h"
+#include "hw/sysbus.h"
typedef struct AspeedSegments {
hwaddr addr;
diff --git a/include/hw/ssi/ssi.h b/include/hw/ssi/ssi.h
index 6a0c3c3cdb..1107cb89ee 100644
--- a/include/hw/ssi/ssi.h
+++ b/include/hw/ssi/ssi.h
@@ -11,7 +11,7 @@
#ifndef QEMU_SSI_H
#define QEMU_SSI_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
typedef struct SSISlave SSISlave;
typedef struct SSISlaveClass SSISlaveClass;
diff --git a/include/hw/ssi/stm32f2xx_spi.h b/include/hw/ssi/stm32f2xx_spi.h
index 1cd73e4cd4..e24b007abf 100644
--- a/include/hw/ssi/stm32f2xx_spi.h
+++ b/include/hw/ssi/stm32f2xx_spi.h
@@ -26,7 +26,6 @@
#define HW_STM32F2XX_SPI_H
#include "hw/sysbus.h"
-#include "hw/hw.h"
#include "hw/ssi/ssi.h"
#define STM_SPI_CR1 0x00
diff --git a/include/hw/ssi/xilinx_spips.h b/include/hw/ssi/xilinx_spips.h
index a0a0ae7584..6a39b55a7b 100644
--- a/include/hw/ssi/xilinx_spips.h
+++ b/include/hw/ssi/xilinx_spips.h
@@ -28,6 +28,7 @@
#include "hw/ssi/ssi.h"
#include "qemu/fifo32.h"
#include "hw/stream.h"
+#include "hw/sysbus.h"
typedef struct XilinxSPIPS XilinxSPIPS;
diff --git a/include/hw/sysbus.h b/include/hw/sysbus.h
index 4c668fbbdc..27e80881da 100644
--- a/include/hw/sysbus.h
+++ b/include/hw/sysbus.h
@@ -3,7 +3,7 @@
/* Devices attached directly to the main system bus. */
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "exec/memory.h"
#define QDEV_MAX_MMIO 32
diff --git a/include/hw/timer/allwinner-a10-pit.h b/include/hw/timer/allwinner-a10-pit.h
index c0cc3e2169..871c95b512 100644
--- a/include/hw/timer/allwinner-a10-pit.h
+++ b/include/hw/timer/allwinner-a10-pit.h
@@ -2,6 +2,7 @@
#define ALLWINNER_A10_PIT_H
#include "hw/ptimer.h"
+#include "hw/sysbus.h"
#define TYPE_AW_A10_PIT "allwinner-A10-timer"
#define AW_A10_PIT(obj) OBJECT_CHECK(AwA10PITState, (obj), TYPE_AW_A10_PIT)
diff --git a/include/hw/timer/aspeed_rtc.h b/include/hw/timer/aspeed_rtc.h
index 1f1155a676..15ba42912b 100644
--- a/include/hw/timer/aspeed_rtc.h
+++ b/include/hw/timer/aspeed_rtc.h
@@ -10,7 +10,6 @@
#include <stdint.h>
-#include "hw/hw.h"
#include "hw/irq.h"
#include "hw/sysbus.h"
diff --git a/include/hw/timer/cmsdk-apb-timer.h b/include/hw/timer/cmsdk-apb-timer.h
index f21686d26b..e93caccc3c 100644
--- a/include/hw/timer/cmsdk-apb-timer.h
+++ b/include/hw/timer/cmsdk-apb-timer.h
@@ -12,6 +12,7 @@
#ifndef CMSDK_APB_TIMER_H
#define CMSDK_APB_TIMER_H
+#include "hw/qdev-properties.h"
#include "hw/sysbus.h"
#include "hw/ptimer.h"
diff --git a/include/hw/timer/i8254.h b/include/hw/timer/i8254.h
index 5b12eb918e..45cb42571f 100644
--- a/include/hw/timer/i8254.h
+++ b/include/hw/timer/i8254.h
@@ -25,8 +25,7 @@
#ifndef HW_I8254_H
#define HW_I8254_H
-#include "hw/hw.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
#include "hw/isa/isa.h"
#define PIT_FREQ 1193182
diff --git a/include/hw/timer/i8254_internal.h b/include/hw/timer/i8254_internal.h
index c37a438f82..3db462aecd 100644
--- a/include/hw/timer/i8254_internal.h
+++ b/include/hw/timer/i8254_internal.h
@@ -25,8 +25,8 @@
#ifndef QEMU_I8254_INTERNAL_H
#define QEMU_I8254_INTERNAL_H
-#include "hw/hw.h"
#include "hw/isa/isa.h"
+#include "hw/timer/i8254.h"
#include "qemu/timer.h"
typedef struct PITChannelState {
diff --git a/include/hw/timer/m48t59.h b/include/hw/timer/m48t59.h
index 43efc91f56..f74854c026 100644
--- a/include/hw/timer/m48t59.h
+++ b/include/hw/timer/m48t59.h
@@ -1,6 +1,7 @@
#ifndef HW_M48T59_H
#define HW_M48T59_H
+#include "exec/hwaddr.h"
#include "qom/object.h"
#define TYPE_NVRAM "nvram"
diff --git a/include/hw/timer/mc146818rtc_regs.h b/include/hw/timer/mc146818rtc_regs.h
index c62f17bf2d..bfbb57e570 100644
--- a/include/hw/timer/mc146818rtc_regs.h
+++ b/include/hw/timer/mc146818rtc_regs.h
@@ -25,6 +25,8 @@
#ifndef MC146818RTC_REGS_H
#define MC146818RTC_REGS_H
+#include "qemu/timer.h"
+
#define RTC_ISA_IRQ 8
#define RTC_SECONDS 0
diff --git a/include/hw/timer/stm32f2xx_timer.h b/include/hw/timer/stm32f2xx_timer.h
index e6a83237a5..a96bc08b1b 100644
--- a/include/hw/timer/stm32f2xx_timer.h
+++ b/include/hw/timer/stm32f2xx_timer.h
@@ -27,7 +27,6 @@
#include "hw/sysbus.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#define TIM_CR1 0x00
#define TIM_CR2 0x04
diff --git a/include/hw/timer/xlnx-zynqmp-rtc.h b/include/hw/timer/xlnx-zynqmp-rtc.h
index 6e9134edf6..97e32322ed 100644
--- a/include/hw/timer/xlnx-zynqmp-rtc.h
+++ b/include/hw/timer/xlnx-zynqmp-rtc.h
@@ -28,6 +28,7 @@
#define HW_TIMER_XLNX_ZYNQMP_RTC_H
#include "hw/register.h"
+#include "hw/sysbus.h"
#define TYPE_XLNX_ZYNQMP_RTC "xlnx-zynmp.rtc"
diff --git a/include/hw/tricore/tricore.h b/include/hw/tricore/tricore.h
index 89ef922c67..c19ed3f013 100644
--- a/include/hw/tricore/tricore.h
+++ b/include/hw/tricore/tricore.h
@@ -2,7 +2,6 @@
#define HW_TRICORE_H
#include "exec/memory.h"
-#include "hw/irq.h"
struct tricore_boot_info {
uint64_t ram_size;
diff --git a/include/hw/usb.h b/include/hw/usb.h
index c21f41c8a9..c24d968a19 100644
--- a/include/hw/usb.h
+++ b/include/hw/usb.h
@@ -25,7 +25,8 @@
* THE SOFTWARE.
*/
-#include "hw/qdev.h"
+#include "exec/memory.h"
+#include "hw/qdev-core.h"
#include "qemu/iov.h"
#include "qemu/queue.h"
diff --git a/include/hw/vfio/vfio-platform.h b/include/hw/vfio/vfio-platform.h
index 30d3c28d3b..4ec70c813a 100644
--- a/include/hw/vfio/vfio-platform.h
+++ b/include/hw/vfio/vfio-platform.h
@@ -20,7 +20,6 @@
#include "hw/vfio/vfio-common.h"
#include "qemu/event_notifier.h"
#include "qemu/queue.h"
-#include "hw/irq.h"
#define TYPE_VFIO_PLATFORM "vfio-platform"
diff --git a/include/hw/virtio/vhost-scsi-common.h b/include/hw/virtio/vhost-scsi-common.h
index 54357164f0..16bf1a73c1 100644
--- a/include/hw/virtio/vhost-scsi-common.h
+++ b/include/hw/virtio/vhost-scsi-common.h
@@ -14,7 +14,6 @@
#ifndef VHOST_SCSI_COMMON_H
#define VHOST_SCSI_COMMON_H
-#include "hw/qdev.h"
#include "hw/virtio/virtio-scsi.h"
#include "hw/virtio/vhost.h"
#include "hw/fw-path-provider.h"
diff --git a/include/hw/virtio/vhost-scsi.h b/include/hw/virtio/vhost-scsi.h
index df5bfdb188..23252153ff 100644
--- a/include/hw/virtio/vhost-scsi.h
+++ b/include/hw/virtio/vhost-scsi.h
@@ -14,7 +14,6 @@
#ifndef VHOST_SCSI_H
#define VHOST_SCSI_H
-#include "hw/qdev.h"
#include "hw/virtio/virtio-scsi.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-scsi-common.h"
diff --git a/include/hw/virtio/vhost-user-blk.h b/include/hw/virtio/vhost-user-blk.h
index 8dbf11c6f0..108bfadeeb 100644
--- a/include/hw/virtio/vhost-user-blk.h
+++ b/include/hw/virtio/vhost-user-blk.h
@@ -16,7 +16,6 @@
#define VHOST_USER_BLK_H
#include "standard-headers/linux/virtio_blk.h"
-#include "hw/qdev.h"
#include "hw/block/block.h"
#include "chardev/char-fe.h"
#include "hw/virtio/vhost.h"
diff --git a/include/hw/virtio/vhost-user-scsi.h b/include/hw/virtio/vhost-user-scsi.h
index 1b332ea910..99ab2f2cc4 100644
--- a/include/hw/virtio/vhost-user-scsi.h
+++ b/include/hw/virtio/vhost-user-scsi.h
@@ -17,7 +17,6 @@
#ifndef VHOST_USER_SCSI_H
#define VHOST_USER_SCSI_H
-#include "hw/qdev.h"
#include "hw/virtio/virtio-scsi.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-user.h"
diff --git a/include/hw/virtio/vhost.h b/include/hw/virtio/vhost.h
index 619498c8f4..085450c6f8 100644
--- a/include/hw/virtio/vhost.h
+++ b/include/hw/virtio/vhost.h
@@ -1,7 +1,6 @@
#ifndef VHOST_H
#define VHOST_H
-#include "hw/hw.h"
#include "hw/virtio/vhost-backend.h"
#include "hw/virtio/virtio.h"
#include "exec/memory.h"
diff --git a/include/hw/virtio/virtio-access.h b/include/hw/virtio/virtio-access.h
index bdf58f3119..6818a23a2d 100644
--- a/include/hw/virtio/virtio-access.h
+++ b/include/hw/virtio/virtio-access.h
@@ -16,6 +16,7 @@
#ifndef QEMU_VIRTIO_ACCESS_H
#define QEMU_VIRTIO_ACCESS_H
+#include "exec/hwaddr.h"
#include "hw/virtio/virtio.h"
#include "hw/virtio/virtio-bus.h"
diff --git a/include/hw/virtio/virtio-bus.h b/include/hw/virtio/virtio-bus.h
index 7fec9dc929..38c9399cd4 100644
--- a/include/hw/virtio/virtio-bus.h
+++ b/include/hw/virtio/virtio-bus.h
@@ -25,8 +25,7 @@
#ifndef VIRTIO_BUS_H
#define VIRTIO_BUS_H
-#include "hw/qdev.h"
-#include "sysemu/sysemu.h"
+#include "hw/qdev-core.h"
#include "hw/virtio/virtio.h"
#define TYPE_VIRTIO_BUS "virtio-bus"
diff --git a/include/hw/virtio/virtio-gpu-bswap.h b/include/hw/virtio/virtio-gpu-bswap.h
index 38d12160f6..203f9e1718 100644
--- a/include/hw/virtio/virtio-gpu-bswap.h
+++ b/include/hw/virtio/virtio-gpu-bswap.h
@@ -15,6 +15,7 @@
#define HW_VIRTIO_GPU_BSWAP_H
#include "qemu/bswap.h"
+#include "standard-headers/linux/virtio_gpu.h"
static inline void
virtio_gpu_ctrl_hdr_bswap(struct virtio_gpu_ctrl_hdr *hdr)
diff --git a/include/hw/virtio/virtio-pmem.h b/include/hw/virtio/virtio-pmem.h
index 19b6ee6d75..33f1999320 100644
--- a/include/hw/virtio/virtio-pmem.h
+++ b/include/hw/virtio/virtio-pmem.h
@@ -15,7 +15,7 @@
#define HW_VIRTIO_PMEM_H
#include "hw/virtio/virtio.h"
-#include "sysemu/hostmem.h"
+#include "qapi/qapi-types-misc.h"
#define TYPE_VIRTIO_PMEM "virtio-pmem"
diff --git a/include/hw/virtio/virtio-rng.h b/include/hw/virtio/virtio-rng.h
index 922dce7cac..ff699335e3 100644
--- a/include/hw/virtio/virtio-rng.h
+++ b/include/hw/virtio/virtio-rng.h
@@ -12,6 +12,7 @@
#ifndef QEMU_VIRTIO_RNG_H
#define QEMU_VIRTIO_RNG_H
+#include "hw/virtio/virtio.h"
#include "sysemu/rng.h"
#include "sysemu/rng-random.h"
#include "standard-headers/linux/virtio_rng.h"
diff --git a/include/hw/virtio/virtio-serial.h b/include/hw/virtio/virtio-serial.h
index 12657a9f39..ed3e916b68 100644
--- a/include/hw/virtio/virtio-serial.h
+++ b/include/hw/virtio/virtio-serial.h
@@ -17,7 +17,6 @@
#define QEMU_VIRTIO_SERIAL_H
#include "standard-headers/linux/virtio_console.h"
-#include "hw/qdev.h"
#include "hw/virtio/virtio.h"
struct virtio_serial_conf {
diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
index b189788cb2..48e8d04ff6 100644
--- a/include/hw/virtio/virtio.h
+++ b/include/hw/virtio/virtio.h
@@ -14,10 +14,10 @@
#ifndef QEMU_VIRTIO_H
#define QEMU_VIRTIO_H
-#include "hw/hw.h"
+#include "exec/memory.h"
+#include "hw/qdev-core.h"
#include "net/net.h"
-#include "hw/qdev.h"
-#include "sysemu/sysemu.h"
+#include "migration/vmstate.h"
#include "qemu/event_notifier.h"
#include "standard-headers/linux/virtio_config.h"
#include "standard-headers/linux/virtio_ring.h"
diff --git a/include/hw/watchdog/wdt_aspeed.h b/include/hw/watchdog/wdt_aspeed.h
index daef0c0e23..8c5691ce20 100644
--- a/include/hw/watchdog/wdt_aspeed.h
+++ b/include/hw/watchdog/wdt_aspeed.h
@@ -10,6 +10,7 @@
#ifndef WDT_ASPEED_H
#define WDT_ASPEED_H
+#include "hw/misc/aspeed_scu.h"
#include "hw/sysbus.h"
#define TYPE_ASPEED_WDT "aspeed.wdt"
diff --git a/include/hw/watchdog/wdt_diag288.h b/include/hw/watchdog/wdt_diag288.h
index 706d96b753..19d83a0937 100644
--- a/include/hw/watchdog/wdt_diag288.h
+++ b/include/hw/watchdog/wdt_diag288.h
@@ -1,7 +1,7 @@
#ifndef WDT_DIAG288_H
#define WDT_DIAG288_H
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#define TYPE_WDT_DIAG288 "diag288"
#define DIAG288(obj) \
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index 07d4176ac1..5e6c56c4d6 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -3,7 +3,6 @@
#include "hw/xen/xen_common.h"
#include "hw/xen/xen_pvdev.h"
-#include "sysemu/sysemu.h"
#include "net/net.h"
#define TYPE_XENSYSDEV "xen-sysdev"
diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h
index 9c7b5f78dc..5ac1c6dc55 100644
--- a/include/hw/xen/xen.h
+++ b/include/hw/xen/xen.h
@@ -9,7 +9,6 @@
*/
#include "exec/cpu-common.h"
-#include "hw/irq.h"
/* xen-machine.c */
enum xen_mode {
diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h
index 0504b43659..82e56339dd 100644
--- a/include/hw/xen/xen_common.h
+++ b/include/hw/xen/xen_common.h
@@ -14,10 +14,8 @@
#include <xenstore.h>
#include "hw/xen/interface/io/xenbus.h"
-#include "hw/hw.h"
#include "hw/xen/xen.h"
#include "hw/pci/pci.h"
-#include "qemu/queue.h"
#include "hw/xen/trace.h"
extern xc_interface *xen_xc;
diff --git a/include/hw/xtensa/mx_pic.h b/include/hw/xtensa/mx_pic.h
index c9ea9e737c..500424c8d3 100644
--- a/include/hw/xtensa/mx_pic.h
+++ b/include/hw/xtensa/mx_pic.h
@@ -29,7 +29,6 @@
#define XTENSA_MX_PIC_H
#include "exec/memory.h"
-#include "hw/irq.h"
struct XtensaMxPic;
typedef struct XtensaMxPic XtensaMxPic;
diff --git a/include/libdecnumber/decNumberLocal.h b/include/libdecnumber/decNumberLocal.h
index 12cf1d8b6f..4d53c077f2 100644
--- a/include/libdecnumber/decNumberLocal.h
+++ b/include/libdecnumber/decNumberLocal.h
@@ -44,6 +44,7 @@
#define DECNLAUTHOR "Mike Cowlishaw" /* Who to blame */
#include "libdecnumber/dconfig.h"
+ #include "libdecnumber/decContext.h"
/* Conditional code flag -- set this to match hardware platform */
/* 1=little-endian, 0=big-endian */
diff --git a/include/migration/cpu.h b/include/migration/cpu.h
index a40bd3549f..65abe3c8cc 100644
--- a/include/migration/cpu.h
+++ b/include/migration/cpu.h
@@ -1,7 +1,12 @@
/* Declarations for use for CPU state serialization. */
+
#ifndef MIGRATION_CPU_H
#define MIGRATION_CPU_H
+#include "exec/cpu-defs.h"
+#include "migration/qemu-file-types.h"
+#include "migration/vmstate.h"
+
#if TARGET_LONG_BITS == 64
#define qemu_put_betl qemu_put_be64
#define qemu_get_betl qemu_get_be64
diff --git a/include/migration/global_state.h b/include/migration/global_state.h
index fd22dd3034..945eb35d5b 100644
--- a/include/migration/global_state.h
+++ b/include/migration/global_state.h
@@ -14,7 +14,6 @@
#define QEMU_MIGRATION_GLOBAL_STATE_H
#include "qapi/qapi-types-run-state.h"
-#include "sysemu/sysemu.h"
void register_global_state(void);
int global_state_store(void);
diff --git a/include/migration/misc.h b/include/migration/misc.h
index 5cdbabd094..b9d8e787af 100644
--- a/include/migration/misc.h
+++ b/include/migration/misc.h
@@ -14,7 +14,6 @@
#ifndef MIGRATION_MISC_H
#define MIGRATION_MISC_H
-#include "exec/cpu-common.h"
#include "qemu/notify.h"
#include "qapi/qapi-types-net.h"
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index c2bfa7a7f0..1fbfd099dd 100644
--- a/include/migration/vmstate.h
+++ b/include/migration/vmstate.h
@@ -28,7 +28,6 @@
#define QEMU_VMSTATE_H
typedef struct VMStateInfo VMStateInfo;
-typedef struct VMStateDescription VMStateDescription;
typedef struct VMStateField VMStateField;
/* VMStateInfo allows customized migration of objects that don't fit in
diff --git a/include/monitor/hmp-target.h b/include/monitor/hmp-target.h
index 454e8ed155..8b7820a3ad 100644
--- a/include/monitor/hmp-target.h
+++ b/include/monitor/hmp-target.h
@@ -25,6 +25,8 @@
#ifndef MONITOR_HMP_TARGET_H
#define MONITOR_HMP_TARGET_H
+#include "cpu.h"
+
#define MD_TLONG 0
#define MD_I32 1
diff --git a/include/monitor/qdev.h b/include/monitor/qdev.h
index 084799e4d9..eaa947d73a 100644
--- a/include/monitor/qdev.h
+++ b/include/monitor/qdev.h
@@ -1,8 +1,6 @@
#ifndef MONITOR_QDEV_H
#define MONITOR_QDEV_H
-#include "hw/qdev-core.h"
-
/*** monitor commands ***/
void hmp_info_qtree(Monitor *mon, const QDict *qdict);
diff --git a/include/net/can_emu.h b/include/net/can_emu.h
index 1da4d01b95..d4fc51b57d 100644
--- a/include/net/can_emu.h
+++ b/include/net/can_emu.h
@@ -28,6 +28,7 @@
#ifndef NET_CAN_EMU_H
#define NET_CAN_EMU_H
+#include "qemu/queue.h"
#include "qom/object.h"
/* NOTE: the following two structures is copied from <linux/can.h>. */
diff --git a/include/net/filter.h b/include/net/filter.h
index 9bc6fa3cc6..e8fb6259db 100644
--- a/include/net/filter.h
+++ b/include/net/filter.h
@@ -10,6 +10,7 @@
#define QEMU_NET_FILTER_H
#include "qapi/qapi-types-net.h"
+#include "qemu/queue.h"
#include "qom/object.h"
#include "net/queue.h"
diff --git a/include/net/net.h b/include/net/net.h
index acf0451fc4..e175ba9677 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -4,7 +4,6 @@
#include "qemu/queue.h"
#include "qapi/qapi-types-net.h"
#include "net/queue.h"
-#include "migration/vmstate.h"
#define MAC_FMT "%02X:%02X:%02X:%02X:%02X:%02X"
#define MAC_ARG(x) ((uint8_t *)(x))[0], ((uint8_t *)(x))[1], \
diff --git a/include/qapi/error.h b/include/qapi/error.h
index 51b63dd4b5..3f95141a01 100644
--- a/include/qapi/error.h
+++ b/include/qapi/error.h
@@ -119,7 +119,7 @@
#ifndef ERROR_H
#define ERROR_H
-#include "qapi/qapi-types-common.h"
+#include "qapi/qapi-types-error.h"
/*
* Overall category of an error.
diff --git a/include/qemu/atomic128.h b/include/qemu/atomic128.h
index ddd0d55d31..6b34484e15 100644
--- a/include/qemu/atomic128.h
+++ b/include/qemu/atomic128.h
@@ -13,6 +13,8 @@
#ifndef QEMU_ATOMIC128_H
#define QEMU_ATOMIC128_H
+#include "qemu/int128.h"
+
/*
* GCC is a house divided about supporting large atomic operations.
*
diff --git a/include/qemu/fifo8.h b/include/qemu/fifo8.h
index 24b364462d..489c354291 100644
--- a/include/qemu/fifo8.h
+++ b/include/qemu/fifo8.h
@@ -1,7 +1,6 @@
#ifndef QEMU_FIFO8_H
#define QEMU_FIFO8_H
-#include "migration/vmstate.h"
typedef struct {
/* All fields are private */
diff --git a/include/qemu/job.h b/include/qemu/job.h
index 9e7cd1e4a0..73c67d3175 100644
--- a/include/qemu/job.h
+++ b/include/qemu/job.h
@@ -26,7 +26,7 @@
#ifndef JOB_H
#define JOB_H
-#include "qapi/qapi-types-block-core.h"
+#include "qapi/qapi-types-job.h"
#include "qemu/queue.h"
#include "qemu/coroutine.h"
#include "block/aio.h"
diff --git a/include/qemu/queue.h b/include/qemu/queue.h
index 0379bd8fdb..73bf4a984d 100644
--- a/include/qemu/queue.h
+++ b/include/qemu/queue.h
@@ -78,8 +78,6 @@
* For details on the use of these macros, see the queue(3) manual page.
*/
-#include "qemu/atomic.h" /* for smp_wmb() */
-
/*
* List definitions.
*/
diff --git a/include/qemu/range.h b/include/qemu/range.h
index 71b8b215c6..f62b363e0d 100644
--- a/include/qemu/range.h
+++ b/include/qemu/range.h
@@ -20,8 +20,6 @@
#ifndef QEMU_RANGE_H
#define QEMU_RANGE_H
-#include "qemu/queue.h"
-
/*
* Operations on 64 bit address ranges.
* Notes:
diff --git a/include/qemu/ratelimit.h b/include/qemu/ratelimit.h
index 1b38291823..01da8d63f1 100644
--- a/include/qemu/ratelimit.h
+++ b/include/qemu/ratelimit.h
@@ -14,6 +14,8 @@
#ifndef QEMU_RATELIMIT_H
#define QEMU_RATELIMIT_H
+#include "qemu/timer.h"
+
typedef struct {
int64_t slice_start_time;
int64_t slice_end_time;
diff --git a/include/qemu/thread-win32.h b/include/qemu/thread-win32.h
index 50af5dd7ab..d0a1a9597e 100644
--- a/include/qemu/thread-win32.h
+++ b/include/qemu/thread-win32.h
@@ -47,6 +47,6 @@ struct QemuThread {
};
/* Only valid for joinable threads. */
-HANDLE qemu_thread_get_handle(QemuThread *thread);
+HANDLE qemu_thread_get_handle(struct QemuThread *thread);
#endif
diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
index fcdaae58c4..375770a80f 100644
--- a/include/qemu/typedefs.h
+++ b/include/qemu/typedefs.h
@@ -1,10 +1,26 @@
#ifndef QEMU_TYPEDEFS_H
#define QEMU_TYPEDEFS_H
-/* A load of opaque types so that device init declarations don't have to
- pull in all the real definitions. */
+/*
+ * This header is for selectively avoiding #include just to get a
+ * typedef name.
+ *
+ * Declaring a typedef name in its "obvious" place can result in
+ * inclusion cycles, in particular for complete struct and union
+ * types that need more types for their members. It can also result
+ * in headers pulling in many more headers, slowing down builds.
+ *
+ * You can break such cycles and unwanted dependencies by declaring
+ * the typedef name here.
+ *
+ * For struct types used in only a few headers, judicious use of the
+ * struct tag instead of the typedef name is commonly preferable.
+ */
-/* Please keep this list in case-insensitive alphabetical order */
+/*
+ * Incomplete struct types
+ * Please keep this list in case-insensitive alphabetical order.
+ */
typedef struct AdapterInfo AdapterInfo;
typedef struct AddressSpace AddressSpace;
typedef struct AioContext AioContext;
@@ -33,6 +49,7 @@ typedef struct FWCfgEntry FWCfgEntry;
typedef struct FWCfgIoState FWCfgIoState;
typedef struct FWCfgMemState FWCfgMemState;
typedef struct FWCfgState FWCfgState;
+typedef struct HostMemoryBackend HostMemoryBackend;
typedef struct HVFX86EmulatorState HVFX86EmulatorState;
typedef struct I2CBus I2CBus;
typedef struct I2SCodec I2SCodec;
@@ -101,7 +118,22 @@ typedef struct SHPCDevice SHPCDevice;
typedef struct SSIBus SSIBus;
typedef struct VirtIODevice VirtIODevice;
typedef struct Visitor Visitor;
+typedef struct VMChangeStateEntry VMChangeStateEntry;
+typedef struct VMStateDescription VMStateDescription;
+
+/*
+ * Pointer types
+ * Such typedefs should be limited to cases where the typedef's users
+ * are oblivious of its "pointer-ness".
+ * Please keep this list in case-insensitive alphabetical order.
+ */
+typedef struct IRQState *qemu_irq;
+
+/*
+ * Function types
+ */
typedef void SaveStateHandler(QEMUFile *f, void *opaque);
typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id);
+typedef void (*qemu_irq_handler)(void *opaque, int n, int level);
#endif /* QEMU_TYPEDEFS_H */
diff --git a/include/qom/cpu.h b/include/qom/cpu.h
index 5ee0046b62..ddb91bbaff 100644
--- a/include/qom/cpu.h
+++ b/include/qom/cpu.h
@@ -215,7 +215,7 @@ typedef struct CPUClass {
int (*write_elf32_qemunote)(WriteCoreDumpFunction f, CPUState *cpu,
void *opaque);
- const struct VMStateDescription *vmsd;
+ const VMStateDescription *vmsd;
const char *gdb_core_xml_file;
gchar * (*gdb_arch_name)(CPUState *cpu);
const char * (*gdb_get_dynamic_xml)(CPUState *cpu, const char *xmlname);
@@ -1108,7 +1108,7 @@ bool target_words_bigendian(void);
#ifdef NEED_CPU_H
#ifdef CONFIG_SOFTMMU
-extern const struct VMStateDescription vmstate_cpu_common;
+extern const VMStateDescription vmstate_cpu_common;
#else
#define vmstate_cpu_common vmstate_dummy
#endif
diff --git a/include/qom/object.h b/include/qom/object.h
index 7bb82a7f56..128d00c77f 100644
--- a/include/qom/object.h
+++ b/include/qom/object.h
@@ -15,7 +15,6 @@
#define QEMU_OBJECT_H
#include "qapi/qapi-builtin-types.h"
-#include "qemu/queue.h"
#include "qemu/module.h"
struct TypeImpl;
diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
index 89ce57e404..8eb60b870b 100644
--- a/include/sysemu/accel.h
+++ b/include/sysemu/accel.h
@@ -24,7 +24,6 @@
#define HW_ACCEL_H
#include "qom/object.h"
-#include "hw/qdev-properties.h"
#include "exec/hwaddr.h"
typedef struct AccelState {
diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h
index 10cbafe970..62c6fe4cf1 100644
--- a/include/sysemu/arch_init.h
+++ b/include/sysemu/arch_init.h
@@ -1,7 +1,6 @@
#ifndef QEMU_ARCH_INIT_H
#define QEMU_ARCH_INIT_H
-#include "qapi/qapi-types-misc.h"
enum {
QEMU_ARCH_ALL = -1,
diff --git a/include/sysemu/balloon.h b/include/sysemu/balloon.h
index c8f6145257..aea0c44985 100644
--- a/include/sysemu/balloon.h
+++ b/include/sysemu/balloon.h
@@ -14,6 +14,7 @@
#ifndef QEMU_BALLOON_H
#define QEMU_BALLOON_H
+#include "exec/cpu-common.h"
#include "qapi/qapi-types-misc.h"
typedef void (QEMUBalloonEvent)(void *opaque, ram_addr_t target);
diff --git a/include/sysemu/cryptodev-vhost-user.h b/include/sysemu/cryptodev-vhost-user.h
index 6debf53fc5..0d3421e7e8 100644
--- a/include/sysemu/cryptodev-vhost-user.h
+++ b/include/sysemu/cryptodev-vhost-user.h
@@ -20,9 +20,12 @@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*
*/
+
#ifndef CRYPTODEV_VHOST_USER_H
#define CRYPTODEV_VHOST_USER_H
+#include "sysemu/cryptodev-vhost.h"
+
#define VHOST_USER_MAX_AUTH_KEY_LEN 512
#define VHOST_USER_MAX_CIPHER_KEY_LEN 64
diff --git a/include/sysemu/cryptodev.h b/include/sysemu/cryptodev.h
index 92bbb79131..a9afb7e5b5 100644
--- a/include/sysemu/cryptodev.h
+++ b/include/sysemu/cryptodev.h
@@ -23,6 +23,7 @@
#ifndef CRYPTODEV_H
#define CRYPTODEV_H
+#include "qemu/queue.h"
#include "qom/object.h"
/**
diff --git a/include/sysemu/dma.h b/include/sysemu/dma.h
index 5da3c4e3c5..80c5bc3e02 100644
--- a/include/sysemu/dma.h
+++ b/include/sysemu/dma.h
@@ -12,7 +12,6 @@
#include "exec/memory.h"
#include "exec/address-spaces.h"
-#include "hw/hw.h"
#include "block/block.h"
#include "block/accounting.h"
diff --git a/include/sysemu/hax.h b/include/sysemu/hax.h
index f005995c50..9b27e65cc7 100644
--- a/include/sysemu/hax.h
+++ b/include/sysemu/hax.h
@@ -37,7 +37,6 @@ void hax_cpu_synchronize_pre_loadvm(CPUState *cpu);
int hax_enabled(void);
-#include "hw/hw.h"
#include "qemu/bitops.h"
#include "exec/memory.h"
int hax_vcpu_destroy(CPUState *cpu);
diff --git a/include/sysemu/hostmem.h b/include/sysemu/hostmem.h
index 92fa0e458c..4dbdadd39e 100644
--- a/include/sysemu/hostmem.h
+++ b/include/sysemu/hostmem.h
@@ -13,7 +13,7 @@
#ifndef SYSEMU_HOSTMEM_H
#define SYSEMU_HOSTMEM_H
-#include "sysemu/sysemu.h" /* for MAX_NODES */
+#include "sysemu/numa.h"
#include "qapi/qapi-types-machine.h"
#include "qom/object.h"
#include "exec/memory.h"
@@ -27,7 +27,6 @@
#define MEMORY_BACKEND_CLASS(klass) \
OBJECT_CLASS_CHECK(HostMemoryBackendClass, (klass), TYPE_MEMORY_BACKEND)
-typedef struct HostMemoryBackend HostMemoryBackend;
typedef struct HostMemoryBackendClass HostMemoryBackendClass;
/**
diff --git a/include/sysemu/hvf.h b/include/sysemu/hvf.h
index d275b5a843..d211e808e9 100644
--- a/include/sysemu/hvf.h
+++ b/include/sysemu/hvf.h
@@ -13,6 +13,7 @@
#ifndef HVF_H
#define HVF_H
+#include "cpu.h"
#include "qemu/bitops.h"
#include "exec/memory.h"
#include "sysemu/accel.h"
@@ -23,7 +24,6 @@ extern bool hvf_allowed;
#include <Hypervisor/hv_vmx.h>
#include <Hypervisor/hv_error.h>
#include "target/i386/cpu.h"
-#include "hw/hw.h"
uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
int reg);
#define hvf_enabled() (hvf_allowed)
diff --git a/include/sysemu/iothread.h b/include/sysemu/iothread.h
index 5f6240d5cb..6181486401 100644
--- a/include/sysemu/iothread.h
+++ b/include/sysemu/iothread.h
@@ -16,6 +16,7 @@
#include "block/aio.h"
#include "qemu/thread.h"
+#include "qom/object.h"
#define TYPE_IOTHREAD "iothread"
diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h
index acd90aebb6..c8ea412f62 100644
--- a/include/sysemu/kvm.h
+++ b/include/sysemu/kvm.h
@@ -17,7 +17,6 @@
#include "qemu/queue.h"
#include "qom/cpu.h"
#include "exec/memattrs.h"
-#include "hw/irq.h"
#ifdef NEED_CPU_H
# ifdef CONFIG_KVM
diff --git a/include/sysemu/kvm_int.h b/include/sysemu/kvm_int.h
index 31df465fdc..72b2d1b3ae 100644
--- a/include/sysemu/kvm_int.h
+++ b/include/sysemu/kvm_int.h
@@ -9,7 +9,7 @@
#ifndef QEMU_KVM_INT_H
#define QEMU_KVM_INT_H
-#include "sysemu/sysemu.h"
+#include "exec/memory.h"
#include "sysemu/accel.h"
#include "sysemu/kvm.h"
diff --git a/include/sysemu/memory_mapping.h b/include/sysemu/memory_mapping.h
index 58452457ce..4b20f1a639 100644
--- a/include/sysemu/memory_mapping.h
+++ b/include/sysemu/memory_mapping.h
@@ -15,6 +15,7 @@
#define MEMORY_MAPPING_H
#include "qemu/queue.h"
+#include "exec/cpu-defs.h"
#include "exec/memory.h"
typedef struct GuestPhysBlock {
diff --git a/include/sysemu/numa.h b/include/sysemu/numa.h
index 01a263eba2..7a4ce89765 100644
--- a/include/sysemu/numa.h
+++ b/include/sysemu/numa.h
@@ -2,9 +2,17 @@
#define SYSEMU_NUMA_H
#include "qemu/bitmap.h"
-#include "sysemu/sysemu.h"
-#include "sysemu/hostmem.h"
-#include "hw/boards.h"
+#include "qapi/qapi-types-machine.h"
+#include "exec/cpu-common.h"
+
+struct CPUArchId;
+
+#define MAX_NODES 128
+#define NUMA_NODE_UNASSIGNED MAX_NODES
+#define NUMA_DISTANCE_MIN 10
+#define NUMA_DISTANCE_DEFAULT 20
+#define NUMA_DISTANCE_MAX 254
+#define NUMA_DISTANCE_UNREACHABLE 255
extern int nb_numa_nodes; /* Number of NUMA nodes */
extern bool have_numa_distance;
@@ -32,5 +40,7 @@ void numa_legacy_auto_assign_ram(MachineClass *mc, NodeInfo *nodes,
int nb_nodes, ram_addr_t size);
void numa_default_auto_assign_ram(MachineClass *mc, NodeInfo *nodes,
int nb_nodes, ram_addr_t size);
-void numa_cpu_pre_plug(const CPUArchId *slot, DeviceState *dev, Error **errp);
+void numa_cpu_pre_plug(const struct CPUArchId *slot, DeviceState *dev,
+ Error **errp);
+
#endif
diff --git a/include/sysemu/replay.h b/include/sysemu/replay.h
index 3a7c58e423..2f2ccdbc98 100644
--- a/include/sysemu/replay.h
+++ b/include/sysemu/replay.h
@@ -12,8 +12,8 @@
*
*/
-#include "sysemu.h"
#include "qapi/qapi-types-misc.h"
+#include "qapi/qapi-types-run-state.h"
#include "qapi/qapi-types-ui.h"
/* replay clock kinds */
diff --git a/include/sysemu/rng.h b/include/sysemu/rng.h
index 2a02f47771..9b22c156f8 100644
--- a/include/sysemu/rng.h
+++ b/include/sysemu/rng.h
@@ -13,6 +13,7 @@
#ifndef QEMU_RNG_H
#define QEMU_RNG_H
+#include "qemu/queue.h"
#include "qom/object.h"
#define TYPE_RNG_BACKEND "rng-backend"
diff --git a/include/sysemu/runstate.h b/include/sysemu/runstate.h
new file mode 100644
index 0000000000..0b41555609
--- /dev/null
+++ b/include/sysemu/runstate.h
@@ -0,0 +1,68 @@
+#ifndef SYSEMU_RUNSTATE_H
+#define SYSEMU_RUNSTATE_H
+
+#include "qapi/qapi-types-run-state.h"
+#include "qemu/notify.h"
+
+bool runstate_check(RunState state);
+void runstate_set(RunState new_state);
+int runstate_is_running(void);
+bool runstate_needs_reset(void);
+bool runstate_store(char *str, size_t size);
+
+typedef void VMChangeStateHandler(void *opaque, int running, RunState state);
+
+VMChangeStateEntry *qemu_add_vm_change_state_handler(VMChangeStateHandler *cb,
+ void *opaque);
+VMChangeStateEntry *qemu_add_vm_change_state_handler_prio(
+ VMChangeStateHandler *cb, void *opaque, int priority);
+VMChangeStateEntry *qdev_add_vm_change_state_handler(DeviceState *dev,
+ VMChangeStateHandler *cb,
+ void *opaque);
+void qemu_del_vm_change_state_handler(VMChangeStateEntry *e);
+void vm_state_notify(int running, RunState state);
+
+static inline bool shutdown_caused_by_guest(ShutdownCause cause)
+{
+ return cause >= SHUTDOWN_CAUSE_GUEST_SHUTDOWN;
+}
+
+void vm_start(void);
+int vm_prepare_start(void);
+int vm_stop(RunState state);
+int vm_stop_force_state(RunState state);
+int vm_shutdown(void);
+
+typedef enum WakeupReason {
+ /* Always keep QEMU_WAKEUP_REASON_NONE = 0 */
+ QEMU_WAKEUP_REASON_NONE = 0,
+ QEMU_WAKEUP_REASON_RTC,
+ QEMU_WAKEUP_REASON_PMTIMER,
+ QEMU_WAKEUP_REASON_OTHER,
+} WakeupReason;
+
+void qemu_exit_preconfig_request(void);
+void qemu_system_reset_request(ShutdownCause reason);
+void qemu_system_suspend_request(void);
+void qemu_register_suspend_notifier(Notifier *notifier);
+bool qemu_wakeup_suspend_enabled(void);
+void qemu_system_wakeup_request(WakeupReason reason, Error **errp);
+void qemu_system_wakeup_enable(WakeupReason reason, bool enabled);
+void qemu_register_wakeup_notifier(Notifier *notifier);
+void qemu_register_wakeup_support(void);
+void qemu_system_shutdown_request(ShutdownCause reason);
+void qemu_system_powerdown_request(void);
+void qemu_register_powerdown_notifier(Notifier *notifier);
+void qemu_register_shutdown_notifier(Notifier *notifier);
+void qemu_system_debug_request(void);
+void qemu_system_vmstop_request(RunState reason);
+void qemu_system_vmstop_request_prepare(void);
+bool qemu_vmstop_requested(RunState *r);
+ShutdownCause qemu_shutdown_requested_get(void);
+ShutdownCause qemu_reset_requested_get(void);
+void qemu_system_killed(int signal, pid_t pid);
+void qemu_system_reset(ShutdownCause reason);
+void qemu_system_guest_panicked(GuestPanicInformation *info);
+
+#endif
+
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 984c439ac9..d2c38f611a 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -2,12 +2,8 @@
#define SYSEMU_H
/* Misc. things related to the system emulator. */
-#include "qapi/qapi-types-run-state.h"
-#include "qemu/queue.h"
#include "qemu/timer.h"
#include "qemu/notify.h"
-#include "qemu/main-loop.h"
-#include "qemu/bitmap.h"
#include "qemu/uuid.h"
#include "qom/object.h"
@@ -19,63 +15,6 @@ extern const char *qemu_name;
extern QemuUUID qemu_uuid;
extern bool qemu_uuid_set;
-bool runstate_check(RunState state);
-void runstate_set(RunState new_state);
-int runstate_is_running(void);
-bool runstate_needs_reset(void);
-bool runstate_store(char *str, size_t size);
-typedef struct vm_change_state_entry VMChangeStateEntry;
-typedef void VMChangeStateHandler(void *opaque, int running, RunState state);
-
-VMChangeStateEntry *qemu_add_vm_change_state_handler(VMChangeStateHandler *cb,
- void *opaque);
-VMChangeStateEntry *qemu_add_vm_change_state_handler_prio(
- VMChangeStateHandler *cb, void *opaque, int priority);
-void qemu_del_vm_change_state_handler(VMChangeStateEntry *e);
-void vm_state_notify(int running, RunState state);
-
-static inline bool shutdown_caused_by_guest(ShutdownCause cause)
-{
- return cause >= SHUTDOWN_CAUSE_GUEST_SHUTDOWN;
-}
-
-void vm_start(void);
-int vm_prepare_start(void);
-int vm_stop(RunState state);
-int vm_stop_force_state(RunState state);
-int vm_shutdown(void);
-
-typedef enum WakeupReason {
- /* Always keep QEMU_WAKEUP_REASON_NONE = 0 */
- QEMU_WAKEUP_REASON_NONE = 0,
- QEMU_WAKEUP_REASON_RTC,
- QEMU_WAKEUP_REASON_PMTIMER,
- QEMU_WAKEUP_REASON_OTHER,
-} WakeupReason;
-
-void qemu_exit_preconfig_request(void);
-void qemu_system_reset_request(ShutdownCause reason);
-void qemu_system_suspend_request(void);
-void qemu_register_suspend_notifier(Notifier *notifier);
-bool qemu_wakeup_suspend_enabled(void);
-void qemu_system_wakeup_request(WakeupReason reason, Error **errp);
-void qemu_system_wakeup_enable(WakeupReason reason, bool enabled);
-void qemu_register_wakeup_notifier(Notifier *notifier);
-void qemu_register_wakeup_support(void);
-void qemu_system_shutdown_request(ShutdownCause reason);
-void qemu_system_powerdown_request(void);
-void qemu_register_powerdown_notifier(Notifier *notifier);
-void qemu_register_shutdown_notifier(Notifier *notifier);
-void qemu_system_debug_request(void);
-void qemu_system_vmstop_request(RunState reason);
-void qemu_system_vmstop_request_prepare(void);
-bool qemu_vmstop_requested(RunState *r);
-ShutdownCause qemu_shutdown_requested_get(void);
-ShutdownCause qemu_reset_requested_get(void);
-void qemu_system_killed(int signal, pid_t pid);
-void qemu_system_reset(ShutdownCause reason);
-void qemu_system_guest_panicked(GuestPanicInformation *info);
-
void qemu_add_exit_notifier(Notifier *notify);
void qemu_remove_exit_notifier(Notifier *notify);
@@ -119,13 +58,6 @@ extern QEMUClockType rtc_clock;
extern const char *mem_path;
extern int mem_prealloc;
-#define MAX_NODES 128
-#define NUMA_NODE_UNASSIGNED MAX_NODES
-#define NUMA_DISTANCE_MIN 10
-#define NUMA_DISTANCE_DEFAULT 20
-#define NUMA_DISTANCE_MAX 254
-#define NUMA_DISTANCE_UNREACHABLE 255
-
#define MAX_OPTION_ROMS 16
typedef struct QEMUOptionRom {
const char *name;
diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
index a03e2f1878..c8e7c2f6cf 100644
--- a/include/sysemu/xen-mapcache.h
+++ b/include/sysemu/xen-mapcache.h
@@ -9,6 +9,8 @@
#ifndef XEN_MAPCACHE_H
#define XEN_MAPCACHE_H
+#include "exec/cpu-common.h"
+
typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
ram_addr_t size);
#ifdef CONFIG_XEN
diff --git a/include/ui/egl-helpers.h b/include/ui/egl-helpers.h
index d714127799..dad19e9873 100644
--- a/include/ui/egl-helpers.h
+++ b/include/ui/egl-helpers.h
@@ -4,6 +4,8 @@
#include <epoxy/gl.h>
#include <epoxy/egl.h>
#include <gbm.h>
+#include "ui/console.h"
+#include "ui/shader.h"
extern EGLDisplay *qemu_egl_display;
extern EGLConfig qemu_egl_config;
diff --git a/include/ui/input.h b/include/ui/input.h
index 8c8ccb999f..c86219a1c1 100644
--- a/include/ui/input.h
+++ b/include/ui/input.h
@@ -2,6 +2,7 @@
#define INPUT_H
#include "qapi/qapi-types-ui.h"
+#include "qemu/notify.h"
#define INPUT_EVENT_MASK_KEY (1<<INPUT_EVENT_KIND_KEY)
#define INPUT_EVENT_MASK_BTN (1<<INPUT_EVENT_KIND_BTN)
diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h
index eed60e4fae..4a47ffdd4c 100644
--- a/include/ui/spice-display.h
+++ b/include/ui/spice-display.h
@@ -18,6 +18,7 @@
#ifndef UI_SPICE_DISPLAY_H
#define UI_SPICE_DISPLAY_H
+#include <spice.h>
#include <spice/ipc_ring.h>
#include <spice/enums.h>
#include <spice/qxl_dev.h>
@@ -25,7 +26,6 @@
#include "qemu/thread.h"
#include "ui/qemu-pixman.h"
#include "ui/console.h"
-#include "sysemu/sysemu.h"
#if defined(CONFIG_OPENGL_DMABUF)
# if SPICE_SERVER_VERSION >= 0x000d01 /* release 0.13.1 */
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index bd43c4817d..3365e192eb 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -8,6 +8,7 @@
#include "qemu.h"
#include "disas/disas.h"
#include "qemu/path.h"
+#include "qemu/queue.h"
#include "qemu/guest-random.h"
#ifdef _ARCH_PPC64
diff --git a/linux-user/main.c b/linux-user/main.c
index 8ffc525195..47917bbb20 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -28,6 +28,7 @@
#include "qapi/error.h"
#include "qemu.h"
#include "qemu/path.h"
+#include "qemu/queue.h"
#include "qemu/config-file.h"
#include "qemu/cutils.h"
#include "qemu/error-report.h"
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
index aac0334627..f6f5fe5fbb 100644
--- a/linux-user/qemu.h
+++ b/linux-user/qemu.h
@@ -16,7 +16,6 @@
#include "syscall_defs.h"
#include "target_syscall.h"
#include "exec/gdbstub.h"
-#include "qemu/queue.h"
/* This is the size of the host kernel's sigset_t, needed where we make
* direct system calls that take a sigset_t pointer and a size.
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 8367cb138d..8b41a03901 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "qemu/cutils.h"
#include "qemu/path.h"
+#include "qemu/queue.h"
#include <elf.h>
#include <endian.h>
#include <grp.h>
diff --git a/memory.c b/memory.c
index 5d8c9a9234..8141486832 100644
--- a/memory.c
+++ b/memory.c
@@ -21,6 +21,7 @@
#include "qapi/visitor.h"
#include "qemu/bitops.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/qemu-print.h"
#include "qom/object.h"
#include "trace-root.h"
@@ -28,10 +29,9 @@
#include "exec/memory-internal.h"
#include "exec/ram_addr.h"
#include "sysemu/kvm.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "sysemu/tcg.h"
#include "sysemu/accel.h"
-#include "hw/qdev-properties.h"
#include "hw/boards.h"
#include "migration/vmstate.h"
@@ -3245,6 +3245,7 @@ void memory_region_init_rom_device(MemoryRegion *mr,
static const TypeInfo memory_region_info = {
.parent = TYPE_OBJECT,
.name = TYPE_MEMORY_REGION,
+ .class_size = sizeof(MemoryRegionClass),
.instance_size = sizeof(MemoryRegion),
.instance_init = memory_region_initfn,
.instance_finalize = memory_region_finalize,
diff --git a/migration/block-dirty-bitmap.c b/migration/block-dirty-bitmap.c
index 4a896a09eb..a09a893c02 100644
--- a/migration/block-dirty-bitmap.c
+++ b/migration/block-dirty-bitmap.c
@@ -62,6 +62,7 @@
#include "block/block.h"
#include "block/block_int.h"
#include "sysemu/block-backend.h"
+#include "sysemu/runstate.h"
#include "qemu/main-loop.h"
#include "qemu/error-report.h"
#include "migration/misc.h"
@@ -70,7 +71,6 @@
#include "migration/vmstate.h"
#include "migration/register.h"
#include "qemu/hbitmap.h"
-#include "sysemu/sysemu.h"
#include "qemu/cutils.h"
#include "qapi/error.h"
#include "trace.h"
diff --git a/migration/block.c b/migration/block.c
index 91f98ef44a..e81fd7e14f 100644
--- a/migration/block.c
+++ b/migration/block.c
@@ -16,6 +16,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/cutils.h"
#include "qemu/queue.h"
#include "block.h"
diff --git a/migration/colo.c b/migration/colo.c
index 9f84b1fa3c..2c88aa57a2 100644
--- a/migration/colo.c
+++ b/migration/colo.c
@@ -23,6 +23,8 @@
#include "io/channel-buffer.h"
#include "trace.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
+#include "qemu/rcu.h"
#include "migration/failover.h"
#ifdef CONFIG_REPLICATION
#include "replication.h"
@@ -33,6 +35,7 @@
#include "qapi/qapi-events-migration.h"
#include "qapi/qmp/qerror.h"
#include "sysemu/cpus.h"
+#include "sysemu/runstate.h"
#include "net/filter.h"
static bool vmstate_loading;
diff --git a/migration/global_state.c b/migration/global_state.c
index 2c8c447239..25311479a4 100644
--- a/migration/global_state.c
+++ b/migration/global_state.c
@@ -13,6 +13,7 @@
#include "qemu/osdep.h"
#include "qemu/cutils.h"
#include "qemu/error-report.h"
+#include "sysemu/runstate.h"
#include "qapi/error.h"
#include "migration.h"
#include "migration/global_state.h"
diff --git a/migration/migration.c b/migration/migration.c
index c49e9dc035..8b9f2fe30a 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -16,10 +16,13 @@
#include "qemu/osdep.h"
#include "qemu/cutils.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "migration/blocker.h"
#include "exec.h"
#include "fd.h"
#include "socket.h"
+#include "sysemu/runstate.h"
+#include "sysemu/sysemu.h"
#include "rdma.h"
#include "ram.h"
#include "migration/global_state.h"
@@ -46,6 +49,7 @@
#include "io/channel-buffer.h"
#include "migration/colo.h"
#include "hw/boards.h"
+#include "hw/qdev-properties.h"
#include "monitor/monitor.h"
#include "net/announce.h"
diff --git a/migration/migration.h b/migration/migration.h
index 5bc60709db..3e1ea2b5dc 100644
--- a/migration/migration.h
+++ b/migration/migration.h
@@ -14,11 +14,11 @@
#ifndef QEMU_MIGRATION_H
#define QEMU_MIGRATION_H
+#include "exec/cpu-common.h"
+#include "hw/qdev-core.h"
#include "qapi/qapi-types-migration.h"
#include "qemu/thread.h"
-#include "exec/cpu-common.h"
#include "qemu/coroutine_int.h"
-#include "hw/qdev.h"
#include "io/channel.h"
#include "net/announce.h"
diff --git a/migration/postcopy-ram.c b/migration/postcopy-ram.c
index 2cb1a69752..1f63e65ed7 100644
--- a/migration/postcopy-ram.c
+++ b/migration/postcopy-ram.c
@@ -25,6 +25,7 @@
#include "ram.h"
#include "qapi/error.h"
#include "qemu/notify.h"
+#include "qemu/rcu.h"
#include "sysemu/sysemu.h"
#include "sysemu/balloon.h"
#include "qemu/error-report.h"
diff --git a/migration/qemu-file-channel.c b/migration/qemu-file-channel.c
index c382ea2d78..d2ce32f4b9 100644
--- a/migration/qemu-file-channel.c
+++ b/migration/qemu-file-channel.c
@@ -24,7 +24,6 @@
#include "qemu/osdep.h"
#include "qemu-file-channel.h"
-#include "exec/cpu-common.h"
#include "qemu-file.h"
#include "io/channel-socket.h"
#include "qemu/iov.h"
diff --git a/migration/qemu-file.h b/migration/qemu-file.h
index b6303dbeef..a9b6d6ccb7 100644
--- a/migration/qemu-file.h
+++ b/migration/qemu-file.h
@@ -26,6 +26,7 @@
#define MIGRATION_QEMU_FILE_H
#include <zlib.h>
+#include "exec/cpu-common.h"
/* Read a chunk of data from a file at the given position. The pos argument
* can be ignored if the file is only be used for streaming. The number of
diff --git a/migration/rdma.c b/migration/rdma.c
index 0e73e759ca..78e6b72bac 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -25,6 +25,7 @@
#include "qemu/error-report.h"
#include "qemu/main-loop.h"
#include "qemu/module.h"
+#include "qemu/rcu.h"
#include "qemu/sockets.h"
#include "qemu/bitmap.h"
#include "qemu/coroutine.h"
diff --git a/migration/savevm.c b/migration/savevm.c
index 6369a4ff7a..4a86128ac4 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -32,6 +32,7 @@
#include "net/net.h"
#include "migration.h"
#include "migration/snapshot.h"
+#include "migration/vmstate.h"
#include "migration/misc.h"
#include "migration/register.h"
#include "migration/global_state.h"
@@ -50,11 +51,14 @@
#include "exec/target_page.h"
#include "trace.h"
#include "qemu/iov.h"
+#include "qemu/main-loop.h"
#include "block/snapshot.h"
#include "qemu/cutils.h"
#include "io/channel-buffer.h"
#include "io/channel-file.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
+#include "sysemu/sysemu.h"
#include "qjson.h"
#include "migration/colo.h"
#include "qemu/bitmap.h"
diff --git a/migration/vmstate-types.c b/migration/vmstate-types.c
index 845f4649ee..bee658a1b2 100644
--- a/migration/vmstate-types.c
+++ b/migration/vmstate-types.c
@@ -11,7 +11,6 @@
*/
#include "qemu/osdep.h"
-#include "exec/cpu-common.h"
#include "qemu-file.h"
#include "migration.h"
#include "migration/vmstate.h"
diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
index 35788c0645..e4d4043a3b 100644
--- a/monitor/hmp-cmds.c
+++ b/monitor/hmp-cmds.c
@@ -19,7 +19,7 @@
#include "net/eth.h"
#include "chardev/char.h"
#include "sysemu/block-backend.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qemu/config-file.h"
#include "qemu/option.h"
#include "qemu/timer.h"
diff --git a/monitor/hmp.c b/monitor/hmp.c
index 5223661e82..8942e28933 100644
--- a/monitor/hmp.c
+++ b/monitor/hmp.c
@@ -35,7 +35,7 @@
#include "qemu/option.h"
#include "qemu/units.h"
#include "sysemu/block-backend.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "trace.h"
static void monitor_command_cb(void *opaque, const char *cmdline,
diff --git a/monitor/misc.c b/monitor/misc.c
index 00338c002a..d229e65450 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "monitor-internal.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "monitor/qdev.h"
#include "hw/usb.h"
#include "hw/pci/pci.h"
@@ -45,6 +44,7 @@
#include "sysemu/balloon.h"
#include "qemu/timer.h"
#include "sysemu/hw_accel.h"
+#include "sysemu/runstate.h"
#include "authz/list.h"
#include "qapi/util.h"
#include "sysemu/blockdev.h"
diff --git a/monitor/monitor-internal.h b/monitor/monitor-internal.h
index 7760b22ba3..d78f5ca190 100644
--- a/monitor/monitor-internal.h
+++ b/monitor/monitor-internal.h
@@ -27,7 +27,6 @@
#include "chardev/char-fe.h"
#include "monitor/monitor.h"
-#include "qapi/qapi-types-misc.h"
#include "qapi/qmp/dispatch.h"
#include "qapi/qmp/json-parser.h"
#include "qemu/readline.h"
diff --git a/monitor/monitor.c b/monitor/monitor.c
index 3ef28171c0..12898b6448 100644
--- a/monitor/monitor.c
+++ b/monitor/monitor.c
@@ -31,6 +31,7 @@
#include "qemu/error-report.h"
#include "qemu/option.h"
#include "sysemu/qtest.h"
+#include "sysemu/sysemu.h"
#include "trace.h"
/*
diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
index b9ae40eec7..0880341a2d 100644
--- a/monitor/qmp-cmds.c
+++ b/monitor/qmp-cmds.c
@@ -26,6 +26,7 @@
#include "ui/qemu-spice.h"
#include "ui/vnc.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "sysemu/arch_init.h"
#include "sysemu/blockdev.h"
#include "sysemu/block-backend.h"
@@ -35,7 +36,6 @@
#include "qapi/qapi-commands-misc.h"
#include "qapi/qapi-commands-ui.h"
#include "qapi/qmp/qerror.h"
-#include "hw/boards.h"
#include "hw/mem/memory-device.h"
#include "hw/acpi/acpi_dev_interface.h"
diff --git a/nbd/client.c b/nbd/client.c
index 4de30630c7..d554ae353d 100644
--- a/nbd/client.c
+++ b/nbd/client.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "qemu/queue.h"
#include "trace.h"
#include "nbd-internal.h"
#include "qemu/cutils.h"
diff --git a/nbd/nbd-internal.h b/nbd/nbd-internal.h
index 049f83df77..60629ef160 100644
--- a/nbd/nbd-internal.h
+++ b/nbd/nbd-internal.h
@@ -28,8 +28,6 @@
#endif
#include "qemu/bswap.h"
-#include "qemu/queue.h"
-#include "qemu/main-loop.h"
/* This is all part of the "official" NBD API.
*
diff --git a/nbd/server.c b/nbd/server.c
index 10faedcfc5..dbd2ff8555 100644
--- a/nbd/server.c
+++ b/nbd/server.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "qemu/queue.h"
#include "trace.h"
#include "nbd-internal.h"
#include "qemu/units.h"
diff --git a/net/can/can_socketcan.c b/net/can/can_socketcan.c
index 3dec108684..8a6ffad40c 100644
--- a/net/can/can_socketcan.c
+++ b/net/can/can_socketcan.c
@@ -27,6 +27,7 @@
#include "qemu/osdep.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qapi/error.h"
#include "chardev/char.h"
diff --git a/net/net.c b/net/net.c
index 7d4098254f..84aa6d8d00 100644
--- a/net/net.c
+++ b/net/net.c
@@ -27,6 +27,7 @@
#include "net/net.h"
#include "clients.h"
#include "hub.h"
+#include "hw/qdev-properties.h"
#include "net/slirp.h"
#include "net/eth.h"
#include "util.h"
@@ -42,7 +43,6 @@
#include "qemu/cutils.h"
#include "qemu/config-file.h"
#include "qemu/ctype.h"
-#include "hw/qdev.h"
#include "qemu/iov.h"
#include "qemu/main-loop.h"
#include "qemu/option.h"
@@ -50,6 +50,8 @@
#include "qapi/opts-visitor.h"
#include "sysemu/sysemu.h"
#include "sysemu/qtest.h"
+#include "sysemu/runstate.h"
+#include "sysemu/sysemu.h"
#include "net/filter.h"
#include "qapi/string-output-visitor.h"
diff --git a/net/netmap.c b/net/netmap.c
index 0cc8f545c5..350f097f91 100644
--- a/net/netmap.c
+++ b/net/netmap.c
@@ -38,6 +38,7 @@
#include "qapi/error.h"
#include "qemu/iov.h"
#include "qemu/cutils.h"
+#include "qemu/main-loop.h"
typedef struct NetmapState {
NetClientState nc;
diff --git a/net/tap-bsd.c b/net/tap-bsd.c
index 5695e3dd1f..a5c3707f80 100644
--- a/net/tap-bsd.c
+++ b/net/tap-bsd.c
@@ -27,7 +27,6 @@
#include "qapi/error.h"
#include "tap_int.h"
#include "qemu/cutils.h"
-#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
#if defined(__NetBSD__) || defined(__FreeBSD__)
diff --git a/net/tap-linux.c b/net/tap-linux.c
index 941a45d7c3..e0dd442ee3 100644
--- a/net/tap-linux.c
+++ b/net/tap-linux.c
@@ -32,7 +32,6 @@
#include <net/if.h>
#include <sys/ioctl.h>
-#include "sysemu/sysemu.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/cutils.h"
diff --git a/net/tap-solaris.c b/net/tap-solaris.c
index 0e3f3e0a9b..4725d2314e 100644
--- a/net/tap-solaris.c
+++ b/net/tap-solaris.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "tap_int.h"
-#include "sysemu/sysemu.h"
#include "qemu/ctype.h"
#include "qemu/cutils.h"
diff --git a/net/tap-win32.c b/net/tap-win32.c
index 662f9b63e1..2b5dcda36e 100644
--- a/net/tap-win32.c
+++ b/net/tap-win32.c
@@ -33,8 +33,8 @@
#include "clients.h" /* net_init_tap */
#include "net/net.h"
#include "net/tap.h" /* tap_has_ufo, ... */
-#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include <windows.h>
#include <winioctl.h>
diff --git a/net/tap.c b/net/tap.c
index fc38029f41..6207f61f84 100644
--- a/net/tap.c
+++ b/net/tap.c
@@ -40,6 +40,7 @@
#include "qemu-common.h"
#include "qemu/cutils.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/sockets.h"
#include "net/tap.h"
diff --git a/os-posix.c b/os-posix.c
index 3ba7df8d75..86cffd2c7d 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -31,11 +31,11 @@
#include "qemu-common.h"
/* Needed early for CONFIG_BSD etc. */
-#include "sysemu/sysemu.h"
#include "net/slirp.h"
#include "qemu-options.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
+#include "sysemu/runstate.h"
#include "qemu/cutils.h"
#ifdef CONFIG_LINUX
diff --git a/os-win32.c b/os-win32.c
index 6d92189810..1336cd34f0 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -27,8 +27,8 @@
#include <windows.h>
#include <mmsystem.h>
#include "qemu-common.h"
-#include "sysemu/sysemu.h"
#include "qemu-options.h"
+#include "sysemu/runstate.h"
/***********************************************************/
/* Functions missing in mingw */
diff --git a/qapi/Makefile.objs b/qapi/Makefile.objs
index c5a29e86e2..dd3f5e6f94 100644
--- a/qapi/Makefile.objs
+++ b/qapi/Makefile.objs
@@ -6,7 +6,7 @@ util-obj-y += qmp-event.o
util-obj-y += qapi-util.o
QAPI_COMMON_MODULES = audio authz block-core block char common crypto
-QAPI_COMMON_MODULES += dump introspect job machine migration misc net
+QAPI_COMMON_MODULES += dump error introspect job machine migration misc net
QAPI_COMMON_MODULES += qdev qom rdma rocker run-state sockets tpm
QAPI_COMMON_MODULES += trace transaction ui
QAPI_TARGET_MODULES = machine-target misc-target
diff --git a/qapi/common.json b/qapi/common.json
index 99d313ef3b..3d4e8de1e0 100644
--- a/qapi/common.json
+++ b/qapi/common.json
@@ -5,30 +5,6 @@
##
##
-# @QapiErrorClass:
-#
-# QEMU error classes
-#
-# @GenericError: this is used for errors that don't require a specific error
-# class. This should be the default case for most errors
-#
-# @CommandNotFound: the requested command has not been found
-#
-# @DeviceNotActive: a device has failed to be become active
-#
-# @DeviceNotFound: the requested device has not been found
-#
-# @KVMMissingCap: the requested operation can't be fulfilled because a
-# required KVM capability is missing
-#
-# Since: 1.2
-##
-{ 'enum': 'QapiErrorClass',
- # Keep this in sync with ErrorClass in error.h
- 'data': [ 'GenericError', 'CommandNotFound',
- 'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
-
-##
# @IoOperationType:
#
# An enumeration of the I/O operation types
diff --git a/qapi/error.json b/qapi/error.json
new file mode 100644
index 0000000000..3fad08f506
--- /dev/null
+++ b/qapi/error.json
@@ -0,0 +1,29 @@
+# -*- Mode: Python -*-
+
+##
+# = QMP errors
+##
+
+##
+# @QapiErrorClass:
+#
+# QEMU error classes
+#
+# @GenericError: this is used for errors that don't require a specific error
+# class. This should be the default case for most errors
+#
+# @CommandNotFound: the requested command has not been found
+#
+# @DeviceNotActive: a device has failed to be become active
+#
+# @DeviceNotFound: the requested device has not been found
+#
+# @KVMMissingCap: the requested operation can't be fulfilled because a
+# required KVM capability is missing
+#
+# Since: 1.2
+##
+{ 'enum': 'QapiErrorClass',
+ # Keep this in sync with ErrorClass in error.h
+ 'data': [ 'GenericError', 'CommandNotFound',
+ 'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
diff --git a/qapi/qapi-dealloc-visitor.c b/qapi/qapi-dealloc-visitor.c
index 89ccd905ec..d192724b13 100644
--- a/qapi/qapi-dealloc-visitor.c
+++ b/qapi/qapi-dealloc-visitor.c
@@ -15,7 +15,6 @@
#include "qemu/osdep.h"
#include "qapi/dealloc-visitor.h"
#include "qapi/qmp/qnull.h"
-#include "qemu/queue.h"
#include "qapi/visitor-impl.h"
struct QapiDeallocVisitor
diff --git a/qapi/qapi-schema.json b/qapi/qapi-schema.json
index 38af54d6b3..920b03b0aa 100644
--- a/qapi/qapi-schema.json
+++ b/qapi/qapi-schema.json
@@ -80,6 +80,7 @@
# stable order, it's best to include each sub-schema just once, or
# include it first right here.
+{ 'include': 'error.json' }
{ 'include': 'common.json' }
{ 'include': 'sockets.json' }
{ 'include': 'run-state.json' }
diff --git a/qapi/qmp-dispatch.c b/qapi/qmp-dispatch.c
index e2c366e09e..3037d353a4 100644
--- a/qapi/qmp-dispatch.c
+++ b/qapi/qmp-dispatch.c
@@ -16,8 +16,8 @@
#include "qapi/qmp/dispatch.h"
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qjson.h"
+#include "sysemu/runstate.h"
#include "qapi/qmp/qbool.h"
-#include "sysemu/sysemu.h"
static QDict *qmp_dispatch_check_obj(const QObject *request, bool allow_oob,
Error **errp)
diff --git a/qdev-monitor.c b/qdev-monitor.c
index 58222c2211..a0003bf2a9 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -18,7 +18,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
#include "hw/sysbus.h"
#include "monitor/monitor.h"
#include "monitor/qdev.h"
@@ -33,6 +32,7 @@
#include "qemu/option.h"
#include "qemu/qemu-print.h"
#include "sysemu/block-backend.h"
+#include "sysemu/sysemu.h"
#include "migration/misc.h"
/*
diff --git a/qemu-img.c b/qemu-img.c
index 79983772de..31c72dc746 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -38,10 +38,10 @@
#include "qemu/option.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/units.h"
#include "qom/object_interfaces.h"
-#include "sysemu/sysemu.h"
#include "sysemu/block-backend.h"
#include "block/block_int.h"
#include "block/blockjob.h"
diff --git a/qom/cpu.c b/qom/cpu.c
index f376f782d8..aeb34f8c67 100644
--- a/qom/cpu.c
+++ b/qom/cpu.c
@@ -24,11 +24,10 @@
#include "sysemu/hw_accel.h"
#include "qemu/notify.h"
#include "qemu/log.h"
+#include "qemu/main-loop.h"
#include "exec/log.h"
-#include "exec/cpu-common.h"
#include "qemu/error-report.h"
#include "qemu/qemu-print.h"
-#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#include "hw/boards.h"
#include "hw/qdev-properties.h"
diff --git a/qom/object.c b/qom/object.c
index 1555547727..6fa9c619fa 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -11,6 +11,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/qdev-core.h"
#include "qapi/error.h"
#include "qom/object.h"
#include "qom/object_interfaces.h"
diff --git a/qom/qom-qmp-cmds.c b/qom/qom-qmp-cmds.c
index e046a0f190..236e8e41dd 100644
--- a/qom/qom-qmp-cmds.c
+++ b/qom/qom-qmp-cmds.c
@@ -14,7 +14,7 @@
*/
#include "qemu/osdep.h"
-#include "hw/qdev.h"
+#include "hw/qdev-core.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-qdev.h"
#include "qapi/qapi-commands-qom.h"
diff --git a/qtest.c b/qtest.c
index c9681dbdf3..59df1b6614 100644
--- a/qtest.c
+++ b/qtest.c
@@ -15,13 +15,12 @@
#include "qapi/error.h"
#include "cpu.h"
#include "sysemu/qtest.h"
-#include "hw/qdev.h"
+#include "sysemu/runstate.h"
#include "chardev/char-fe.h"
#include "exec/ioport.h"
#include "exec/memory.h"
#include "hw/irq.h"
#include "sysemu/accel.h"
-#include "sysemu/sysemu.h"
#include "sysemu/cpus.h"
#include "qemu/config-file.h"
#include "qemu/option.h"
diff --git a/replay/replay-audio.c b/replay/replay-audio.c
index b113836de4..178094e601 100644
--- a/replay/replay-audio.c
+++ b/replay/replay-audio.c
@@ -13,7 +13,6 @@
#include "qemu/error-report.h"
#include "sysemu/replay.h"
#include "replay-internal.h"
-#include "sysemu/sysemu.h"
#include "audio/audio.h"
void replay_audio_out(int *played)
diff --git a/replay/replay-char.c b/replay/replay-char.c
index 736cc8c2e6..dc0002367e 100644
--- a/replay/replay-char.c
+++ b/replay/replay-char.c
@@ -13,7 +13,6 @@
#include "qemu/error-report.h"
#include "sysemu/replay.h"
#include "replay-internal.h"
-#include "sysemu/sysemu.h"
#include "chardev/char.h"
/* Char drivers that generate qemu_chr_be_write events
diff --git a/replay/replay-internal.c b/replay/replay-internal.c
index 9e41ed1dcf..c013b23820 100644
--- a/replay/replay-internal.c
+++ b/replay/replay-internal.c
@@ -11,9 +11,10 @@
#include "qemu/osdep.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
#include "replay-internal.h"
#include "qemu/error-report.h"
-#include "sysemu/sysemu.h"
+#include "qemu/main-loop.h"
/* Mutex to protect reading and writing events to the log.
data_kind and has_unread_data are also protected
diff --git a/replay/replay-net.c b/replay/replay-net.c
index 80b7054156..3b70f71cf1 100644
--- a/replay/replay-net.c
+++ b/replay/replay-net.c
@@ -13,7 +13,6 @@
#include "qemu/error-report.h"
#include "sysemu/replay.h"
#include "replay-internal.h"
-#include "sysemu/sysemu.h"
#include "net/net.h"
#include "net/filter.h"
#include "qemu/iov.h"
diff --git a/replay/replay-snapshot.c b/replay/replay-snapshot.c
index 756f48bc02..5dd8680480 100644
--- a/replay/replay-snapshot.c
+++ b/replay/replay-snapshot.c
@@ -13,7 +13,6 @@
#include "qapi/error.h"
#include "sysemu/replay.h"
#include "replay-internal.h"
-#include "sysemu/sysemu.h"
#include "monitor/monitor.h"
#include "qapi/qmp/qstring.h"
#include "qemu/error-report.h"
diff --git a/replay/replay.c b/replay/replay.c
index 8b172b2d1b..0c4e9c1318 100644
--- a/replay/replay.c
+++ b/replay/replay.c
@@ -12,12 +12,12 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
#include "replay-internal.h"
#include "qemu/timer.h"
#include "qemu/main-loop.h"
#include "qemu/option.h"
#include "sysemu/cpus.h"
-#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
/* Current version of the replay mechanism.
diff --git a/scripts/tracetool/format/c.py b/scripts/tracetool/format/c.py
index 833c05a022..31207961b0 100644
--- a/scripts/tracetool/format/c.py
+++ b/scripts/tracetool/format/c.py
@@ -28,6 +28,7 @@ def generate(events, backend, group):
out('/* This file is autogenerated by tracetool, do not edit. */',
'',
'#include "qemu/osdep.h"',
+ '#include "qemu/module.h"',
'#include "%s"' % header,
'')
diff --git a/scripts/tracetool/format/h.py b/scripts/tracetool/format/h.py
index 338a2365ee..5596b304e6 100644
--- a/scripts/tracetool/format/h.py
+++ b/scripts/tracetool/format/h.py
@@ -17,12 +17,17 @@ from tracetool import out
def generate(events, backend, group):
+ if group == "root":
+ header = "trace/control-vcpu.h"
+ else:
+ header = "trace/control.h"
+
out('/* This file is autogenerated by tracetool, do not edit. */',
'',
'#ifndef TRACE_%s_GENERATED_TRACERS_H' % group.upper(),
'#define TRACE_%s_GENERATED_TRACERS_H' % group.upper(),
'',
- '#include "trace/control.h"',
+ '#include "%s"' % header,
'')
for e in events:
diff --git a/scripts/tracetool/format/log_stap.py b/scripts/tracetool/format/log_stap.py
index 3ccbc09d61..9ab0cf2cce 100644
--- a/scripts/tracetool/format/log_stap.py
+++ b/scripts/tracetool/format/log_stap.py
@@ -30,9 +30,6 @@ def c_macro_to_format(macro):
if macro.startswith("PRI"):
return macro[3]
- if macro == "TARGET_FMT_plx":
- return "%016x"
-
raise Exception("Unhandled macro '%s'" % macro)
def c_fmt_to_stap(fmt):
diff --git a/stubs/change-state-handler.c b/stubs/change-state-handler.c
index d14194b36b..d1ed46bfb0 100644
--- a/stubs/change-state-handler.c
+++ b/stubs/change-state-handler.c
@@ -1,5 +1,5 @@
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
VMChangeStateEntry *qemu_add_vm_change_state_handler(VMChangeStateHandler *cb,
void *opaque)
diff --git a/stubs/replay.c b/stubs/replay.c
index 4ac607895d..10b3925e2f 100644
--- a/stubs/replay.c
+++ b/stubs/replay.c
@@ -1,6 +1,5 @@
#include "qemu/osdep.h"
#include "sysemu/replay.h"
-#include "sysemu/sysemu.h"
ReplayMode replay_mode;
diff --git a/stubs/runstate-check.c b/stubs/runstate-check.c
index 7c5227e848..2ccda2b70f 100644
--- a/stubs/runstate-check.c
+++ b/stubs/runstate-check.c
@@ -1,6 +1,6 @@
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
bool runstate_check(RunState state)
{
return state == RUN_STATE_PRELAUNCH;
diff --git a/stubs/semihost.c b/stubs/semihost.c
index 4d5b3c0653..f90589259c 100644
--- a/stubs/semihost.c
+++ b/stubs/semihost.c
@@ -12,6 +12,7 @@
#include "qemu/option.h"
#include "qemu/error-report.h"
#include "hw/semihosting/semihost.h"
+#include "sysemu/sysemu.h"
/* Empty config */
QemuOptsList qemu_semihosting_config_opts = {
diff --git a/stubs/vm-stop.c b/stubs/vm-stop.c
index 68e5f20eaf..7f8a9da8a5 100644
--- a/stubs/vm-stop.c
+++ b/stubs/vm-stop.c
@@ -1,6 +1,6 @@
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
void qemu_system_vmstop_request_prepare(void)
{
abort();
diff --git a/target/alpha/cpu.h b/target/alpha/cpu.h
index b3e8a823e1..4619530660 100644
--- a/target/alpha/cpu.h
+++ b/target/alpha/cpu.h
@@ -277,7 +277,7 @@ struct AlphaCPU {
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_alpha_cpu;
+extern const VMStateDescription vmstate_alpha_cpu;
#endif
void alpha_cpu_do_interrupt(CPUState *cpu);
diff --git a/target/alpha/machine.c b/target/alpha/machine.c
index fdab596438..9d20169d4f 100644
--- a/target/alpha/machine.c
+++ b/target/alpha/machine.c
@@ -1,7 +1,5 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "migration/cpu.h"
static int get_fpcr(QEMUFile *f, void *opaque, size_t size,
diff --git a/target/alpha/sys_helper.c b/target/alpha/sys_helper.c
index f9c34b1144..39229236e1 100644
--- a/target/alpha/sys_helper.c
+++ b/target/alpha/sys_helper.c
@@ -21,6 +21,7 @@
#include "cpu.h"
#include "exec/exec-all.h"
#include "exec/helper-proto.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "qemu/timer.h"
diff --git a/target/arm/cpu.h b/target/arm/cpu.h
index 94c990cddb..2cdde6c4bc 100644
--- a/target/arm/cpu.h
+++ b/target/arm/cpu.h
@@ -922,7 +922,7 @@ void arm_cpu_post_init(Object *obj);
uint64_t arm_cpu_mp_affinity(int idx, uint8_t clustersz);
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_arm_cpu;
+extern const VMStateDescription vmstate_arm_cpu;
#endif
void arm_cpu_do_interrupt(CPUState *cpu);
diff --git a/target/arm/cpu64.c b/target/arm/cpu64.c
index 1901997a06..e4edff548e 100644
--- a/target/arm/cpu64.c
+++ b/target/arm/cpu64.c
@@ -25,7 +25,6 @@
#if !defined(CONFIG_USER_ONLY)
#include "hw/loader.h"
#endif
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "qapi/visitor.h"
diff --git a/target/arm/helper-a64.c b/target/arm/helper-a64.c
index 060699b901..bca80bdc38 100644
--- a/target/arm/helper-a64.c
+++ b/target/arm/helper-a64.c
@@ -23,7 +23,7 @@
#include "exec/helper-proto.h"
#include "qemu/host-utils.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
+#include "qemu/main-loop.h"
#include "qemu/bitops.h"
#include "internals.h"
#include "qemu/crc32c.h"
diff --git a/target/arm/helper.c b/target/arm/helper.c
index b74c23a9bc..edee110ae1 100644
--- a/target/arm/helper.c
+++ b/target/arm/helper.c
@@ -5,6 +5,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "target/arm/idau.h"
@@ -14,12 +15,13 @@
#include "exec/gdbstub.h"
#include "exec/helper-proto.h"
#include "qemu/host-utils.h"
-#include "sysemu/sysemu.h"
+#include "qemu/main-loop.h"
#include "qemu/bitops.h"
#include "qemu/crc32c.h"
#include "qemu/qemu-print.h"
#include "exec/exec-all.h"
#include <zlib.h> /* For crc32 */
+#include "hw/irq.h"
#include "hw/semihosting/semihost.h"
#include "sysemu/cpus.h"
#include "sysemu/kvm.h"
diff --git a/target/arm/kvm.c b/target/arm/kvm.c
index fe4f461d4e..b5713e3ffe 100644
--- a/target/arm/kvm.c
+++ b/target/arm/kvm.c
@@ -16,6 +16,7 @@
#include "qemu-common.h"
#include "qemu/timer.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "sysemu/kvm_int.h"
@@ -27,6 +28,7 @@
#include "exec/memattrs.h"
#include "exec/address-spaces.h"
#include "hw/boards.h"
+#include "hw/irq.h"
#include "qemu/log.h"
const KVMCapabilityInfo kvm_arch_required_capabilities[] = {
diff --git a/target/arm/kvm32.c b/target/arm/kvm32.c
index 51f78f722b..2451a2d4bb 100644
--- a/target/arm/kvm32.c
+++ b/target/arm/kvm32.c
@@ -16,7 +16,6 @@
#include "qemu-common.h"
#include "cpu.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "internals.h"
diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c
index 22d19c9aec..59ed579d02 100644
--- a/target/arm/kvm64.c
+++ b/target/arm/kvm64.c
@@ -21,8 +21,8 @@
#include "qemu/timer.h"
#include "qemu/error-report.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
#include "exec/gdbstub.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "internals.h"
diff --git a/target/arm/m_helper.c b/target/arm/m_helper.c
index 84609f446e..884d35d2b0 100644
--- a/target/arm/m_helper.c
+++ b/target/arm/m_helper.c
@@ -5,6 +5,7 @@
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "target/arm/idau.h"
@@ -14,7 +15,7 @@
#include "exec/gdbstub.h"
#include "exec/helper-proto.h"
#include "qemu/host-utils.h"
-#include "sysemu/sysemu.h"
+#include "qemu/main-loop.h"
#include "qemu/bitops.h"
#include "qemu/crc32c.h"
#include "qemu/qemu-print.h"
diff --git a/target/arm/machine.c b/target/arm/machine.c
index 3fd319a309..5c36707a7c 100644
--- a/target/arm/machine.c
+++ b/target/arm/machine.c
@@ -1,7 +1,5 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
#include "kvm_arm.h"
diff --git a/target/arm/monitor.c b/target/arm/monitor.c
index 6ec6dd04ac..6457c3c87f 100644
--- a/target/arm/monitor.c
+++ b/target/arm/monitor.c
@@ -21,7 +21,6 @@
*/
#include "qemu/osdep.h"
-#include "hw/boards.h"
#include "kvm_arm.h"
#include "qapi/qapi-commands-misc-target.h"
diff --git a/target/arm/psci.c b/target/arm/psci.c
index a74d78802a..6709e28013 100644
--- a/target/arm/psci.c
+++ b/target/arm/psci.c
@@ -15,11 +15,13 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/helper-proto.h"
#include "kvm-consts.h"
-#include "sysemu/sysemu.h"
+#include "qemu/main-loop.h"
+#include "sysemu/runstate.h"
#include "internals.h"
#include "arm-powerctl.h"
diff --git a/target/cris/cpu.h b/target/cris/cpu.h
index fb14ad51f1..aba0a66474 100644
--- a/target/cris/cpu.h
+++ b/target/cris/cpu.h
@@ -183,7 +183,7 @@ struct CRISCPU {
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_cris_cpu;
+extern const VMStateDescription vmstate_cris_cpu;
#endif
void cris_cpu_do_interrupt(CPUState *cpu);
diff --git a/target/cris/machine.c b/target/cris/machine.c
index ecec41c2c8..be38a89377 100644
--- a/target/cris/machine.c
+++ b/target/cris/machine.c
@@ -20,7 +20,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
#include "migration/cpu.h"
static const VMStateDescription vmstate_tlbset = {
diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h
index aab251bc4b..4b816cc13a 100644
--- a/target/hppa/cpu.h
+++ b/target/hppa/cpu.h
@@ -22,7 +22,7 @@
#include "cpu-qom.h"
#include "exec/cpu-defs.h"
-
+#include "exec/memory.h"
/* PA-RISC 1.x processors have a strong memory model. */
/* ??? While we do not yet implement PA-RISC 2.0, those processors have
@@ -334,7 +334,7 @@ bool hppa_cpu_tlb_fill(CPUState *cs, vaddr address, int size,
int hppa_get_physical_address(CPUHPPAState *env, vaddr addr, int mmu_idx,
int type, hwaddr *pphys, int *pprot);
extern const MemoryRegionOps hppa_io_eir_ops;
-extern const struct VMStateDescription vmstate_hppa_cpu;
+extern const VMStateDescription vmstate_hppa_cpu;
void hppa_cpu_alarm_timer(void *);
int hppa_artype_for_page(CPUHPPAState *env, target_ulong vaddr);
#endif
diff --git a/target/hppa/machine.c b/target/hppa/machine.c
index 73e8121bde..7030101724 100644
--- a/target/hppa/machine.c
+++ b/target/hppa/machine.c
@@ -19,8 +19,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "migration/cpu.h"
#if TARGET_REGISTER_BITS == 64
diff --git a/target/hppa/op_helper.c b/target/hppa/op_helper.c
index 04d23c1b22..df0f1361ef 100644
--- a/target/hppa/op_helper.c
+++ b/target/hppa/op_helper.c
@@ -22,8 +22,8 @@
#include "exec/exec-all.h"
#include "exec/helper-proto.h"
#include "exec/cpu_ldst.h"
-#include "sysemu/sysemu.h"
#include "qemu/timer.h"
+#include "sysemu/runstate.h"
#include "fpu/softfloat.h"
#include "trace.h"
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index 19751e37a7..ff65e11008 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -26,6 +26,7 @@
#include "cpu.h"
#include "exec/exec-all.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "sysemu/hvf.h"
#include "sysemu/cpus.h"
#include "kvm_i386.h"
@@ -53,7 +54,6 @@
#include "hw/i386/topology.h"
#ifndef CONFIG_USER_ONLY
#include "exec/address-spaces.h"
-#include "hw/hw.h"
#include "hw/xen/xen.h"
#include "hw/i386/apic_internal.h"
#include "hw/boards.h"
diff --git a/target/i386/cpu.h b/target/i386/cpu.h
index 8b3dc5533e..ecd0ec0899 100644
--- a/target/i386/cpu.h
+++ b/target/i386/cpu.h
@@ -1516,7 +1516,7 @@ struct X86CPU {
#ifndef CONFIG_USER_ONLY
-extern struct VMStateDescription vmstate_x86_cpu;
+extern VMStateDescription vmstate_x86_cpu;
#endif
/**
diff --git a/target/i386/excp_helper.c b/target/i386/excp_helper.c
index a9bca7c28b..1447bda7a9 100644
--- a/target/i386/excp_helper.c
+++ b/target/i386/excp_helper.c
@@ -21,7 +21,7 @@
#include "cpu.h"
#include "exec/exec-all.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "exec/helper-proto.h"
void helper_raise_interrupt(CPUX86State *env, int intno, int next_eip_addend)
diff --git a/target/i386/hax-all.c b/target/i386/hax-all.c
index 9e7b77965d..a8b6e5aeb8 100644
--- a/target/i386/hax-all.c
+++ b/target/i386/hax-all.c
@@ -30,7 +30,8 @@
#include "qemu-common.h"
#include "hax-i386.h"
#include "sysemu/accel.h"
-#include "sysemu/sysemu.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "qemu/main-loop.h"
#include "hw/boards.h"
diff --git a/target/i386/helper.c b/target/i386/helper.c
index 23024926ac..0fa51be646 100644
--- a/target/i386/helper.c
+++ b/target/i386/helper.c
@@ -22,9 +22,9 @@
#include "exec/exec-all.h"
#include "qemu/qemu-print.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "kvm_i386.h"
#ifndef CONFIG_USER_ONLY
-#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#include "sysemu/hw_accel.h"
#include "monitor/monitor.h"
diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c
index dc4bb63536..231732aaf7 100644
--- a/target/i386/hvf/hvf.c
+++ b/target/i386/hvf/hvf.c
@@ -45,11 +45,13 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
+
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qemu/error-report.h"
#include "sysemu/hvf.h"
+#include "sysemu/runstate.h"
#include "hvf-i386.h"
#include "vmcs.h"
#include "vmx.h"
@@ -66,10 +68,8 @@
#include "exec/address-spaces.h"
#include "hw/i386/apic_internal.h"
-#include "hw/boards.h"
#include "qemu/main-loop.h"
#include "sysemu/accel.h"
-#include "sysemu/sysemu.h"
#include "target/i386/cpu.h"
HVFState *hvf_state;
diff --git a/target/i386/hvf/x86_task.c b/target/i386/hvf/x86_task.c
index 7099335e89..1daac6cc2b 100644
--- a/target/i386/hvf/x86_task.c
+++ b/target/i386/hvf/x86_task.c
@@ -27,10 +27,8 @@
#include <Hypervisor/hv_vmx.h>
#include "hw/i386/apic_internal.h"
-#include "hw/boards.h"
#include "qemu/main-loop.h"
#include "sysemu/accel.h"
-#include "sysemu/sysemu.h"
#include "target/i386/cpu.h"
// TODO: taskswitch handling
diff --git a/target/i386/kvm.c b/target/i386/kvm.c
index dbbb13772a..2abc881324 100644
--- a/target/i386/kvm.c
+++ b/target/i386/kvm.c
@@ -24,12 +24,15 @@
#include "sysemu/sysemu.h"
#include "sysemu/hw_accel.h"
#include "sysemu/kvm_int.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "kvm_i386.h"
#include "hyperv.h"
#include "hyperv-proto.h"
#include "exec/gdbstub.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
#include "qemu/config-file.h"
#include "qemu/error-report.h"
#include "hw/i386/pc.h"
diff --git a/target/i386/machine.c b/target/i386/machine.c
index b1146093b5..ce55755f0f 100644
--- a/target/i386/machine.c
+++ b/target/i386/machine.c
@@ -1,8 +1,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "hw/i386/pc.h"
#include "hw/isa/isa.h"
#include "migration/cpu.h"
diff --git a/target/i386/monitor.c b/target/i386/monitor.c
index 1f3b532fc2..9fb4d641d5 100644
--- a/target/i386/monitor.c
+++ b/target/i386/monitor.c
@@ -33,6 +33,7 @@
#include "sysemu/sev.h"
#include "qapi/error.h"
#include "sev_i386.h"
+#include "qapi/qapi-commands-misc-target.h"
#include "qapi/qapi-commands-misc.h"
/* Perform linear address sign extension */
diff --git a/target/i386/sev.c b/target/i386/sev.c
index f1423cb0c0..024bb24e51 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -25,6 +25,7 @@
#include "sysemu/kvm.h"
#include "sev_i386.h"
#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "trace.h"
#include "migration/blocker.h"
diff --git a/target/i386/sev_i386.h b/target/i386/sev_i386.h
index 55313441ae..8ada9d385d 100644
--- a/target/i386/sev_i386.h
+++ b/target/i386/sev_i386.h
@@ -19,7 +19,7 @@
#include "sysemu/kvm.h"
#include "sysemu/sev.h"
#include "qemu/error-report.h"
-#include "qapi/qapi-commands-misc-target.h"
+#include "qapi/qapi-types-misc-target.h"
#define SEV_POLICY_NODBG 0x1
#define SEV_POLICY_NOKS 0x2
diff --git a/target/i386/whpx-all.c b/target/i386/whpx-all.c
index ed95105eae..0c15241ae4 100644
--- a/target/i386/whpx-all.c
+++ b/target/i386/whpx-all.c
@@ -15,12 +15,10 @@
#include "qemu-common.h"
#include "sysemu/accel.h"
#include "sysemu/whpx.h"
-#include "sysemu/sysemu.h"
#include "sysemu/cpus.h"
+#include "sysemu/runstate.h"
#include "qemu/main-loop.h"
-#include "hw/boards.h"
#include "qemu/error-report.h"
-#include "qemu/queue.h"
#include "qapi/error.h"
#include "migration/blocker.h"
#include "whp-dispatch.h"
diff --git a/target/lm32/cpu.h b/target/lm32/cpu.h
index c2bbfa2780..064c6b1267 100644
--- a/target/lm32/cpu.h
+++ b/target/lm32/cpu.h
@@ -195,7 +195,7 @@ struct LM32CPU {
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_lm32_cpu;
+extern const VMStateDescription vmstate_lm32_cpu;
#endif
void lm32_cpu_do_interrupt(CPUState *cpu);
diff --git a/target/lm32/helper.c b/target/lm32/helper.c
index 9f3b107474..1130fc8884 100644
--- a/target/lm32/helper.c
+++ b/target/lm32/helper.c
@@ -21,7 +21,6 @@
#include "cpu.h"
#include "exec/exec-all.h"
#include "qemu/host-utils.h"
-#include "sysemu/sysemu.h"
#include "hw/semihosting/semihost.h"
#include "exec/log.h"
diff --git a/target/lm32/machine.c b/target/lm32/machine.c
index cc46f77324..365eaa2e47 100644
--- a/target/lm32/machine.c
+++ b/target/lm32/machine.c
@@ -1,7 +1,5 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "migration/cpu.h"
static const VMStateDescription vmstate_env = {
diff --git a/target/lm32/op_helper.c b/target/lm32/op_helper.c
index d184550a7b..e39fcd5647 100644
--- a/target/lm32/op_helper.c
+++ b/target/lm32/op_helper.c
@@ -2,6 +2,8 @@
#include "cpu.h"
#include "exec/helper-proto.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
+#include "sysemu/runstate.h"
#include "hw/lm32/lm32_pic.h"
#include "hw/char/lm32_juart.h"
@@ -10,7 +12,6 @@
#include "exec/cpu_ldst.h"
#ifndef CONFIG_USER_ONLY
-#include "sysemu/sysemu.h"
#endif
#if !defined(CONFIG_USER_ONLY)
diff --git a/target/m68k/m68k-semi.c b/target/m68k/m68k-semi.c
index 01627b42c9..8e5fbfc8fa 100644
--- a/target/m68k/m68k-semi.c
+++ b/target/m68k/m68k-semi.c
@@ -28,7 +28,6 @@
#include "exec/softmmu-semi.h"
#endif
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
#define HOSTED_EXIT 0
#define HOSTED_INIT_SIM 1
diff --git a/target/mips/cp0_timer.c b/target/mips/cp0_timer.c
index f4716395df..48c18d7818 100644
--- a/target/mips/cp0_timer.c
+++ b/target/mips/cp0_timer.c
@@ -21,6 +21,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/irq.h"
#include "hw/mips/cpudevs.h"
#include "qemu/timer.h"
#include "sysemu/kvm.h"
diff --git a/target/mips/internal.h b/target/mips/internal.h
index b2b41a51ab..d5aa5490d3 100644
--- a/target/mips/internal.h
+++ b/target/mips/internal.h
@@ -148,7 +148,7 @@ hwaddr cpu_mips_translate_address(CPUMIPSState *env, target_ulong address,
#define cpu_signal_handler cpu_mips_signal_handler
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_mips_cpu;
+extern const VMStateDescription vmstate_mips_cpu;
#endif
static inline bool cpu_mips_hw_interrupts_enabled(CPUMIPSState *env)
diff --git a/target/mips/kvm.c b/target/mips/kvm.c
index 938f8f144b..578bc14625 100644
--- a/target/mips/kvm.c
+++ b/target/mips/kvm.c
@@ -18,9 +18,10 @@
#include "cpu.h"
#include "internal.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
+#include "sysemu/runstate.h"
#include "sysemu/cpus.h"
#include "kvm_mips.h"
#include "exec/memattrs.h"
diff --git a/target/mips/machine.c b/target/mips/machine.c
index eb2d97001d..7f4b5d524d 100644
--- a/target/mips/machine.c
+++ b/target/mips/machine.c
@@ -1,7 +1,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "internal.h"
-#include "hw/hw.h"
#include "migration/cpu.h"
static int cpu_post_load(void *opaque, int version_id)
diff --git a/target/moxie/machine.c b/target/moxie/machine.c
index 322a724e6f..d0f177048c 100644
--- a/target/moxie/machine.c
+++ b/target/moxie/machine.c
@@ -1,7 +1,5 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "machine.h"
#include "migration/cpu.h"
diff --git a/target/nios2/nios2-semi.c b/target/nios2/nios2-semi.c
index cc2777d2f8..d7a80dd303 100644
--- a/target/nios2/nios2-semi.c
+++ b/target/nios2/nios2-semi.c
@@ -32,7 +32,6 @@
#include "exec/softmmu-semi.h"
#endif
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
#define HOSTED_EXIT 0
#define HOSTED_INIT_SIM 1
diff --git a/target/openrisc/cpu.h b/target/openrisc/cpu.h
index f23b25262d..61ade1d4f0 100644
--- a/target/openrisc/cpu.h
+++ b/target/openrisc/cpu.h
@@ -333,7 +333,7 @@ int print_insn_or1k(bfd_vma addr, disassemble_info *info);
#define cpu_signal_handler cpu_openrisc_signal_handler
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_openrisc_cpu;
+extern const VMStateDescription vmstate_openrisc_cpu;
/* hw/openrisc_pic.c */
void cpu_openrisc_pic_init(OpenRISCCPU *cpu);
diff --git a/target/openrisc/machine.c b/target/openrisc/machine.c
index 9fa285217d..0a96404dc6 100644
--- a/target/openrisc/machine.c
+++ b/target/openrisc/machine.c
@@ -19,8 +19,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "migration/cpu.h"
static const VMStateDescription vmstate_tlb_entry = {
diff --git a/target/ppc/cpu-qom.h b/target/ppc/cpu-qom.h
index be9b4c30c3..a2f202f021 100644
--- a/target/ppc/cpu-qom.h
+++ b/target/ppc/cpu-qom.h
@@ -203,7 +203,7 @@ typedef struct PPCTimebase {
int64_t time_of_the_day_ns;
} PPCTimebase;
-extern const struct VMStateDescription vmstate_ppc_timebase;
+extern const VMStateDescription vmstate_ppc_timebase;
#define VMSTATE_PPC_TIMEBASE_V(_field, _state, _version) { \
.name = (stringify(_field)), \
diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h
index c9beba2a5c..4ea33cf696 100644
--- a/target/ppc/cpu.h
+++ b/target/ppc/cpu.h
@@ -1255,7 +1255,7 @@ int ppc32_cpu_write_elf32_note(WriteCoreDumpFunction f, CPUState *cs,
int cpuid, void *opaque);
#ifndef CONFIG_USER_ONLY
void ppc_cpu_do_system_reset(CPUState *cs);
-extern const struct VMStateDescription vmstate_ppc_cpu;
+extern const VMStateDescription vmstate_ppc_cpu;
#endif
/*****************************************************************************/
diff --git a/target/ppc/int_helper.c b/target/ppc/int_helper.c
index 5c07ef3e4d..8f037af956 100644
--- a/target/ppc/int_helper.c
+++ b/target/ppc/int_helper.c
@@ -16,10 +16,12 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "internal.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
#include "exec/helper-proto.h"
#include "crypto/aes.h"
#include "fpu/softfloat.h"
diff --git a/target/ppc/kvm.c b/target/ppc/kvm.c
index 8a06d3171e..6162a903fa 100644
--- a/target/ppc/kvm.c
+++ b/target/ppc/kvm.c
@@ -27,7 +27,6 @@
#include "cpu.h"
#include "cpu-models.h"
#include "qemu/timer.h"
-#include "sysemu/sysemu.h"
#include "sysemu/hw_accel.h"
#include "kvm_ppc.h"
#include "sysemu/cpus.h"
@@ -37,7 +36,9 @@
#include "hw/sysbus.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_cpu_core.h"
+#include "hw/hw.h"
#include "hw/ppc/ppc.h"
+#include "migration/qemu-file-types.h"
#include "sysemu/watchdog.h"
#include "trace.h"
#include "exec/gdbstub.h"
@@ -45,6 +46,7 @@
#include "exec/ram_addr.h"
#include "sysemu/hostmem.h"
#include "qemu/cutils.h"
+#include "qemu/main-loop.h"
#include "qemu/mmap-alloc.h"
#include "elf.h"
#include "sysemu/kvm_int.h"
diff --git a/target/ppc/machine.c b/target/ppc/machine.c
index e82f5de9db..109d071162 100644
--- a/target/ppc/machine.c
+++ b/target/ppc/machine.c
@@ -1,13 +1,12 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "sysemu/kvm.h"
#include "helper_regs.h"
#include "mmu-hash64.h"
#include "migration/cpu.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "kvm_ppc.h"
#include "exec/helper-proto.h"
diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c
index 6f4ffa3661..1351b53f28 100644
--- a/target/ppc/mem_helper.c
+++ b/target/ppc/mem_helper.c
@@ -16,10 +16,12 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
#include "exec/helper-proto.h"
#include "helper_regs.h"
#include "exec/cpu_ldst.h"
diff --git a/target/ppc/misc_helper.c b/target/ppc/misc_helper.c
index 49a8a02363..2318f3ab45 100644
--- a/target/ppc/misc_helper.c
+++ b/target/ppc/misc_helper.c
@@ -16,11 +16,13 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
#include "exec/helper-proto.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "helper_regs.h"
diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c
index 261a8fe707..55f7a7f16a 100644
--- a/target/ppc/mmu_helper.c
+++ b/target/ppc/mmu_helper.c
@@ -16,6 +16,7 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "qemu/units.h"
#include "cpu.h"
@@ -29,6 +30,7 @@
#include "exec/log.h"
#include "helper_regs.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/qemu-print.h"
#include "mmu-book3s-v3.h"
#include "mmu-radix64.h"
diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 4a5de28036..9f9553afb4 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -26,6 +26,7 @@
#include "tcg-op.h"
#include "tcg-op-gvec.h"
#include "qemu/host-utils.h"
+#include "qemu/main-loop.h"
#include "exec/cpu_ldst.h"
#include "exec/helper-proto.h"
diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
index 736a7903e2..9466cd832d 100644
--- a/target/s390x/cpu.c
+++ b/target/s390x/cpu.c
@@ -26,6 +26,7 @@
#include "internal.h"
#include "kvm_s390x.h"
#include "sysemu/kvm.h"
+#include "sysemu/reset.h"
#include "qemu/timer.h"
#include "qemu/error-report.h"
#include "qemu/module.h"
@@ -36,7 +37,6 @@
#include "sysemu/hw_accel.h"
#include "hw/qdev-properties.h"
#ifndef CONFIG_USER_ONLY
-#include "hw/hw.h"
#include "hw/boards.h"
#include "sysemu/arch_init.h"
#include "sysemu/sysemu.h"
diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
index a606547b4d..3d9de25f7c 100644
--- a/target/s390x/cpu.h
+++ b/target/s390x/cpu.h
@@ -163,7 +163,7 @@ struct S390CPU {
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_s390_cpu;
+extern const VMStateDescription vmstate_s390_cpu;
#endif
/* distinguish between 24 bit and 31 bit addressing */
diff --git a/target/s390x/helper.c b/target/s390x/helper.c
index 13ae9909ad..1350ad319a 100644
--- a/target/s390x/helper.c
+++ b/target/s390x/helper.c
@@ -26,8 +26,8 @@
#include "qemu/qemu-print.h"
#include "hw/s390x/ioinst.h"
#include "sysemu/hw_accel.h"
+#include "sysemu/runstate.h"
#ifndef CONFIG_USER_ONLY
-#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#endif
diff --git a/target/s390x/kvm.c b/target/s390x/kvm.c
index 6e814c230b..cea71ac7c3 100644
--- a/target/s390x/kvm.c
+++ b/target/s390x/kvm.c
@@ -32,11 +32,12 @@
#include "qemu/error-report.h"
#include "qemu/timer.h"
#include "qemu/units.h"
+#include "qemu/main-loop.h"
#include "qemu/mmap-alloc.h"
#include "qemu/log.h"
#include "sysemu/sysemu.h"
#include "sysemu/hw_accel.h"
-#include "hw/hw.h"
+#include "sysemu/runstate.h"
#include "sysemu/device_tree.h"
#include "exec/gdbstub.h"
#include "exec/ram_addr.h"
diff --git a/target/s390x/machine.c b/target/s390x/machine.c
index 1e9526e937..549bb6c280 100644
--- a/target/s390x/machine.c
+++ b/target/s390x/machine.c
@@ -15,10 +15,10 @@
*/
#include "qemu/osdep.h"
-#include "hw/hw.h"
#include "cpu.h"
#include "internal.h"
#include "kvm_s390x.h"
+#include "migration/vmstate.h"
#include "tcg_s390x.h"
#include "sysemu/kvm.h"
#include "sysemu/tcg.h"
diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c
index 6e9c4d6151..7a563110f0 100644
--- a/target/s390x/mmu_helper.c
+++ b/target/s390x/mmu_helper.c
@@ -25,6 +25,7 @@
#include "sysemu/tcg.h"
#include "exec/exec-all.h"
#include "trace.h"
+#include "hw/hw.h"
#include "hw/s390x/storage-keys.h"
/* #define DEBUG_S390 */
diff --git a/target/s390x/sigp.c b/target/s390x/sigp.c
index 8348b7035e..2ce22d4dc1 100644
--- a/target/s390x/sigp.c
+++ b/target/s390x/sigp.c
@@ -12,9 +12,9 @@
#include "cpu.h"
#include "internal.h"
#include "sysemu/hw_accel.h"
+#include "sysemu/runstate.h"
#include "exec/address-spaces.h"
#include "exec/exec-all.h"
-#include "sysemu/sysemu.h"
#include "sysemu/tcg.h"
#include "trace.h"
#include "qapi/qapi-types-machine.h"
diff --git a/target/sh4/helper.c b/target/sh4/helper.c
index 2afc1770d8..408478ce5d 100644
--- a/target/sh4/helper.c
+++ b/target/sh4/helper.c
@@ -16,15 +16,16 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
#include "exec/log.h"
-#include "sysemu/sysemu.h"
#if !defined(CONFIG_USER_ONLY)
#include "hw/sh4/sh_intc.h"
+#include "sysemu/runstate.h"
#endif
#define MMU_OK 0
diff --git a/target/sparc/cpu.h b/target/sparc/cpu.h
index 8ed2250cd0..0d5b01efe5 100644
--- a/target/sparc/cpu.h
+++ b/target/sparc/cpu.h
@@ -532,7 +532,7 @@ struct SPARCCPU {
#ifndef CONFIG_USER_ONLY
-extern const struct VMStateDescription vmstate_sparc_cpu;
+extern const VMStateDescription vmstate_sparc_cpu;
#endif
void sparc_cpu_do_interrupt(CPUState *cpu);
diff --git a/target/sparc/helper.c b/target/sparc/helper.c
index 1a52061fbf..07d87efa4e 100644
--- a/target/sparc/helper.c
+++ b/target/sparc/helper.c
@@ -22,7 +22,6 @@
#include "exec/exec-all.h"
#include "qemu/host-utils.h"
#include "exec/helper-proto.h"
-#include "sysemu/sysemu.h"
void cpu_raise_exception_ra(CPUSPARCState *env, int tt, uintptr_t ra)
{
diff --git a/target/sparc/int32_helper.c b/target/sparc/int32_helper.c
index c7724928c0..813b47dbb2 100644
--- a/target/sparc/int32_helper.c
+++ b/target/sparc/int32_helper.c
@@ -20,8 +20,8 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "trace.h"
-#include "sysemu/sysemu.h"
#include "exec/log.h"
+#include "sysemu/runstate.h"
#define DEBUG_PCALL
diff --git a/target/sparc/machine.c b/target/sparc/machine.c
index 32d453c008..f38cf229af 100644
--- a/target/sparc/machine.c
+++ b/target/sparc/machine.c
@@ -1,8 +1,6 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "exec/exec-all.h"
-#include "hw/hw.h"
-#include "hw/boards.h"
#include "qemu/timer.h"
#include "migration/cpu.h"
diff --git a/target/tilegx/cpu.c b/target/tilegx/cpu.c
index 69971247f2..2b2a7ccc31 100644
--- a/target/tilegx/cpu.c
+++ b/target/tilegx/cpu.c
@@ -22,7 +22,6 @@
#include "qapi/error.h"
#include "cpu.h"
#include "qemu/module.h"
-#include "hw/qdev-properties.h"
#include "linux-user/syscall_defs.h"
#include "qemu/qemu-print.h"
#include "exec/exec-all.h"
diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
index 6f1da87875..fa12a576b2 100644
--- a/target/xtensa/translate.c
+++ b/target/xtensa/translate.c
@@ -36,7 +36,6 @@
#include "tcg-op.h"
#include "qemu/log.h"
#include "qemu/qemu-print.h"
-#include "sysemu/sysemu.h"
#include "exec/cpu_ldst.h"
#include "hw/semihosting/semihost.h"
#include "exec/translator.h"
diff --git a/target/xtensa/xtensa-semi.c b/target/xtensa/xtensa-semi.c
index 8862985e56..25f57a6500 100644
--- a/target/xtensa/xtensa-semi.c
+++ b/target/xtensa/xtensa-semi.c
@@ -32,7 +32,6 @@
#include "hw/semihosting/semihost.h"
#include "qapi/error.h"
#include "qemu/log.h"
-#include "sysemu/sysemu.h"
enum {
TARGET_SYS_exit = 1,
diff --git a/tcg/optimize.c b/tcg/optimize.c
index d2424de4af..cee2a36a60 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -24,7 +24,6 @@
*/
#include "qemu/osdep.h"
-#include "exec/cpu-common.h"
#include "tcg-op.h"
#define CASE_OP_32_64(x) \
diff --git a/tcg/tcg-common.c b/tcg/tcg-common.c
index 907d58d0f0..97305a3efc 100644
--- a/tcg/tcg-common.c
+++ b/tcg/tcg-common.c
@@ -23,7 +23,6 @@
*/
#include "qemu/osdep.h"
-#include "exec/cpu-common.h"
#include "tcg/tcg.h"
#if defined(CONFIG_TCG_INTERPRETER)
diff --git a/tcg/tcg-op-gvec.c b/tcg/tcg-op-gvec.c
index 17679b6e2f..5c95ecd51c 100644
--- a/tcg/tcg-op-gvec.c
+++ b/tcg/tcg-op-gvec.c
@@ -21,6 +21,7 @@
#include "tcg.h"
#include "tcg-op.h"
#include "tcg-op-gvec.h"
+#include "qemu/main-loop.h"
#include "tcg-gvec-desc.h"
#define MAX_UNROLL 4
diff --git a/tcg/tcg.c b/tcg/tcg.c
index be2c33c400..2db83ce2e8 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -42,7 +42,6 @@
#define NO_CPU_IO_DEFS
#include "cpu.h"
-#include "exec/cpu-common.h"
#include "exec/exec-all.h"
#if !defined(CONFIG_USER_ONLY)
diff --git a/tests/migration-test.c b/tests/migration-test.c
index c1968740ab..b87ba99a9e 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -20,7 +20,6 @@
#include "qemu/range.h"
#include "qemu/sockets.h"
#include "chardev/char.h"
-#include "sysemu/sysemu.h"
#include "qapi/qapi-visit-sockets.h"
#include "qapi/qobject-input-visitor.h"
#include "qapi/qobject-output-visitor.h"
diff --git a/tests/test-bdrv-drain.c b/tests/test-bdrv-drain.c
index 03fa1142a1..481b7508df 100644
--- a/tests/test-bdrv-drain.c
+++ b/tests/test-bdrv-drain.c
@@ -27,6 +27,7 @@
#include "block/blockjob_int.h"
#include "sysemu/block-backend.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "iothread.h"
static QemuEvent done_event;
diff --git a/tests/test-bdrv-graph-mod.c b/tests/test-bdrv-graph-mod.c
index cfeec36566..a007754d9e 100644
--- a/tests/test-bdrv-graph-mod.c
+++ b/tests/test-bdrv-graph-mod.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
#include "block/block_int.h"
#include "sysemu/block-backend.h"
diff --git a/tests/test-block-backend.c b/tests/test-block-backend.c
index 5b5d6845c0..2fb1a444bd 100644
--- a/tests/test-block-backend.c
+++ b/tests/test-block-backend.c
@@ -26,6 +26,7 @@
#include "block/block.h"
#include "sysemu/block-backend.h"
#include "qapi/error.h"
+#include "qemu/main-loop.h"
static void test_drain_aio_error_flush_cb(void *opaque, int ret)
{
diff --git a/tests/test-block-iothread.c b/tests/test-block-iothread.c
index 1949d5e61a..e81b5b8dc4 100644
--- a/tests/test-block-iothread.c
+++ b/tests/test-block-iothread.c
@@ -28,6 +28,7 @@
#include "sysemu/block-backend.h"
#include "qapi/error.h"
#include "qapi/qmp/qdict.h"
+#include "qemu/main-loop.h"
#include "iothread.h"
static int coroutine_fn bdrv_test_co_prwv(BlockDriverState *bs,
diff --git a/tests/test-image-locking.c b/tests/test-image-locking.c
index 7614cbf90c..ba057bd66c 100644
--- a/tests/test-image-locking.c
+++ b/tests/test-image-locking.c
@@ -29,6 +29,7 @@
#include "sysemu/block-backend.h"
#include "qapi/error.h"
#include "qapi/qmp/qdict.h"
+#include "qemu/main-loop.h"
static BlockBackend *open_image(const char *path,
uint64_t perm, uint64_t shared_perm,
diff --git a/tests/test-qdev-global-props.c b/tests/test-qdev-global-props.c
index 60231b1372..4ed3d06f4e 100644
--- a/tests/test-qdev-global-props.c
+++ b/tests/test-qdev-global-props.c
@@ -24,7 +24,7 @@
#include "qemu/osdep.h"
-#include "hw/qdev.h"
+#include "hw/qdev-properties.h"
#include "qom/object.h"
#include "qapi/visitor.h"
diff --git a/tests/test-replication.c b/tests/test-replication.c
index f085d1993a..4747d8a6be 100644
--- a/tests/test-replication.c
+++ b/tests/test-replication.c
@@ -13,6 +13,7 @@
#include "qapi/error.h"
#include "qapi/qmp/qdict.h"
#include "qemu/option.h"
+#include "qemu/main-loop.h"
#include "replication.h"
#include "block/block_int.h"
#include "block/qdict.h"
diff --git a/tests/test-throttle.c b/tests/test-throttle.c
index a28812260e..083e1f9ba8 100644
--- a/tests/test-throttle.c
+++ b/tests/test-throttle.c
@@ -18,6 +18,7 @@
#include "qapi/error.h"
#include "qemu/throttle.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "block/throttle-groups.h"
#include "sysemu/block-backend.h"
diff --git a/trace/control-internal.h b/trace/control-internal.h
index c7fbe2d3bf..8b2b50a7cf 100644
--- a/trace/control-internal.h
+++ b/trace/control-internal.h
@@ -10,9 +10,6 @@
#ifndef TRACE__CONTROL_INTERNAL_H
#define TRACE__CONTROL_INTERNAL_H
-#include "qom/cpu.h"
-
-
extern int trace_events_enabled_count;
@@ -59,28 +56,6 @@ static inline bool trace_event_get_state_dynamic(TraceEvent *ev)
return unlikely(trace_events_enabled_count) && *ev->dstate;
}
-static inline bool
-trace_event_get_vcpu_state_dynamic_by_vcpu_id(CPUState *vcpu,
- uint32_t vcpu_id)
-{
- /* it's on fast path, avoid consistency checks (asserts) */
- if (unlikely(trace_events_enabled_count)) {
- return test_bit(vcpu_id, vcpu->trace_dstate);
- } else {
- return false;
- }
-}
-
-static inline bool trace_event_get_vcpu_state_dynamic(CPUState *vcpu,
- TraceEvent *ev)
-{
- uint32_t vcpu_id;
- assert(trace_event_is_vcpu(ev));
- vcpu_id = trace_event_get_vcpu_id(ev);
- return trace_event_get_vcpu_state_dynamic_by_vcpu_id(vcpu, vcpu_id);
-}
-
-
void trace_event_register_group(TraceEvent **events);
#endif /* TRACE__CONTROL_INTERNAL_H */
diff --git a/trace/control-vcpu.h b/trace/control-vcpu.h
new file mode 100644
index 0000000000..a8f1035c2e
--- /dev/null
+++ b/trace/control-vcpu.h
@@ -0,0 +1,63 @@
+/*
+ * Interface for configuring and controlling the state of tracing events.
+ *
+ * Copyright (C) 2011-2016 LluĂ­s Vilanova <vilanova@ac.upc.edu>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#ifndef TRACE__CONTROL_VCPU_H
+#define TRACE__CONTROL_VCPU_H
+
+#include "control.h"
+#include "event-internal.h"
+#include "qom/cpu.h"
+
+/**
+ * trace_event_get_vcpu_state:
+ * @vcpu: Target vCPU.
+ * @id: Event identifier name.
+ *
+ * Get the tracing state of an event (both static and dynamic) for the given
+ * vCPU.
+ *
+ * If the event has the disabled property, the check will have no performance
+ * impact.
+ */
+#define trace_event_get_vcpu_state(vcpu, id) \
+ ((id ##_ENABLED) && \
+ trace_event_get_vcpu_state_dynamic_by_vcpu_id( \
+ vcpu, _ ## id ## _EVENT.vcpu_id))
+
+/**
+ * trace_event_get_vcpu_state_dynamic:
+ *
+ * Get the dynamic tracing state of an event for the given vCPU.
+ */
+static bool trace_event_get_vcpu_state_dynamic(CPUState *vcpu, TraceEvent *ev);
+
+#include "control-internal.h"
+
+static inline bool
+trace_event_get_vcpu_state_dynamic_by_vcpu_id(CPUState *vcpu,
+ uint32_t vcpu_id)
+{
+ /* it's on fast path, avoid consistency checks (asserts) */
+ if (unlikely(trace_events_enabled_count)) {
+ return test_bit(vcpu_id, vcpu->trace_dstate);
+ } else {
+ return false;
+ }
+}
+
+static inline bool trace_event_get_vcpu_state_dynamic(CPUState *vcpu,
+ TraceEvent *ev)
+{
+ uint32_t vcpu_id;
+ assert(trace_event_is_vcpu(ev));
+ vcpu_id = trace_event_get_vcpu_id(ev);
+ return trace_event_get_vcpu_state_dynamic_by_vcpu_id(vcpu, vcpu_id);
+}
+
+#endif
diff --git a/trace/control.h b/trace/control.h
index 570492d6e8..1f81c491b6 100644
--- a/trace/control.h
+++ b/trace/control.h
@@ -120,22 +120,6 @@ static const char * trace_event_get_name(TraceEvent *ev);
((id ##_ENABLED) && id ##_BACKEND_DSTATE())
/**
- * trace_event_get_vcpu_state:
- * @vcpu: Target vCPU.
- * @id: Event identifier name.
- *
- * Get the tracing state of an event (both static and dynamic) for the given
- * vCPU.
- *
- * If the event has the disabled property, the check will have no performance
- * impact.
- */
-#define trace_event_get_vcpu_state(vcpu, id) \
- ((id ##_ENABLED) && \
- trace_event_get_vcpu_state_dynamic_by_vcpu_id( \
- vcpu, _ ## id ## _EVENT.vcpu_id))
-
-/**
* trace_event_get_state_static:
* @id: Event identifier.
*
@@ -156,14 +140,6 @@ static bool trace_event_get_state_static(TraceEvent *ev);
static bool trace_event_get_state_dynamic(TraceEvent *ev);
/**
- * trace_event_get_vcpu_state_dynamic:
- *
- * Get the dynamic tracing state of an event for the given vCPU.
- */
-static bool trace_event_get_vcpu_state_dynamic(CPUState *vcpu, TraceEvent *ev);
-
-
-/**
* trace_event_set_state_dynamic:
*
* Set the dynamic tracing state of an event.
diff --git a/trace/qmp.c b/trace/qmp.c
index ea99b00956..38246e1aa6 100644
--- a/trace/qmp.c
+++ b/trace/qmp.c
@@ -10,7 +10,7 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-trace.h"
-#include "control.h"
+#include "control-vcpu.h"
static CPUState *get_cpu(bool has_vcpu, int vcpu, Error **errp)
diff --git a/ui/cocoa.m b/ui/cocoa.m
index c2984028c5..f023d5166f 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -31,11 +31,13 @@
#include "ui/console.h"
#include "ui/input.h"
#include "sysemu/sysemu.h"
+#include "sysemu/runstate.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-block.h"
#include "qapi/qapi-commands-misc.h"
#include "sysemu/blockdev.h"
#include "qemu-version.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include <Carbon/Carbon.h>
#include "qom/cpu.h"
diff --git a/ui/gtk.c b/ui/gtk.c
index ad6963d4f5..2f23922afc 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -47,6 +47,7 @@
#include "trace.h"
#include "ui/input.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
#include "keymaps.h"
#include "chardev/char.h"
diff --git a/ui/input-keymap.c b/ui/input-keymap.c
index db5ccff5ad..c4301851bd 100644
--- a/ui/input-keymap.c
+++ b/ui/input-keymap.c
@@ -1,5 +1,4 @@
#include "qemu/osdep.h"
-#include "sysemu/sysemu.h"
#include "keymaps.h"
#include "ui/input.h"
diff --git a/ui/input-legacy.c b/ui/input-legacy.c
index 549654e26a..9fc78a639b 100644
--- a/ui/input-legacy.c
+++ b/ui/input-legacy.c
@@ -24,7 +24,6 @@
#include "qemu/osdep.h"
#include "qapi/qapi-commands-ui.h"
-#include "sysemu/sysemu.h"
#include "ui/console.h"
#include "keymaps.h"
#include "ui/input.h"
diff --git a/ui/input-linux.c b/ui/input-linux.c
index c8d22f99d9..59456fe765 100644
--- a/ui/input-linux.c
+++ b/ui/input-linux.c
@@ -7,9 +7,9 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qemu/config-file.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/sockets.h"
-#include "sysemu/sysemu.h"
#include "ui/input.h"
#include "qom/object_interfaces.h"
#include "sysemu/iothread.h"
diff --git a/ui/input.c b/ui/input.c
index 9494688295..4791b089c7 100644
--- a/ui/input.c
+++ b/ui/input.c
@@ -8,6 +8,7 @@
#include "ui/input.h"
#include "ui/console.h"
#include "sysemu/replay.h"
+#include "sysemu/runstate.h"
struct QemuInputHandlerState {
DeviceState *dev;
diff --git a/ui/kbd-state.c b/ui/kbd-state.c
index 1668d17dda..62d42a7a22 100644
--- a/ui/kbd-state.c
+++ b/ui/kbd-state.c
@@ -5,7 +5,6 @@
*/
#include "qemu/osdep.h"
#include "qemu/bitmap.h"
-#include "qemu/queue.h"
#include "ui/console.h"
#include "ui/input.h"
#include "ui/kbd-state.h"
diff --git a/ui/keymaps.c b/ui/keymaps.c
index 6e8a321971..4e5fca57a8 100644
--- a/ui/keymaps.c
+++ b/ui/keymaps.c
@@ -25,7 +25,6 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "keymaps.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
#include "qemu/ctype.h"
#include "qemu/error-report.h"
diff --git a/ui/sdl2-2d.c b/ui/sdl2-2d.c
index db191aaa79..a2ea85127d 100644
--- a/ui/sdl2-2d.c
+++ b/ui/sdl2-2d.c
@@ -27,7 +27,6 @@
#include "ui/console.h"
#include "ui/input.h"
#include "ui/sdl2.h"
-#include "sysemu/sysemu.h"
void sdl2_2d_update(DisplayChangeListener *dcl,
int x, int y, int w, int h)
diff --git a/ui/sdl2-gl.c b/ui/sdl2-gl.c
index 7a37e7c995..c73d273bf8 100644
--- a/ui/sdl2-gl.c
+++ b/ui/sdl2-gl.c
@@ -29,7 +29,6 @@
#include "ui/console.h"
#include "ui/input.h"
#include "ui/sdl2.h"
-#include "sysemu/sysemu.h"
static void sdl2_set_scanout_mode(struct sdl2_console *scon, bool scanout)
{
diff --git a/ui/sdl2-input.c b/ui/sdl2-input.c
index b1daae4111..1f9fe831b3 100644
--- a/ui/sdl2-input.c
+++ b/ui/sdl2-input.c
@@ -27,7 +27,6 @@
#include "ui/console.h"
#include "ui/input.h"
#include "ui/sdl2.h"
-#include "sysemu/sysemu.h"
void sdl2_process_key(struct sdl2_console *scon,
SDL_KeyboardEvent *ev)
diff --git a/ui/sdl2.c b/ui/sdl2.c
index b8a31197e8..bd4e73661d 100644
--- a/ui/sdl2.c
+++ b/ui/sdl2.c
@@ -28,6 +28,7 @@
#include "ui/console.h"
#include "ui/input.h"
#include "ui/sdl2.h"
+#include "sysemu/runstate.h"
#include "sysemu/sysemu.h"
static int sdl2_num_outputs;
diff --git a/ui/spice-core.c b/ui/spice-core.c
index 2ffc3335f0..ecc2ec2c55 100644
--- a/ui/spice-core.c
+++ b/ui/spice-core.c
@@ -19,9 +19,10 @@
#include <spice.h>
#include "sysemu/sysemu.h"
-
+#include "sysemu/runstate.h"
#include "ui/qemu-spice.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/thread.h"
#include "qemu/timer.h"
@@ -34,7 +35,6 @@
#include "qemu/notify.h"
#include "qemu/option.h"
#include "migration/misc.h"
-#include "hw/hw.h"
#include "hw/pci/pci_bus.h"
#include "ui/spice-display.h"
diff --git a/ui/spice-display.c b/ui/spice-display.c
index 104df23025..6babe24909 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -18,10 +18,10 @@
#include "qemu/osdep.h"
#include "ui/qemu-spice.h"
#include "qemu/timer.h"
+#include "qemu/main-loop.h"
#include "qemu/option.h"
#include "qemu/queue.h"
#include "ui/console.h"
-#include "sysemu/sysemu.h"
#include "trace.h"
#include "ui/spice-display.h"
diff --git a/ui/vnc-auth-sasl.h b/ui/vnc-auth-sasl.h
index fb55fe04ca..1bfb86c6f5 100644
--- a/ui/vnc-auth-sasl.h
+++ b/ui/vnc-auth-sasl.h
@@ -30,7 +30,6 @@
typedef struct VncStateSASL VncStateSASL;
typedef struct VncDisplaySASL VncDisplaySASL;
-#include "qemu/main-loop.h"
#include "authz/base.h"
struct VncStateSASL {
diff --git a/ui/vnc.c b/ui/vnc.c
index 38f92bfca3..4812ed29d0 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -28,8 +28,10 @@
#include "vnc.h"
#include "vnc-jobs.h"
#include "trace.h"
+#include "hw/qdev-core.h"
#include "sysemu/sysemu.h"
#include "qemu/error-report.h"
+#include "qemu/main-loop.h"
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/sockets.h"
diff --git a/ui/vnc.h b/ui/vnc.h
index 2f84db3142..18f1b1d6d0 100644
--- a/ui/vnc.h
+++ b/ui/vnc.h
@@ -27,7 +27,6 @@
#ifndef QEMU_VNC_H
#define QEMU_VNC_H
-#include "qapi/qapi-types-ui.h"
#include "qemu/queue.h"
#include "qemu/thread.h"
#include "ui/console.h"
diff --git a/util/fifo8.c b/util/fifo8.c
index a9aa20a9f7..a5dd789ce5 100644
--- a/util/fifo8.c
+++ b/util/fifo8.c
@@ -13,6 +13,7 @@
*/
#include "qemu/osdep.h"
+#include "migration/vmstate.h"
#include "qemu/fifo8.h"
void fifo8_create(Fifo8 *fifo, uint32_t capacity)
diff --git a/util/oslib-posix.c b/util/oslib-posix.c
index fe0309ce7a..5fda67dedf 100644
--- a/util/oslib-posix.c
+++ b/util/oslib-posix.c
@@ -36,6 +36,7 @@
#include "trace.h"
#include "qapi/error.h"
#include "qemu/sockets.h"
+#include "qemu/thread.h"
#include <libgen.h>
#include <sys/signal.h>
#include "qemu/cutils.h"
diff --git a/util/qemu-timer.c b/util/qemu-timer.c
index 1cc1b2f2c3..b0e40a9087 100644
--- a/util/qemu-timer.c
+++ b/util/qemu-timer.c
@@ -26,7 +26,6 @@
#include "qemu/main-loop.h"
#include "qemu/timer.h"
#include "sysemu/replay.h"
-#include "sysemu/sysemu.h"
#include "sysemu/cpus.h"
#ifdef CONFIG_POSIX
diff --git a/util/vfio-helpers.c b/util/vfio-helpers.c
index 2367fe8f7f..26ffd0d6b5 100644
--- a/util/vfio-helpers.c
+++ b/util/vfio-helpers.c
@@ -17,7 +17,6 @@
#include "exec/ramlist.h"
#include "exec/cpu-common.h"
#include "trace.h"
-#include "qemu/queue.h"
#include "qemu/error-report.h"
#include "standard-headers/linux/pci_regs.h"
#include "qemu/event_notifier.h"
diff --git a/vl.c b/vl.c
index 130a389712..edd5390110 100644
--- a/vl.c
+++ b/vl.c
@@ -25,11 +25,14 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
#include "qemu/units.h"
+#include "hw/qdev-properties.h"
#include "qapi/error.h"
#include "qemu-version.h"
#include "qemu/cutils.h"
#include "qemu/help_option.h"
#include "qemu/uuid.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
#include "sysemu/seccomp.h"
#include "sysemu/tcg.h"
@@ -54,7 +57,6 @@ int main(int argc, char **argv)
#include "qemu/error-report.h"
#include "qemu/sockets.h"
-#include "hw/hw.h"
#include "sysemu/accel.h"
#include "hw/usb.h"
#include "hw/isa/isa.h"
@@ -65,7 +67,6 @@ int main(int argc, char **argv)
#include "hw/firmware/smbios.h"
#include "hw/acpi/acpi.h"
#include "hw/xen/xen.h"
-#include "hw/qdev.h"
#include "hw/loader.h"
#include "monitor/qdev.h"
#include "sysemu/bt.h"
@@ -1362,14 +1363,14 @@ static int machine_help_func(QemuOpts *opts, MachineState *machine)
return 1;
}
-struct vm_change_state_entry {
+struct VMChangeStateEntry {
VMChangeStateHandler *cb;
void *opaque;
- QTAILQ_ENTRY(vm_change_state_entry) entries;
+ QTAILQ_ENTRY(VMChangeStateEntry) entries;
int priority;
};
-static QTAILQ_HEAD(, vm_change_state_entry) vm_change_state_head;
+static QTAILQ_HEAD(, VMChangeStateEntry) vm_change_state_head;
/**
* qemu_add_vm_change_state_handler_prio: