diff options
author | Igor Mammedov <imammedo@redhat.com> | 2012-09-05 23:06:23 +0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2012-09-25 18:37:41 -0500 |
commit | c72ddb1e4734ce021c3101b6b4f8ed02439c9e21 (patch) | |
tree | aff579900ca4ed7ea6528c44d6060833c48ee2bd | |
parent | d010f91c3ab97862c1d0a6a6b6832ed388fb6cd7 (diff) |
target-arm: use notifier for signaling guest system_powerdown command
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | hw/nseries.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/hw/nseries.c b/hw/nseries.c index 4df2670327..6df71ebb48 100644 --- a/hw/nseries.c +++ b/hw/nseries.c @@ -189,6 +189,17 @@ static void n8x0_nand_setup(struct n800_s *s) /* XXX: in theory should also update the OOB for both pages */ } +static qemu_irq n8x0_system_powerdown; + +static void n8x0_powerdown_req(Notifier *n, void *opaque) +{ + qemu_irq_raise(n8x0_system_powerdown); +} + +static Notifier n8x0_system_powerdown_notifier = { + .notify = n8x0_powerdown_req +}; + static void n8x0_i2c_setup(struct n800_s *s) { DeviceState *dev; @@ -201,7 +212,8 @@ static void n8x0_i2c_setup(struct n800_s *s) qdev_get_gpio_in(s->mpu->ih[0], OMAP_INT_24XX_SYS_NIRQ)); - qemu_system_powerdown = qdev_get_gpio_in(dev, 3); + n8x0_system_powerdown = qdev_get_gpio_in(dev, 3); + qemu_register_powerdown_notifier(&n8x0_system_powerdown_notifier); /* Attach a TMP105 PM chip (A0 wired to ground) */ dev = i2c_create_slave(i2c, "tmp105", N8X0_TMP105_ADDR); |