Kernels with no iommu support cannot ever need the Ironlake work-around, so never enable it in that case.
Might be better to completely remove the work-around from the kernel in this case?
Signed-off-by: Keith Packard keithp@keithp.com Cc: Ben Widawsky ben@bwidawsk.net --- drivers/char/agp/intel-gtt.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c index 3a8d448..222190f 100644 --- a/drivers/char/agp/intel-gtt.c +++ b/drivers/char/agp/intel-gtt.c @@ -1183,6 +1183,7 @@ static void gen6_cleanup(void) { }
+#ifdef CONFIG_INTEL_IOMMU /* Certain Gen5 chipsets require require idling the GPU before * unmapping anything from the GTT when VT-d is enabled. */ @@ -1201,6 +1202,7 @@ static inline int needs_idle_maps(void)
return 0; } +#endif
static int i9xx_setup(void) { @@ -1236,8 +1238,10 @@ static int i9xx_setup(void) intel_private.gtt_bus_addr = reg_addr + gtt_offset; }
+#ifdef CONFIG_INTEL_IOMMU if (needs_idle_maps()) intel_private.base.do_idle_maps = 1; +#endif
intel_i9xx_setup_flush();