aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2008-11-17 15:07:17 +0100
committerJoerg Roedel <joerg.roedel@amd.com>2008-11-18 15:43:23 +0100
commite5e1f606ecbf67e52ebe2df5d14f8b94ec6544d0 (patch)
tree07ca4cda790e3937f0893b41b3777ce6492ef9f4
parent4e14e833ac3b97a4aa8803eea49f899adc5bb5f4 (diff)
AMD IOMMU: add parameter to disable device isolation
Impact: add a new AMD IOMMU kernel command line parameter Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
-rw-r--r--Documentation/kernel-parameters.txt2
-rw-r--r--arch/x86/kernel/amd_iommu_init.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 9fa6508892c..b56ee02d251 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -295,6 +295,8 @@ and is between 256 and 4096 characters. It is defined in the file
isolate - enable device isolation (each device, as far
as possible, will get its own protection
domain)
+ share - put every device behind one IOMMU into the
+ same protection domain
fullflush - enable flushing of IO/TLB entries when
they are unmapped. Otherwise they are
flushed before they will be reused, which
diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c
index 0cdcda35a05..838a2e1d5bb 100644
--- a/arch/x86/kernel/amd_iommu_init.c
+++ b/arch/x86/kernel/amd_iommu_init.c
@@ -1213,6 +1213,8 @@ static int __init parse_amd_iommu_options(char *str)
for (; *str; ++str) {
if (strncmp(str, "isolate", 7) == 0)
amd_iommu_isolate = 1;
+ if (strncmp(str, "share", 5) == 0)
+ amd_iommu_isolate = 0;
if (strncmp(str, "fullflush", 11) == 0)
amd_iommu_unmap_flush = true;
}