]> www.infradead.org Git - users/dwmw2/linux.git/commit
iommu/arm-smmu-v3: Allow a PASID to be set when RID is IDENTITY/BLOCKED
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 25 Jun 2024 12:37:44 +0000 (09:37 -0300)
committerWill Deacon <will@kernel.org>
Tue, 2 Jul 2024 14:39:48 +0000 (15:39 +0100)
commit8ee9175c25827240dd84a7adffbfa9c16938ac5d
tree679350c14b857252d7d0fa626a7588a0dee4d769
parent3b5302cbb06af6b62022360066944a1ff6aea0d1
iommu/arm-smmu-v3: Allow a PASID to be set when RID is IDENTITY/BLOCKED

If the STE doesn't point to the CD table we can upgrade it by
reprogramming the STE with the appropriate S1DSS. We may also need to turn
on ATS at the same time.

Keep track if the installed STE is pointing at the cd_table and the ATS
state to trigger this path.

Tested-by: Nicolin Chen <nicolinc@nvidia.com>
Tested-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
Reviewed-by: Nicolin Chen <nicolinc@nvidia.com>
Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/13-v9-5cd718286059+79186-smmuv3_newapi_p2b_jgg@nvidia.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h