diff --git a/arch_init.c b/arch_init.c
index 2feabd5..135ce43 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -30,15 +30,15 @@
 #endif
 #include "config.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/bitops.h"
 #include "qemu/bitmap.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 #include "audio/audio.h"
 #include "hw/pc.h"
 #include "hw/pci.h"
 #include "hw/audiodev.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "migration/migration.h"
 #include "exec/gdbstub.h"
 #include "hw/smbios.h"
diff --git a/audio/audio.c b/audio/audio.c
index eb2222c..1510b59 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -25,7 +25,7 @@
 #include "audio.h"
 #include "monitor/monitor.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define AUDIO_CAP "audio"
 #include "audio_int.h"
diff --git a/audio/winwaveaudio.c b/audio/winwaveaudio.c
index 72babbf..8dbd145 100644
--- a/audio/winwaveaudio.c
+++ b/audio/winwaveaudio.c
@@ -1,7 +1,7 @@
 /* public domain */
 
 #include "qemu-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "audio.h"
 
 #define AUDIO_CAP "winwave"
diff --git a/balloon.c b/balloon.c
index d1de435..e321f2c 100644
--- a/balloon.c
+++ b/balloon.c
@@ -26,8 +26,8 @@
 
 #include "monitor/monitor.h"
 #include "exec/cpu-common.h"
-#include "kvm.h"
-#include "balloon.h"
+#include "sysemu/kvm.h"
+#include "sysemu/balloon.h"
 #include "trace.h"
 #include "qmp-commands.h"
 #include "qapi/qmp/qjson.h"
diff --git a/block-migration.c b/block-migration.c
index 4e865a6..ca4ba3f 100644
--- a/block-migration.c
+++ b/block-migration.c
@@ -20,7 +20,7 @@
 #include "qemu/timer.h"
 #include "migration/block.h"
 #include "migration/migration.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include <assert.h>
 
 #define BLOCK_SIZE (BDRV_SECTORS_PER_DIRTY_CHUNK << BDRV_SECTOR_BITS)
diff --git a/block.c b/block.c
index 5dbbc55..c837514 100644
--- a/block.c
+++ b/block.c
@@ -29,7 +29,7 @@
 #include "block/blockjob.h"
 #include "qemu/module.h"
 #include "qapi/qmp/qjson.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/notify.h"
 #include "block/coroutine.h"
 #include "qmp-commands.h"
diff --git a/block/vdi.c b/block/vdi.c
index 7b62319..021abaa 100644
--- a/block/vdi.c
+++ b/block/vdi.c
@@ -58,7 +58,7 @@
 #include <uuid/uuid.h>
 #else
 /* TODO: move uuid emulation to some central place in QEMU. */
-#include "sysemu.h"     /* UUID_FMT */
+#include "sysemu/sysemu.h"     /* UUID_FMT */
 typedef unsigned char uuid_t[16];
 #endif
 
diff --git a/blockdev-nbd.c b/blockdev-nbd.c
index 95b6216..dc4e9a2 100644
--- a/blockdev-nbd.c
+++ b/blockdev-nbd.c
@@ -9,11 +9,11 @@
  * later.  See the COPYING file in the top-level directory.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "monitor/monitor.h"
 #include "qapi/qmp/qerror.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qmp-commands.h"
 #include "trace.h"
 #include "block/nbd.h"
diff --git a/blockdev.c b/blockdev.c
index c20ac87..45c62b0 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -7,7 +7,7 @@
  * later.  See the COPYING file in the top-level directory.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "block/blockjob.h"
 #include "monitor/monitor.h"
@@ -15,11 +15,11 @@
 #include "qemu/option.h"
 #include "qemu/config-file.h"
 #include "qapi/qmp/types.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "block/block_int.h"
 #include "qmp-commands.h"
 #include "trace.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 
 static QTAILQ_HEAD(drivelist, DriveInfo) drives = QTAILQ_HEAD_INITIALIZER(drives);
 
diff --git a/cpu-exec.c b/cpu-exec.c
index 54e62ed..19ebb4a 100644
--- a/cpu-exec.c
+++ b/cpu-exec.c
@@ -21,7 +21,7 @@
 #include "disas/disas.h"
 #include "tcg.h"
 #include "qemu/atomic.h"
-#include "qtest.h"
+#include "sysemu/qtest.h"
 
 int tb_invalidated_flag;
 
diff --git a/cpus.c b/cpus.c
index 036418d..4a7782a 100644
--- a/cpus.c
+++ b/cpus.c
@@ -26,15 +26,15 @@
 #include "config-host.h"
 
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/gdbstub.h"
-#include "dma.h"
-#include "kvm.h"
+#include "sysemu/dma.h"
+#include "sysemu/kvm.h"
 #include "qmp-commands.h"
 
 #include "qemu/thread.h"
-#include "cpus.h"
-#include "qtest.h"
+#include "sysemu/cpus.h"
+#include "sysemu/qtest.h"
 #include "qemu/main-loop.h"
 #include "qemu/bitmap.h"
 
diff --git a/cputlb.c b/cputlb.c
index f0d7751..5e321b9 100644
--- a/cputlb.c
+++ b/cputlb.c
@@ -20,12 +20,12 @@
 #include "config.h"
 #include "cpu.h"
 #include "exec/exec-all.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 
-#include "cputlb.h"
+#include "sysemu/cputlb.h"
 
-#include "memory-internal.h"
+#include "sysemu/memory-internal.h"
 
 //#define DEBUG_TLB
 //#define DEBUG_TLB_CHECK
diff --git a/device_tree.c b/device_tree.c
index c3e1ba4..56af24b 100644
--- a/device_tree.c
+++ b/device_tree.c
@@ -20,7 +20,7 @@
 
 #include "config.h"
 #include "qemu-common.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "hw/loader.h"
 #include "qemu/option.h"
 #include "qemu/config-file.h"
diff --git a/dma-helpers.c b/dma-helpers.c
index e6a6dd8..272632f 100644
--- a/dma-helpers.c
+++ b/dma-helpers.c
@@ -7,7 +7,7 @@
  * (GNU GPL), version 2 or later.
  */
 
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "trace.h"
 #include "qemu/range.h"
 #include "qemu/thread.h"
diff --git a/dump-stub.c b/dump-stub.c
index 0842e6f..a9d0b3c 100644
--- a/dump-stub.c
+++ b/dump-stub.c
@@ -12,7 +12,7 @@
  */
 
 #include "qemu-common.h"
-#include "dump.h"
+#include "sysemu/dump.h"
 #include "qapi/qmp/qerror.h"
 #include "qmp-commands.h"
 
diff --git a/dump.c b/dump.c
index 871ee17..a26b1a5 100644
--- a/dump.c
+++ b/dump.c
@@ -17,10 +17,10 @@
 #include "exec/cpu-all.h"
 #include "exec/hwaddr.h"
 #include "monitor/monitor.h"
-#include "kvm.h"
-#include "dump.h"
-#include "sysemu.h"
-#include "memory_mapping.h"
+#include "sysemu/kvm.h"
+#include "sysemu/dump.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/memory_mapping.h"
 #include "qapi/error.h"
 #include "qmp-commands.h"
 #include "exec/gdbstub.h"
diff --git a/exec.c b/exec.c
index 02efa9b..1c5af6e 100644
--- a/exec.c
+++ b/exec.c
@@ -30,12 +30,12 @@
 #include "hw/hw.h"
 #include "hw/qdev.h"
 #include "qemu/osdep.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "hw/xen.h"
 #include "qemu/timer.h"
 #include "qemu/config-file.h"
-#include "memory.h"
-#include "dma.h"
+#include "sysemu/memory.h"
+#include "sysemu/dma.h"
 #include "exec/exec-memory.h"
 #if defined(CONFIG_USER_ONLY)
 #include <qemu.h>
@@ -55,13 +55,13 @@
 #endif
 #endif
 #else /* !CONFIG_USER_ONLY */
-#include "xen-mapcache.h"
+#include "sysemu/xen-mapcache.h"
 #include "trace.h"
 #endif
 
-#include "cputlb.h"
+#include "sysemu/cputlb.h"
 
-#include "memory-internal.h"
+#include "sysemu/memory-internal.h"
 
 //#define DEBUG_TB_INVALIDATE
 //#define DEBUG_FLUSH
diff --git a/gdbstub.c b/gdbstub.c
index 4b178a6..2fca1a7 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -31,7 +31,7 @@
 #else
 #include "monitor/monitor.h"
 #include "qemu-char.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/gdbstub.h"
 #endif
 
@@ -39,7 +39,7 @@
 
 #include "cpu.h"
 #include "qemu/sockets.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #ifndef TARGET_CPU_MEMORY_RW_DEBUG
 static inline int target_memory_rw_debug(CPUArchState *env, target_ulong addr,
diff --git a/hw/ac97.c b/hw/ac97.c
index ce6a1dc..46b316e 100644
--- a/hw/ac97.c
+++ b/hw/ac97.c
@@ -21,7 +21,7 @@
 #include "audiodev.h"
 #include "audio/audio.h"
 #include "pci.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 enum {
     AC97_Reset                     = 0x00,
diff --git a/hw/acpi.c b/hw/acpi.c
index 773eb6d..e4345c4 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -18,7 +18,7 @@
  * Contributions after 2012-01-13 are licensed under the terms of the
  * GNU GPL, version 2 or (at your option) any later version.
  */
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw.h"
 #include "pc.h"
 #include "acpi.h"
diff --git a/hw/acpi_ich9.c b/hw/acpi_ich9.c
index a923ee6..29ea886 100644
--- a/hw/acpi_ich9.c
+++ b/hw/acpi_ich9.c
@@ -26,9 +26,9 @@
 #include "pc.h"
 #include "pci.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "acpi.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #include "ich9.h"
 
diff --git a/hw/acpi_piix4.c b/hw/acpi_piix4.c
index 105bf43..4185d91 100644
--- a/hw/acpi_piix4.c
+++ b/hw/acpi_piix4.c
@@ -24,9 +24,9 @@
 #include "pm_smbus.h"
 #include "pci.h"
 #include "acpi.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/range.h"
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "fw_cfg.h"
 
 //#define DEBUG
diff --git a/hw/alpha_dp264.c b/hw/alpha_dp264.c
index 76d8ae8..e7e52c1 100644
--- a/hw/alpha_dp264.c
+++ b/hw/alpha_dp264.c
@@ -11,7 +11,7 @@
 #include "loader.h"
 #include "boards.h"
 #include "alpha_sys.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "mc146818rtc.h"
 #include "ide.h"
 #include "i8254.h"
diff --git a/hw/alpha_pci.c b/hw/alpha_pci.c
index 78d93e5..7327d48 100644
--- a/hw/alpha_pci.c
+++ b/hw/alpha_pci.c
@@ -9,7 +9,7 @@
 #include "config.h"
 #include "alpha_sys.h"
 #include "qemu/log.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 
 /* PCI IO reads/writes, to byte-word addressable memory.  */
diff --git a/hw/alpha_typhoon.c b/hw/alpha_typhoon.c
index 43ddb9e..499f212 100644
--- a/hw/alpha_typhoon.c
+++ b/hw/alpha_typhoon.c
@@ -10,7 +10,7 @@
 #include "exec/exec-all.h"
 #include "hw.h"
 #include "devices.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "alpha_sys.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/apb_pci.c b/hw/apb_pci.c
index 62b3814..d981577 100644
--- a/hw/apb_pci.c
+++ b/hw/apb_pci.c
@@ -32,7 +32,7 @@
 #include "pci_bridge.h"
 #include "pci_internals.h"
 #include "apb_pci.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/exec-memory.h"
 
 /* debug APB */
diff --git a/hw/apic_common.c b/hw/apic_common.c
index 5f54276..0658be9 100644
--- a/hw/apic_common.c
+++ b/hw/apic_common.c
@@ -20,7 +20,7 @@
 #include "apic.h"
 #include "apic_internal.h"
 #include "trace.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 static int apic_irq_delivered;
 bool apic_report_tpr_access;
diff --git a/hw/apic_internal.h b/hw/apic_internal.h
index 9fa8fe5..dd39cb8 100644
--- a/hw/apic_internal.h
+++ b/hw/apic_internal.h
@@ -20,7 +20,7 @@
 #ifndef QEMU_APIC_INTERNAL_H
 #define QEMU_APIC_INTERNAL_H
 
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "sysbus.h"
 #include "qemu/timer.h"
 
diff --git a/hw/arm-misc.h b/hw/arm-misc.h
index d129678..2bc913c 100644
--- a/hw/arm-misc.h
+++ b/hw/arm-misc.h
@@ -11,7 +11,7 @@
 #ifndef ARM_MISC_H
 #define ARM_MISC_H 1
 
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "hw/irq.h"
 
 /* The CPU is also modeled as an interrupt controller.  */
diff --git a/hw/arm_boot.c b/hw/arm_boot.c
index 31cbd8f..505ce5b 100644
--- a/hw/arm_boot.c
+++ b/hw/arm_boot.c
@@ -10,11 +10,11 @@
 #include "config.h"
 #include "hw.h"
 #include "arm-misc.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "loader.h"
 #include "elf.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "qemu/config-file.h"
 
 #define KERNEL_ARGS_ADDR 0x100
diff --git a/hw/arm_sysctl.c b/hw/arm_sysctl.c
index 0884f62..b733617 100644
--- a/hw/arm_sysctl.c
+++ b/hw/arm_sysctl.c
@@ -11,7 +11,7 @@
 #include "qemu/timer.h"
 #include "sysbus.h"
 #include "primecell.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define LOCK_VALUE 0xa05f
 
diff --git a/hw/axis_dev88.c b/hw/axis_dev88.c
index bfd092d..351b7c2 100644
--- a/hw/axis_dev88.c
+++ b/hw/axis_dev88.c
@@ -30,7 +30,7 @@
 #include "loader.h"
 #include "elf.h"
 #include "cris-boot.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define D(x)
diff --git a/hw/block-common.c b/hw/block-common.c
index c24208e..0f1b64e 100644
--- a/hw/block-common.c
+++ b/hw/block-common.c
@@ -7,7 +7,7 @@
  * later.  See the COPYING file in the top-level directory.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "qemu/error-report.h"
 
diff --git a/hw/bonito.c b/hw/bonito.c
index b194e97..98df7d4 100644
--- a/hw/bonito.c
+++ b/hw/bonito.c
@@ -44,7 +44,7 @@
 #include "pc.h"
 #include "mips.h"
 #include "pci_host.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/exec-memory.h"
 
 //#define DEBUG_BONITO
diff --git a/hw/cbus.c b/hw/cbus.c
index 7216899..6fd3905 100644
--- a/hw/cbus.c
+++ b/hw/cbus.c
@@ -23,7 +23,7 @@
 #include "qemu-common.h"
 #include "irq.h"
 #include "devices.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 //#define DEBUG
 
diff --git a/hw/collie.c b/hw/collie.c
index 70f8cbf..1efe8c3 100644
--- a/hw/collie.c
+++ b/hw/collie.c
@@ -15,7 +15,7 @@
 #include "strongarm.h"
 #include "arm-misc.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 static struct arm_boot_info collie_binfo = {
diff --git a/hw/cuda.c b/hw/cuda.c
index cf83956..d59e0ae 100644
--- a/hw/cuda.c
+++ b/hw/cuda.c
@@ -26,7 +26,7 @@
 #include "ppc_mac.h"
 #include "adb.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* XXX: implement all timer modes */
 
diff --git a/hw/device-hotplug.c b/hw/device-hotplug.c
index 32f2984..d60c692 100644
--- a/hw/device-hotplug.c
+++ b/hw/device-hotplug.c
@@ -24,9 +24,9 @@
 
 #include "hw.h"
 #include "boards.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qemu/config-file.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 
 DriveInfo *add_init_drive(const char *optstr)
diff --git a/hw/e1000.c b/hw/e1000.c
index 4cf2397..423748e 100644
--- a/hw/e1000.c
+++ b/hw/e1000.c
@@ -30,8 +30,8 @@
 #include "net/net.h"
 #include "net/checksum.h"
 #include "loader.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 
 #include "e1000_hw.h"
 
diff --git a/hw/eepro100.c b/hw/eepro100.c
index 6dde140..3ca1649 100644
--- a/hw/eepro100.c
+++ b/hw/eepro100.c
@@ -45,8 +45,8 @@
 #include "pci.h"
 #include "net/net.h"
 #include "eeprom93xx.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 
 /* QEMU sends frames smaller than 60 bytes to ethernet nics.
  * Such frames are rejected by real nics and their emulations.
diff --git a/hw/es1370.c b/hw/es1370.c
index e0c9729..168fe81 100644
--- a/hw/es1370.c
+++ b/hw/es1370.c
@@ -30,7 +30,7 @@
 #include "audiodev.h"
 #include "audio/audio.h"
 #include "pci.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 /* Missing stuff:
    SCTRL_P[12](END|ST)INC
diff --git a/hw/etraxfs_dma.c b/hw/etraxfs_dma.c
index b970285..8e4cc74 100644
--- a/hw/etraxfs_dma.c
+++ b/hw/etraxfs_dma.c
@@ -26,7 +26,7 @@
 #include "hw.h"
 #include "exec/exec-memory.h"
 #include "qemu-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "etraxfs_dma.h"
 
diff --git a/hw/etraxfs_timer.c b/hw/etraxfs_timer.c
index cc8b327..e9273cd 100644
--- a/hw/etraxfs_timer.c
+++ b/hw/etraxfs_timer.c
@@ -22,7 +22,7 @@
  * THE SOFTWARE.
  */
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 #include "ptimer.h"
 
diff --git a/hw/exynos4210.c b/hw/exynos4210.c
index 00d4db8..b38bb0e 100644
--- a/hw/exynos4210.c
+++ b/hw/exynos4210.c
@@ -22,7 +22,7 @@
  */
 
 #include "boards.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 #include "arm-misc.h"
 #include "loader.h"
diff --git a/hw/exynos4210.h b/hw/exynos4210.h
index 777f0f5..d804207 100644
--- a/hw/exynos4210.h
+++ b/hw/exynos4210.h
@@ -27,7 +27,7 @@
 #define EXYNOS4210_H_
 
 #include "qemu-common.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define EXYNOS4210_NCPUS                    2
 
diff --git a/hw/exynos4210_rtc.c b/hw/exynos4210_rtc.c
index 6ebc9b1..5694a62 100644
--- a/hw/exynos4210_rtc.c
+++ b/hw/exynos4210_rtc.c
@@ -32,7 +32,7 @@
 
 #include "hw.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "exynos4210.h"
 
diff --git a/hw/exynos4210_uart.c b/hw/exynos4210_uart.c
index 20dcd9f..8950891 100644
--- a/hw/exynos4210_uart.c
+++ b/hw/exynos4210_uart.c
@@ -20,7 +20,7 @@
  */
 
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-char.h"
 
 #include "exynos4210.h"
diff --git a/hw/exynos4_boards.c b/hw/exynos4_boards.c
index 408e047..8c5febd 100644
--- a/hw/exynos4_boards.c
+++ b/hw/exynos4_boards.c
@@ -21,7 +21,7 @@
  *
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 #include "net/net.h"
 #include "arm-misc.h"
diff --git a/hw/fdc.c b/hw/fdc.c
index b67d3a5..ddc0cc3 100644
--- a/hw/fdc.c
+++ b/hw/fdc.c
@@ -34,8 +34,8 @@
 #include "isa.h"
 #include "sysbus.h"
 #include "qdev-addr.h"
-#include "blockdev.h"
-#include "sysemu.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
 #include "qemu/log.h"
 
 /********************************************************/
diff --git a/hw/flash.h b/hw/flash.h
index bda2158..a07a055 100644
--- a/hw/flash.h
+++ b/hw/flash.h
@@ -3,7 +3,7 @@
 
 /* NOR flash devices */
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 typedef struct pflash_t pflash_t;
 
diff --git a/hw/framebuffer.h b/hw/framebuffer.h
index 46e375b..eac460c 100644
--- a/hw/framebuffer.h
+++ b/hw/framebuffer.h
@@ -1,7 +1,7 @@
 #ifndef QEMU_FRAMEBUFFER_H
 #define QEMU_FRAMEBUFFER_H
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* Framebuffer device helper routines.  */
 
diff --git a/hw/fw_cfg.c b/hw/fw_cfg.c
index 2a00163..26f7125 100644
--- a/hw/fw_cfg.c
+++ b/hw/fw_cfg.c
@@ -22,7 +22,7 @@
  * THE SOFTWARE.
  */
 #include "hw.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "isa.h"
 #include "fw_cfg.h"
 #include "sysbus.h"
diff --git a/hw/gumstix.c b/hw/gumstix.c
index b250bb5..ffa8962 100644
--- a/hw/gumstix.c
+++ b/hw/gumstix.c
@@ -40,7 +40,7 @@
 #include "flash.h"
 #include "devices.h"
 #include "boards.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 static const int sector_len = 128 * 1024;
diff --git a/hw/highbank.c b/hw/highbank.c
index d79328e..9828a65 100644
--- a/hw/highbank.c
+++ b/hw/highbank.c
@@ -22,10 +22,10 @@
 #include "devices.h"
 #include "loader.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "sysbus.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define SMP_BOOT_ADDR 0x100
diff --git a/hw/hw.h b/hw/hw.h
index 6bda735..5f42d90 100644
--- a/hw/hw.h
+++ b/hw/hw.h
@@ -8,7 +8,7 @@
 #include "exec/cpu-common.h"
 #endif
 
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "irq.h"
 #include "block/aio.h"
 #include "migration/qemu-file.h"
diff --git a/hw/ide.h b/hw/ide.h
index add742c..86ab42f 100644
--- a/hw/ide.h
+++ b/hw/ide.h
@@ -3,7 +3,7 @@
 
 #include "isa.h"
 #include "pci.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define MAX_IDE_DEVS	2
 
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
index c757272..4adfa3a 100644
--- a/hw/ide/ahci.c
+++ b/hw/ide/ahci.c
@@ -28,7 +28,7 @@
 #include <hw/sysbus.h>
 
 #include "monitor/monitor.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "exec/cpu-common.h"
 #include "internal.h"
 #include <hw/ide/pci.h>
diff --git a/hw/ide/cmd646.c b/hw/ide/cmd646.c
index 1598c50..1268814 100644
--- a/hw/ide/cmd646.c
+++ b/hw/ide/cmd646.c
@@ -27,8 +27,8 @@
 #include <hw/pci.h>
 #include <hw/isa.h>
 #include "block/block.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/pci.h>
 
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 70626b6..b8fa307 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -28,10 +28,10 @@
 #include <hw/isa.h>
 #include "qemu/error-report.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 #include "hw/block-common.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 #include <hw/ide/internal.h>
 
diff --git a/hw/ide/ich.c b/hw/ide/ich.c
index 6f0632c..58913e6 100644
--- a/hw/ide/ich.c
+++ b/hw/ide/ich.c
@@ -66,7 +66,7 @@
 #include <hw/pci.h>
 #include <hw/isa.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/pci.h>
 #include <hw/ide/ahci.h>
diff --git a/hw/ide/internal.h b/hw/ide/internal.h
index bf7d313..19e8104 100644
--- a/hw/ide/internal.h
+++ b/hw/ide/internal.h
@@ -8,9 +8,9 @@
  */
 #include <hw/ide.h>
 #include <hw/isa.h>
-#include "iorange.h"
-#include "dma.h"
-#include "sysemu.h"
+#include "sysemu/iorange.h"
+#include "sysemu/dma.h"
+#include "sysemu/sysemu.h"
 #include "hw/block-common.h"
 #include "hw/scsi-defs.h"
 
diff --git a/hw/ide/isa.c b/hw/ide/isa.c
index 39df87c..aa0e7fa 100644
--- a/hw/ide/isa.c
+++ b/hw/ide/isa.c
@@ -26,7 +26,7 @@
 #include <hw/pc.h>
 #include <hw/isa.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/internal.h>
 
diff --git a/hw/ide/macio.c b/hw/ide/macio.c
index 87cbb0c..d8f9b4b 100644
--- a/hw/ide/macio.c
+++ b/hw/ide/macio.c
@@ -26,7 +26,7 @@
 #include <hw/ppc_mac.h>
 #include <hw/mac_dbdma.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/internal.h>
 
diff --git a/hw/ide/microdrive.c b/hw/ide/microdrive.c
index 6cce523..642774e 100644
--- a/hw/ide/microdrive.c
+++ b/hw/ide/microdrive.c
@@ -26,7 +26,7 @@
 #include <hw/pc.h>
 #include <hw/pcmcia.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/internal.h>
 
diff --git a/hw/ide/mmio.c b/hw/ide/mmio.c
index 4044351..eb59976 100644
--- a/hw/ide/mmio.c
+++ b/hw/ide/mmio.c
@@ -24,7 +24,7 @@
  */
 #include <hw/hw.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/internal.h>
 
diff --git a/hw/ide/pci.c b/hw/ide/pci.c
index b7dab85..a0af784 100644
--- a/hw/ide/pci.c
+++ b/hw/ide/pci.c
@@ -27,7 +27,7 @@
 #include <hw/pci.h>
 #include <hw/isa.h>
 #include "block/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/pci.h>
 
diff --git a/hw/ide/piix.c b/hw/ide/piix.c
index 9431bad..6a0e487 100644
--- a/hw/ide/piix.c
+++ b/hw/ide/piix.c
@@ -27,9 +27,9 @@
 #include <hw/pc.h>
 #include <hw/pci.h>
 #include <hw/isa.h>
-#include "blockdev.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/pci.h>
 
diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
index c85e1ac..d2fe773 100644
--- a/hw/ide/qdev.c
+++ b/hw/ide/qdev.c
@@ -17,12 +17,12 @@
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 #include <hw/hw.h>
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "qemu/error-report.h"
 #include <hw/ide/internal.h>
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* --------------------------------- */
 
diff --git a/hw/ide/via.c b/hw/ide/via.c
index 0e27f8e..cdce8d6 100644
--- a/hw/ide/via.c
+++ b/hw/ide/via.c
@@ -28,8 +28,8 @@
 #include <hw/pci.h>
 #include <hw/isa.h>
 #include "block/block.h"
-#include "sysemu.h"
-#include "dma.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/dma.h"
 
 #include <hw/ide/pci.h>
 
diff --git a/hw/imx_ccm.c b/hw/imx_ccm.c
index f2e623c..46962e4 100644
--- a/hw/imx_ccm.c
+++ b/hw/imx_ccm.c
@@ -12,7 +12,7 @@
 
 #include "hw.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "imx.h"
 
 #define CKIH_FREQ 26000000 /* 26MHz crystal input */
diff --git a/hw/imx_serial.c b/hw/imx_serial.c
index dcd125f..e56e3ea 100644
--- a/hw/imx_serial.c
+++ b/hw/imx_serial.c
@@ -19,7 +19,7 @@
 
 #include "hw.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-char.h"
 #include "imx.h"
 
diff --git a/hw/integratorcp.c b/hw/integratorcp.c
index a0f1eb5..2d4ce82 100644
--- a/hw/integratorcp.c
+++ b/hw/integratorcp.c
@@ -13,7 +13,7 @@
 #include "arm-misc.h"
 #include "net/net.h"
 #include "exec/exec-memory.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 typedef struct {
     SysBusDevice busdev;
diff --git a/hw/intel-hda.c b/hw/intel-hda.c
index 7b3798a..169ddb4 100644
--- a/hw/intel-hda.c
+++ b/hw/intel-hda.c
@@ -24,7 +24,7 @@
 #include "audiodev.h"
 #include "intel-hda.h"
 #include "intel-hda-defs.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 /* --------------------------------------------------------------------- */
 /* hda bus                                                               */
diff --git a/hw/ioapic_internal.h b/hw/ioapic_internal.h
index e04c9f3..cf13c17 100644
--- a/hw/ioapic_internal.h
+++ b/hw/ioapic_internal.h
@@ -23,7 +23,7 @@
 #define QEMU_IOAPIC_INTERNAL_H
 
 #include "hw.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "sysbus.h"
 
 #define MAX_IOAPICS                     1
diff --git a/hw/isa-bus.c b/hw/isa-bus.c
index f792e7e..e7008eb 100644
--- a/hw/isa-bus.c
+++ b/hw/isa-bus.c
@@ -19,7 +19,7 @@
 #include "hw.h"
 #include "monitor/monitor.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "isa.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/isa.h b/hw/isa.h
index f9382e8..61777d4 100644
--- a/hw/isa.h
+++ b/hw/isa.h
@@ -3,8 +3,8 @@
 
 /* ISA bus */
 
-#include "ioport.h"
-#include "memory.h"
+#include "sysemu/ioport.h"
+#include "sysemu/memory.h"
 #include "qdev.h"
 
 #define ISA_NUM_IRQS 16
diff --git a/hw/ivshmem.c b/hw/ivshmem.c
index 8524115..86c1ffa 100644
--- a/hw/ivshmem.c
+++ b/hw/ivshmem.c
@@ -20,7 +20,7 @@
 #include "pc.h"
 #include "pci.h"
 #include "msix.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "migration/migration.h"
 #include "qapi/qmp/qerror.h"
 #include "qemu/event_notifier.h"
diff --git a/hw/kvm/apic.c b/hw/kvm/apic.c
index 8b65d51..1364bf7 100644
--- a/hw/kvm/apic.c
+++ b/hw/kvm/apic.c
@@ -11,7 +11,7 @@
  */
 #include "hw/apic_internal.h"
 #include "hw/msi.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 static inline void kvm_apic_set_reg(struct kvm_lapic_state *kapic,
                                     int reg_id, uint32_t val)
diff --git a/hw/kvm/clock.c b/hw/kvm/clock.c
index 824b978..6fcca95 100644
--- a/hw/kvm/clock.c
+++ b/hw/kvm/clock.c
@@ -14,8 +14,8 @@
  */
 
 #include "qemu-common.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "hw/sysbus.h"
 #include "hw/kvm/clock.h"
 
diff --git a/hw/kvm/i8254.c b/hw/kvm/i8254.c
index 8ee1c35..57faf64 100644
--- a/hw/kvm/i8254.c
+++ b/hw/kvm/i8254.c
@@ -23,10 +23,10 @@
  * THE SOFTWARE.
  */
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw/i8254.h"
 #include "hw/i8254_internal.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #define KVM_PIT_REINJECT_BIT 0
 
diff --git a/hw/kvm/i8259.c b/hw/kvm/i8259.c
index 1e24cd4..70e1d18 100644
--- a/hw/kvm/i8259.c
+++ b/hw/kvm/i8259.c
@@ -11,7 +11,7 @@
  */
 #include "hw/i8259_internal.h"
 #include "hw/apic_internal.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 static void kvm_pic_get(PICCommonState *s)
 {
diff --git a/hw/kvm/ioapic.c b/hw/kvm/ioapic.c
index f95c157..30db623 100644
--- a/hw/kvm/ioapic.c
+++ b/hw/kvm/ioapic.c
@@ -13,7 +13,7 @@
 #include "hw/pc.h"
 #include "hw/ioapic_internal.h"
 #include "hw/apic_internal.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 /* PC Utility function */
 void kvm_pc_setup_irq_routing(bool pci_enabled)
diff --git a/hw/kvm/pci-assign.c b/hw/kvm/pci-assign.c
index 0d9a900..b0f89a7 100644
--- a/hw/kvm/pci-assign.c
+++ b/hw/kvm/pci-assign.c
@@ -33,7 +33,7 @@
 #include "hw/loader.h"
 #include "monitor/monitor.h"
 #include "qemu/range.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw/pci.h"
 #include "hw/msi.h"
 #include "kvm_i386.h"
diff --git a/hw/kvmvapic.c b/hw/kvmvapic.c
index e04c401..910dbb3 100644
--- a/hw/kvmvapic.c
+++ b/hw/kvmvapic.c
@@ -8,9 +8,9 @@
  * (at your option) any later version. See the COPYING file in the
  * top-level directory.
  */
-#include "sysemu.h"
-#include "cpus.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/cpus.h"
+#include "sysemu/kvm.h"
 #include "apic_internal.h"
 
 #define APIC_DEFAULT_ADDRESS    0xfee00000
diff --git a/hw/kzm.c b/hw/kzm.c
index d3c1fb3..3c601c5 100644
--- a/hw/kzm.c
+++ b/hw/kzm.c
@@ -19,7 +19,7 @@
 #include "arm-misc.h"
 #include "devices.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "serial.h"
 #include "imx.h"
diff --git a/hw/lan9118.c b/hw/lan9118.c
index 4c72d0d..5adf911 100644
--- a/hw/lan9118.c
+++ b/hw/lan9118.c
@@ -13,7 +13,7 @@
 #include "sysbus.h"
 #include "net/net.h"
 #include "devices.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ptimer.h"
 /* For crc32 */
 #include <zlib.h>
diff --git a/hw/leon3.c b/hw/leon3.c
index c694eb8..61c991c 100644
--- a/hw/leon3.c
+++ b/hw/leon3.c
@@ -25,7 +25,7 @@
 #include "qemu/timer.h"
 #include "ptimer.h"
 #include "qemu-char.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "loader.h"
 #include "elf.h"
diff --git a/hw/lm32_boards.c b/hw/lm32_boards.c
index a752912..a509720 100644
--- a/hw/lm32_boards.c
+++ b/hw/lm32_boards.c
@@ -23,7 +23,7 @@
 #include "devices.h"
 #include "boards.h"
 #include "loader.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "elf.h"
 #include "lm32_hwsetup.h"
 #include "lm32.h"
diff --git a/hw/lm32_sys.c b/hw/lm32_sys.c
index b335089..e3a9db9 100644
--- a/hw/lm32_sys.c
+++ b/hw/lm32_sys.c
@@ -33,7 +33,7 @@
 #include "trace.h"
 #include "qemu/log.h"
 #include "qemu/error-report.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/log.h"
 
 enum {
diff --git a/hw/loader.c b/hw/loader.c
index 13001e5..54deea1 100644
--- a/hw/loader.c
+++ b/hw/loader.c
@@ -45,11 +45,11 @@
 #include "hw.h"
 #include "disas/disas.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "uboot_image.h"
 #include "loader.h"
 #include "fw_cfg.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 
 #include <zlib.h>
diff --git a/hw/lsi53c895a.c b/hw/lsi53c895a.c
index 04f2fae..ea639de 100644
--- a/hw/lsi53c895a.c
+++ b/hw/lsi53c895a.c
@@ -15,7 +15,7 @@
 #include "hw.h"
 #include "pci.h"
 #include "scsi.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 //#define DEBUG_LSI
 //#define DEBUG_LSI_REG
diff --git a/hw/m25p80.c b/hw/m25p80.c
index 3895e73..d392656 100644
--- a/hw/m25p80.c
+++ b/hw/m25p80.c
@@ -22,7 +22,7 @@
  */
 
 #include "hw.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "ssi.h"
 #include "devices.h"
 
diff --git a/hw/m48t59.c b/hw/m48t59.c
index 28f560e..2071e76 100644
--- a/hw/m48t59.c
+++ b/hw/m48t59.c
@@ -24,7 +24,7 @@
 #include "hw.h"
 #include "nvram.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 #include "isa.h"
 #include "exec/exec-memory.h"
diff --git a/hw/mac_dbdma.h b/hw/mac_dbdma.h
index e596837..73253e6 100644
--- a/hw/mac_dbdma.h
+++ b/hw/mac_dbdma.h
@@ -22,7 +22,7 @@
 #ifndef HW_MAC_DBDMA_H
 #define HW_MAC_DBDMA_H 1
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 typedef struct DBDMA_io DBDMA_io;
 
diff --git a/hw/mac_nvram.c b/hw/mac_nvram.c
index a0d14dd..71093c2 100644
--- a/hw/mac_nvram.c
+++ b/hw/mac_nvram.c
@@ -24,7 +24,7 @@
  */
 #include "hw.h"
 #include "firmware_abi.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ppc_mac.h"
 
 /* debug NVR */
diff --git a/hw/mainstone.c b/hw/mainstone.c
index 7a87c71..47b164b 100644
--- a/hw/mainstone.c
+++ b/hw/mainstone.c
@@ -18,7 +18,7 @@
 #include "devices.h"
 #include "boards.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/mc146818rtc.c b/hw/mc146818rtc.c
index fba7502..2ddd7de 100644
--- a/hw/mc146818rtc.c
+++ b/hw/mc146818rtc.c
@@ -23,7 +23,7 @@
  */
 #include "hw.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "mc146818rtc.h"
 #include "qapi/visitor.h"
 
diff --git a/hw/mcf5206.c b/hw/mcf5206.c
index 30e35f9..ea5b4ce 100644
--- a/hw/mcf5206.c
+++ b/hw/mcf5206.c
@@ -9,7 +9,7 @@
 #include "mcf.h"
 #include "qemu/timer.h"
 #include "ptimer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/exec-memory.h"
 
 /* General purpose timer module.  */
diff --git a/hw/mcf5208.c b/hw/mcf5208.c
index 15ebea7..7367d38 100644
--- a/hw/mcf5208.c
+++ b/hw/mcf5208.c
@@ -9,7 +9,7 @@
 #include "mcf.h"
 #include "qemu/timer.h"
 #include "ptimer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "net/net.h"
 #include "boards.h"
 #include "loader.h"
diff --git a/hw/megasas.c b/hw/megasas.c
index 41b4aa1..6224f06 100644
--- a/hw/megasas.c
+++ b/hw/megasas.c
@@ -20,7 +20,7 @@
 
 #include "hw.h"
 #include "pci.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "msix.h"
 #include "qemu/iov.h"
 #include "scsi.h"
diff --git a/hw/microblaze_boot.c b/hw/microblaze_boot.c
index 76d3302..3ec5c0f 100644
--- a/hw/microblaze_boot.c
+++ b/hw/microblaze_boot.c
@@ -27,7 +27,7 @@
 #include "qemu/option.h"
 #include "qemu/config-file.h"
 #include "qemu-common.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "loader.h"
 #include "elf.h"
 
diff --git a/hw/milkymist-memcard.c b/hw/milkymist-memcard.c
index 5dc30ac..f80befc 100644
--- a/hw/milkymist-memcard.c
+++ b/hw/milkymist-memcard.c
@@ -23,10 +23,10 @@
 
 #include "hw.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 #include "qemu/error-report.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sd.h"
 
 enum {
diff --git a/hw/milkymist-sysctl.c b/hw/milkymist-sysctl.c
index 519462a..796e795 100644
--- a/hw/milkymist-sysctl.c
+++ b/hw/milkymist-sysctl.c
@@ -23,7 +23,7 @@
 
 #include "hw.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 #include "qemu/timer.h"
 #include "ptimer.h"
diff --git a/hw/milkymist.c b/hw/milkymist.c
index b87e144..857ff7e 100644
--- a/hw/milkymist.c
+++ b/hw/milkymist.c
@@ -20,12 +20,12 @@
 #include "sysbus.h"
 #include "hw.h"
 #include "flash.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "devices.h"
 #include "boards.h"
 #include "loader.h"
 #include "elf.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "milkymist-hw.h"
 #include "lm32.h"
 #include "exec/exec-memory.h"
diff --git a/hw/mips.h b/hw/mips.h
index f7e9b7e..97fa672 100644
--- a/hw/mips.h
+++ b/hw/mips.h
@@ -2,7 +2,7 @@
 #define HW_MIPS_H
 /* Definitions for mips board emulation.  */
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* gt64xxx.c */
 PCIBus *gt64120_register(qemu_irq *pic);
diff --git a/hw/mips_fulong2e.c b/hw/mips_fulong2e.c
index f7642c5..e0c9e64 100644
--- a/hw/mips_fulong2e.c
+++ b/hw/mips_fulong2e.c
@@ -31,7 +31,7 @@
 #include "mips_cpudevs.h"
 #include "pci.h"
 #include "qemu-char.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "audio/audio.h"
 #include "qemu/log.h"
 #include "loader.h"
@@ -41,7 +41,7 @@
 #include "vt82c686.h"
 #include "mc146818rtc.h"
 #include "i8254.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define DEBUG_FULONG2E_INIT
diff --git a/hw/mips_jazz.c b/hw/mips_jazz.c
index 5f34969..f9e50d1 100644
--- a/hw/mips_jazz.c
+++ b/hw/mips_jazz.c
@@ -29,8 +29,8 @@
 #include "serial.h"
 #include "isa.h"
 #include "fdc.h"
-#include "sysemu.h"
-#include "arch_init.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/arch_init.h"
 #include "boards.h"
 #include "net/net.h"
 #include "esp.h"
@@ -39,7 +39,7 @@
 #include "mc146818rtc.h"
 #include "i8254.h"
 #include "pcspk.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/mips_malta.c b/hw/mips_malta.c
index a7d82a7..f6473ff 100644
--- a/hw/mips_malta.c
+++ b/hw/mips_malta.c
@@ -35,8 +35,8 @@
 #include "mips_cpudevs.h"
 #include "pci.h"
 #include "qemu-char.h"
-#include "sysemu.h"
-#include "arch_init.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/arch_init.h"
 #include "boards.h"
 #include "qemu/log.h"
 #include "mips-bios.h"
@@ -45,7 +45,7 @@
 #include "elf.h"
 #include "mc146818rtc.h"
 #include "i8254.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 #include "sysbus.h"             /* SysBusDevice */
 
diff --git a/hw/mips_mipssim.c b/hw/mips_mipssim.c
index 51705f9..0ee4a15 100644
--- a/hw/mips_mipssim.c
+++ b/hw/mips_mipssim.c
@@ -30,7 +30,7 @@
 #include "serial.h"
 #include "isa.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "mips-bios.h"
 #include "loader.h"
diff --git a/hw/mips_r4k.c b/hw/mips_r4k.c
index 6c99e5a..b0537a1 100644
--- a/hw/mips_r4k.c
+++ b/hw/mips_r4k.c
@@ -14,7 +14,7 @@
 #include "serial.h"
 #include "isa.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "flash.h"
 #include "qemu/log.h"
@@ -24,7 +24,7 @@
 #include "elf.h"
 #include "mc146818rtc.h"
 #include "i8254.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define MAX_IDE_BUS 2
diff --git a/hw/mpc8544_guts.c b/hw/mpc8544_guts.c
index 873cb8c..84522e9 100644
--- a/hw/mpc8544_guts.c
+++ b/hw/mpc8544_guts.c
@@ -18,7 +18,7 @@
  */
 
 #include "hw.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 
 #define MPC8544_GUTS_MMIO_SIZE        0x1000
diff --git a/hw/multiboot.c b/hw/multiboot.c
index 09ec5b2..c4ec2e3 100644
--- a/hw/multiboot.c
+++ b/hw/multiboot.c
@@ -27,7 +27,7 @@
 #include "multiboot.h"
 #include "loader.h"
 #include "elf.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* Show multiboot debug output */
 //#define DEBUG_MULTIBOOT
diff --git a/hw/musicpal.c b/hw/musicpal.c
index 7d71114..952e25a 100644
--- a/hw/musicpal.c
+++ b/hw/musicpal.c
@@ -13,7 +13,7 @@
 #include "arm-misc.h"
 #include "devices.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "serial.h"
 #include "qemu/timer.h"
@@ -22,7 +22,7 @@
 #include "flash.h"
 #include "ui/console.h"
 #include "i2c.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 #include "ui/pixel_ops.h"
 
diff --git a/hw/nand.c b/hw/nand.c
index a73205d..16950c5 100644
--- a/hw/nand.c
+++ b/hw/nand.c
@@ -20,7 +20,7 @@
 
 # include "hw.h"
 # include "flash.h"
-# include "blockdev.h"
+# include "sysemu/blockdev.h"
 # include "sysbus.h"
 #include "qemu/error-report.h"
 
diff --git a/hw/ne2000.c b/hw/ne2000.c
index b95a7e5..c4b3280 100644
--- a/hw/ne2000.c
+++ b/hw/ne2000.c
@@ -26,7 +26,7 @@
 #include "net/net.h"
 #include "ne2000.h"
 #include "loader.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* debug NE2000 card */
 //#define DEBUG_NE2000
diff --git a/hw/nseries.c b/hw/nseries.c
index 833a702..2f24e96 100644
--- a/hw/nseries.c
+++ b/hw/nseries.c
@@ -19,7 +19,7 @@
  */
 
 #include "qemu-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "omap.h"
 #include "arm-misc.h"
 #include "irq.h"
@@ -31,7 +31,7 @@
 #include "hw.h"
 #include "bt.h"
 #include "loader.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/omap.h b/hw/omap.h
index 2b383ff..5ccb5d4 100644
--- a/hw/omap.h
+++ b/hw/omap.h
@@ -17,7 +17,7 @@
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 #ifndef hw_omap_h
-#include "memory.h"
+#include "sysemu/memory.h"
 # define hw_omap_h		"omap.h"
 #include "hw/irq.h"
 
diff --git a/hw/omap1.c b/hw/omap1.c
index 50c4570..8536e96 100644
--- a/hw/omap1.c
+++ b/hw/omap1.c
@@ -19,9 +19,9 @@
 #include "hw.h"
 #include "arm-misc.h"
 #include "omap.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "soc_dma.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qemu/range.h"
 #include "sysbus.h"
 
diff --git a/hw/omap2.c b/hw/omap2.c
index 7ccee69..dc6867c 100644
--- a/hw/omap2.c
+++ b/hw/omap2.c
@@ -18,11 +18,11 @@
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw.h"
 #include "arm-misc.h"
 #include "omap.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 #include "qemu-char.h"
 #include "flash.h"
diff --git a/hw/omap_gpmc.c b/hw/omap_gpmc.c
index 9316820..913a46a 100644
--- a/hw/omap_gpmc.c
+++ b/hw/omap_gpmc.c
@@ -21,7 +21,7 @@
 #include "hw.h"
 #include "flash.h"
 #include "omap.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 
 /* General-Purpose Memory Controller */
diff --git a/hw/omap_sx1.c b/hw/omap_sx1.c
index 8cc731b..f34c33b 100644
--- a/hw/omap_sx1.c
+++ b/hw/omap_sx1.c
@@ -31,7 +31,7 @@
 #include "boards.h"
 #include "arm-misc.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 /*****************************************************************************/
diff --git a/hw/onenand.c b/hw/onenand.c
index ab51da3..909f472 100644
--- a/hw/onenand.c
+++ b/hw/onenand.c
@@ -22,8 +22,8 @@
 #include "hw.h"
 #include "flash.h"
 #include "irq.h"
-#include "blockdev.h"
-#include "memory.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 #include "sysbus.h"
 #include "qemu/error-report.h"
diff --git a/hw/opencores_eth.c b/hw/opencores_eth.c
index fd2f0f6..a0dfdce 100644
--- a/hw/opencores_eth.c
+++ b/hw/opencores_eth.c
@@ -34,7 +34,7 @@
 #include "hw.h"
 #include "sysbus.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 
 /* RECSMALL is not used because it breaks tap networking in linux:
diff --git a/hw/openrisc_sim.c b/hw/openrisc_sim.c
index 1999fbf..5778f98 100644
--- a/hw/openrisc_sim.c
+++ b/hw/openrisc_sim.c
@@ -25,9 +25,9 @@
 #include "net/net.h"
 #include "loader.h"
 #include "exec/exec-memory.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
-#include "qtest.h"
+#include "sysemu/qtest.h"
 
 #define KERNEL_LOAD_ADDR 0x100
 
diff --git a/hw/palm.c b/hw/palm.c
index 0b6291e..2ae92fb 100644
--- a/hw/palm.c
+++ b/hw/palm.c
@@ -18,7 +18,7 @@
  */
 #include "hw.h"
 #include "audio/audio.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ui/console.h"
 #include "omap.h"
 #include "boards.h"
diff --git a/hw/pam.c b/hw/pam.c
index a95e2cf..1d72e88 100644
--- a/hw/pam.c
+++ b/hw/pam.c
@@ -26,7 +26,7 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "pam.h"
 
 void smram_update(MemoryRegion *smram_region, uint8_t smram,
diff --git a/hw/pam.h b/hw/pam.h
index 2d77ebe..c9c5ece 100644
--- a/hw/pam.h
+++ b/hw/pam.h
@@ -51,7 +51,7 @@
  */
 
 #include "qemu-common.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define SMRAM_C_BASE    0xa0000
 #define SMRAM_C_END     0xc0000
diff --git a/hw/parallel.c b/hw/parallel.c
index c4705bc..56b3760 100644
--- a/hw/parallel.c
+++ b/hw/parallel.c
@@ -26,7 +26,7 @@
 #include "qemu-char.h"
 #include "isa.h"
 #include "pc.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 //#define DEBUG_PARALLEL
 
diff --git a/hw/pc.c b/hw/pc.c
index 6bb56a2..397ab31 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -40,16 +40,16 @@
 #include "pcspk.h"
 #include "msi.h"
 #include "sysbus.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "kvm_i386.h"
 #include "xen.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "ui/qemu-spice.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 #include "qemu/bitmap.h"
 
 /* debug PC/ISA interrupts */
diff --git a/hw/pc.h b/hw/pc.h
index 5e4d103..7c02984 100644
--- a/hw/pc.h
+++ b/hw/pc.h
@@ -2,12 +2,12 @@
 #define HW_PC_H
 
 #include "qemu-common.h"
-#include "memory.h"
-#include "ioport.h"
+#include "sysemu/memory.h"
+#include "sysemu/ioport.h"
 #include "isa.h"
 #include "fdc.h"
 #include "net/net.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "ioapic.h"
 
 /* PC-style peripherals (also used by other machines).  */
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index 699be5a..b7857da 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -33,15 +33,15 @@
 #include "net/net.h"
 #include "boards.h"
 #include "ide.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm/clock.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
-#include "arch_init.h"
-#include "blockdev.h"
+#include "sysemu/arch_init.h"
+#include "sysemu/blockdev.h"
 #include "smbus.h"
 #include "xen.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 #include "cpu.h"
 #ifdef CONFIG_XEN
diff --git a/hw/pc_q35.c b/hw/pc_q35.c
index da054aa..4fbcf05 100644
--- a/hw/pc_q35.c
+++ b/hw/pc_q35.c
@@ -28,12 +28,12 @@
  * THE SOFTWARE.
  */
 #include "hw.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 #include "smbus.h"
 #include "boards.h"
 #include "mc146818rtc.h"
 #include "xen.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm/clock.h"
 #include "q35.h"
 #include "exec/exec-memory.h"
diff --git a/hw/pc_sysfw.c b/hw/pc_sysfw.c
index 9d7c5f4..2bbe499 100644
--- a/hw/pc_sysfw.c
+++ b/hw/pc_sysfw.c
@@ -23,15 +23,15 @@
  * THE SOFTWARE.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "hw.h"
 #include "pc.h"
 #include "hw/boards.h"
 #include "loader.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "flash.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #define BIOS_FILENAME "bios.bin"
 
diff --git a/hw/pci-hotplug.c b/hw/pci-hotplug.c
index 21a0b1f..867bf52 100644
--- a/hw/pci-hotplug.c
+++ b/hw/pci-hotplug.c
@@ -31,7 +31,7 @@
 #include "scsi.h"
 #include "virtio-blk.h"
 #include "qemu/config-file.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qapi/error.h"
 
 #if defined(TARGET_I386)
diff --git a/hw/pci-stub.c b/hw/pci-stub.c
index 4cea395..f4fa3f7 100644
--- a/hw/pci-stub.c
+++ b/hw/pci-stub.c
@@ -18,7 +18,7 @@
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #include "pci.h"
 #include "qmp-commands.h"
diff --git a/hw/pci.c b/hw/pci.c
index 26447d7..91345e9 100644
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -27,7 +27,7 @@
 #include "pci_internals.h"
 #include "monitor/monitor.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "loader.h"
 #include "qemu/range.h"
 #include "qmp-commands.h"
diff --git a/hw/pci.h b/hw/pci.h
index 4da0c2a..dba13c1 100644
--- a/hw/pci.h
+++ b/hw/pci.h
@@ -4,8 +4,8 @@
 #include "qemu-common.h"
 
 #include "qdev.h"
-#include "memory.h"
-#include "dma.h"
+#include "sysemu/memory.h"
+#include "sysemu/dma.h"
 
 /* PCI includes legacy ISA access.  */
 #include "isa.h"
diff --git a/hw/pci_bridge_dev.c b/hw/pci_bridge_dev.c
index f706396..8c0de78 100644
--- a/hw/pci_bridge_dev.c
+++ b/hw/pci_bridge_dev.c
@@ -24,7 +24,7 @@
 #include "msi.h"
 #include "shpc.h"
 #include "slotid_cap.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "pci_internals.h"
 
 #define REDHAT_PCI_VENDOR_ID 0x1b36
diff --git a/hw/pcie_aer.c b/hw/pcie_aer.c
index c15a7ec..f616314 100644
--- a/hw/pcie_aer.c
+++ b/hw/pcie_aer.c
@@ -18,7 +18,7 @@
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qapi/qmp/types.h"
 #include "monitor/monitor.h"
 #include "pci_bridge.h"
diff --git a/hw/pcie_host.h b/hw/pcie_host.h
index 3921935..28216d5 100644
--- a/hw/pcie_host.h
+++ b/hw/pcie_host.h
@@ -22,7 +22,7 @@
 #define PCIE_HOST_H
 
 #include "pci_host.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define TYPE_PCIE_HOST_BRIDGE "pcie-host-bridge"
 #define PCIE_HOST_BRIDGE(obj) \
diff --git a/hw/pckbd.c b/hw/pckbd.c
index 5bb3e0a..6db7bbc 100644
--- a/hw/pckbd.c
+++ b/hw/pckbd.c
@@ -25,7 +25,7 @@
 #include "isa.h"
 #include "pc.h"
 #include "ps2.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* debug PC keyboard */
 //#define DEBUG_KBD
diff --git a/hw/pcnet-pci.c b/hw/pcnet-pci.c
index 53ca073..c58fe4b 100644
--- a/hw/pcnet-pci.c
+++ b/hw/pcnet-pci.c
@@ -31,7 +31,7 @@
 #include "net/net.h"
 #include "loader.h"
 #include "qemu/timer.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #include "pcnet.h"
 
diff --git a/hw/pcnet.c b/hw/pcnet.c
index 8773654..30f1000 100644
--- a/hw/pcnet.c
+++ b/hw/pcnet.c
@@ -39,7 +39,7 @@
 #include "net/net.h"
 #include "qemu/timer.h"
 #include "qemu/sockets.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "pcnet.h"
 
diff --git a/hw/pcnet.h b/hw/pcnet.h
index 9664311..a318d4f 100644
--- a/hw/pcnet.h
+++ b/hw/pcnet.h
@@ -7,7 +7,7 @@
 #define PCNET_LOOPTEST_CRC	1
 #define PCNET_LOOPTEST_NOCRC	2
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* BUS CONFIGURATION REGISTERS */
 #define BCR_MSRDA    0
diff --git a/hw/petalogix_ml605_mmu.c b/hw/petalogix_ml605_mmu.c
index a9d6838..203ec46 100644
--- a/hw/petalogix_ml605_mmu.c
+++ b/hw/petalogix_ml605_mmu.c
@@ -29,11 +29,11 @@
 #include "hw.h"
 #include "net/net.h"
 #include "flash.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "devices.h"
 #include "boards.h"
 #include "xilinx.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "serial.h"
 #include "exec/exec-memory.h"
 #include "ssi.h"
diff --git a/hw/petalogix_s3adsp1800_mmu.c b/hw/petalogix_s3adsp1800_mmu.c
index 04b1d77..89c9108 100644
--- a/hw/petalogix_s3adsp1800_mmu.c
+++ b/hw/petalogix_s3adsp1800_mmu.c
@@ -27,11 +27,11 @@
 #include "hw.h"
 #include "net/net.h"
 #include "flash.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "devices.h"
 #include "boards.h"
 #include "xilinx.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #include "microblaze_boot.h"
diff --git a/hw/pl031.c b/hw/pl031.c
index 834a20c..3a23ecd 100644
--- a/hw/pl031.c
+++ b/hw/pl031.c
@@ -13,7 +13,7 @@
 
 #include "sysbus.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 //#define DEBUG_PL031
 
diff --git a/hw/pl181.c b/hw/pl181.c
index 8a2895c..cbddb74 100644
--- a/hw/pl181.c
+++ b/hw/pl181.c
@@ -7,7 +7,7 @@
  * This code is licensed under the GPL.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "sd.h"
 
diff --git a/hw/ppc.c b/hw/ppc.c
index f066367..1559982 100644
--- a/hw/ppc.c
+++ b/hw/ppc.c
@@ -24,11 +24,11 @@
 #include "hw.h"
 #include "ppc.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "nvram.h"
 #include "qemu/log.h"
 #include "loader.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 
 //#define PPC_DEBUG_IRQ
diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index ae205ee..c607c20 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -22,10 +22,10 @@
 #include "hw/serial.h"
 #include "hw/pci.h"
 #include "hw/boards.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "hw/openpic.h"
 #include "hw/ppc.h"
 #include "hw/loader.h"
diff --git a/hw/ppc/e500plat.c b/hw/ppc/e500plat.c
index 4cfb940..dd3830d 100644
--- a/hw/ppc/e500plat.c
+++ b/hw/ppc/e500plat.c
@@ -13,7 +13,7 @@
 #include "qemu-common.h"
 #include "e500.h"
 #include "../boards.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 static void e500plat_fixup_devtree(PPCE500Params *params, void *fdt)
 {
diff --git a/hw/ppc/mpc8544ds.c b/hw/ppc/mpc8544ds.c
index e651661..50d7eaa 100644
--- a/hw/ppc/mpc8544ds.c
+++ b/hw/ppc/mpc8544ds.c
@@ -13,7 +13,7 @@
 #include "qemu-common.h"
 #include "e500.h"
 #include "../boards.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 static void mpc8544ds_fixup_devtree(PPCE500Params *params, void *fdt)
 {
diff --git a/hw/ppc405_boards.c b/hw/ppc405_boards.c
index 6fc7202..f49300f 100644
--- a/hw/ppc405_boards.c
+++ b/hw/ppc405_boards.c
@@ -26,12 +26,12 @@
 #include "ppc405.h"
 #include "nvram.h"
 #include "flash.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "block/block.h"
 #include "boards.h"
 #include "qemu/log.h"
 #include "loader.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define BIOS_FILENAME "ppc405_rom.bin"
diff --git a/hw/ppc405_uc.c b/hw/ppc405_uc.c
index 5b1ed27..077e0df 100644
--- a/hw/ppc405_uc.c
+++ b/hw/ppc405_uc.c
@@ -26,7 +26,7 @@
 #include "ppc405.h"
 #include "serial.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/log.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/ppc440_bamboo.c b/hw/ppc440_bamboo.c
index 13da116..00d3e44 100644
--- a/hw/ppc440_bamboo.c
+++ b/hw/ppc440_bamboo.c
@@ -17,16 +17,16 @@
 #include "hw.h"
 #include "pci.h"
 #include "boards.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "loader.h"
 #include "elf.h"
 #include "exec/exec-memory.h"
 #include "serial.h"
 #include "ppc.h"
 #include "ppc405.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 
 #define BINARY_DEVICE_TREE_FILE "bamboo.dtb"
diff --git a/hw/ppc_booke.c b/hw/ppc_booke.c
index a7182be..5c89fc3 100644
--- a/hw/ppc_booke.c
+++ b/hw/ppc_booke.c
@@ -24,7 +24,7 @@
 #include "hw.h"
 #include "ppc.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "nvram.h"
 #include "qemu/log.h"
 #include "loader.h"
diff --git a/hw/ppc_mac.h b/hw/ppc_mac.h
index 524b236..3959b5f 100644
--- a/hw/ppc_mac.h
+++ b/hw/ppc_mac.h
@@ -25,7 +25,7 @@
 #if !defined(__PPC_MAC_H__)
 #define __PPC_MAC_H__
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* SMP is not enabled, for now */
 #define MAX_CPUS 1
diff --git a/hw/ppc_newworld.c b/hw/ppc_newworld.c
index a9084b6..6d0c762 100644
--- a/hw/ppc_newworld.c
+++ b/hw/ppc_newworld.c
@@ -54,7 +54,7 @@
 #include "nvram.h"
 #include "pci.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "fw_cfg.h"
 #include "escc.h"
@@ -62,10 +62,10 @@
 #include "ide.h"
 #include "loader.h"
 #include "elf.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 #include "hw/usb.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define MAX_IDE_BUS 2
diff --git a/hw/ppc_oldworld.c b/hw/ppc_oldworld.c
index 74e1d82..4890d53 100644
--- a/hw/ppc_oldworld.c
+++ b/hw/ppc_oldworld.c
@@ -29,7 +29,7 @@
 #include "adb.h"
 #include "mac_dbdma.h"
 #include "nvram.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "net/net.h"
 #include "isa.h"
 #include "pci.h"
@@ -39,9 +39,9 @@
 #include "ide.h"
 #include "loader.h"
 #include "elf.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define MAX_IDE_BUS 2
diff --git a/hw/ppc_prep.c b/hw/ppc_prep.c
index b9baefa..b0e7334 100644
--- a/hw/ppc_prep.c
+++ b/hw/ppc_prep.c
@@ -27,7 +27,7 @@
 #include "serial.h"
 #include "fdc.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "isa.h"
 #include "pci.h"
 #include "pci_host.h"
@@ -37,8 +37,8 @@
 #include "ide.h"
 #include "loader.h"
 #include "mc146818rtc.h"
-#include "blockdev.h"
-#include "arch_init.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/arch_init.h"
 #include "exec/exec-memory.h"
 
 //#define HARD_DEBUG_PPC_IO
diff --git a/hw/ppce500_spin.c b/hw/ppce500_spin.c
index c1a155b..177aa2d 100644
--- a/hw/ppce500_spin.c
+++ b/hw/ppce500_spin.c
@@ -28,9 +28,9 @@
  */
 
 #include "hw.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #define MAX_CPUS 32
 
diff --git a/hw/ps2.c b/hw/ps2.c
index ba80089..15cfd5b 100644
--- a/hw/ps2.c
+++ b/hw/ps2.c
@@ -24,7 +24,7 @@
 #include "hw.h"
 #include "ps2.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 /* debug PC keyboard */
 //#define DEBUG_KBD
diff --git a/hw/pxa.h b/hw/pxa.h
index 49ac820..534eb75 100644
--- a/hw/pxa.h
+++ b/hw/pxa.h
@@ -9,7 +9,7 @@
 #ifndef PXA_H
 # define PXA_H			"pxa.h"
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* Interrupt numbers */
 # define PXA2XX_PIC_SSP3	0
diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c
index e616979..936e9f8 100644
--- a/hw/pxa2xx.c
+++ b/hw/pxa2xx.c
@@ -9,12 +9,12 @@
 
 #include "sysbus.h"
 #include "pxa.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "serial.h"
 #include "i2c.h"
 #include "ssi.h"
 #include "qemu-char.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 static struct {
     hwaddr io_base;
diff --git a/hw/pxa2xx_lcd.c b/hw/pxa2xx_lcd.c
index b5efd4d..512a27e 100644
--- a/hw/pxa2xx_lcd.c
+++ b/hw/pxa2xx_lcd.c
@@ -15,7 +15,7 @@
 #include "pxa.h"
 #include "ui/pixel_ops.h"
 /* FIXME: For graphic_rotate. Should probably be done in common code.  */
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "framebuffer.h"
 
 struct DMAChannel {
diff --git a/hw/pxa2xx_timer.c b/hw/pxa2xx_timer.c
index 1481c6d..e4ffb15 100644
--- a/hw/pxa2xx_timer.c
+++ b/hw/pxa2xx_timer.c
@@ -9,7 +9,7 @@
 
 #include "hw.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "pxa.h"
 #include "sysbus.h"
 
diff --git a/hw/qdev-monitor.c b/hw/qdev-monitor.c
index 1c6712e..b739867 100644
--- a/hw/qdev-monitor.c
+++ b/hw/qdev-monitor.c
@@ -20,7 +20,7 @@
 #include "qdev.h"
 #include "monitor/monitor.h"
 #include "qmp-commands.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 #include "qemu/config-file.h"
 
 /*
diff --git a/hw/qdev-properties.c b/hw/qdev-properties.c
index ba6c648..1cb97ea 100644
--- a/hw/qdev-properties.c
+++ b/hw/qdev-properties.c
@@ -1,7 +1,7 @@
 #include "net/net.h"
 #include "qdev.h"
 #include "qapi/qmp/qerror.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "net/hub.h"
 #include "qapi/visitor.h"
diff --git a/hw/qdev.c b/hw/qdev.c
index 0a2a32d..c4a9857 100644
--- a/hw/qdev.c
+++ b/hw/qdev.c
@@ -27,7 +27,7 @@
 
 #include "net/net.h"
 #include "qdev.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qapi/error.h"
 #include "qapi/visitor.h"
 
diff --git a/hw/qxl.c b/hw/qxl.c
index b88a39c..d08b9bd 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -24,7 +24,7 @@
 #include "qemu/timer.h"
 #include "qemu/queue.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 
 #include "qxl.h"
diff --git a/hw/r2d.c b/hw/r2d.c
index fca197f..538f1f2 100644
--- a/hw/r2d.c
+++ b/hw/r2d.c
@@ -27,7 +27,7 @@
 #include "hw.h"
 #include "sh.h"
 #include "devices.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "pci.h"
 #include "net/net.h"
@@ -36,7 +36,7 @@
 #include "loader.h"
 #include "usb.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define FLASH_BASE 0x00000000
diff --git a/hw/realview.c b/hw/realview.c
index 5a95dea..dc35bc3 100644
--- a/hw/realview.c
+++ b/hw/realview.c
@@ -13,10 +13,10 @@
 #include "devices.h"
 #include "pci.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "i2c.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 #define SMP_BOOT_ADDR 0xe0000000
diff --git a/hw/rtl8139.c b/hw/rtl8139.c
index dc87903..23dc1e1 100644
--- a/hw/rtl8139.c
+++ b/hw/rtl8139.c
@@ -53,11 +53,11 @@
 
 #include "hw.h"
 #include "pci.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "qemu/timer.h"
 #include "net/net.h"
 #include "loader.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/iov.h"
 
 /* debug RTL8139 card */
diff --git a/hw/s390-virtio-bus.c b/hw/s390-virtio-bus.c
index 769015c..963b4f0 100644
--- a/hw/s390-virtio-bus.c
+++ b/hw/s390-virtio-bus.c
@@ -19,7 +19,7 @@
 
 #include "hw.h"
 #include "block/block.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "monitor/monitor.h"
 #include "loader.h"
@@ -29,7 +29,7 @@
 #include "hw/virtio-serial.h"
 #include "hw/virtio-net.h"
 #include "hw/sysbus.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #include "hw/s390-virtio-bus.h"
 
diff --git a/hw/s390-virtio.c b/hw/s390-virtio.c
index c9db51b..3655aa0 100644
--- a/hw/s390-virtio.c
+++ b/hw/s390-virtio.c
@@ -19,8 +19,8 @@
 
 #include "hw.h"
 #include "block/block.h"
-#include "blockdev.h"
-#include "sysemu.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/sysemu.h"
 #include "net/net.h"
 #include "boards.h"
 #include "monitor/monitor.h"
@@ -28,7 +28,7 @@
 #include "elf.h"
 #include "hw/virtio.h"
 #include "hw/sysbus.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "exec/exec-memory.h"
 
 #include "hw/s390-virtio-bus.h"
diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
index 748118d..89b1b66 100644
--- a/hw/s390x/event-facility.c
+++ b/hw/s390x/event-facility.c
@@ -16,7 +16,7 @@
  */
 
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "sclp.h"
 #include "event-facility.h"
diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c
index 5c274fa..dd95d45 100644
--- a/hw/s390x/sclp.c
+++ b/hw/s390x/sclp.c
@@ -13,8 +13,8 @@
  */
 
 #include "cpu.h"
-#include "kvm.h"
-#include "memory.h"
+#include "sysemu/kvm.h"
+#include "sysemu/memory.h"
 
 #include "sclp.h"
 
diff --git a/hw/s390x/sclpquiesce.c b/hw/s390x/sclpquiesce.c
index 9a773b8..6e6f562 100644
--- a/hw/s390x/sclpquiesce.c
+++ b/hw/s390x/sclpquiesce.c
@@ -12,7 +12,7 @@
  *
  */
 #include <hw/qdev.h>
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sclp.h"
 #include "event-facility.h"
 
diff --git a/hw/scsi-bus.c b/hw/scsi-bus.c
index 5dc9f51..970c1fc 100644
--- a/hw/scsi-bus.c
+++ b/hw/scsi-bus.c
@@ -3,9 +3,9 @@
 #include "scsi.h"
 #include "scsi-defs.h"
 #include "qdev.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "trace.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 static char *scsibus_get_dev_path(DeviceState *dev);
 static char *scsibus_get_fw_dev_path(DeviceState *dev);
diff --git a/hw/scsi-disk.c b/hw/scsi-disk.c
index c65da4a..a69735b 100644
--- a/hw/scsi-disk.c
+++ b/hw/scsi-disk.c
@@ -32,10 +32,10 @@ do { printf("scsi-disk: " fmt , ## __VA_ARGS__); } while (0)
 #include "qemu/error-report.h"
 #include "scsi.h"
 #include "scsi-defs.h"
-#include "sysemu.h"
-#include "blockdev.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #ifdef __linux
 #include <scsi/sg.h>
diff --git a/hw/scsi-generic.c b/hw/scsi-generic.c
index faeb61e..4c702be 100644
--- a/hw/scsi-generic.c
+++ b/hw/scsi-generic.c
@@ -14,7 +14,7 @@
 #include "qemu-common.h"
 #include "qemu/error-report.h"
 #include "scsi.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 #ifdef __linux__
 
diff --git a/hw/scsi.h b/hw/scsi.h
index 24ed522..a5b5b2e 100644
--- a/hw/scsi.h
+++ b/hw/scsi.h
@@ -4,7 +4,7 @@
 #include "qdev.h"
 #include "block/block.h"
 #include "hw/block-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define MAX_SCSI_DEVS	255
 
diff --git a/hw/serial.h b/hw/serial.h
index 796138b..86bc6c0 100644
--- a/hw/serial.h
+++ b/hw/serial.h
@@ -26,8 +26,8 @@
 #define HW_SERIAL_H 1
 
 #include "hw.h"
-#include "sysemu.h"
-#include "memory.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/memory.h"
 
 #define UART_FIFO_LENGTH    16      /* 16550A Fifo Length */
 
diff --git a/hw/sga.c b/hw/sga.c
index a666349..7bb7166 100644
--- a/hw/sga.c
+++ b/hw/sga.c
@@ -27,7 +27,7 @@
 #include "pci.h"
 #include "pc.h"
 #include "loader.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define SGABIOS_FILENAME "sgabios.bin"
 
diff --git a/hw/sh7750.c b/hw/sh7750.c
index afd240d..8f3cb24 100644
--- a/hw/sh7750.c
+++ b/hw/sh7750.c
@@ -25,7 +25,7 @@
 #include <stdio.h>
 #include "hw.h"
 #include "sh.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sh7750_regs.h"
 #include "sh7750_regnames.h"
 #include "sh_intc.h"
diff --git a/hw/shix.c b/hw/shix.c
index 9cc4512..e194391 100644
--- a/hw/shix.c
+++ b/hw/shix.c
@@ -29,7 +29,7 @@
 */
 #include "hw.h"
 #include "sh.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "loader.h"
 #include "exec/exec-memory.h"
diff --git a/hw/shpc.h b/hw/shpc.h
index 946c779..9e6d2fc 100644
--- a/hw/shpc.h
+++ b/hw/shpc.h
@@ -2,7 +2,7 @@
 #define SHPC_H
 
 #include "qemu-common.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "migration/vmstate.h"
 
 struct SHPCDevice {
diff --git a/hw/slavio_misc.c b/hw/slavio_misc.c
index 682fb45..704f2b1 100644
--- a/hw/slavio_misc.c
+++ b/hw/slavio_misc.c
@@ -22,7 +22,7 @@
  * THE SOFTWARE.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "sysbus.h"
 #include "trace.h"
 
diff --git a/hw/smbios.c b/hw/smbios.c
index c57237d..a7b8bfc 100644
--- a/hw/smbios.c
+++ b/hw/smbios.c
@@ -13,7 +13,7 @@
  * GNU GPL, version 2 or (at your option) any later version.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "smbios.h"
 #include "loader.h"
 
diff --git a/hw/smbus_ich9.c b/hw/smbus_ich9.c
index 6940583..a1c042d 100644
--- a/hw/smbus_ich9.c
+++ b/hw/smbus_ich9.c
@@ -26,7 +26,7 @@
 #include "pc.h"
 #include "pm_smbus.h"
 #include "pci.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "i2c.h"
 #include "smbus.h"
 
diff --git a/hw/soc_dma.h b/hw/soc_dma.h
index 6ca4166..5e0f43f 100644
--- a/hw/soc_dma.h
+++ b/hw/soc_dma.h
@@ -22,7 +22,7 @@
 #define HW_SOC_DMA_H 1
 
 
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "hw/irq.h"
 
 struct soc_dma_s;
diff --git a/hw/spapr.c b/hw/spapr.c
index e0370d4..9643307 100644
--- a/hw/spapr.c
+++ b/hw/spapr.c
@@ -24,13 +24,13 @@
  * THE SOFTWARE.
  *
  */
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw.h"
 #include "elf.h"
 #include "net/net.h"
-#include "blockdev.h"
-#include "cpus.h"
-#include "kvm.h"
+#include "sysemu/blockdev.h"
+#include "sysemu/cpus.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 
 #include "hw/boards.h"
@@ -43,7 +43,7 @@
 #include "hw/xics.h"
 #include "hw/msi.h"
 
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 #include "pci.h"
 
diff --git a/hw/spapr.h b/hw/spapr.h
index efe7f57..309fa79 100644
--- a/hw/spapr.h
+++ b/hw/spapr.h
@@ -1,7 +1,7 @@
 #if !defined(__HW_SPAPR_H__)
 #define __HW_SPAPR_H__
 
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "hw/xics.h"
 
 struct VIOsPAPRBus;
diff --git a/hw/spapr_events.c b/hw/spapr_events.c
index 18ccd4a..7956601 100644
--- a/hw/spapr_events.c
+++ b/hw/spapr_events.c
@@ -25,10 +25,10 @@
  *
  */
 #include "cpu.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-char.h"
 #include "hw/qdev.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 #include "hw/spapr.h"
 #include "hw/spapr_vio.h"
diff --git a/hw/spapr_hcall.c b/hw/spapr_hcall.c
index 1fac362..afb1297 100644
--- a/hw/spapr_hcall.c
+++ b/hw/spapr_hcall.c
@@ -1,6 +1,6 @@
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "cpu.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "helper_regs.h"
 #include "hw/spapr.h"
 
diff --git a/hw/spapr_iommu.c b/hw/spapr_iommu.c
index 2cd3a50..3c88b31 100644
--- a/hw/spapr_iommu.c
+++ b/hw/spapr_iommu.c
@@ -17,10 +17,10 @@
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 #include "hw.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qdev.h"
 #include "kvm_ppc.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "exec/exec-memory.h"
 
 #include "hw/spapr.h"
diff --git a/hw/spapr_rtas.c b/hw/spapr_rtas.c
index 6d5c48a..2aa779e 100644
--- a/hw/spapr_rtas.c
+++ b/hw/spapr_rtas.c
@@ -25,10 +25,10 @@
  *
  */
 #include "cpu.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-char.h"
 #include "hw/qdev.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 #include "hw/spapr.h"
 #include "hw/spapr_vio.h"
diff --git a/hw/spapr_vio.c b/hw/spapr_vio.c
index fdf8db9..a58621d 100644
--- a/hw/spapr_vio.c
+++ b/hw/spapr_vio.c
@@ -20,14 +20,14 @@
  */
 
 #include "hw.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "monitor/monitor.h"
 #include "loader.h"
 #include "elf.h"
 #include "hw/sysbus.h"
-#include "kvm.h"
-#include "device_tree.h"
+#include "sysemu/kvm.h"
+#include "sysemu/device_tree.h"
 #include "kvm_ppc.h"
 
 #include "hw/spapr.h"
diff --git a/hw/spapr_vio.h b/hw/spapr_vio.h
index cc85d26..f98ec0a 100644
--- a/hw/spapr_vio.h
+++ b/hw/spapr_vio.h
@@ -21,7 +21,7 @@
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "dma.h"
+#include "sysemu/dma.h"
 
 #define TYPE_VIO_SPAPR_DEVICE "vio-spapr-device"
 #define VIO_SPAPR_DEVICE(obj) \
diff --git a/hw/spitz.c b/hw/spitz.c
index 3ffb46d..d264416 100644
--- a/hw/spitz.c
+++ b/hw/spitz.c
@@ -13,7 +13,7 @@
 #include "hw.h"
 #include "pxa.h"
 #include "arm-misc.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "pcmcia.h"
 #include "i2c.h"
 #include "ssi.h"
@@ -25,7 +25,7 @@
 #include "block/block.h"
 #include "audio/audio.h"
 #include "boards.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/ssi-sd.c b/hw/ssi-sd.c
index c5505ee..d61c332 100644
--- a/hw/ssi-sd.c
+++ b/hw/ssi-sd.c
@@ -10,7 +10,7 @@
  * GNU GPL, version 2 or (at your option) any later version.
  */
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "ssi.h"
 #include "sd.h"
 
diff --git a/hw/strongarm.c b/hw/strongarm.c
index f776fee..5d5f454 100644
--- a/hw/strongarm.c
+++ b/hw/strongarm.c
@@ -31,7 +31,7 @@
 #include "qemu/error-report.h"
 #include "arm-misc.h"
 #include "qemu-char.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ssi.h"
 
 //#define DEBUG
diff --git a/hw/strongarm.h b/hw/strongarm.h
index d30dd6a..45102bc 100644
--- a/hw/strongarm.h
+++ b/hw/strongarm.h
@@ -1,7 +1,7 @@
 #ifndef _STRONGARM_H
 #define _STRONGARM_H
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define SA_CS0          0x00000000
 #define SA_CS1          0x08000000
diff --git a/hw/sun4m.c b/hw/sun4m.c
index ba51b71..46af31b 100644
--- a/hw/sun4m.c
+++ b/hw/sun4m.c
@@ -27,7 +27,7 @@
 #include "nvram.h"
 #include "sparc32_dma.h"
 #include "fdc.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "net/net.h"
 #include "boards.h"
 #include "firmware_abi.h"
@@ -40,7 +40,7 @@
 #include "qdev-addr.h"
 #include "loader.h"
 #include "elf.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "trace.h"
 
 /*
diff --git a/hw/sun4u.c b/hw/sun4u.c
index d88ca3d..d7e2a25 100644
--- a/hw/sun4u.c
+++ b/hw/sun4u.c
@@ -30,7 +30,7 @@
 #include "fdc.h"
 #include "net/net.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "firmware_abi.h"
 #include "fw_cfg.h"
@@ -38,7 +38,7 @@
 #include "ide.h"
 #include "loader.h"
 #include "elf.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 
 //#define DEBUG_IRQ
diff --git a/hw/sysbus.h b/hw/sysbus.h
index e58baaa..b1b42a1 100644
--- a/hw/sysbus.h
+++ b/hw/sysbus.h
@@ -4,7 +4,7 @@
 /* Devices attached directly to the main system bus.  */
 
 #include "qdev.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define QDEV_MAX_MMIO 32
 #define QDEV_MAX_PIO 32
diff --git a/hw/tc6393xb.c b/hw/tc6393xb.c
index edf7681..e815f83 100644
--- a/hw/tc6393xb.c
+++ b/hw/tc6393xb.c
@@ -15,7 +15,7 @@
 #include "flash.h"
 #include "ui/console.h"
 #include "ui/pixel_ops.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 #define IRQ_TC6393_NAND		0
 #define IRQ_TC6393_MMC		1
diff --git a/hw/tosa.c b/hw/tosa.c
index 25370fd..a67f02e 100644
--- a/hw/tosa.c
+++ b/hw/tosa.c
@@ -21,7 +21,7 @@
 #include "boards.h"
 #include "i2c.h"
 #include "ssi.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "sysbus.h"
 #include "exec/exec-memory.h"
 
diff --git a/hw/twl92230.c b/hw/twl92230.c
index 3210b9e..c71e4a2 100644
--- a/hw/twl92230.c
+++ b/hw/twl92230.c
@@ -22,7 +22,7 @@
 #include "hw.h"
 #include "qemu/timer.h"
 #include "i2c.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ui/console.h"
 
 #define VERBOSE 1
diff --git a/hw/usb/bus.c b/hw/usb/bus.c
index 8705db5..f23e467 100644
--- a/hw/usb/bus.c
+++ b/hw/usb/bus.c
@@ -1,7 +1,7 @@
 #include "hw/hw.h"
 #include "hw/usb.h"
 #include "hw/qdev.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #include "trace.h"
 
diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c
index 86ebf17..42f2c95 100644
--- a/hw/usb/dev-network.c
+++ b/hw/usb/dev-network.c
@@ -29,7 +29,7 @@
 #include "net/net.h"
 #include "qemu/queue.h"
 #include "qemu/config-file.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/iov.h"
 
 /*#define TRAFFIC_DEBUG*/
diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c
index 6d27bac..5025597 100644
--- a/hw/usb/dev-storage.c
+++ b/hw/usb/dev-storage.c
@@ -15,8 +15,8 @@
 #include "hw/scsi.h"
 #include "ui/console.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
-#include "blockdev.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/blockdev.h"
 
 //#define DEBUG_MSD
 
diff --git a/hw/usb/hcd-ehci.h b/hw/usb/hcd-ehci.h
index 1a12be7..709de16 100644
--- a/hw/usb/hcd-ehci.h
+++ b/hw/usb/hcd-ehci.h
@@ -22,8 +22,8 @@
 #include "hw/usb.h"
 #include "monitor/monitor.h"
 #include "trace.h"
-#include "dma.h"
-#include "sysemu.h"
+#include "sysemu/dma.h"
+#include "sysemu/sysemu.h"
 
 #ifndef EHCI_DEBUG
 #define EHCI_DEBUG   0
diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c
index 7935b76..40d58d1 100644
--- a/hw/usb/hcd-uhci.c
+++ b/hw/usb/hcd-uhci.c
@@ -30,7 +30,7 @@
 #include "hw/pci.h"
 #include "qemu/timer.h"
 #include "qemu/iov.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "trace.h"
 
 //#define DEBUG
diff --git a/hw/usb/host-linux.c b/hw/usb/host-linux.c
index f28bda9..27a916c 100644
--- a/hw/usb/host-linux.c
+++ b/hw/usb/host-linux.c
@@ -33,7 +33,7 @@
 #include "qemu-common.h"
 #include "qemu/timer.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 
 #include <dirent.h>
diff --git a/hw/usb/libhw.c b/hw/usb/libhw.c
index 672d7a5..75f022f 100644
--- a/hw/usb/libhw.c
+++ b/hw/usb/libhw.c
@@ -22,7 +22,7 @@
 #include "qemu-common.h"
 #include "exec/cpu-common.h"
 #include "hw/usb.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 
 int usb_packet_map(USBPacket *p, QEMUSGList *sgl)
 {
diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
index bf8b5da..f970fe0 100644
--- a/hw/usb/redirect.c
+++ b/hw/usb/redirect.c
@@ -28,7 +28,7 @@
 #include "qemu-common.h"
 #include "qemu/timer.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/iov.h"
 
 #include <dirent.h>
diff --git a/hw/versatilepb.c b/hw/versatilepb.c
index 986f899..8c24646 100644
--- a/hw/versatilepb.c
+++ b/hw/versatilepb.c
@@ -11,11 +11,11 @@
 #include "arm-misc.h"
 #include "devices.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "pci.h"
 #include "i2c.h"
 #include "boards.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "exec/exec-memory.h"
 #include "flash.h"
 
diff --git a/hw/vexpress.c b/hw/vexpress.c
index 9845309..4d38bc2 100644
--- a/hw/vexpress.c
+++ b/hw/vexpress.c
@@ -26,10 +26,10 @@
 #include "primecell.h"
 #include "devices.h"
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "exec/exec-memory.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "flash.h"
 
 #define VEXPRESS_BOARD_ID 0x8e0
diff --git a/hw/vfio_pci.c b/hw/vfio_pci.c
index 0aed099..ad30e07 100644
--- a/hw/vfio_pci.c
+++ b/hw/vfio_pci.c
@@ -29,8 +29,8 @@
 #include "config.h"
 #include "qemu/event_notifier.h"
 #include "exec/exec-memory.h"
-#include "kvm.h"
-#include "memory.h"
+#include "sysemu/kvm.h"
+#include "sysemu/memory.h"
 #include "msi.h"
 #include "msix.h"
 #include "pci.h"
diff --git a/hw/vga_int.h b/hw/vga_int.h
index 5efaee8..19319fc 100644
--- a/hw/vga_int.h
+++ b/hw/vga_int.h
@@ -26,7 +26,7 @@
 
 #include <hw/hw.h>
 #include "qapi/error.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define ST01_V_RETRACE      0x08
 #define ST01_DISP_ENABLE    0x01
diff --git a/hw/vhost.h b/hw/vhost.h
index 0c47229..8d4b1e0 100644
--- a/hw/vhost.h
+++ b/hw/vhost.h
@@ -3,7 +3,7 @@
 
 #include "hw/hw.h"
 #include "hw/virtio.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /* Generic structures common for any vhost based device. */
 struct vhost_virtqueue {
diff --git a/hw/virtex_ml507.c b/hw/virtex_ml507.c
index 0234fe0..aa8cba6 100644
--- a/hw/virtex_ml507.c
+++ b/hw/virtex_ml507.c
@@ -26,10 +26,10 @@
 #include "hw.h"
 #include "serial.h"
 #include "flash.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "devices.h"
 #include "boards.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 #include "loader.h"
 #include "elf.h"
 #include "qemu/log.h"
@@ -39,7 +39,7 @@
 #include "ppc4xx.h"
 #include "ppc405.h"
 
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "xilinx.h"
 
 #define EPAPR_MAGIC    (0x45504150)
diff --git a/hw/virtio-balloon.c b/hw/virtio-balloon.c
index f77bd58..840be0f 100644
--- a/hw/virtio-balloon.c
+++ b/hw/virtio-balloon.c
@@ -18,9 +18,9 @@
 #include "virtio.h"
 #include "pc.h"
 #include "cpu.h"
-#include "balloon.h"
+#include "sysemu/balloon.h"
 #include "virtio-balloon.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "exec/exec-memory.h"
 
 #if defined(__linux__)
diff --git a/hw/virtio-blk.c b/hw/virtio-blk.c
index 208caa2..90cfa24 100644
--- a/hw/virtio-blk.c
+++ b/hw/virtio-blk.c
@@ -15,7 +15,7 @@
 #include "qemu/error-report.h"
 #include "trace.h"
 #include "hw/block-common.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "virtio-blk.h"
 #include "scsi-defs.h"
 #ifdef __linux__
diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c
index 44cbbe3..8f57c05 100644
--- a/hw/virtio-pci.c
+++ b/hw/virtio-pci.c
@@ -27,8 +27,8 @@
 #include "msi.h"
 #include "msix.h"
 #include "loader.h"
-#include "kvm.h"
-#include "blockdev.h"
+#include "sysemu/kvm.h"
+#include "sysemu/blockdev.h"
 #include "virtio-pci.h"
 #include "qemu/range.h"
 
diff --git a/hw/virtio.h b/hw/virtio.h
index 511a169..5416004 100644
--- a/hw/virtio.h
+++ b/hw/virtio.h
@@ -17,7 +17,7 @@
 #include "hw.h"
 #include "net/net.h"
 #include "qdev.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/event_notifier.h"
 #ifdef CONFIG_LINUX
 #include "9p.h"
diff --git a/hw/vmport.c b/hw/vmport.c
index 3ab3a14..7d42523 100644
--- a/hw/vmport.c
+++ b/hw/vmport.c
@@ -24,7 +24,7 @@
 #include "hw.h"
 #include "isa.h"
 #include "pc.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qdev.h"
 
 //#define VMPORT_DEBUG
diff --git a/hw/vt82c686.c b/hw/vt82c686.c
index dbcda42..7fcf684 100644
--- a/hw/vt82c686.c
+++ b/hw/vt82c686.c
@@ -22,7 +22,7 @@
 #include "apm.h"
 #include "acpi.h"
 #include "pm_smbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 
 typedef uint32_t pci_addr_t;
diff --git a/hw/watchdog.c b/hw/watchdog.c
index 5153b8f..a2c0d55 100644
--- a/hw/watchdog.c
+++ b/hw/watchdog.c
@@ -25,7 +25,7 @@
 #include "qemu/queue.h"
 #include "qapi/qmp/types.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw/watchdog.h"
 
 /* Possible values for action parameter. */
diff --git a/hw/xen_backend.h b/hw/xen_backend.h
index 92ab501..f37afb1 100644
--- a/hw/xen_backend.h
+++ b/hw/xen_backend.h
@@ -2,7 +2,7 @@
 #define QEMU_HW_XEN_BACKEND_H 1
 
 #include "xen_common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "net/net.h"
 
 /* ------------------------------------------------------------- */
diff --git a/hw/xen_devconfig.c b/hw/xen_devconfig.c
index d83e8d0..e2ba741 100644
--- a/hw/xen_devconfig.c
+++ b/hw/xen_devconfig.c
@@ -1,5 +1,5 @@
 #include "xen_backend.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 /* ------------------------------------------------------------- */
 
diff --git a/hw/xen_disk.c b/hw/xen_disk.c
index 423b580..a6a64a2 100644
--- a/hw/xen_disk.c
+++ b/hw/xen_disk.c
@@ -38,7 +38,7 @@
 #include "hw.h"
 #include "xen_backend.h"
 #include "xen_blkif.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 /* ------------------------------------------------------------- */
 
diff --git a/hw/xen_machine_pv.c b/hw/xen_machine_pv.c
index 4264703..9feecd5 100644
--- a/hw/xen_machine_pv.c
+++ b/hw/xen_machine_pv.c
@@ -27,7 +27,7 @@
 #include "boards.h"
 #include "xen_backend.h"
 #include "xen_domainbuild.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 
 static void xen_init_pv(QEMUMachineInitArgs *args)
 {
diff --git a/hw/xilinx_spi.c b/hw/xilinx_spi.c
index 4eed182..77f9178 100644
--- a/hw/xilinx_spi.c
+++ b/hw/xilinx_spi.c
@@ -25,7 +25,7 @@
  */
 
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/log.h"
 #include "fifo.h"
 
diff --git a/hw/xilinx_spips.c b/hw/xilinx_spips.c
index ebe375e..42e019d 100644
--- a/hw/xilinx_spips.c
+++ b/hw/xilinx_spips.c
@@ -23,7 +23,7 @@
  */
 
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "ptimer.h"
 #include "qemu/log.h"
 #include "fifo.h"
diff --git a/hw/xilinx_zynq.c b/hw/xilinx_zynq.c
index 3b64cd0..3cbbcba 100644
--- a/hw/xilinx_zynq.c
+++ b/hw/xilinx_zynq.c
@@ -19,10 +19,10 @@
 #include "arm-misc.h"
 #include "net/net.h"
 #include "exec/exec-memory.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "loader.h"
 #include "ssi.h"
 
diff --git a/hw/xtensa_lx60.c b/hw/xtensa_lx60.c
index 5e95a95..09ab27f 100644
--- a/hw/xtensa_lx60.c
+++ b/hw/xtensa_lx60.c
@@ -25,17 +25,17 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "loader.h"
 #include "elf.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 #include "serial.h"
 #include "net/net.h"
 #include "sysbus.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qemu-char.h"
 #include "xtensa_bootparam.h"
 
diff --git a/hw/xtensa_sim.c b/hw/xtensa_sim.c
index 7641a54..25d4936 100644
--- a/hw/xtensa_sim.c
+++ b/hw/xtensa_sim.c
@@ -25,11 +25,11 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "boards.h"
 #include "loader.h"
 #include "elf.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 
 static uint64_t translate_phys_addr(void *env, uint64_t addr)
diff --git a/hw/z2.c b/hw/z2.c
index 316922e..6c90562 100644
--- a/hw/z2.c
+++ b/hw/z2.c
@@ -18,9 +18,9 @@
 #include "i2c.h"
 #include "ssi.h"
 #include "boards.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "flash.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "ui/console.h"
 #include "audio/audio.h"
 #include "exec/exec-memory.h"
diff --git a/hw/zynq_slcr.c b/hw/zynq_slcr.c
index c7ce51f..97ec578 100644
--- a/hw/zynq_slcr.c
+++ b/hw/zynq_slcr.c
@@ -17,7 +17,7 @@
 #include "hw.h"
 #include "qemu/timer.h"
 #include "sysbus.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #ifdef ZYNQ_ARM_SLCR_ERR_DEBUG
 #define DB_PRINT(...) do { \
diff --git a/include/exec/exec-memory.h b/include/exec/exec-memory.h
index ac1d07d..35668e9 100644
--- a/include/exec/exec-memory.h
+++ b/include/exec/exec-memory.h
@@ -19,7 +19,7 @@
  * you're one of them.
  */
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #ifndef CONFIG_USER_ONLY
 
diff --git a/include/exec/softmmu_template.h b/include/exec/softmmu_template.h
index 72ae9d6..1974e5d 100644
--- a/include/exec/softmmu_template.h
+++ b/include/exec/softmmu_template.h
@@ -22,7 +22,7 @@
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 #include "qemu/timer.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 #define DATA_SIZE (1 << SHIFT)
 
diff --git a/arch_init.h b/include/sysemu/arch_init.h
similarity index 100%
rename from arch_init.h
rename to include/sysemu/arch_init.h
diff --git a/balloon.h b/include/sysemu/balloon.h
similarity index 100%
rename from balloon.h
rename to include/sysemu/balloon.h
diff --git a/blockdev.h b/include/sysemu/blockdev.h
similarity index 100%
rename from blockdev.h
rename to include/sysemu/blockdev.h
diff --git a/cpus.h b/include/sysemu/cpus.h
similarity index 100%
rename from cpus.h
rename to include/sysemu/cpus.h
diff --git a/cputlb.h b/include/sysemu/cputlb.h
similarity index 100%
rename from cputlb.h
rename to include/sysemu/cputlb.h
diff --git a/device_tree.h b/include/sysemu/device_tree.h
similarity index 100%
rename from device_tree.h
rename to include/sysemu/device_tree.h
diff --git a/dma.h b/include/sysemu/dma.h
similarity index 99%
rename from dma.h
rename to include/sysemu/dma.h
index 4028036..5d3f5e5 100644
--- a/dma.h
+++ b/include/sysemu/dma.h
@@ -11,10 +11,10 @@
 #define DMA_H
 
 #include <stdio.h>
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "hw/hw.h"
 #include "block/block.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 typedef struct DMAContext DMAContext;
 typedef struct ScatterGatherEntry ScatterGatherEntry;
diff --git a/dump.h b/include/sysemu/dump.h
similarity index 100%
rename from dump.h
rename to include/sysemu/dump.h
diff --git a/ioport.h b/include/sysemu/ioport.h
similarity index 98%
rename from ioport.h
rename to include/sysemu/ioport.h
index 23441cb..4adf3e0 100644
--- a/ioport.h
+++ b/include/sysemu/ioport.h
@@ -25,7 +25,7 @@
 #define IOPORT_H
 
 #include "qemu-common.h"
-#include "iorange.h"
+#include "sysemu/iorange.h"
 
 typedef uint32_t pio_addr_t;
 #define FMT_pioaddr     PRIx32
diff --git a/iorange.h b/include/sysemu/iorange.h
similarity index 100%
rename from iorange.h
rename to include/sysemu/iorange.h
diff --git a/kvm.h b/include/sysemu/kvm.h
similarity index 100%
rename from kvm.h
rename to include/sysemu/kvm.h
diff --git a/memory-internal.h b/include/sysemu/memory-internal.h
similarity index 100%
rename from memory-internal.h
rename to include/sysemu/memory-internal.h
diff --git a/memory.h b/include/sysemu/memory.h
similarity index 99%
rename from memory.h
rename to include/sysemu/memory.h
index 89bbd8f..656e7a8 100644
--- a/memory.h
+++ b/include/sysemu/memory.h
@@ -22,8 +22,8 @@
 #include "exec/cpu-common.h"
 #include "exec/hwaddr.h"
 #include "qemu/queue.h"
-#include "iorange.h"
-#include "ioport.h"
+#include "sysemu/iorange.h"
+#include "sysemu/ioport.h"
 #include "qemu/int128.h"
 
 typedef struct MemoryRegionOps MemoryRegionOps;
diff --git a/memory_mapping.h b/include/sysemu/memory_mapping.h
similarity index 100%
rename from memory_mapping.h
rename to include/sysemu/memory_mapping.h
diff --git a/qemu-os-posix.h b/include/sysemu/os-posix.h
similarity index 100%
rename from qemu-os-posix.h
rename to include/sysemu/os-posix.h
diff --git a/qemu-os-win32.h b/include/sysemu/os-win32.h
similarity index 100%
rename from qemu-os-win32.h
rename to include/sysemu/os-win32.h
diff --git a/qtest.h b/include/sysemu/qtest.h
similarity index 100%
rename from qtest.h
rename to include/sysemu/qtest.h
diff --git a/qemu-seccomp.h b/include/sysemu/seccomp.h
similarity index 100%
rename from qemu-seccomp.h
rename to include/sysemu/seccomp.h
diff --git a/sysemu.h b/include/sysemu/sysemu.h
similarity index 100%
rename from sysemu.h
rename to include/sysemu/sysemu.h
diff --git a/xen-mapcache.h b/include/sysemu/xen-mapcache.h
similarity index 100%
rename from xen-mapcache.h
rename to include/sysemu/xen-mapcache.h
diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h
index a0d1a50..8b192e9 100644
--- a/include/ui/spice-display.h
+++ b/include/ui/spice-display.h
@@ -21,7 +21,7 @@
 
 #include "qemu/thread.h"
 #include "ui/qemu-pixman.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define NUM_MEMSLOTS 8
 #define MEMSLOT_GENERATION_BITS 8
diff --git a/ioport.c b/ioport.c
index 6e4ca0d..2c7ea83 100644
--- a/ioport.c
+++ b/ioport.c
@@ -25,9 +25,9 @@
  * splitted out ioport related stuffs from vl.c.
  */
 
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "trace.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 
 /***********************************************************/
 /* IO Port */
diff --git a/kvm-all.c b/kvm-all.c
index 8863e10..db6669a 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -24,13 +24,13 @@
 #include "qemu/atomic.h"
 #include "qemu/option.h"
 #include "qemu/config-file.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "hw/hw.h"
 #include "hw/msi.h"
 #include "exec/gdbstub.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qemu/bswap.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
 #include "qemu/event_notifier.h"
 
diff --git a/kvm-stub.c b/kvm-stub.c
index 4184fb4..0fd08b8 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -15,7 +15,7 @@
 #include "hw/msi.h"
 #include "cpu.h"
 #include "exec/gdbstub.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 KVMState *kvm_state;
 bool kvm_kernel_irqchip;
diff --git a/memory.c b/memory.c
index c49e9ff..b2ae43e 100644
--- a/memory.c
+++ b/memory.c
@@ -13,14 +13,14 @@
  * GNU GPL, version 2 or (at your option) any later version.
  */
 
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "exec/exec-memory.h"
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "qemu/bitops.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include <assert.h>
 
-#include "memory-internal.h"
+#include "sysemu/memory-internal.h"
 
 static unsigned memory_region_transaction_depth;
 static bool memory_region_update_pending;
diff --git a/memory_mapping-stub.c b/memory_mapping-stub.c
index 5f5fb99..24d5d67 100644
--- a/memory_mapping-stub.c
+++ b/memory_mapping-stub.c
@@ -13,7 +13,7 @@
 
 #include "cpu.h"
 #include "exec/cpu-all.h"
-#include "memory_mapping.h"
+#include "sysemu/memory_mapping.h"
 
 int qemu_get_guest_memory_mapping(MemoryMappingList *list)
 {
diff --git a/memory_mapping.c b/memory_mapping.c
index c829a9f..530f1d6 100644
--- a/memory_mapping.c
+++ b/memory_mapping.c
@@ -13,7 +13,7 @@
 
 #include "cpu.h"
 #include "exec/cpu-all.h"
-#include "memory_mapping.h"
+#include "sysemu/memory_mapping.h"
 
 static void memory_mapping_list_add_mapping_sorted(MemoryMappingList *list,
                                                    MemoryMapping *mapping)
diff --git a/migration.c b/migration.c
index 8c5c567..810f25e 100644
--- a/migration.c
+++ b/migration.c
@@ -17,7 +17,7 @@
 #include "migration/migration.h"
 #include "monitor/monitor.h"
 #include "buffered_file.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "block/block.h"
 #include "qemu/sockets.h"
 #include "migration/block.h"
diff --git a/monitor.c b/monitor.c
index 354daab..cc82948 100644
--- a/monitor.c
+++ b/monitor.c
@@ -35,17 +35,17 @@
 #include "net/slirp.h"
 #include "qemu-char.h"
 #include "ui/qemu-spice.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #include "monitor/readline.h"
 #include "ui/console.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "audio/audio.h"
 #include "disas/disas.h"
-#include "balloon.h"
+#include "sysemu/balloon.h"
 #include "qemu/timer.h"
 #include "migration/migration.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qemu/acl.h"
 #include "qapi/qmp/qint.h"
 #include "qapi/qmp/qfloat.h"
@@ -63,7 +63,7 @@
 #include "trace/simple.h"
 #endif
 #include "ui/qemu-spice.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "qmp-commands.h"
 #include "hmp.h"
 #include "qemu/thread.h"
diff --git a/net/tap-bsd.c b/net/tap-bsd.c
index b48182f..01c705b 100644
--- a/net/tap-bsd.c
+++ b/net/tap-bsd.c
@@ -24,7 +24,7 @@
 
 #include "tap_int.h"
 #include "qemu-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/error-report.h"
 
 #ifdef __NetBSD__
diff --git a/net/tap-linux.c b/net/tap-linux.c
index f6b3341..21498ab 100644
--- a/net/tap-linux.c
+++ b/net/tap-linux.c
@@ -30,7 +30,7 @@
 #include <net/if.h>
 #include <sys/ioctl.h>
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-common.h"
 #include "qemu/error-report.h"
 
diff --git a/net/tap-solaris.c b/net/tap-solaris.c
index 3d5fee5..486a7ea 100644
--- a/net/tap-solaris.c
+++ b/net/tap-solaris.c
@@ -23,7 +23,7 @@
  */
 
 #include "tap_int.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include <sys/stat.h>
 #include <sys/ethernet.h>
diff --git a/net/tap-win32.c b/net/tap-win32.c
index f6a80f4..356df98 100644
--- a/net/tap-win32.c
+++ b/net/tap-win32.c
@@ -31,7 +31,7 @@
 #include "qemu-common.h"
 #include "clients.h"            /* net_init_tap */
 #include "net/net.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/error-report.h"
 #include <stdio.h>
 #include <windows.h>
diff --git a/net/tap.c b/net/tap.c
index d34ff13..eb40c42 100644
--- a/net/tap.c
+++ b/net/tap.c
@@ -36,7 +36,7 @@
 #include "net/net.h"
 #include "clients.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-common.h"
 #include "qemu/error-report.h"
 
diff --git a/os-posix.c b/os-posix.c
index 488e480..5c64518 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -36,7 +36,7 @@
 
 /* Needed early for CONFIG_BSD etc. */
 #include "config-host.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "net/slirp.h"
 #include "qemu-options.h"
 
diff --git a/os-win32.c b/os-win32.c
index 13892ba..9673a81 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -30,7 +30,7 @@
 #include <errno.h>
 #include <sys/time.h>
 #include "config-host.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu-options.h"
 
 /***********************************************************/
diff --git a/oslib-posix.c b/oslib-posix.c
index a737d6e..4f5ec67 100644
--- a/oslib-posix.c
+++ b/oslib-posix.c
@@ -49,7 +49,7 @@ extern int daemon(int, int);
 #endif
 
 #include "config-host.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 #include "qemu/sockets.h"
 
diff --git a/oslib-win32.c b/oslib-win32.c
index 7f0dd07..e7e283e 100644
--- a/oslib-win32.c
+++ b/oslib-win32.c
@@ -27,7 +27,7 @@
  */
 #include <windows.h>
 #include "config-host.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/main-loop.h"
 #include "trace.h"
 #include "qemu/sockets.h"
diff --git a/qemu-char.c b/qemu-char.c
index 5a8d8f7..0cbe853 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -24,7 +24,7 @@
 #include "qemu-common.h"
 #include "monitor/monitor.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 #include "qemu-char.h"
 #include "hw/usb.h"
diff --git a/qemu-common.h b/qemu-common.h
index 40cd198..6871cab 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -43,11 +43,11 @@
 #include <glib.h>
 
 #ifdef _WIN32
-#include "qemu-os-win32.h"
+#include "sysemu/os-win32.h"
 #endif
 
 #ifdef CONFIG_POSIX
-#include "qemu-os-posix.h"
+#include "sysemu/os-posix.h"
 #endif
 
 #ifndef O_LARGEFILE
diff --git a/qemu-img.c b/qemu-img.c
index 9d745d7..58a7235 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -28,7 +28,7 @@
 #include "qemu/option.h"
 #include "qemu/error-report.h"
 #include "qemu/osdep.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "block/block_int.h"
 #include <getopt.h>
 #include <stdio.h>
diff --git a/qemu-progress.c b/qemu-progress.c
index 08d6794..9a3f96c 100644
--- a/qemu-progress.c
+++ b/qemu-progress.c
@@ -24,7 +24,7 @@
 
 #include "qemu-common.h"
 #include "qemu/osdep.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include <stdio.h>
 
 struct progress_state {
diff --git a/qemu-seccomp.c b/qemu-seccomp.c
index 2a71d6f..031da1d 100644
--- a/qemu-seccomp.c
+++ b/qemu-seccomp.c
@@ -14,7 +14,7 @@
  */
 #include <stdio.h>
 #include <seccomp.h>
-#include "qemu-seccomp.h"
+#include "sysemu/seccomp.h"
 
 struct QemuSeccompSyscall {
     int32_t num;
diff --git a/qemu-timer.c b/qemu-timer.c
index 80b3f2e..8fb5c75 100644
--- a/qemu-timer.c
+++ b/qemu-timer.c
@@ -22,7 +22,7 @@
  * THE SOFTWARE.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #include "ui/console.h"
 
diff --git a/qemu-tool.c b/qemu-tool.c
index 8ac45ff..1a474c4 100644
--- a/qemu-tool.c
+++ b/qemu-tool.c
@@ -19,7 +19,7 @@
 #include "qemu/log.h"
 #include "migration/migration.h"
 #include "qemu/main-loop.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/sockets.h"
 #include "slirp/libslirp.h"
 
diff --git a/qmp.c b/qmp.c
index 5b3a5d7..be63fe1 100644
--- a/qmp.c
+++ b/qmp.c
@@ -14,15 +14,15 @@
  */
 
 #include "qemu-common.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qmp-commands.h"
 #include "qemu-char.h"
 #include "ui/qemu-spice.h"
 #include "ui/vnc.h"
-#include "kvm.h"
-#include "arch_init.h"
+#include "sysemu/kvm.h"
+#include "sysemu/arch_init.h"
 #include "hw/qdev.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qom/qom-qobject.h"
 
 NameInfo *qmp_query_name(Error **errp)
diff --git a/qtest.c b/qtest.c
index fbfab4e..65edf07 100644
--- a/qtest.c
+++ b/qtest.c
@@ -11,14 +11,14 @@
  *
  */
 
-#include "qtest.h"
+#include "sysemu/qtest.h"
 #include "hw/qdev.h"
 #include "qemu-char.h"
-#include "ioport.h"
-#include "memory.h"
+#include "sysemu/ioport.h"
+#include "sysemu/memory.h"
 #include "hw/irq.h"
-#include "sysemu.h"
-#include "cpus.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/cpus.h"
 
 #define MAX_IRQ 256
 
diff --git a/savevm.c b/savevm.c
index 8c6721b..2aa78ad 100644
--- a/savevm.c
+++ b/savevm.c
@@ -74,15 +74,15 @@
 #include "hw/qdev.h"
 #include "net/net.h"
 #include "monitor/monitor.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 #include "audio/audio.h"
 #include "migration/migration.h"
 #include "qemu/sockets.h"
 #include "qemu/queue.h"
 #include "qemu/timer.h"
-#include "cpus.h"
-#include "memory.h"
+#include "sysemu/cpus.h"
+#include "sysemu/memory.h"
 #include "qmp-commands.h"
 #include "trace.h"
 #include "qemu/bitops.h"
diff --git a/stubs/arch-query-cpu-def.c b/stubs/arch-query-cpu-def.c
index 6eca852..fa67895 100644
--- a/stubs/arch-query-cpu-def.c
+++ b/stubs/arch-query-cpu-def.c
@@ -1,5 +1,5 @@
 #include "qemu-common.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 #include "qapi/qmp/qerror.h"
 
 CpuDefinitionInfoList *arch_query_cpu_definitions(Error **errp)
diff --git a/target-alpha/sys_helper.c b/target-alpha/sys_helper.c
index 2bc2b02..434a63a 100644
--- a/target-alpha/sys_helper.c
+++ b/target-alpha/sys_helper.c
@@ -19,7 +19,7 @@
 
 #include "cpu.h"
 #include "helper.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/timer.h"
 
 
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index b00f5fa..17875ed 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -23,7 +23,7 @@
 #if !defined(CONFIG_USER_ONLY)
 #include "hw/loader.h"
 #endif
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 static void cp_reg_reset(gpointer key, gpointer value, gpointer opaque)
 {
diff --git a/target-arm/helper.c b/target-arm/helper.c
index eef2acd..e343fac 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -2,7 +2,7 @@
 #include "exec/gdbstub.h"
 #include "helper.h"
 #include "qemu/host-utils.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/bitops.h"
 
 #ifndef CONFIG_USER_ONLY
diff --git a/target-i386/arch_dump.c b/target-i386/arch_dump.c
index 50d866f..8209ce9 100644
--- a/target-i386/arch_dump.c
+++ b/target-i386/arch_dump.c
@@ -13,7 +13,7 @@
 
 #include "cpu.h"
 #include "exec/cpu-all.h"
-#include "dump.h"
+#include "sysemu/dump.h"
 #include "elf.h"
 
 #ifdef TARGET_X86_64
diff --git a/target-i386/arch_memory_mapping.c b/target-i386/arch_memory_mapping.c
index 6dfb0f3..c6c7874 100644
--- a/target-i386/arch_memory_mapping.c
+++ b/target-i386/arch_memory_mapping.c
@@ -13,7 +13,7 @@
 
 #include "cpu.h"
 #include "exec/cpu-all.h"
-#include "memory_mapping.h"
+#include "sysemu/memory_mapping.h"
 
 /* PAE Paging or IA-32e Paging */
 static void walk_pte(MemoryMappingList *list, hwaddr pte_start_addr,
diff --git a/target-i386/cpu.c b/target-i386/cpu.c
index b0b707d..da83228 100644
--- a/target-i386/cpu.c
+++ b/target-i386/cpu.c
@@ -22,14 +22,14 @@
 #include <inttypes.h>
 
 #include "cpu.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #include "qemu/option.h"
 #include "qemu/config-file.h"
 #include "qapi/qmp/qerror.h"
 
 #include "qapi/visitor.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 
 #include "hyperv.h"
 
@@ -38,7 +38,7 @@
 #include <linux/kvm_para.h>
 #endif
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #ifndef CONFIG_USER_ONLY
 #include "hw/xen.h"
 #include "hw/sysbus.h"
diff --git a/target-i386/excp_helper.c b/target-i386/excp_helper.c
index 64c8346..179ea82 100644
--- a/target-i386/excp_helper.c
+++ b/target-i386/excp_helper.c
@@ -19,7 +19,7 @@
 
 #include "cpu.h"
 #include "qemu/log.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "helper.h"
 
 #if 0
diff --git a/target-i386/helper.c b/target-i386/helper.c
index 363f591..d20a07e 100644
--- a/target-i386/helper.c
+++ b/target-i386/helper.c
@@ -18,9 +18,9 @@
  */
 
 #include "cpu.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #ifndef CONFIG_USER_ONLY
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #endif
 
diff --git a/target-i386/ioport-user.c b/target-i386/ioport-user.c
index 03fac22..8762d9f 100644
--- a/target-i386/ioport-user.c
+++ b/target-i386/ioport-user.c
@@ -21,7 +21,7 @@
 
 #include "qemu.h"
 #include "qemu-common.h"
-#include "ioport.h"
+#include "sysemu/ioport.h"
 
 void cpu_outb(pio_addr_t addr, uint8_t val)
 {
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 8e50493..5989234 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -21,8 +21,8 @@
 #include <linux/kvm_para.h>
 
 #include "qemu-common.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "kvm_i386.h"
 #include "cpu.h"
 #include "exec/gdbstub.h"
@@ -30,7 +30,7 @@
 #include "qemu/config-file.h"
 #include "hw/pc.h"
 #include "hw/apic.h"
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "hyperv.h"
 #include "hw/pci.h"
 
diff --git a/target-i386/kvm_i386.h b/target-i386/kvm_i386.h
index f6ab82f..4392ab4 100644
--- a/target-i386/kvm_i386.h
+++ b/target-i386/kvm_i386.h
@@ -11,7 +11,7 @@
 #ifndef QEMU_KVM_I386_H
 #define QEMU_KVM_I386_H
 
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 bool kvm_allows_irq0_override(void);
 
diff --git a/target-i386/machine.c b/target-i386/machine.c
index 4771508..8c1fed1 100644
--- a/target-i386/machine.c
+++ b/target-i386/machine.c
@@ -4,7 +4,7 @@
 #include "hw/isa.h"
 
 #include "cpu.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 static const VMStateDescription vmstate_segment = {
     .name = "segment",
diff --git a/target-i386/misc_helper.c b/target-i386/misc_helper.c
index 3aac1e5..5779d1f 100644
--- a/target-i386/misc_helper.c
+++ b/target-i386/misc_helper.c
@@ -18,7 +18,7 @@
  */
 
 #include "cpu.h"
-#include "ioport.h"
+#include "sysemu/ioport.h"
 #include "helper.h"
 
 #if !defined(CONFIG_USER_ONLY)
diff --git a/target-m68k/m68k-semi.c b/target-m68k/m68k-semi.c
index e6c7dd2..239fadb 100644
--- a/target-m68k/m68k-semi.c
+++ b/target-m68k/m68k-semi.c
@@ -36,7 +36,7 @@
 #include "exec/gdbstub.h"
 #include "exec/softmmu-semi.h"
 #endif
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define HOSTED_EXIT  0
 #define HOSTED_INIT_SIM 1
diff --git a/target-ppc/helper.c b/target-ppc/helper.c
index 48b19a7..103855a 100644
--- a/target-ppc/helper.c
+++ b/target-ppc/helper.c
@@ -19,9 +19,9 @@
 
 #include "cpu.h"
 #include "helper_regs.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
-#include "cpus.h"
+#include "sysemu/cpus.h"
 
 PowerPCCPU *cpu_ppc_init(const char *cpu_model)
 {
diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index 2546c57..88650d4 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -24,12 +24,12 @@
 
 #include "qemu-common.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 #include "cpu.h"
-#include "cpus.h"
-#include "device_tree.h"
+#include "sysemu/cpus.h"
+#include "sysemu/device_tree.h"
 #include "hw/sysbus.h"
 #include "hw/spapr.h"
 
diff --git a/target-ppc/kvm_ppc.c b/target-ppc/kvm_ppc.c
index 2de59fd..1b192a8 100644
--- a/target-ppc/kvm_ppc.c
+++ b/target-ppc/kvm_ppc.c
@@ -14,7 +14,7 @@
 #include "qemu-common.h"
 #include "qemu/timer.h"
 #include "kvm_ppc.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 #define PROC_DEVTREE_PATH "/proc/device-tree"
 
diff --git a/target-ppc/kvm_ppc.h b/target-ppc/kvm_ppc.h
index baad6eb..40271e4 100644
--- a/target-ppc/kvm_ppc.h
+++ b/target-ppc/kvm_ppc.h
@@ -9,7 +9,7 @@
 #ifndef __KVM_PPC_H__
 #define __KVM_PPC_H__
 
-#include "memory.h"
+#include "sysemu/memory.h"
 
 void kvmppc_init(void);
 
diff --git a/target-ppc/machine.c b/target-ppc/machine.c
index 5e7bc00..e014c0c 100644
--- a/target-ppc/machine.c
+++ b/target-ppc/machine.c
@@ -1,6 +1,6 @@
 #include "hw/hw.h"
 #include "hw/boards.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 void cpu_save(QEMUFile *f, void *opaque)
 {
diff --git a/target-ppc/mmu_helper.c b/target-ppc/mmu_helper.c
index 318ce92..0aee7a9 100644
--- a/target-ppc/mmu_helper.c
+++ b/target-ppc/mmu_helper.c
@@ -18,7 +18,7 @@
  */
 #include "cpu.h"
 #include "helper.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "kvm_ppc.h"
 
 //#define DEBUG_MMU
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index cca63ab..42ed748 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -25,9 +25,9 @@
 
 #include "disas/bfd.h"
 #include "exec/gdbstub.h"
-#include <kvm.h>
+#include <sysemu/kvm.h>
 #include "kvm_ppc.h"
-#include "arch_init.h"
+#include "sysemu/arch_init.h"
 
 //#define PPC_DUMP_CPU
 //#define PPC_DEBUG_SPR
diff --git a/target-s390x/helper.c b/target-s390x/helper.c
index 8e13545..42e06eb 100644
--- a/target-s390x/helper.c
+++ b/target-s390x/helper.c
@@ -22,7 +22,7 @@
 #include "exec/gdbstub.h"
 #include "qemu/timer.h"
 #ifndef CONFIG_USER_ONLY
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #endif
 
 //#define DEBUG_S390
diff --git a/target-s390x/interrupt.c b/target-s390x/interrupt.c
index c1b034f..6c0024b 100644
--- a/target-s390x/interrupt.c
+++ b/target-s390x/interrupt.c
@@ -8,7 +8,7 @@
  */
 
 #include "cpu.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 
 #if !defined(CONFIG_USER_ONLY)
 /* service interrupts are floating therefore we must not pass an cpustate */
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index dc70699..762231d 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -26,10 +26,10 @@
 
 #include "qemu-common.h"
 #include "qemu/timer.h"
-#include "sysemu.h"
-#include "kvm.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
 #include "cpu.h"
-#include "device_tree.h"
+#include "sysemu/device_tree.h"
 
 /* #define DEBUG_KVM */
 
diff --git a/target-s390x/misc_helper.c b/target-s390x/misc_helper.c
index de5592c..d98e921 100644
--- a/target-s390x/misc_helper.c
+++ b/target-s390x/misc_helper.c
@@ -19,11 +19,11 @@
  */
 
 #include "cpu.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "qemu/host-utils.h"
 #include "helper.h"
 #include <string.h>
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qemu/timer.h"
 #ifdef CONFIG_KVM
 #include <linux/kvm.h>
@@ -31,7 +31,7 @@
 
 #if !defined(CONFIG_USER_ONLY)
 #include "exec/softmmu_exec.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #endif
 
 /* #define DEBUG_HELPER */
diff --git a/target-sparc/helper.c b/target-sparc/helper.c
index 7fe073e..c3c09e6 100644
--- a/target-sparc/helper.c
+++ b/target-sparc/helper.c
@@ -20,7 +20,7 @@
 #include "cpu.h"
 #include "qemu/host-utils.h"
 #include "helper.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 void helper_raise_exception(CPUSPARCState *env, int tt)
 {
diff --git a/target-sparc/int32_helper.c b/target-sparc/int32_helper.c
index 507c355..c35f522 100644
--- a/target-sparc/int32_helper.c
+++ b/target-sparc/int32_helper.c
@@ -19,7 +19,7 @@
 
 #include "cpu.h"
 #include "trace.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define DEBUG_PCALL
 
diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
index ce8d0c2..13f37dc 100644
--- a/target-xtensa/translate.c
+++ b/target-xtensa/translate.c
@@ -35,7 +35,7 @@
 #include "disas/disas.h"
 #include "tcg-op.h"
 #include "qemu/log.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "helper.h"
 #define GEN_HELPER 1
diff --git a/ui/cocoa.m b/ui/cocoa.m
index 0afa6f8..3bf1c6e 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -27,7 +27,7 @@
 
 #include "qemu-common.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #ifndef MAC_OS_X_VERSION_10_4
 #define MAC_OS_X_VERSION_10_4 1040
diff --git a/ui/curses.c b/ui/curses.c
index 71c6581..29e8818 100644
--- a/ui/curses.c
+++ b/ui/curses.c
@@ -34,7 +34,7 @@
 
 #include "qemu-common.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #define FONT_HEIGHT 16
 #define FONT_WIDTH 8
diff --git a/ui/input.c b/ui/input.c
index 05f6c0c..259fd18 100644
--- a/ui/input.c
+++ b/ui/input.c
@@ -22,7 +22,7 @@
  * THE SOFTWARE.
  */
 
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "monitor/monitor.h"
 #include "ui/console.h"
 #include "qapi/error.h"
diff --git a/ui/keymaps.c b/ui/keymaps.c
index f55a2aa..9625d82 100644
--- a/ui/keymaps.c
+++ b/ui/keymaps.c
@@ -23,7 +23,7 @@
  */
 
 #include "keymaps.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 static int get_keysym(const name2keysym_t *table,
 		      const char *name)
diff --git a/ui/sdl.c b/ui/sdl.c
index bcbf89d..1657848 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
@@ -30,7 +30,7 @@
 
 #include "qemu-common.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "x_keymap.h"
 #include "sdl_zoom.h"
 
diff --git a/ui/spice-core.c b/ui/spice-core.c
index 8727bf4..5fe3e0e 100644
--- a/ui/spice-core.c
+++ b/ui/spice-core.c
@@ -19,7 +19,7 @@
 #include <spice-experimental.h>
 
 #include <netdb.h>
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 
 #include "qemu-common.h"
 #include "ui/qemu-spice.h"
diff --git a/ui/spice-display.c b/ui/spice-display.c
index a19b3d9..dc7e58d 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -21,7 +21,7 @@
 #include "qemu/queue.h"
 #include "monitor/monitor.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "trace.h"
 
 #include "ui/spice-display.h"
diff --git a/ui/vnc.c b/ui/vnc.c
index 4866436..5e0c5b1 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -26,7 +26,7 @@
 
 #include "vnc.h"
 #include "vnc-jobs.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "qemu/sockets.h"
 #include "qemu/timer.h"
 #include "qemu/acl.h"
diff --git a/vl.c b/vl.c
index 328319f..10b8dfe 100644
--- a/vl.c
+++ b/vl.c
@@ -65,7 +65,7 @@
 #endif
 
 #ifdef CONFIG_SECCOMP
-#include "qemu-seccomp.h"
+#include "sysemu/seccomp.h"
 #endif
 
 #ifdef __sun__
@@ -131,18 +131,18 @@ int main(int argc, char **argv)
 #include "net/slirp.h"
 #include "monitor/monitor.h"
 #include "ui/console.h"
-#include "sysemu.h"
+#include "sysemu/sysemu.h"
 #include "exec/gdbstub.h"
 #include "qemu/timer.h"
 #include "qemu-char.h"
 #include "qemu/cache-utils.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "hw/block-common.h"
 #include "migration/block.h"
-#include "dma.h"
+#include "sysemu/dma.h"
 #include "audio/audio.h"
 #include "migration/migration.h"
-#include "kvm.h"
+#include "sysemu/kvm.h"
 #include "qapi/qmp/qjson.h"
 #include "qemu/option.h"
 #include "qemu/config-file.h"
@@ -152,7 +152,7 @@ int main(int argc, char **argv)
 #ifdef CONFIG_VIRTFS
 #include "fsdev/qemu-fsdev.h"
 #endif
-#include "qtest.h"
+#include "sysemu/qtest.h"
 
 #include "disas/disas.h"
 
@@ -163,8 +163,8 @@ int main(int argc, char **argv)
 #include "trace.h"
 #include "trace/control.h"
 #include "qemu/queue.h"
-#include "cpus.h"
-#include "arch_init.h"
+#include "sysemu/cpus.h"
+#include "sysemu/arch_init.h"
 #include "qemu/osdep.h"
 
 #include "ui/qemu-spice.h"
diff --git a/xen-all.c b/xen-all.c
index bb758fb..3ee1f17 100644
--- a/xen-all.c
+++ b/xen-all.c
@@ -17,7 +17,7 @@
 #include "qmp-commands.h"
 
 #include "qemu/range.h"
-#include "xen-mapcache.h"
+#include "sysemu/xen-mapcache.h"
 #include "trace.h"
 #include "exec/exec-memory.h"
 
diff --git a/xen-mapcache.c b/xen-mapcache.c
index 8f4648c..dc6d1fa 100644
--- a/xen-mapcache.c
+++ b/xen-mapcache.c
@@ -13,13 +13,13 @@
 #include <sys/resource.h>
 
 #include "hw/xen_backend.h"
-#include "blockdev.h"
+#include "sysemu/blockdev.h"
 #include "qemu/bitmap.h"
 
 #include <xen/hvm/params.h>
 #include <sys/mman.h>
 
-#include "xen-mapcache.h"
+#include "sysemu/xen-mapcache.h"
 #include "trace.h"
 
 
diff --git a/xen-stub.c b/xen-stub.c
index 9214392..e78f360 100644
--- a/xen-stub.c
+++ b/xen-stub.c
@@ -10,7 +10,7 @@
 
 #include "qemu-common.h"
 #include "hw/xen.h"
-#include "memory.h"
+#include "sysemu/memory.h"
 #include "qmp-commands.h"
 
 void xenstore_store_pv_console_info(int i, CharDriverState *chr)
