[RFC PATCH 0/6] Auxiliary IOMMU domains and Arm SMMUv3
Lu Baolu
baolu.lu at linux.intel.com
Mon Dec 10 02:57:22 UTC 2018
Hi Joerg,
On 12/7/18 6:29 PM, 'joro at 8bytes.org' wrote:
> Hi,
>
> On Mon, Nov 26, 2018 at 07:29:45AM +0000, Tian, Kevin wrote:
>> btw Baolu just reminded me one thing which is worthy of noting here.
>> 'primary' vs. 'aux' concept makes sense only when we look from a device
>> p.o.v. That binding relationship is not (*should not be*) carry-and-forwarded
>> cross devices. every domain must be explicitly attached to other devices
>> (instead of implicitly attached being above example), and new primary/aux
>> attribute on another device will be decided at attach time.
>
> Okay, so after all the discussions we had I learned a few more things
> about the scalable mode feature and thought a bit longer about how to
> best support it in the IOMMU-API.
Thanks for thinking about this.
>
> The concept of sub-domains I initially proposed certainly makes no
> sense, but scalable-mode specific attach/detach functions do. So instead
> of a sub-domain mode, I'd like to propose device-feature sets.
>
> The posted patch-set already includes this as device-attributes, but I
> don't like this naming as we are really talking about additional
> feature sets of a device. So how about we introduce this:
>
> enum iommu_dev_features {
> /* ... */
> IOMMU_DEV_FEAT_AUX,
> IOMMU_DEV_FEAT_SVA,
> /* ... */
> };
>
> /* Check if a device supports a given feature of the IOMMU-API */
> bool iommu_dev_has_feature(struct device *dev, enum iommu_dev_features *feat);
Here we pass in a pointer of "enum iommu_dev_features", do we want
to return anything here?
Best regards,
Lu Baolu
More information about the iommu
mailing list