Replace DEFINE_MACHINE_EXTENDED with a TypeInfo, rename
imx8mm_evk_machine_init to imx8mm_evk_machine_class_init, and set
is_available to target_is_aarch64.

Signed-off-by: Yonggang Luo <[email protected]>
---
 hw/arm/imx8mm-evk.c | 23 +++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git a/hw/arm/imx8mm-evk.c b/hw/arm/imx8mm-evk.c
index c3215b11cb9..5dfd8250459 100644
--- a/hw/arm/imx8mm-evk.c
+++ b/hw/arm/imx8mm-evk.c
@@ -8,6 +8,7 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/target-info.h"
 #include "system/address-spaces.h"
 #include "hw/arm/boot.h"
 #include "hw/arm/fsl-imx8mm.h"
@@ -122,8 +123,10 @@ static const char *imx8mm_evk_get_default_cpu_type(const 
MachineState *ms)
     return ARM_CPU_TYPE_NAME("cortex-a53");
 }
 
-static void imx8mm_evk_machine_init(MachineClass *mc)
+static void imx8mm_evk_machine_class_init(ObjectClass *oc, const void *data)
 {
+    MachineClass *mc = MACHINE_CLASS(oc);
+
     mc->desc = "NXP i.MX 8MM EVK Board";
     mc->init = imx8mm_evk_init;
     mc->max_cpus = FSL_IMX8MM_NUM_CPUS;
@@ -133,6 +136,18 @@ static void imx8mm_evk_machine_init(MachineClass *mc)
     mc->get_default_cpu_type = imx8mm_evk_get_default_cpu_type;
 }
 
-DEFINE_MACHINE_EXTENDED("imx8mm-evk", MACHINE, Imx8mmEvkMachineState,
-                        imx8mm_evk_machine_init, false, false,
-                        NULL)
+static const TypeInfo imx8mm_evk_machine_class_init_typeinfo = {
+    .name          = TYPE_IMX8MM_EVK_MACHINE,
+    .parent        = TYPE_MACHINE,
+    .class_init    = imx8mm_evk_machine_class_init,
+    .instance_size = sizeof(Imx8mmEvkMachineState),
+    .abstract      = false,
+    .is_available  = target_is_aarch64,
+};
+
+static void imx8mm_evk_machine_class_init_register_types(void)
+{
+    type_register_static(&imx8mm_evk_machine_class_init_typeinfo);
+}
+
+type_init(imx8mm_evk_machine_class_init_register_types)
-- 
2.52.0.windows.1


Reply via email to