On 10/1/25 3:50 PM, Jonathan Cameron wrote:
> On Mon, 29 Sep 2025 14:36:40 +0100
> Shameer Kolothum <[email protected]> wrote:
>
> Bring the bit of the description in the title down here as well.
> Depending on what tools people use for browsing git it might
> end up in very different places on their screen.
+1
Eric
>
>> And store it in HostIOMMUDeviceCaps for later use.
>>
>> Signed-off-by: Shameer Kolothum <[email protected]>
> Trivial comment inline.
>
> Reviewed-by: Jonathan Cameron <[email protected]>
>
>> ---
>> backends/iommufd.c | 6 +++++-
>> hw/arm/smmuv3-accel.c | 3 ++-
>> hw/vfio/iommufd.c | 7 +++++--
>> include/system/host_iommu_device.h | 2 ++
>> include/system/iommufd.h | 3 ++-
>> 5 files changed, 16 insertions(+), 5 deletions(-)
> ...
>
>> diff --git a/include/system/host_iommu_device.h
>> b/include/system/host_iommu_device.h
>> index ab849a4a82..c6a2a3899a 100644
>> --- a/include/system/host_iommu_device.h
>> +++ b/include/system/host_iommu_device.h
>> @@ -29,6 +29,7 @@ typedef union VendorCaps {
>> *
>> * @hw_caps: host platform IOMMU capabilities (e.g. on IOMMUFD this
>> represents
>> * the @out_capabilities value returned from IOMMU_GET_HW_INFO
>> ioctl)
> Blank line here to match local style.
>
>> + * @max_pasid_log2: width of PASIDs supported by host IOMMU device
>> *
>> * @vendor_caps: host platform IOMMU vendor specific capabilities (e.g. on
>> * IOMMUFD this represents a user-space buffer filled by
>> kernel
>> @@ -37,6 +38,7 @@ typedef union VendorCaps {
>> typedef struct HostIOMMUDeviceCaps {
>> uint32_t type;
>> uint64_t hw_caps;
>> + uint8_t max_pasid_log2;
>> VendorCaps vendor_caps;
>> } HostIOMMUDeviceCaps;
>> #endif
>> diff --git a/include/system/iommufd.h b/include/system/iommufd.h
>> index e852193f35..d3efcffc45 100644
>> --- a/include/system/iommufd.h
>> +++ b/include/system/iommufd.h
>> @@ -71,7 +71,8 @@ int iommufd_backend_unmap_dma(IOMMUFDBackend *be, uint32_t
>> ioas_id,
>> hwaddr iova, ram_addr_t size);
>> bool iommufd_backend_get_device_info(IOMMUFDBackend *be, uint32_t devid,
>> uint32_t *type, void *data, uint32_t
>> len,
>> - uint64_t *caps, Error **errp);
>> + uint64_t *caps, uint8_t *pasid_log2,
>> + Error **errp);
>> bool iommufd_backend_alloc_hwpt(IOMMUFDBackend *be, uint32_t dev_id,
>> uint32_t pt_id, uint32_t flags,
>> uint32_t data_type, uint32_t data_len,