Skip to content

Commit 45beb31

Browse files
khfengbjorn-helgaas
authored andcommitted
PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken
We are seeing AMD Radeon Pro W5700 doesn't work when IOMMU is enabled: iommu ivhd0: AMD-Vi: Event logged [IOTLB_INV_TIMEOUT device=63:00.0 address=0x42b5b01a0] iommu ivhd0: AMD-Vi: Event logged [IOTLB_INV_TIMEOUT device=63:00.0 address=0x42b5b01c0] The error also makes graphics driver fail to probe the device. It appears to be the same issue as commit 5e89cd3 ("PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken") addresses, and indeed the same ATS quirk can workaround the issue. See-also: 5e89cd3 ("PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken") See-also: d28ca86 ("PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken") See-also: 9b44b0b ("PCI: Mark AMD Stoney GPU ATS as broken") Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=208725 Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Kai-Heng Feng <[email protected]> Signed-off-by: Bjorn Helgaas <[email protected]> Acked-by: Alex Deucher <[email protected]> Cc: [email protected]
1 parent 3f9a7a1 commit 45beb31

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

drivers/pci/quirks.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5192,7 +5192,8 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, 0x0422, quirk_no_ext_tags);
51925192
*/
51935193
static void quirk_amd_harvest_no_ats(struct pci_dev *pdev)
51945194
{
5195-
if (pdev->device == 0x7340 && pdev->revision != 0xc5)
5195+
if ((pdev->device == 0x7312 && pdev->revision != 0x00) ||
5196+
(pdev->device == 0x7340 && pdev->revision != 0xc5))
51965197
return;
51975198

51985199
pci_info(pdev, "disabling ATS\n");
@@ -5203,6 +5204,8 @@ static void quirk_amd_harvest_no_ats(struct pci_dev *pdev)
52035204
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x98e4, quirk_amd_harvest_no_ats);
52045205
/* AMD Iceland dGPU */
52055206
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6900, quirk_amd_harvest_no_ats);
5207+
/* AMD Navi10 dGPU */
5208+
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x7312, quirk_amd_harvest_no_ats);
52065209
/* AMD Navi14 dGPU */
52075210
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x7340, quirk_amd_harvest_no_ats);
52085211
#endif /* CONFIG_PCI_ATS */

0 commit comments

Comments
 (0)