aboutsummaryrefslogtreecommitdiff
path: root/hw/sparc
diff options
context:
space:
mode:
authorEduardo Habkost <ehabkost@redhat.com>2020-09-03 16:43:22 -0400
committerEduardo Habkost <ehabkost@redhat.com>2020-09-09 09:26:43 -0400
commitdb1015e92e04835c9eb50c29625fe566d1202dbd (patch)
tree41fbc0bf3e3f29b7ecb339224a049e3f2a7db8fa /hw/sparc
parent1c8eef0227e2942264063f22f10a06b84e0d3fa9 (diff)
downloadqemu-db1015e92e04835c9eb50c29625fe566d1202dbd.zip
qemu-db1015e92e04835c9eb50c29625fe566d1202dbd.tar.gz
qemu-db1015e92e04835c9eb50c29625fe566d1202dbd.tar.bz2
Move QOM typedefs and add missing includes
Some typedefs and macros are defined after the type check macros. This makes it difficult to automatically replace their definitions with OBJECT_DECLARE_TYPE. Patch generated using: $ ./scripts/codeconverter/converter.py -i \ --pattern=QOMStructTypedefSplit $(git grep -l '' -- '*.[ch]') which will split "typdef struct { ... } TypedefName" declarations. Followed by: $ ./scripts/codeconverter/converter.py -i --pattern=MoveSymbols \ $(git grep -l '' -- '*.[ch]') which will: - move the typedefs and #defines above the type check macros - add missing #include "qom/object.h" lines if necessary Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Message-Id: <20200831210740.126168-9-ehabkost@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Message-Id: <20200831210740.126168-10-ehabkost@redhat.com> Message-Id: <20200831210740.126168-11-ehabkost@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw/sparc')
-rw-r--r--hw/sparc/sun4m.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c
index 6bf9d27..1bc3ede 100644
--- a/hw/sparc/sun4m.c
+++ b/hw/sparc/sun4m.c
@@ -52,6 +52,7 @@
#include "hw/loader.h"
#include "elf.h"
#include "trace.h"
+#include "qom/object.h"
/*
* Sun4m architecture was used in the following machines:
@@ -581,14 +582,15 @@ static void idreg_init(hwaddr addr)
idreg_data, sizeof(idreg_data));
}
+typedef struct IDRegState IDRegState;
#define MACIO_ID_REGISTER(obj) \
OBJECT_CHECK(IDRegState, (obj), TYPE_MACIO_ID_REGISTER)
-typedef struct IDRegState {
+struct IDRegState {
SysBusDevice parent_obj;
MemoryRegion mem;
-} IDRegState;
+};
static void idreg_realize(DeviceState *ds, Error **errp)
{
@@ -623,13 +625,14 @@ static const TypeInfo idreg_info = {
};
#define TYPE_TCX_AFX "tcx_afx"
+typedef struct AFXState AFXState;
#define TCX_AFX(obj) OBJECT_CHECK(AFXState, (obj), TYPE_TCX_AFX)
-typedef struct AFXState {
+struct AFXState {
SysBusDevice parent_obj;
MemoryRegion mem;
-} AFXState;
+};
/* SS-5 TCX AFX register */
static void afx_init(hwaddr addr)
@@ -676,13 +679,14 @@ static const TypeInfo afx_info = {
};
#define TYPE_OPENPROM "openprom"
+typedef struct PROMState PROMState;
#define OPENPROM(obj) OBJECT_CHECK(PROMState, (obj), TYPE_OPENPROM)
-typedef struct PROMState {
+struct PROMState {
SysBusDevice parent_obj;
MemoryRegion prom;
-} PROMState;
+};
/* Boot PROM (OpenBIOS) */
static uint64_t translate_prom_address(void *opaque, uint64_t addr)
@@ -764,12 +768,13 @@ static const TypeInfo prom_info = {
};
#define TYPE_SUN4M_MEMORY "memory"
+typedef struct RamDevice RamDevice;
#define SUN4M_RAM(obj) OBJECT_CHECK(RamDevice, (obj), TYPE_SUN4M_MEMORY)
-typedef struct RamDevice {
+struct RamDevice {
SysBusDevice parent_obj;
HostMemoryBackend *memdev;
-} RamDevice;
+};
/* System RAM */
static void ram_realize(DeviceState *dev, Error **errp)