From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:54786) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T6lfo-0006Z4-L1 for qemu-devel@nongnu.org; Wed, 29 Aug 2012 13:03:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1T6lfk-0003OR-47 for qemu-devel@nongnu.org; Wed, 29 Aug 2012 13:03:24 -0400 Received: from mx1.redhat.com ([209.132.183.28]:53786) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T6lfj-0003OC-SA for qemu-devel@nongnu.org; Wed, 29 Aug 2012 13:03:20 -0400 From: Igor Mammedov Date: Wed, 29 Aug 2012 19:02:46 +0200 Message-Id: <1346259767-991-5-git-send-email-imammedo@redhat.com> In-Reply-To: <1346259767-991-1-git-send-email-imammedo@redhat.com> References: <1346259767-991-1-git-send-email-imammedo@redhat.com> Subject: [Qemu-devel] [PATCH 4/5] target-sparc: use notifier for signaling guest system_powerdown command List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: peter.maydell@linaro.org, qemu-devel@nongnu.org Cc: aliguori@us.ibm.com, mst@redhat.com, jan.kiszka@siemens.com, lcapitulino@redhat.com, blauwirbel@gmail.com, alex.williamson@redhat.com, kraxel@redhat.com, pbonzini@redhat.com Signed-off-by: Igor Mammedov --- hw/sun4m.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/hw/sun4m.c b/hw/sun4m.c index 0f909b5..c98cd5e 100644 --- a/hw/sun4m.c +++ b/hw/sun4m.c @@ -472,6 +472,17 @@ static void slavio_timer_init_all(target_phys_addr_t addr, qemu_irq master_irq, } } +static qemu_irq slavio_system_powerdown; + +static void slavio_powerdown_req(Notifier *n, void *opaque) +{ + qemu_irq_raise(slavio_system_powerdown); +} + +static Notifier slavio_system_powerdown_notifier = { + .notify = slavio_powerdown_req +}; + #define MISC_LEDS 0x01600000 #define MISC_CFG 0x01800000 #define MISC_DIAG 0x01a00000 @@ -514,7 +525,8 @@ static void slavio_misc_init(target_phys_addr_t base, } sysbus_connect_irq(s, 0, irq); sysbus_connect_irq(s, 1, fdc_tc); - qemu_system_powerdown = qdev_get_gpio_in(dev, 0); + slavio_system_powerdown = qdev_get_gpio_in(dev, 0); + qemu_register_powerdown_notifier(&slavio_system_powerdown_notifier); } static void ecc_init(target_phys_addr_t base, qemu_irq irq, uint32_t version) -- 1.7.11.4