[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 11/24] tmp421: Register properties as class properties
From: |
Igor Mammedov |
Subject: |
Re: [PATCH 11/24] tmp421: Register properties as class properties |
Date: |
Fri, 23 Oct 2020 20:21:17 +0200 |
On Mon, 21 Sep 2020 18:10:32 -0400
Eduardo Habkost <ehabkost@redhat.com> wrote:
> Class properties make QOM introspection simpler and easier, as
> they don't require an object to be instantiated.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
> ---
> Cc: qemu-devel@nongnu.org
> ---
> hw/misc/tmp421.c | 30 +++++++++++++-----------------
> 1 file changed, 13 insertions(+), 17 deletions(-)
>
> diff --git a/hw/misc/tmp421.c b/hw/misc/tmp421.c
> index 212d6e0e831..1c19a3a9713 100644
> --- a/hw/misc/tmp421.c
> +++ b/hw/misc/tmp421.c
> @@ -340,22 +340,6 @@ static void tmp421_realize(DeviceState *dev, Error
> **errp)
> tmp421_reset(&s->i2c);
> }
>
> -static void tmp421_initfn(Object *obj)
> -{
> - object_property_add(obj, "temperature0", "int",
> - tmp421_get_temperature,
> - tmp421_set_temperature, NULL, NULL);
> - object_property_add(obj, "temperature1", "int",
> - tmp421_get_temperature,
> - tmp421_set_temperature, NULL, NULL);
> - object_property_add(obj, "temperature2", "int",
> - tmp421_get_temperature,
> - tmp421_set_temperature, NULL, NULL);
> - object_property_add(obj, "temperature3", "int",
> - tmp421_get_temperature,
> - tmp421_set_temperature, NULL, NULL);
> -}
> -
> static void tmp421_class_init(ObjectClass *klass, void *data)
> {
> DeviceClass *dc = DEVICE_CLASS(klass);
> @@ -368,6 +352,19 @@ static void tmp421_class_init(ObjectClass *klass, void
> *data)
> k->send = tmp421_tx;
> dc->vmsd = &vmstate_tmp421;
> sc->dev = (DeviceInfo *) data;
> +
> + object_class_property_add(klass, "temperature0", "int",
> + tmp421_get_temperature,
> + tmp421_set_temperature, NULL, NULL);
> + object_class_property_add(klass, "temperature1", "int",
> + tmp421_get_temperature,
> + tmp421_set_temperature, NULL, NULL);
> + object_class_property_add(klass, "temperature2", "int",
> + tmp421_get_temperature,
> + tmp421_set_temperature, NULL, NULL);
> + object_class_property_add(klass, "temperature3", "int",
> + tmp421_get_temperature,
> + tmp421_set_temperature, NULL, NULL);
> }
>
> static const TypeInfo tmp421_info = {
> @@ -375,7 +372,6 @@ static const TypeInfo tmp421_info = {
> .parent = TYPE_I2C_SLAVE,
> .instance_size = sizeof(TMP421State),
> .class_size = sizeof(TMP421Class),
> - .instance_init = tmp421_initfn,
> .abstract = true,
> };
>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PATCH 11/24] tmp421: Register properties as class properties,
Igor Mammedov <=