Am 1. März 2022 22:52:19 UTC schrieb Bernhard Beschow <shen...@gmail.com>:
>The QOM API already provides getters for uint64 and uint32 values, so reuse
>them.
>
>Signed-off-by: Bernhard Beschow <shen...@gmail.com>
>Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>

Meh, I accidently swapped Alistair's Reviewed-by into this patch while dropping 
it from the other. Please ignore and sorry for that.

Best regards,
Bernhard

>Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org>
>---
> hw/vfio/pci-quirks.c | 34 +++++++++-------------------------
> 1 file changed, 9 insertions(+), 25 deletions(-)
>
>diff --git a/hw/vfio/pci-quirks.c b/hw/vfio/pci-quirks.c
>index 0cf69a8c6d..f0147a050a 100644
>--- a/hw/vfio/pci-quirks.c
>+++ b/hw/vfio/pci-quirks.c
>@@ -1565,22 +1565,6 @@ static int vfio_add_nv_gpudirect_cap(VFIOPCIDevice 
>*vdev, Error **errp)
>     return 0;
> }
> 
>-static void vfio_pci_nvlink2_get_tgt(Object *obj, Visitor *v,
>-                                     const char *name,
>-                                     void *opaque, Error **errp)
>-{
>-    uint64_t tgt = (uintptr_t) opaque;
>-    visit_type_uint64(v, name, &tgt, errp);
>-}
>-
>-static void vfio_pci_nvlink2_get_link_speed(Object *obj, Visitor *v,
>-                                                 const char *name,
>-                                                 void *opaque, Error **errp)
>-{
>-    uint32_t link_speed = (uint32_t)(uintptr_t) opaque;
>-    visit_type_uint32(v, name, &link_speed, errp);
>-}
>-
> int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice *vdev, Error **errp)
> {
>     int ret;
>@@ -1618,9 +1602,9 @@ int vfio_pci_nvidia_v100_ram_init(VFIOPCIDevice *vdev, 
>Error **errp)
>                                nv2reg->size, p);
>     QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next);
> 
>-    object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64",
>-                        vfio_pci_nvlink2_get_tgt, NULL, NULL,
>-                        (void *) (uintptr_t) cap->tgt);
>+    object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt",
>+                                   (uint64_t *) &cap->tgt,
>+                                   OBJ_PROP_FLAG_READ);
>     trace_vfio_pci_nvidia_gpu_setup_quirk(vdev->vbasedev.name, cap->tgt,
>                                           nv2reg->size);
> free_exit:
>@@ -1679,15 +1663,15 @@ int vfio_pci_nvlink2_init(VFIOPCIDevice *vdev, Error 
>**errp)
>         QLIST_INSERT_HEAD(&vdev->bars[0].quirks, quirk, next);
>     }
> 
>-    object_property_add(OBJECT(vdev), "nvlink2-tgt", "uint64",
>-                        vfio_pci_nvlink2_get_tgt, NULL, NULL,
>-                        (void *) (uintptr_t) captgt->tgt);
>+    object_property_add_uint64_ptr(OBJECT(vdev), "nvlink2-tgt",
>+                                   (uint64_t *) &captgt->tgt,
>+                                   OBJ_PROP_FLAG_READ);
>     trace_vfio_pci_nvlink2_setup_quirk_ssatgt(vdev->vbasedev.name, 
> captgt->tgt,
>                                               atsdreg->size);
> 
>-    object_property_add(OBJECT(vdev), "nvlink2-link-speed", "uint32",
>-                        vfio_pci_nvlink2_get_link_speed, NULL, NULL,
>-                        (void *) (uintptr_t) capspeed->link_speed);
>+    object_property_add_uint32_ptr(OBJECT(vdev), "nvlink2-link-speed",
>+                                   &capspeed->link_speed,
>+                                   OBJ_PROP_FLAG_READ);
>     trace_vfio_pci_nvlink2_setup_quirk_lnkspd(vdev->vbasedev.name,
>                                               capspeed->link_speed);
> free_exit:


Reply via email to