* [PATCH] ALSA: hda: Force MSI for Hygon H34M51A board
@ 2026-10-22 8:54 rppxj178543
2026-10-23 13:34 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: rppxj178543 @ 2026-10-22 8:54 UTC (permalink / raw)
To: alsa-devel; +Cc: tiwai, perex, fuhao, linux-kernel, renpanpan
From: renpanpan <renpanpan@kylinos.cn>
The Hygon HDA controller (PCI 1d94:14a9) has AZX_DCAPS_NO_MSI set in
the PCI ID table to use legacy INTx, as MSI may lose interrupts under
heavy load on some Hygon platforms (commit 41212ff3e4ed ("ALSA: hda:
Add support for Hygon family 18h model 5h HD-Audio")).
However, on the Kunlun H34M51A board (PCI subsystem 1d94:c950) the
INTx interrupt line is not wired. /proc/interrupts shows zero count
for the HDA IRQ from boot, so the RIRB interrupt handler is never
called. Without RIRB processing, azx_rirb_get_response() times out
after 1 s, switches to polling mode, and the resulting slow codec
communication delays card registration by ~20 s and breaks
unsolicited jack-detection event delivery.
Force MSI on for subsystem 1d94:c950 by adding it to msi_deny_list
with value 1. The list is consulted in check_msi() before the
AZX_DCAPS_NO_MSI check, so H34M51A gets MSI enabled while other
Hygon platforms retain INTx.
Signed-off-by: renpanpan <renpanpan@kylinos.cn>
---
sound/hda/controllers/intel.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/hda/controllers/intel.c b/sound/hda/controllers/intel.c
index 24015c73a67f..fa36ed4c1153 100644
--- a/sound/hda/controllers/intel.c
+++ b/sound/hda/controllers/intel.c
@@ -1669,6 +1669,7 @@ static const struct snd_pci_quirk msi_deny_list[] = {
SND_PCI_QUIRK(0x1179, 0xfb44, "Toshiba Satellite C870", 0), /* AMD Hudson */
SND_PCI_QUIRK(0x1849, 0x0888, "ASRock", 0), /* Athlon64 X2 + nvidia */
SND_PCI_QUIRK(0xa0a0, 0x0575, "Aopen MZ915-M", 0), /* ICH6 */
+ SND_PCI_QUIRK(0x1d94, 0xc950, "Hygon H34M51A", 1), /* INTx broken */
{}
};
--
2.43.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] ALSA: hda: Force MSI for Hygon H34M51A board
2026-10-22 8:54 [PATCH] ALSA: hda: Force MSI for Hygon H34M51A board rppxj178543
@ 2026-10-23 13:34 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-10-23 13:34 UTC (permalink / raw)
To: rppxj178543; +Cc: alsa-devel, tiwai, perex, fuhao, linux-kernel, renpanpan
On Thu, 22 Oct 2026 10:54:38 +0200,
rppxj178543@163.com wrote:
>
> From: renpanpan <renpanpan@kylinos.cn>
>
> The Hygon HDA controller (PCI 1d94:14a9) has AZX_DCAPS_NO_MSI set in
> the PCI ID table to use legacy INTx, as MSI may lose interrupts under
> heavy load on some Hygon platforms (commit 41212ff3e4ed ("ALSA: hda:
> Add support for Hygon family 18h model 5h HD-Audio")).
>
> However, on the Kunlun H34M51A board (PCI subsystem 1d94:c950) the
> INTx interrupt line is not wired. /proc/interrupts shows zero count
> for the HDA IRQ from boot, so the RIRB interrupt handler is never
> called. Without RIRB processing, azx_rirb_get_response() times out
> after 1 s, switches to polling mode, and the resulting slow codec
> communication delays card registration by ~20 s and breaks
> unsolicited jack-detection event delivery.
>
> Force MSI on for subsystem 1d94:c950 by adding it to msi_deny_list
> with value 1. The list is consulted in check_msi() before the
> AZX_DCAPS_NO_MSI check, so H34M51A gets MSI enabled while other
> Hygon platforms retain INTx.
>
> Signed-off-by: renpanpan <renpanpan@kylinos.cn>
Applied now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-10-23 13:34 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-22 8:54 [PATCH] ALSA: hda: Force MSI for Hygon H34M51A board rppxj178543
2026-10-23 13:34 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®