Re: [PATCH] ALSA: hda/intel: Add MSI X870E Tomahawk to denylist by DMI ID
From: Mario Limonciello
Date: Fri Mar 27 2026 - 12:19:12 EST
On 3/27/26 10:57, Stuart Hayhurst wrote:
This motherboard uses USB audio instead, causing this driver to complain
about "no codecs found!".
Add it to the denylist to silence the warning.
The first attempt only matched on the PCI device, but this caused issues
for some laptops, so DMI match against the board as well.
Signed-off-by: Stuart Hayhurst <stuart.a.hayhurst@xxxxxxxxx>
Thanks!
Takashi,
Probably worth asking - why is the "no codecs found" ERR in the first place? There are obviously designs out there like this, should the ERR message be simmered down?
---
sound/hda/controllers/intel.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/sound/hda/controllers/intel.c b/sound/hda/controllers/intel.c
index 2edbcab597c8..8a7bd49e411f 100644
--- a/sound/hda/controllers/intel.c
+++ b/sound/hda/controllers/intel.c
@@ -2085,6 +2085,11 @@ static struct pci_device_id driver_denylist_ideapad_z570[] = {
{}
};
+static struct pci_device_id driver_denylist_msi_x870e[] = {
+ { PCI_DEVICE_SUB(0x1022, 0x15e3, 0x1462, 0xee59) }, /* MSI X870E Tomahawk WiFi */
+ {}
+};
+
/* DMI-based denylist, to be used when:
* - PCI subsystem IDs are zero, impossible to distinguish from valid sound cards.
* - Different modifications of the same laptop use different GPU models.
@@ -2098,6 +2103,14 @@ static const struct dmi_system_id driver_denylist_dmi[] = {
},
.driver_data = &driver_denylist_ideapad_z570,
},
+ {
+ /* PCI device matching alone incorrectly matches some laptops */
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "Micro-Star International Co., Ltd."),
+ DMI_MATCH(DMI_BOARD_NAME, "MAG X870E TOMAHAWK WIFI (MS-7E59)"),
+ },
+ .driver_data = &driver_denylist_msi_x870e,
+ },
{}
};