v2: This version removes the CONFIG_USER_ONLY ifdefs, and use weak symbols to move the vmstate and qemu_register_reset() handling to qdev-system.c v3 (submitted by Igor): - rebased on top of 8b4a3df (today's master) - slight code reshuffling in (see commit's changelog) "qdev: separate core from the code used only by qemu-system-*" "move qemu_irq typedef out of cpu-common.h" - commit messages cleanup v4: - Add GCC_WEAK_DECL to functions that have GCC_WEAK versions - Updated the qdev_init_gpio_in() code on qdev-system.c to current version - Patch description updates (moved changelog below "---" and/or move info about changes made by different authors between SoB lines)
git tree for testing: https://github.com/ehabkost/qemu-hacks/tree/cpu_qdev.v4 References to previous versions: v3: http://article.gmane.org/gmane.comp.emulators.qemu/175980 v2: http://article.gmane.org/gmane.comp.emulators.qemu/173909 v1: http://article.gmane.org/gmane.comp.emulators.qemu/166630 Anthony Liguori (1): qdev: split up header so it can be used in cpu.h Eduardo Habkost (8): qdev: separate core from the code used only by qemu-system-* qdev: rename qdev.c to qdev-core.c qdev-core: isolate vmstate handling into separate functions qdev: move vmstate handling to qdev-system.c qdev-core: isolate reset register/unregister code qdev: move reset register/unregister code to qdev-system.c qdev: use full qdev.h include path on qdev*.c include core qdev code into *-user, too Igor Mammedov (3): qapi-types.h doesn't really need to include qemu-common.h move qemu_irq typedef out of cpu-common.h qom: make CPU a child of DeviceState Makefile.objs | 3 + hw/Makefile.objs | 3 +- hw/arm-misc.h | 1 + hw/bt.h | 2 + hw/devices.h | 2 + hw/irq.h | 2 + hw/mc146818rtc.c | 1 + hw/omap.h | 1 + hw/qdev-addr.c | 1 + hw/qdev-core.h | 243 ++++++++ hw/qdev-monitor.h | 16 + hw/qdev-properties-system.c | 340 ++++++++++++ hw/qdev-properties.c | 1280 ------------------------------------------- hw/qdev-properties.h | 131 +++++ hw/qdev-system.c | 105 ++++ hw/qdev.c | 795 --------------------------- hw/qdev.h | 370 +------------ hw/soc_dma.h | 1 + hw/xen.h | 1 + include/qemu/cpu.h | 6 +- qemu-common.h | 1 - qom/Makefile.objs | 2 +- qom/cpu.c | 3 +- qom/qdev-core.c | 727 ++++++++++++++++++++++++ qom/qdev-properties.c | 963 ++++++++++++++++++++++++++++++++ scripts/qapi-types.py | 3 +- 26 files changed, 2554 insertions(+), 2449 deletions(-) create mode 100644 hw/qdev-core.h create mode 100644 hw/qdev-monitor.h create mode 100644 hw/qdev-properties-system.c delete mode 100644 hw/qdev-properties.c create mode 100644 hw/qdev-properties.h create mode 100644 hw/qdev-system.c delete mode 100644 hw/qdev.c create mode 100644 qom/qdev-core.c create mode 100644 qom/qdev-properties.c -- 1.7.11.7