summary refs log tree commit diff stats
path: root/backends
diff options
context:
space:
mode:
authorJoao Martins <joao.m.martins@oracle.com>2024-07-19 13:04:51 +0100
committerCédric Le Goater <clg@redhat.com>2024-07-23 17:14:52 +0200
commit2d1bf2589736b3714f3940d360404732ac13019c (patch)
treed415bb2dc8377c5c42208a8c6b1ca3359c8f597c /backends
parent9f17604195c03580b16c3cc5631c86f3894dd442 (diff)
downloadfocaccia-qemu-2d1bf2589736b3714f3940d360404732ac13019c.tar.gz
focaccia-qemu-2d1bf2589736b3714f3940d360404732ac13019c.zip
backends/iommufd: Extend iommufd_backend_get_device_info() to fetch HW capabilities
The helper will be able to fetch vendor agnostic IOMMU capabilities
supported both by hardware and software. Right now it is only iommu dirty
tracking.

Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Diffstat (limited to 'backends')
-rw-r--r--backends/iommufd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/backends/iommufd.c b/backends/iommufd.c
index cabd1b5002..48dfd39624 100644
--- a/backends/iommufd.c
+++ b/backends/iommufd.c
@@ -209,7 +209,7 @@ int iommufd_backend_unmap_dma(IOMMUFDBackend *be, uint32_t ioas_id,
 
 bool iommufd_backend_get_device_info(IOMMUFDBackend *be, uint32_t devid,
                                      uint32_t *type, void *data, uint32_t len,
-                                     Error **errp)
+                                     uint64_t *caps, Error **errp)
 {
     struct iommu_hw_info info = {
         .size = sizeof(info),
@@ -225,6 +225,8 @@ bool iommufd_backend_get_device_info(IOMMUFDBackend *be, uint32_t devid,
 
     g_assert(type);
     *type = info.out_data_type;
+    g_assert(caps);
+    *caps = info.out_capabilities;
 
     return true;
 }