From 379ba557f555245eb9cb6c2a9d7a1eef704c786f Mon Sep 17 00:00:00 2001 From: Zak Brighton Knight Date: Mon, 26 Oct 2026 14:09:34 +0000 Subject: [PATCH] ALSA: usb-audio: Skip probe-time interface setup for MSI MAG X570S ALC4080 The Realtek ALC4080 USB audio on the MSI MAG X570S Tomahawk Max WiFi (USB ID 0db0:a073, the same ID as the MAG X570S Torpedo Max mixer map) has six streaming interfaces with 68 altsettings in total. For each of them, __snd_usb_parse_audio_interface() switches the interface to alt 0, initialises pitch and the sample rate and switches back, which costs about 64 ms per altsetting here, mostly spent inside usb_set_interface(). Probing the card therefore takes about 6.4 seconds, on every boot. That setup is redundant with snd_usb_endpoint_prepare() at stream-open time, so set QUIRK_FLAG_SKIP_IFACE_SETUP for this device. Tested on 7.2.11 with the equivalent quirk_flags=0db0:a073:skip_iface_setup module option, re-probing the device via its sysfs "authorized" attribute: probe time went from 6.45 s to 0.57 s, all 68 altsettings are still listed in /proc/asound/cardX/stream*, and playback and capture work. Assisted-by: LLM Signed-off-by: Zak Brighton Knight Link: https://patch.msgid.link/20261026140934.3575940-1-zakbrightonknight@gmail.com Signed-off-by: Takashi Iwai --- sound/usb/quirks.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index b6be3a80d9c9..4ec1f2a0b359 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -2661,6 +2661,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = { QUIRK_FLAG_CTL_MSG_DELAY_1M | QUIRK_FLAG_MIXER_PLAYBACK_MIN_MUTE), DEVICE_FLG(0x0d8c, 0x0102, /* C-Media CM6206 */ QUIRK_FLAG_GET_SAMPLE_RATE), + DEVICE_FLG(0x0db0, 0xa073, /* MSI MAG X570S Tomahawk/Torpedo Max (ALC4080) */ + QUIRK_FLAG_SKIP_IFACE_SETUP), DEVICE_FLG(0x0e0b, 0xfa01, /* Feaulle Rainbow */ QUIRK_FLAG_GET_SAMPLE_RATE | QUIRK_FLAG_MIXER_PLAYBACK_MIN_MUTE), DEVICE_FLG(0x0ecb, 0x205c, /* JBL Quantum610 Wireless */