>From 0629eab1d8cff0764d135b85052dd3ba47a1a198 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini
Date: Tue, 16 Oct 2012 09:19:04 +0200 Subject: [PATCH] qidl: allow marking Object as QIDL_DECLARE Signed-off-by: Paolo Bonzini --- hw/isa.h | 8 ++++---- hw/mc146818rtc.c | 2 +- hw/qdev.h | 28 ++++++++++++++-------------- include/qemu/object.h | 11 ++++++----- qidl.h | 6 ++---- scripts/qidl.py | 2 +- 6 file modificati, 28 inserzioni(+), 29 rimozioni(-) diff --git a/hw/isa.h b/hw/isa.h index 8fb498a..6c7d815 100644 --- a/hw/isa.h +++ b/hw/isa.h @@ -31,11 +31,11 @@ struct ISABus { qemu_irq *irqs; }; -struct ISADevice { +QIDL_DECLARE(ISADevice) { DeviceState qdev; - uint32_t isairq[2]; - int nirqs; - int ioport_id; + uint32_t q_immutable isairq[2]; + int q_immutable nirqs; + int q_immutable ioport_id; }; ISABus *isa_bus_new(DeviceState *dev, MemoryRegion *address_space_io); diff --git a/hw/mc146818rtc.c b/hw/mc146818rtc.c index f5f4bb4..b29cce5 100644 --- a/hw/mc146818rtc.c +++ b/hw/mc146818rtc.c @@ -62,7 +62,7 @@ QIDL_ENABLE() typedef struct RTCState RTCState; QIDL_DECLARE(RTCState) { - ISADevice q_immutable dev; + ISADevice dev; MemoryRegion q_immutable io; uint8_t cmos_data[128]; uint8_t cmos_index; diff --git a/hw/qdev.h b/hw/qdev.h index 6f2c7f2..3dba377 100644 --- a/hw/qdev.h +++ b/hw/qdev.h @@ -57,22 +57,22 @@ typedef struct DeviceClass { /* This structure should not be accessed directly. We declare it here so that it can be embedded in individual device state structures. */ -struct DeviceState { +QIDL_DECLARE(DeviceState) { Object parent_obj; - const char *id; - enum DevState state; - QemuOpts *opts; - int hotplugged; - BusState *parent_bus; - int num_gpio_out; - qemu_irq *gpio_out; - int num_gpio_in; - qemu_irq *gpio_in; - QLIST_HEAD(, BusState) child_bus; - int num_child_bus; - int instance_id_alias; - int alias_required_for_version; + const char q_immutable *id; + enum DevState q_immutable state; + QemuOpts q_immutable *opts; + int q_immutable hotplugged; + BusState q_immutable *parent_bus; + int q_immutable num_gpio_out; + qemu_irq q_immutable *gpio_out; + int q_immutable num_gpio_in; + qemu_irq q_immutable *gpio_in; + QLIST_HEAD(, BusState) q_immutable child_bus; + int q_immutable num_child_bus; + int q_immutable instance_id_alias; + int q_immutable alias_required_for_version; }; #define TYPE_BUS "bus" diff --git a/include/qemu/object.h b/include/qemu/object.h index cc75fee..cb4a89b 100644 --- a/include/qemu/object.h +++ b/include/qemu/object.h @@ -18,6 +18,7 @@ #include