|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 08/15] hw/mips: expand DEFINE_MACHINE for MIPS machines
Expand DEFINE_MACHINE() in hw/mips/boston.c, hw/mips/fuloong2e.c, and
hw/mips/malta.c to explicit TypeInfo and type_register_static() calls,
reusing mips_malta_register_types() in hw/mips/malta.c.
Signed-off-by: Yonggang Luo <luoyonggang@xxxxxxxxx>
---
hw/mips/boston.c | 18 ++++++++++++++++--
hw/mips/fuloong2e.c | 18 ++++++++++++++++--
hw/mips/malta.c | 12 ++++++++++--
3 files changed, 42 insertions(+), 6 deletions(-)
diff --git a/hw/mips/boston.c b/hw/mips/boston.c
index 4579df23eb7..2c6edebe257 100644
--- a/hw/mips/boston.c
+++ b/hw/mips/boston.c
@@ -839,8 +839,10 @@ static void boston_mach_init(MachineState *machine)
}
}
-static void boston_mach_class_init(MachineClass *mc)
+static void boston_mach_class_init(ObjectClass *oc, const void *data)
{
+ MachineClass *mc = MACHINE_CLASS(oc);
+
mc->desc = "MIPS Boston";
mc->init = boston_mach_init;
mc->block_default_type = IF_IDE;
@@ -850,4 +852,16 @@ static void boston_mach_class_init(MachineClass *mc)
mc->default_cpu_type = MIPS_CPU_TYPE_NAME("I6400");
}
-DEFINE_MACHINE("boston", boston_mach_class_init)
+static const TypeInfo boston_mach_typeinfo = {
+ .name = MACHINE_TYPE_NAME("boston"),
+ .parent = TYPE_MACHINE,
+ .class_init = boston_mach_class_init,
+ .instance_size = sizeof(MachineState),
+};
+
+static void boston_mach_register_types(void)
+{
+ type_register_static(&boston_mach_typeinfo);
+}
+
+type_init(boston_mach_register_types)
diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c
index 9a712ee9309..96610ec1fdd 100644
--- a/hw/mips/fuloong2e.c
+++ b/hw/mips/fuloong2e.c
@@ -328,8 +328,10 @@ static void mips_fuloong2e_init(MachineState *machine)
network_init(pci_bus);
}
-static void mips_fuloong2e_machine_init(MachineClass *mc)
+static void mips_fuloong2e_machine_class_init(ObjectClass *oc, const void
*data)
{
+ MachineClass *mc = MACHINE_CLASS(oc);
+
mc->desc = "Fuloong 2e mini pc";
mc->init = mips_fuloong2e_init;
mc->block_default_type = IF_IDE;
@@ -339,4 +341,16 @@ static void mips_fuloong2e_machine_init(MachineClass *mc)
machine_add_audiodev_property(mc);
}
-DEFINE_MACHINE("fuloong2e", mips_fuloong2e_machine_init)
+static const TypeInfo mips_fuloong2e_machine_typeinfo = {
+ .name = MACHINE_TYPE_NAME("fuloong2e"),
+ .parent = TYPE_MACHINE,
+ .class_init = mips_fuloong2e_machine_class_init,
+ .instance_size = sizeof(MachineState),
+};
+
+static void mips_fuloong2e_machine_register_types(void)
+{
+ type_register_static(&mips_fuloong2e_machine_typeinfo);
+}
+
+type_init(mips_fuloong2e_machine_register_types)
diff --git a/hw/mips/malta.c b/hw/mips/malta.c
index 38c71f66f2e..0a10a2fea13 100644
--- a/hw/mips/malta.c
+++ b/hw/mips/malta.c
@@ -1285,8 +1285,10 @@ GlobalProperty malta_compat[] = {
};
const size_t malta_compat_len = G_N_ELEMENTS(malta_compat);
-static void mips_malta_machine_init(MachineClass *mc)
+static void mips_malta_machine_class_init(ObjectClass *oc, const void *data)
{
+ MachineClass *mc = MACHINE_CLASS(oc);
+
mc->desc = "MIPS Malta Core LV";
mc->init = mips_malta_init;
mc->block_default_type = IF_IDE;
@@ -1301,11 +1303,17 @@ static void mips_malta_machine_init(MachineClass *mc)
compat_props_add(mc->compat_props, malta_compat, malta_compat_len);
}
-DEFINE_MACHINE("malta", mips_malta_machine_init)
+static const TypeInfo mips_malta_machine_typeinfo = {
+ .name = MACHINE_TYPE_NAME("malta"),
+ .parent = TYPE_MACHINE,
+ .class_init = mips_malta_machine_class_init,
+ .instance_size = sizeof(MachineState),
+};
static void mips_malta_register_types(void)
{
type_register_static(&mips_malta_device);
+ type_register_static(&mips_malta_machine_typeinfo);
}
type_init(mips_malta_register_types)
--
2.55.0.windows.3
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |