qdev: Add name argument to PropertyInfo.create method

This will make it easier to remove the Property.name field in the
future.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20201211220529.2290218-22-ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
Eduardo Habkost 2020-12-11 17:05:18 -05:00
parent 23a1dae8c1
commit c80fab0b61
2 changed files with 5 additions and 4 deletions

View File

@ -851,9 +851,10 @@ const PropertyInfo qdev_prop_size = {
/* --- object link property --- */
static void create_link_property(ObjectClass *oc, Property *prop)
static void create_link_property(ObjectClass *oc, const char *name,
Property *prop)
{
object_class_property_add_link(oc, prop->name, prop->link_type,
object_class_property_add_link(oc, name, prop->link_type,
prop->offset,
qdev_prop_allow_set_link_before_realize,
OBJ_PROP_LINK_STRONG);
@ -893,7 +894,7 @@ static void qdev_class_add_property(DeviceClass *klass, const char *name,
ObjectClass *oc = OBJECT_CLASS(klass);
if (prop->info->create) {
prop->info->create(oc, prop);
prop->info->create(oc, name, prop);
} else {
ObjectProperty *op;

View File

@ -34,7 +34,7 @@ struct PropertyInfo {
const QEnumLookup *enum_table;
int (*print)(Object *obj, Property *prop, char *dest, size_t len);
void (*set_default_value)(ObjectProperty *op, const Property *prop);
void (*create)(ObjectClass *oc, Property *prop);
void (*create)(ObjectClass *oc, const char *name, Property *prop);
ObjectPropertyAccessor *get;
ObjectPropertyAccessor *set;
ObjectPropertyRelease *release;