Convert the rtc, pcie, and ioapic2 OnOffAuto properties from manual visitor-based callbacks to property_add_qapi_enum().
Signed-off-by: Marc-André Lureau <[email protected]> --- hw/i386/microvm.c | 84 ++++++++++++++++++++++++------------------------------- 1 file changed, 36 insertions(+), 48 deletions(-) diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 5a7889f21b8..54bdde515b1 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -21,7 +21,7 @@ #include "qemu/units.h" #include "qapi/error.h" #include "qapi/visitor.h" -#include "qapi/qapi-visit-common.h" +#include "qapi/qapi-type-infos-common.h" #include "system/system.h" #include "system/cpus.h" #include "system/numa.h" @@ -519,55 +519,40 @@ static void microvm_machine_reset(MachineState *machine, ResetType type) } } -static void microvm_machine_get_rtc(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static int microvm_machine_get_rtc(Object *obj, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - OnOffAuto rtc = mms->rtc; - - visit_type_OnOffAuto(v, name, &rtc, errp); + return mms->rtc; } -static void microvm_machine_set_rtc(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static void microvm_machine_set_rtc(Object *obj, int value, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - - visit_type_OnOffAuto(v, name, &mms->rtc, errp); + mms->rtc = value; } -static void microvm_machine_get_pcie(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static int microvm_machine_get_pcie(Object *obj, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - OnOffAuto pcie = mms->pcie; - - visit_type_OnOffAuto(v, name, &pcie, errp); + return mms->pcie; } -static void microvm_machine_set_pcie(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static void microvm_machine_set_pcie(Object *obj, int value, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - - visit_type_OnOffAuto(v, name, &mms->pcie, errp); + mms->pcie = value; } -static void microvm_machine_get_ioapic2(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static int microvm_machine_get_ioapic2(Object *obj, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - OnOffAuto ioapic2 = mms->ioapic2; - - visit_type_OnOffAuto(v, name, &ioapic2, errp); + return mms->ioapic2; } -static void microvm_machine_set_ioapic2(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) +static void microvm_machine_set_ioapic2(Object *obj, int value, Error **errp) { MicrovmMachineState *mms = MICROVM_MACHINE(obj); - - visit_type_OnOffAuto(v, name, &mms->ioapic2, errp); + mms->ioapic2 = value; } static bool microvm_machine_get_isa_serial(Object *obj, Error **errp) @@ -673,26 +658,29 @@ static void microvm_class_init(ObjectClass *oc, const void *data) hc->unplug_request = microvm_device_unplug_request_cb; hc->unplug = microvm_device_unplug_cb; - object_class_property_add(oc, MICROVM_MACHINE_RTC, "OnOffAuto", - microvm_machine_get_rtc, - microvm_machine_set_rtc, - NULL, NULL); - object_class_property_set_description(oc, MICROVM_MACHINE_RTC, - "Enable MC146818 RTC"); - - object_class_property_add(oc, MICROVM_MACHINE_PCIE, "OnOffAuto", - microvm_machine_get_pcie, - microvm_machine_set_pcie, - NULL, NULL); - object_class_property_set_description(oc, MICROVM_MACHINE_PCIE, - "Enable PCIe"); - - object_class_property_add(oc, MICROVM_MACHINE_IOAPIC2, "OnOffAuto", - microvm_machine_get_ioapic2, - microvm_machine_set_ioapic2, - NULL, NULL); - object_class_property_set_description(oc, MICROVM_MACHINE_IOAPIC2, - "Enable second IO-APIC"); + object_class_property_add_qapi_enum(oc, QAPI_ENUM_PROP( + .name = MICROVM_MACHINE_RTC, + .description = "Enable MC146818 RTC", + .qapi_type = &OnOffAuto_type_info, + .get = microvm_machine_get_rtc, + .set = microvm_machine_set_rtc, + )); + + object_class_property_add_qapi_enum(oc, QAPI_ENUM_PROP( + .name = MICROVM_MACHINE_PCIE, + .description = "Enable PCIe", + .qapi_type = &OnOffAuto_type_info, + .get = microvm_machine_get_pcie, + .set = microvm_machine_set_pcie, + )); + + object_class_property_add_qapi_enum(oc, QAPI_ENUM_PROP( + .name = MICROVM_MACHINE_IOAPIC2, + .description = "Enable second IO-APIC", + .qapi_type = &OnOffAuto_type_info, + .get = microvm_machine_get_ioapic2, + .set = microvm_machine_set_ioapic2, + )); object_class_property_add_bool(oc, MICROVM_MACHINE_ISA_SERIAL, microvm_machine_get_isa_serial, -- 2.54.0
