cancel
Showing results for 
Search instead for 
Did you mean: 

Line-Based vs. Message Signaled-Based Interrupts [ Possible Audio popping fix? ]

xator
Level 8
Hi there,

This post is a WIP since I'm still testing it out. As many of you may know, there's an issue on some systems, specifically Audio popping and crackling from z170 till z390. If you search through the forums, there's an endless discussion wether it's ASUS fault or Realtek's. Either way, none of them seem to be fixing it. There are some temporal fixes like disabling fastboot or so, but nothing really reassuring.

I've come across some discovery on my system, and although I don't know if It will work on yours, I wanted to share this in case it helps to someone.

BEFORE reading more, please know that YOUR SYSTEM MAY NOT WORK PROPERLY AFTER APPLYING THIS FIX, and I AM NOT RESPONSIBLE for any damage.

PROCEED AT YOU OWN RISK.

PLEASE, DO A SYSTEM RESTORE POINT BEFORE FURTHER TESTING.
In case something goes wrong, you can always restore your system's registry back.

I came across a forum from Guru3D, about how IRQs of onboard devices are being used by Windows. It turns out that, most of our system should be able to handle this by MSI mode, and not Line Based, which is the old way. This should improve latency radically.

You can check if your devices are being used on Line-Based Interrupts, or MSInterrupts easy, just following this copy & pasted instructions from that forum:


Checking for PCI devices working in MSI-mode.

Go to Device Manager.
Click in menu "View -> Resources by type".
Expand "Interrupt request (IRQ)" node of the tree.
Scroll down to "(PCI) 0x... (...) device name" device nodes.

Devices with positive number for IRQ (like "(PCI) 0x00000011 (17) ...") are in Line-based interrupts-mode.
Devices with negative number for IRQ (like "(PCI) 0xFFFFFFFA (-6) ...") are in Message Signaled-based Interrupts-mode.


So my audio device, in fact both of them, were on Line Based . So I forced them to MSI Mode using this steps:


Trying to switch device to MSI-mode.

You must locate device`s registry key.
Invoke device properties dialog.
Switch to "Details" tab.
Select "Device Instance Path" in "Property" combo-box.
Write down "Value"
(for example "PCI\VEN_1002&DEV_4397&SUBSYS_1609103C&REV_00\3&11583659&0&B0").
This is relative registry path under the key "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\".

Go to that device`s registry key ("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\VEN_1002&DEV_4397&SUBSYS_1609103C&REV_00\3&11583659&0&B0")
and locate down the subkey "Device Parameters\Interrupt Management".
For devices working in MSI-mode there will be subkey "Device Parameters\Interrupt Management\MessageSignaledInterruptProperties"
and in that subkey there will be DWORD value "MSISupported" equals to "0x00000001".
To switch device from legacy- to MSI-mode just add these subkey and value.


Then I rebooted and even with Fastboot mode on, there is no more audio popping or crackling on my end.

Again, this fix is just WIP, and I don't even know if it is related with audio issues or not. I came across it accidentally, and I'm currently testing if it lasts. Also, If you want to switch your other devices to MSI mode, there's a easy TOOL made by the guy on the forum. Please, take a read as it is very interesting:

Forum Thread Link

I don't know if this link is allowed, so if It is not, please tell me and I'll remove it. I'm posting it as it's not my discovery, If it fixes something for you as well, credits go to mbk1969, from Guru3D.
6,541 Views
3 REPLIES 3

Yodogyodog
Level 7
Going to try this now thanks.


My Realtek, Nvidia 1080gtx ti, and Nvidia HD audio were all the legacy method. Hope this fixes some issues.

Yodogyodog wrote:
Going to try this now thanks.


My Realtek, Nvidia 1080gtx ti, and Nvidia HD audio were all the legacy method. Hope this fixes some issues.


Same devices that I had on legacy. Since I posted that, I've had no issues with audio. Good Luck , and report back 🙂

DonkSpirit
Level 7
My "solution" is this: I restart my PC. On first start there's popping, crackling and desyncs (e.g. youtube videos). On restart there are no issues at all. It doesn't matter, if it's fast start or not.

Does that make any sense to you guys?