We want to add more machines. First convert from the old DEFINE_MACHINE() API to the more recent DEFINE_TYPES(TypeInfo[]) one.
Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> --- hw/mips/malta.c | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 5b371c1e34..2c363fe099 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -70,6 +70,8 @@ #define MAX_IDE_BUS 2 +#define TYPE_MALTA_MACHINE MACHINE_TYPE_NAME("malta-base") + typedef struct { MemoryRegion iomem; MemoryRegion iomem_lo; /* 0 - 0x900 */ @@ -1433,10 +1435,19 @@ static void mips_malta_register_types(void) type_init(mips_malta_register_types) -static void mips_malta_machine_init(MachineClass *mc) +static void malta_machine_common_class_init(ObjectClass *oc, void *data) { - mc->desc = "MIPS Malta Core LV"; + MachineClass *mc = MACHINE_CLASS(oc); + mc->init = mips_malta_init; + mc->default_ram_id = "mips_malta.ram"; +} + +static void malta_machine_default_class_init(ObjectClass *oc, void *data) +{ + MachineClass *mc = MACHINE_CLASS(oc); + + mc->desc = "MIPS Malta Core LV"; mc->block_default_type = IF_IDE; mc->max_cpus = 16; mc->is_default = true; @@ -1445,7 +1456,20 @@ static void mips_malta_machine_init(MachineClass *mc) #else mc->default_cpu_type = MIPS_CPU_TYPE_NAME("24Kf"); #endif - mc->default_ram_id = "mips_malta.ram"; } -DEFINE_MACHINE("malta", mips_malta_machine_init) +static const TypeInfo malta_machine_types[] = { + { + .name = MACHINE_TYPE_NAME("malta"), + .parent = TYPE_MALTA_MACHINE, + .class_init = malta_machine_default_class_init, + }, + { + .name = TYPE_MALTA_MACHINE, + .parent = TYPE_MACHINE, + .class_init = malta_machine_common_class_init, + .abstract = true, + } +}; + +DEFINE_TYPES(malta_machine_types) -- 2.21.3