Bug 199677 - Audigy 2 broken on Ryzen B350 with enabled IOMMU
Summary: Audigy 2 broken on Ryzen B350 with enabled IOMMU
Status: RESOLVED PATCH_ALREADY_AVAILABLE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: platform_x86_64@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-05-10 17:13 UTC by Johann Hackl
Modified: 2018-07-26 20:02 UTC (History)
0 users

See Also:
Kernel Version: All
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Johann Hackl 2018-05-10 17:13:07 UTC
I own a Ryzen based computer with an MSI B350 PC-MATE mainboard, which has 2 legacy PCI slots. I installed an Audigy 2 sound card in one of the slots. The problem is that some issue with the IOMMU prevents the card from functioning properly. During playback, audible high-pitched blips can be heard, aswell as crackling. After a while, audio cuts out completely until a full reboot. Additionally, the output of 'dmesg' is flooded with the following errors.

>[   11.272594] amd_iommu_report_page_fault: 501 callbacks suppressed
>[   11.272598] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.274578] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.274595] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff9620c0 flags=0x0000]
>[   11.274607] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.282476] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962040 flags=0x0000]
>[   11.297459] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.299279] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.299296] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff9620c0 flags=0x0000]
>[   11.299309] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]
>[   11.299383] AMD-Vi: Event logged [IO_PAGE_FAULT device=18:00.0
>domain=0x000d address=0x00000000ff962000 flags=0x0000]

To get around this issue, I had to set "iommu=off" as a kernel start parameter. I observed this behaviour on two different systems. B350 doesn't have native PCI, so the slots are connected via PCIe to PCI bridges by either Asmedia or ITE. The same behaviour can also be replicated with different variations of the Audigy 2 card, such as the Audigy 2 ZS. The issue exists on possibly all distributions, I tried Ubuntu, Debian, Fedora and Arch Linux so far. 'lspci' outputs the following.

>00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Root Complex
>00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
>I/O Memory Management Unit
>00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe GPP Bridge
>00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe GPP Bridge
>00:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Internal PCIe GPP Bridge 0 to Bus B
>00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) PCIe Dummy Host Bridge
>00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Internal PCIe GPP Bridge 0 to Bus B
>00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev
>59)
>00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
>00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 0
>00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 1
>00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 2
>00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 3
>00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 4
>00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 5
>00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 6
>00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) Data Fabric: Device 18h; Function 7
>03:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset
>USB 3.1 xHCI Controller (rev 02)
>03:00.1 SATA controller: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset
>SATA Controller (rev 02)
>03:00.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Device 43b2 (rev 02)
>16:00.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe
>Port (rev 02)
>16:01.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe
>Port (rev 02)
>16:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe
>Port (rev 02)
>17:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge
>(rev 03)
>18:01.0 Multimedia audio controller: Creative Labs
>EMU10k2/CA0100/CA0102/CA10200 [Sound Blaster Audigy Series] (rev 04)
>18:01.1 Input device controller: Creative Labs SB Audigy Game Port (rev 04)
>18:01.2 FireWire (IEEE 1394): Creative Labs SB Audigy FireWire Port (rev 04)
>1e:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411
>PCI Express Gigabit Ethernet Controller (rev 15)
>1f:00.0 SATA controller: Marvell Technology Group Ltd. Device 9215 (rev 11)
>20:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI]
>Ellesmere [Radeon RX 470/480] (rev c7)
>20:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon
>RX 580]
>21:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc.
>[AMD] Device 145a
21:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Platform Security Processor
>21:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models
>00h-0fh) USB 3.0 Host Controller
>22:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc.
>[AMD] Device 1455
>22:00.2 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA
>Controller [AHCI mode] (rev 51)

Note You need to log in before you can comment on or make changes to this bug.