diff options
author | Keir Fraser <keir@xen.org> | 2011-01-21 16:01:12 +0000 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2011-01-21 16:01:12 +0000 |
commit | 64e34cfdcadf72305a8d4e46986274d8c6098d1a (patch) | |
tree | 86fa6f5d839efd3e811babc3d69d58b9ec947a84 | |
parent | d5a17a5f20974ec8466d21e173ae26f282ff9547 (diff) | |
download | xen-64e34cfdcadf72305a8d4e46986274d8c6098d1a.tar.gz xen-64e34cfdcadf72305a8d4e46986274d8c6098d1a.tar.bz2 xen-64e34cfdcadf72305a8d4e46986274d8c6098d1a.zip |
[VTD][QUIRK] turn off Sandybridge IGD quirk by default
Turn off Sandybridge IGD quirk by default until potential issues such
as MMIO register conflict with OS device driver and proper locking in
preamble and postamble functions are addressed.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
-rw-r--r-- | xen/drivers/passthrough/vtd/quirks.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/xen/drivers/passthrough/vtd/quirks.c b/xen/drivers/passthrough/vtd/quirks.c index f6a7ac0294..f4f6060576 100644 --- a/xen/drivers/passthrough/vtd/quirks.c +++ b/xen/drivers/passthrough/vtd/quirks.c @@ -217,10 +217,15 @@ static void snb_vtd_ops_postamble(struct iommu* iommu) /* * call before VT-d translation enable and IOTLB flush operations. */ + +static int snb_igd_quirk; +boolean_param("snb_igd_quirk", snb_igd_quirk); + void vtd_ops_preamble_quirk(struct iommu* iommu) { cantiga_vtd_ops_preamble(iommu); - snb_vtd_ops_preamble(iommu); + if ( snb_igd_quirk ) + snb_vtd_ops_preamble(iommu); } /* @@ -228,7 +233,8 @@ void vtd_ops_preamble_quirk(struct iommu* iommu) */ void vtd_ops_postamble_quirk(struct iommu* iommu) { - snb_vtd_ops_postamble(iommu); + if ( snb_igd_quirk ) + snb_vtd_ops_postamble(iommu); } /* initialize platform identification flags */ |