summaryrefslogtreecommitdiff
path: root/include/linux/iommu.h
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2013-11-05 15:59:53 +0000
committerWill Deacon <will.deacon@arm.com>2013-12-16 19:30:31 +0000
commitca13bb3d4e54f5c30089e55d5b8f4bb80c8f05e2 (patch)
treea8635a8d76bc772fc958b2a0abfad13db1fc56f2 /include/linux/iommu.h
parent06f983dd571f564bdd3eb2ac4c33002034ea7810 (diff)
downloadlwn-ca13bb3d4e54f5c30089e55d5b8f4bb80c8f05e2.tar.gz
lwn-ca13bb3d4e54f5c30089e55d5b8f4bb80c8f05e2.zip
iommu: add IOMMU_EXEC flag for safely allowing XN mappings
Whilst most IOMMU mappings should probably be non-executable, there may be cases (HSA?) where executable mappings are required. This patch introduces a new mapping flag, IOMMU_EXEC, to indicate that the mapping should be mapped as executable. Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'include/linux/iommu.h')
-rw-r--r--include/linux/iommu.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index a444c790fa72..709a697c4e02 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -24,9 +24,10 @@
#include <linux/types.h>
#include <trace/events/iommu.h>
-#define IOMMU_READ (1)
-#define IOMMU_WRITE (2)
-#define IOMMU_CACHE (4) /* DMA cache coherency */
+#define IOMMU_READ (1 << 0)
+#define IOMMU_WRITE (1 << 1)
+#define IOMMU_CACHE (1 << 2) /* DMA cache coherency */
+#define IOMMU_EXEC (1 << 3)
struct iommu_ops;
struct iommu_group;