Commit 4b8d18c0 authored by Lu Baolu's avatar Lu Baolu Committed by Joerg Roedel
Browse files

iommu/vt-d: Remove INTEL_IOMMU_BROKEN_GFX_WA



Commit 62edf5dc ("intel-iommu: Restore DMAR_BROKEN_GFX_WA option for
broken graphics drivers") was introduced 24 years ago as a temporary
workaround for graphics drivers that used physical addresses for DMA and
avoided DMA APIs. This workaround was disabled by default.

As 24 years have passed, it is expected that graphics driver developers
have migrated their drivers to use kernel DMA APIs. Therefore, this
workaround is no longer required and could been removed.

The Intel iommu driver also provides a "igfx_off" option to turn off
the DMA translation for the graphic dedicated IOMMU. Hence, there is
really no good reason to keep this config option.

Suggested-by: default avatarKevin Tian <kevin.tian@intel.com>
Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
Link: https://lore.kernel.org/r/20240130060823.57990-1-baolu.lu@linux.intel.com


Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent 54be6c6c
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -64,17 +64,6 @@ config INTEL_IOMMU_DEFAULT_ON
	  one is found. If this option is not selected, DMAR support can
	  be enabled by passing intel_iommu=on to the kernel.

config INTEL_IOMMU_BROKEN_GFX_WA
	bool "Workaround broken graphics drivers (going away soon)"
	depends on BROKEN && X86
	help
	  Current Graphics drivers tend to use physical address
	  for DMA and avoid using DMA APIs. Setting this config
	  option permits the IOMMU driver to set a unity map for
	  all the OS-visible memory. Hence the driver can continue
	  to use physical addresses for DMA, at least until this
	  option is removed in the 2.6.32 kernel.

config INTEL_IOMMU_FLOPPY_WA
	def_bool y
	depends on X86
+0 −4
Original line number Diff line number Diff line
@@ -2660,10 +2660,6 @@ static int __init init_dmars(void)
		iommu_set_root_entry(iommu);
	}

#ifdef CONFIG_INTEL_IOMMU_BROKEN_GFX_WA
	dmar_map_gfx = 0;
#endif

	if (!dmar_map_gfx)
		iommu_identity_mapping |= IDENTMAP_GFX;