Skip to content

Commit 9b38ff5

Browse files
acelanMingcongBai
authored andcommitted
UBUNTU: SAUCE: iommu/intel: disable DMAR for SKL integrated gfx
BugLink: https://bugs.launchpad.net/bugs/2062951 This patch addresses a screen flickering issues on systems with Skylake integrated graphics, identified under Ubuntu kernel version 6.8.0-x. Initially thought to be a regression from kernel 6.6, it has been determined that the flickering was caused by changes to the Ubuntu kernel configuration, specifically the enabling of CONFIG_INTEL_IOMMU_DEFAULT_ON and CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON. 77e530c ("UBUNTU: [Config] enable Intel DMA remapping by default") The problem persists in the latest drm tip, and there is an upstream bug addressing the issue. https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11504 Before there is a real fix for the issue, we may have to add the affected GPU IDs to the quirk to disable its DMAR. Signed-off-by: Chia-Lin Kao (AceLan) <[email protected]> Acked-by: Kuan-Ying Lee <[email protected]> Acked-by: Aaron Jauregui <[email protected]> Signed-off-by: Timo Aaltonen <[email protected]> Link: https://bugs.launchpad.net/bugs/2062951 Link: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11504 Signed-off-by: RawDiamondMC <[email protected]>
1 parent 60db492 commit 9b38ff5

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

drivers/iommu/intel/iommu.c

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4550,6 +4550,33 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1632, quirk_iommu_igfx);
45504550
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163A, quirk_iommu_igfx);
45514551
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163D, quirk_iommu_igfx);
45524552

4553+
/* SKL */
4554+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1906, quirk_iommu_igfx);
4555+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1913, quirk_iommu_igfx);
4556+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x190E, quirk_iommu_igfx);
4557+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1915, quirk_iommu_igfx);
4558+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1902, quirk_iommu_igfx);
4559+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x190A, quirk_iommu_igfx);
4560+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x190B, quirk_iommu_igfx);
4561+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1917, quirk_iommu_igfx);
4562+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1916, quirk_iommu_igfx);
4563+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1921, quirk_iommu_igfx);
4564+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x191E, quirk_iommu_igfx);
4565+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1912, quirk_iommu_igfx);
4566+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x191A, quirk_iommu_igfx);
4567+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x191B, quirk_iommu_igfx);
4568+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x191D, quirk_iommu_igfx);
4569+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1923, quirk_iommu_igfx);
4570+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1926, quirk_iommu_igfx);
4571+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1927, quirk_iommu_igfx);
4572+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x192A, quirk_iommu_igfx);
4573+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x192B, quirk_iommu_igfx);
4574+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x192D, quirk_iommu_igfx);
4575+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1932, quirk_iommu_igfx);
4576+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x193A, quirk_iommu_igfx);
4577+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x193B, quirk_iommu_igfx);
4578+
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x193D, quirk_iommu_igfx);
4579+
45534580
/* disable IPU dmar support */
45544581
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, quirk_iommu_ipu);
45554582

0 commit comments

Comments
 (0)