[PATCH 2/5] iommu/arm-smmu: add IOMMU_CAP_BYPASS to the ARM SMMU driver
From: robin.murphy@arm.com (Robin Murphy)
Date: 2017-07-19 10:59:42
Also in:
kvm, linux-iommu, lkml
From: robin.murphy@arm.com (Robin Murphy)
Date: 2017-07-19 10:59:42
Also in:
kvm, linux-iommu, lkml
On 19/07/17 10:33, Anup Patel wrote:
The ARM SMMUv1 and SMMUv2 support bypassing transactions for which domain is not configured. The patch adds corresponding IOMMU capability to advertise this fact. Signed-off-by: Anup Patel <redacted> --- drivers/iommu/arm-smmu.c | 2 ++ 1 file changed, 2 insertions(+)diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c index bc89b4d..08a9020 100644 --- a/drivers/iommu/arm-smmu.c +++ b/drivers/iommu/arm-smmu.c@@ -1483,6 +1483,8 @@ static bool arm_smmu_capable(enum iommu_cap cap) return true; case IOMMU_CAP_NOEXEC: return true; + case IOMMU_CAP_BYPASS: + return true;
Except when it isn't, of course. Beware that what we'd like to do in the long term is flip the polarity of disable_bypass, because there isn't generally a good reason for Non-Secure DMA to be happening behind Linux's back. Robin.
default: return false; }