global variable qemu_system_powerdown in sysemu.h is the only dep for qemu_irq and qemu_rise_irq is not a generic way to signal guest that it should shutdown.
So replace it by notifiers and allow each implementation to have it's own way to notify guest. git repo for testing: last 5 commits https://github.com/imammedo/qemu/tree/cpu_as_device.WIP compile tested: target-list=x86_64-linux-user,x86_64-softmmu,sparc-softmmu,arm-softmmu runtime tested: x86_64-softmmu + win7 guest ps: reposting because I forgot to add qemu-devel address. Igor Mammedov (5): introduce powerdown_notifiers acpi: use notifier for signaling guest system_powerdown command target-arm: use notifier for signaling guest system_powerdown command target-sparc: use notifier for signaling guest system_powerdown command cleanup unused qemu_system_powerdown hw/acpi_piix4.c | 8 +++++--- hw/nseries.c | 14 +++++++++++++- hw/sun4m.c | 14 +++++++++++++- sysemu.h | 3 +-- vl.c | 18 ++++++++++++++---- 5 files changed, 46 insertions(+), 11 deletions(-) -- 1.7.11.4