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: