I was having the exact same issue with my Gygabyte GA-990FXA-UD5 R5 and tech support told me that my board it was not Linux compatible, yeah right. I had issues with some USB ports and a PCIE capture card, if I disable IOMMU at BIOS my capture card stopped working and some USB ports too.
The solution is even more simpler, just add the following:
Code:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=fullflush iommu=pt"
Save it, rebuild with update-grup and reboot.
Before this my system was slow, the boot was also slow filling the screen with AMD-vi erros (AMD-Vi: Event logged IO_PAGE_FAULT), now is working like a charm.
Code:
[ 0.018400] AMD-Vi: Using IVHD type 0x10[ 0.018432] AMD-Vi: device: 00:00.2 cap: 0040 seg: 0 flags: 3e info 1300
[ 0.018433] AMD-Vi: mmio-addr: 00000000feb20000
[ 0.018441] AMD-Vi: DEV_SELECT_RANGE_START devid: 00:00.0 flags: 00
[ 0.018441] AMD-Vi: DEV_RANGE_END devid: 00:00.2
[ 0.018442] AMD-Vi: DEV_SELECT devid: 00:02.0 flags: 00
[ 0.018443] AMD-Vi: DEV_SELECT_RANGE_START devid: 01:00.0 flags: 00
[ 0.018443] AMD-Vi: DEV_RANGE_END devid: 01:00.1
[ 0.018444] AMD-Vi: DEV_SELECT devid: 00:09.0 flags: 00
[ 0.018444] AMD-Vi: DEV_SELECT devid: 02:00.0 flags: 00
[ 0.018445] AMD-Vi: DEV_SELECT devid: 00:0a.0 flags: 00
[ 0.018445] AMD-Vi: DEV_SELECT devid: 03:00.0 flags: 00
[ 0.018446] AMD-Vi: DEV_SELECT devid: 00:0c.0 flags: 00
[ 0.018446] AMD-Vi: DEV_SELECT devid: 04:00.0 flags: 00
[ 0.018447] AMD-Vi: DEV_ALIAS_RANGE devid: 05:01.0 flags: 00 devid_to: 05:00.0
[ 0.018447] AMD-Vi: DEV_RANGE_END devid: 05:1f.7
[ 0.018451] AMD-Vi: DEV_SELECT devid: 00:11.0 flags: 00
[ 0.018451] AMD-Vi: DEV_SELECT_RANGE_START devid: 00:12.0 flags: 00
[ 0.018452] AMD-Vi: DEV_RANGE_END devid: 00:12.2
[ 0.018452] AMD-Vi: DEV_SELECT_RANGE_START devid: 00:13.0 flags: 00
[ 0.018453] AMD-Vi: DEV_RANGE_END devid: 00:13.2
[ 0.018453] AMD-Vi: DEV_SELECT devid: 00:14.0 flags: d7
[ 0.018454] AMD-Vi: DEV_SELECT devid: 00:14.1 flags: 00
[ 0.018454] AMD-Vi: DEV_SELECT devid: 00:14.3 flags: 00
[ 0.018455] AMD-Vi: DEV_SELECT devid: 00:14.4 flags: 00
[ 0.018455] AMD-Vi: DEV_ALIAS_RANGE devid: 06:00.0 flags: 00 devid_to: 00:14.4
[ 0.018456] AMD-Vi: DEV_RANGE_END devid: 06:1f.7
[ 0.018459] AMD-Vi: DEV_SELECT devid: 00:14.5 flags: 00
[ 0.018460] AMD-Vi: DEV_SELECT devid: 00:15.0 flags: 00
[ 0.018460] AMD-Vi: DEV_SELECT devid: 07:00.0 flags: 00
[ 0.018461] AMD-Vi: DEV_SELECT devid: 00:15.2 flags: 00
[ 0.018461] AMD-Vi: DEV_SELECT devid: 08:00.0 flags: 00
[ 0.018462] AMD-Vi: DEV_SELECT devid: 00:15.3 flags: 00
[ 0.018462] AMD-Vi: DEV_SELECT devid: 09:00.0 flags: 00
[ 0.018463] AMD-Vi: DEV_SELECT_RANGE_START devid: 00:16.0 flags: 00
[ 0.018463] AMD-Vi: DEV_RANGE_END devid: 00:16.2
[ 0.018464] AMD-Vi: DEV_SPECIAL(IOAPIC[9]) devid: 00:14.0
[ 0.018465] AMD-Vi: DEV_SPECIAL(HPET[0]) devid: 00:14.0
[ 0.018466] AMD-Vi: DEV_SPECIAL(IOAPIC[10]) devid: 00:00.1
[ 1.988570] AMD-Vi: Found IOMMU at 0000:00:00.2 cap 0x40
[ 1.988570] AMD-Vi: Interrupt remapping enabled
[ 1.988687] AMD-Vi: IO/TLB flush on unmap enabled
[ 1.988712] perf: AMD NB counters detected
[ 1.989070] perf: AMD IBS detected (0x000000ff)
[ 1.992452] AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
[ 1.992452] AMD IOMMUv2 functionality not available on this system
[ 1.914533] iommu: Adding device 0000:00:00.0 to group 0
[ 1.914547] iommu: Using direct mapping for device 0000:00:00.0
[ 1.914585] iommu: Adding device 0000:00:02.0 to group 1
[ 1.914596] iommu: Using direct mapping for device 0000:00:02.0
[ 1.914632] iommu: Adding device 0000:00:09.0 to group 2
[ 1.914643] iommu: Using direct mapping for device 0000:00:09.0
[ 1.914681] iommu: Adding device 0000:00:0a.0 to group 3
[ 1.914692] iommu: Using direct mapping for device 0000:00:0a.0
[ 1.914727] iommu: Adding device 0000:00:0c.0 to group 4
[ 1.914738] iommu: Using direct mapping for device 0000:00:0c.0
[ 1.914773] iommu: Adding device 0000:00:11.0 to group 5
[ 1.914784] iommu: Using direct mapping for device 0000:00:11.0
[ 1.914828] iommu: Adding device 0000:00:12.0 to group 6
[ 1.914839] iommu: Using direct mapping for device 0000:00:12.0
[ 1.914853] iommu: Adding device 0000:00:12.2 to group 6
[ 1.914896] iommu: Adding device 0000:00:13.0 to group 7
[ 1.914908] iommu: Using direct mapping for device 0000:00:13.0
[ 1.914922] iommu: Adding device 0000:00:13.2 to group 7
[ 1.914957] iommu: Adding device 0000:00:14.0 to group 8
[ 1.914968] iommu: Using direct mapping for device 0000:00:14.0
[ 1.915003] iommu: Adding device 0000:00:14.1 to group 9
[ 1.915014] iommu: Using direct mapping for device 0000:00:14.1
[ 1.915048] iommu: Adding device 0000:00:14.3 to group 10
[ 1.915059] iommu: Using direct mapping for device 0000:00:14.3
[ 1.915117] iommu: Adding device 0000:00:14.4 to group 11
[ 1.915128] iommu: Using direct mapping for device 0000:00:14.4
[ 1.915164] iommu: Adding device 0000:00:14.5 to group 12
[ 1.915175] iommu: Using direct mapping for device 0000:00:14.5
[ 1.915228] iommu: Adding device 0000:00:15.0 to group 13
[ 1.915239] iommu: Using direct mapping for device 0000:00:15.0
[ 1.915255] iommu: Adding device 0000:00:15.2 to group 13
[ 1.915271] iommu: Adding device 0000:00:15.3 to group 13
[ 1.915315] iommu: Adding device 0000:00:16.0 to group 14
[ 1.915326] iommu: Using direct mapping for device 0000:00:16.0
[ 1.915341] iommu: Adding device 0000:00:16.2 to group 14
[ 1.915392] iommu: Adding device 0000:01:00.0 to group 15
[ 1.915403] iommu: Using direct mapping for device 0000:01:00.0
[ 1.915423] iommu: Adding device 0000:01:00.1 to group 15
[ 1.915460] iommu: Adding device 0000:02:00.0 to group 16
[ 1.915471] iommu: Using direct mapping for device 0000:02:00.0
[ 1.915508] iommu: Adding device 0000:03:00.0 to group 17
[ 1.915520] iommu: Using direct mapping for device 0000:03:00.0
[ 1.915556] iommu: Adding device 0000:04:00.0 to group 18
[ 1.915567] iommu: Using direct mapping for device 0000:04:00.0
[ 1.915575] iommu: Adding device 0000:05:04.0 to group 18
[ 1.915587] iommu: Adding device 0000:07:00.0 to group 13
[ 1.915596] iommu: Adding device 0000:08:00.0 to group 13
[ 1.915606] iommu: Adding device 0000:09:00.0 to group 13
lspci
Code:
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD9x0/RX980 Host Bridge (rev 02)
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD/ATI] RD890S/RD990 I/O Memory Management Unit (IOMMU)
00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GFX port 0)
00:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GPP Port 4)
00:0a.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GPP Port 5)
00:0c.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD990 PCI to PCI bridge (PCI Express GFX2 port 1)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (rev 40)
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 42)
00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller (rev 40)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller (rev 40)
00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (rev 40)
00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
00:15.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0)
00:15.2 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB900 PCI to PCI bridge (PCIE port 2)
00:15.3 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB900 PCI to PCI bridge (PCIE port 3)
00:16.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:16.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 5
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde PRO [Radeon HD 7750/8740 / R7 250E]
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]
02:00.0 USB controller: VIA Technologies, Inc. VL805 USB 3.0 Host Controller (rev 01)
03:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller (rev 12)
04:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 03)
05:04.0 Multimedia audio controller: C-Media Electronics Inc CMI8788 [Oxygen HD Audio]
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)
08:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller (rev 12)
09:00.0 Multimedia video controller: Blackmagic Design Intensity Pro