aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/tboot.c
diff options
context:
space:
mode:
authorKeir Fraser <keir@xen.org>2010-12-17 10:46:43 +0000
committerKeir Fraser <keir@xen.org>2010-12-17 10:46:43 +0000
commit6c298ecc1fc3c8e65be0f59e3c2095f29f59aa26 (patch)
treed038057523d058998b00c0c56450234b09240156 /xen/arch/x86/tboot.c
parent00b8b6c5db3a87d07ed8dd7eb7cf390ce8734a00 (diff)
downloadxen-6c298ecc1fc3c8e65be0f59e3c2095f29f59aa26.tar.gz
xen-6c298ecc1fc3c8e65be0f59e3c2095f29f59aa26.tar.bz2
xen-6c298ecc1fc3c8e65be0f59e3c2095f29f59aa26.zip
vtd: Reinstate ACPI DMAR on system shutdown or S3/S4/S5.
Signed-off-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/tboot.c')
-rw-r--r--xen/arch/x86/tboot.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/xen/arch/x86/tboot.c b/xen/arch/x86/tboot.c
index ae2d620099..cab39c440e 100644
--- a/xen/arch/x86/tboot.c
+++ b/xen/arch/x86/tboot.c
@@ -5,6 +5,7 @@
#include <xen/sched.h>
#include <xen/domain_page.h>
#include <xen/iommu.h>
+#include <xen/acpi.h>
#include <asm/fixmap.h>
#include <asm/page.h>
#include <asm/processor.h>
@@ -475,13 +476,7 @@ int __init tboot_parse_dmar_table(acpi_table_handler dmar_handler)
/* acpi_parse_dmar() zaps APCI DMAR signature in TXT heap table */
/* but dom0 will read real table, so must zap it there too */
- dmar_table = NULL;
- acpi_get_table(ACPI_SIG_DMAR, 0, &dmar_table);
- if ( dmar_table != NULL )
- {
- dmar_table->signature[0] = 'X';
- dmar_table->checksum -= 'X'-'D';
- }
+ acpi_dmar_zap();
return rc;
}