> From: Liu, Yi L <yi.l.liu@xxxxxxxxx> > Sent: Monday, July 24, 2023 7:00 PM > > @@ -252,11 +258,20 @@ struct iommu_iotlb_gather { > * @remove_dev_pasid: Remove any translation configurations of a specific > * pasid, so that any DMA transactions with this pasid > * will be blocked by the hardware. > + * @hw_info_type: One of enum iommu_hw_info_type defined in > + * include/uapi/linux/iommufd.h. It is used to tag the type > + * of data returned by .hw_info callback. The drivers that > + * support .hw_info callback should define a unique type > + * in include/uapi/linux/iommufd.h. For the drivers that do > + * not implement .hw_info callback, this field is > + * IOMMU_HW_INFO_TYPE_NONE which is 0. Hence, such drivers > + * do not need to care this field. every time looking at this field the same question came out why it is required (and looks I forgot your previous response). e.g. why cannot the type be returned in @hw_info(): void *(*hw_info)(struct device *dev, u32 *length, int *type); NULL callback implies IOMMU_HW_INFO_TYPE_NONE. otherwise if there is a reason could you update the commit msg to reflect it so I don't need to ask again next time? 😊