Class properties make QOM introspection simpler and easier, as they don't require an object to be instantiated.
Note: "its" is currently registered conditionally, but this makes the feature be registered unconditionally. The only side effect is that it will be now possible to set its=on on virt-2.7 and older. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Cc: Peter Maydell <peter.mayd...@linaro.org> Cc: qemu-...@nongnu.org Cc: qemu-devel@nongnu.org --- hw/arm/virt.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 53fcaf5e4f..37a020c149 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -2525,6 +2525,13 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) "Set on/off to enable/disable emulating a " "guest CPU which implements the ARM " "Memory Tagging Extension"); + + object_class_property_add_bool(oc, "its", virt_get_its, + virt_set_its); + object_class_property_set_description(oc, "its", + "Set on/off to enable/disable " + "ITS instantiation"); + } static void virt_instance_init(Object *obj) @@ -2552,11 +2559,6 @@ static void virt_instance_init(Object *obj) } else { /* Default allows ITS instantiation */ vms->its = true; - object_property_add_bool(obj, "its", virt_get_its, - virt_set_its); - object_property_set_description(obj, "its", - "Set on/off to enable/disable " - "ITS instantiation"); } /* Default disallows iommu instantiation */ -- 2.28.0