Patchwork [v2,01/12] gus: QOM'ify some more

login
register
mail settings
Submitter Andreas Färber
Date June 7, 2013, 12:58 p.m.
Message ID <1370609900-21998-2-git-send-email-afaerber@suse.de>
Download mbox | patch
Permalink /patch/249706/
State New
Headers show

Comments

Andreas Färber - June 7, 2013, 12:58 p.m.
Add type constant and cast macro.

Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 hw/audio/gus.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

Patch

diff --git a/hw/audio/gus.c b/hw/audio/gus.c
index a91921c..e0aea26 100644
--- a/hw/audio/gus.c
+++ b/hw/audio/gus.c
@@ -46,6 +46,9 @@ 
 #define IO_WRITE_PROTO(name) \
     static void name (void *opaque, uint32_t nport, uint32_t val)
 
+#define TYPE_GUS "gus"
+#define GUS(obj) OBJECT_CHECK (GUSState, (obj), TYPE_GUS)
+
 typedef struct GUSState {
     ISADevice dev;
     GUSEmuState emu;
@@ -250,7 +253,7 @@  static const MemoryRegionPortio gus_portio_list2[] = {
 
 static int gus_initfn (ISADevice *dev)
 {
-    GUSState *s = DO_UPCAST (GUSState, dev, dev);
+    GUSState *s = GUS (dev);
     struct audsettings as;
 
     AUD_register_card ("gus", &s->card);
@@ -295,7 +298,7 @@  static int gus_initfn (ISADevice *dev)
 
 static int GUS_init (ISABus *bus)
 {
-    isa_create_simple (bus, "gus");
+    isa_create_simple (bus, TYPE_GUS);
     return 0;
 }
 
@@ -318,7 +321,7 @@  static void gus_class_initfn (ObjectClass *klass, void *data)
 }
 
 static const TypeInfo gus_info = {
-    .name          = "gus",
+    .name          = TYPE_GUS,
     .parent        = TYPE_ISA_DEVICE,
     .instance_size = sizeof (GUSState),
     .class_init    = gus_class_initfn,