aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iommu
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2015-05-28 18:41:41 +0200
committerJoerg Roedel <jroedel@suse.de>2015-06-11 09:42:22 +0200
commit07f643a35d6b50f0f091444f07db1353188e787e (patch)
tree8952a6c392919fecdd5c407c734915d14c0b9d3e /drivers/iommu
parentiommu/amd: Support IOMMU_DOMAIN_DMA type allocation (diff)
downloadlinux-dev-07f643a35d6b50f0f091444f07db1353188e787e.tar.xz
linux-dev-07f643a35d6b50f0f091444f07db1353188e787e.zip
iommu/amd: Support IOMMU_DOMAIN_IDENTITY type allocation
Add support to allocate direct mapped domains through the IOMMU-API. Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/iommu')
-rw-r--r--drivers/iommu/amd_iommu.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c
index 27300aece203..188b81d56ac4 100644
--- a/drivers/iommu/amd_iommu.c
+++ b/drivers/iommu/amd_iommu.c
@@ -2996,6 +2996,13 @@ static struct iommu_domain *amd_iommu_domain_alloc(unsigned type)
}
pdomain = &dma_domain->domain;
break;
+ case IOMMU_DOMAIN_IDENTITY:
+ pdomain = protection_domain_alloc();
+ if (!pdomain)
+ return NULL;
+
+ pdomain->mode = PAGE_MODE_NONE;
+ break;
default:
return NULL;
}