From: Marc-André Lureau <[email protected]> Now that all PropertyInfo for enums definitions use .qapi_type, remove the legacy .enum_table field from PropertyInfo, along with the qdev_propinfo_enum_lookup() helper.
Signed-off-by: Marc-André Lureau <[email protected]> Signed-off-by: Markus Armbruster <[email protected]> Message-ID: <[email protected]> --- hw/core/qdev-prop-internal.h | 2 -- include/hw/core/qdev-properties.h | 1 - hw/core/qdev-properties-system.c | 12 +++++------- hw/core/qdev-properties.c | 17 ++++------------- 4 files changed, 9 insertions(+), 23 deletions(-) diff --git a/hw/core/qdev-prop-internal.h b/hw/core/qdev-prop-internal.h index c190b7b88c..d7b77844fe 100644 --- a/hw/core/qdev-prop-internal.h +++ b/hw/core/qdev-prop-internal.h @@ -8,8 +8,6 @@ #ifndef HW_CORE_QDEV_PROP_INTERNAL_H #define HW_CORE_QDEV_PROP_INTERNAL_H -const QEnumLookup *qdev_propinfo_enum_lookup(const PropertyInfo *info); - void qdev_propinfo_get_enum(Object *obj, Visitor *v, const char *name, void *opaque, Error **errp); void qdev_propinfo_set_enum(Object *obj, Visitor *v, const char *name, diff --git a/include/hw/core/qdev-properties.h b/include/hw/core/qdev-properties.h index 1ea2ba66bb..a57291a5a1 100644 --- a/include/hw/core/qdev-properties.h +++ b/include/hw/core/qdev-properties.h @@ -33,7 +33,6 @@ struct Property { struct PropertyInfo { const char *type; const char *description; - const QEnumLookup *enum_table; const QAPITypeInfo *qapi_type; bool realized_set_allowed; /* allow setting property on realized device */ char *(*print)(Object *obj, const Property *prop); diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c index 8924f84806..4d605c2056 100644 --- a/hw/core/qdev-properties-system.c +++ b/hw/core/qdev-properties-system.c @@ -592,7 +592,7 @@ static void qdev_propinfo_set_losttickpolicy(Object *obj, Visitor *v, int value; if (!visit_type_enum(v, name, &value, - qdev_propinfo_enum_lookup(prop->info), errp)) { + prop->info->qapi_type->lookup, errp)) { return; } @@ -1081,8 +1081,7 @@ static void get_prop_pcielinkspeed(Object *obj, Visitor *v, const char *name, abort(); } - visit_type_enum(v, name, &speed, - qdev_propinfo_enum_lookup(prop->info), errp); + visit_type_enum(v, name, &speed, prop->info->qapi_type->lookup, errp); } static void set_prop_pcielinkspeed(Object *obj, Visitor *v, const char *name, @@ -1093,7 +1092,7 @@ static void set_prop_pcielinkspeed(Object *obj, Visitor *v, const char *name, int speed; if (!visit_type_enum(v, name, &speed, - qdev_propinfo_enum_lookup(prop->info), errp)) { + prop->info->qapi_type->lookup, errp)) { return; } @@ -1167,8 +1166,7 @@ static void get_prop_pcielinkwidth(Object *obj, Visitor *v, const char *name, abort(); } - visit_type_enum(v, name, &width, - qdev_propinfo_enum_lookup(prop->info), errp); + visit_type_enum(v, name, &width, prop->info->qapi_type->lookup, errp); } static void set_prop_pcielinkwidth(Object *obj, Visitor *v, const char *name, @@ -1179,7 +1177,7 @@ static void set_prop_pcielinkwidth(Object *obj, Visitor *v, const char *name, int width; if (!visit_type_enum(v, name, &width, - qdev_propinfo_enum_lookup(prop->info), errp)) { + prop->info->qapi_type->lookup, errp)) { return; } diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c index fb11eb1f1c..e2ea894595 100644 --- a/hw/core/qdev-properties.c +++ b/hw/core/qdev-properties.c @@ -101,22 +101,13 @@ static ObjectPropertyAccessor *field_prop_setter(const PropertyInfo *info) return info->set ? field_prop_set : NULL; } -const QEnumLookup *qdev_propinfo_enum_lookup(const PropertyInfo *info) -{ - if (info->qapi_type) { - assert(info->qapi_type->lookup); - return info->qapi_type->lookup; - } - return info->enum_table; -} - void qdev_propinfo_get_enum(Object *obj, Visitor *v, const char *name, void *opaque, Error **errp) { const Property *prop = opaque; int *ptr = object_field_prop_ptr(obj, prop); - visit_type_enum(v, name, ptr, qdev_propinfo_enum_lookup(prop->info), errp); + visit_type_enum(v, name, ptr, prop->info->qapi_type->lookup, errp); } void qdev_propinfo_set_enum(Object *obj, Visitor *v, const char *name, @@ -125,14 +116,14 @@ void qdev_propinfo_set_enum(Object *obj, Visitor *v, const char *name, const Property *prop = opaque; int *ptr = object_field_prop_ptr(obj, prop); - visit_type_enum(v, name, ptr, qdev_propinfo_enum_lookup(prop->info), errp); + visit_type_enum(v, name, ptr, prop->info->qapi_type->lookup, errp); } void qdev_propinfo_set_default_value_enum(ObjectProperty *op, const Property *prop) { object_property_set_default_str(op, - qapi_enum_lookup(qdev_propinfo_enum_lookup(prop->info), + qapi_enum_lookup(prop->info->qapi_type->lookup, prop->defval.i)); } @@ -970,7 +961,7 @@ void qdev_prop_set_enum(DeviceState *dev, const char *name, int value) prop = qdev_prop_find(dev, name); object_property_set_str(OBJECT(dev), name, - qapi_enum_lookup(qdev_propinfo_enum_lookup(prop->info), value), + qapi_enum_lookup(prop->info->qapi_type->lookup, value), &error_abort); } -- 2.55.0
