[PATCH v3 11/11] iommu/arm-smmu-v3: Add IOMMU_VIOMMU_TYPE_ARM_SMMUV3 support
Jason Gunthorpe
jgg at nvidia.com
Thu Oct 17 09:48:05 PDT 2024
On Thu, Oct 17, 2024 at 09:43:22AM -0700, Nicolin Chen wrote:
> On Thu, Oct 17, 2024 at 01:41:23PM -0300, Jason Gunthorpe wrote:
> > On Thu, Oct 17, 2024 at 09:28:16AM -0700, Nicolin Chen wrote:
> > > On Wed, Oct 09, 2024 at 09:38:11AM -0700, Nicolin Chen wrote:
> > > > Add a new driver-type for ARM SMMUv3 to enum iommu_viommu_type. Implement
> > > > the viommu_alloc op with an arm_vsmmu_alloc function. As an initial step,
> > > > copy the VMID from s2_parent. A later cleanup series is required to move
> > > > the VMID allocation out of the stage-2 domain allocation routine to this.
> > > >
> > > > Signed-off-by: Nicolin Chen <nicolinc at nvidia.com>
> > > > ---
> > > > drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 18 ++++++++++++++
> > > > include/uapi/linux/iommufd.h | 2 ++
> > > > .../arm/arm-smmu-v3/arm-smmu-v3-iommufd.c | 24 +++++++++++++++++++
> > > > drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 1 +
> > > > 4 files changed, 45 insertions(+)
> > >
> > > I squashed the following changes to this commit (will be in v4).
> > > It replaces nested_domain->s2_parent with nested_domain->vsmmu
> >
> > Err, do we want to make a viommu a hard requirement to use nesting? Is
> > that what is happening here?
>
> For SMMUv3 driver, we have to make it a hard requirement since the
> invalidation can be only done with a vIOMMU, right?
Oh, right yes, OK
Jason
More information about the linux-arm-kernel
mailing list