]> Git Repo - qemu.git/commitdiff
MC146818 RTC: add GPIO access to output IRQ
authorEfimov Vasily <[email protected]>
Wed, 22 Jun 2016 12:24:57 +0000 (15:24 +0300)
committerPaolo Bonzini <[email protected]>
Wed, 29 Jun 2016 12:03:46 +0000 (14:03 +0200)
The MC146818 RTC device has output IRQ line. Currently the corresponding field
is only accessible through direct access. Such access violates Qemu model.

The patch makes the field accessible through GPIO. It also updates the setting
of the IRQ during initialization.

Signed-off-by: Efimov Vasily <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
hw/timer/mc146818rtc.c

index f4e333eb8fbae741c8f52434623ecb3666b32d5b..ea625f25ce1ba4692165b413aec45bacae0f10e2 100644 (file)
@@ -906,6 +906,8 @@ static void rtc_realizefn(DeviceState *dev, Error **errp)
 
     object_property_add_alias(qdev_get_machine(), "rtc-time",
                               OBJECT(s), "date", NULL);
+
+    qdev_init_gpio_out(dev, &s->irq, 1);
 }
 
 ISADevice *rtc_init(ISABus *bus, int base_year, qemu_irq intercept_irq)
@@ -920,9 +922,9 @@ ISADevice *rtc_init(ISABus *bus, int base_year, qemu_irq intercept_irq)
     qdev_prop_set_int32(dev, "base_year", base_year);
     qdev_init_nofail(dev);
     if (intercept_irq) {
-        s->irq = intercept_irq;
+        qdev_connect_gpio_out(dev, 0, intercept_irq);
     } else {
-        isa_init_irq(isadev, &s->irq, RTC_ISA_IRQ);
+        isa_connect_gpio_out(isadev, 0, RTC_ISA_IRQ);
     }
     QLIST_INSERT_HEAD(&rtc_devices, s, link);
 
This page took 0.027564 seconds and 4 git commands to generate.