iommu: Split the kdoc comment for struct iommu_iotlb_gather

Use in-line member documentation and add some small clarifications to
the members. This is preparation to add more members.

- Note that pgsize is only used by arm-smmuv3

- Note that freelist is only used by iommupt

- Reword queued to emphasize the flush-all behavior

Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Pranjal Shrivastava <praan@google.com>
Tested-by: Andrew Jones <andrew.jones@oss.qualcomm.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
This commit is contained in:
Jason Gunthorpe 2026-05-08 11:53:00 -03:00 committed by Joerg Roedel
parent e861aaea2f
commit 74c9d82c7e

View File

@ -345,12 +345,6 @@ struct iommu_pages_list {
/**
* struct iommu_iotlb_gather - Range information for a pending IOTLB flush
*
* @start: IOVA representing the start of the range to be flushed
* @end: IOVA representing the end of the range to be flushed (inclusive)
* @pgsize: The interval at which to perform the flush
* @freelist: Removed pages to free after sync
* @queued: Indicates that the flush will be queued
*
* This structure is intended to be updated by multiple calls to the
* ->unmap() function in struct iommu_ops before eventually being passed
* into ->iotlb_sync(). Drivers can add pages to @freelist to be freed after
@ -359,10 +353,24 @@ struct iommu_pages_list {
* later instead of ->iotlb_sync(), so drivers may optimise accordingly.
*/
struct iommu_iotlb_gather {
/** @start: IOVA representing the start of the range to be flushed */
unsigned long start;
/**
* @end: IOVA representing the end of the range to be
* flushed (inclusive)
*/
unsigned long end;
/**
* @pgsize: The interval at which to perform the flush, only used
* by arm-smmu-v3
*/
size_t pgsize;
/**
* @freelist: Removed pages to free after sync, only used by
* iommupt
*/
struct iommu_pages_list freelist;
/** @queued: True if the gather will be completed with a flush all */
bool queued;
};