The ASUS SupremeFX Hi-Fi (0b05:1826, 0b05:1827) does not survive USB
autosuspend. After a suspend/resume cycle the firmware degrades: HID
probes begin to fail and the descriptors it returns become corrupted,
until the device stops responding entirely and needs a physical power
cycle to recover.
Add QUIRK_FLAG_DISABLE_AUTOSUSPEND for both product IDs.
Verified on 7.2.6 through the quirk_flags module parameter, with no
code change, and with the local udev rules that had been forcing
power/control commented out, so the parameter was the only mechanism
in play. Both IDs were passed as
0b05:1827:disable_autosuspend;0b05:1826:disable_autosuspend
The device then stayed awake across 2.5 hours (runtime_suspended_time
remained 0), survived a system suspend/resume cycle, and continued to
work afterwards with no failed probes and no power cycle needed.
Signed-off-by: Roman Bolotov <hadros@ikeepitoblique.com>
---
sound/usb/quirks.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index c659d6d..7d76c33 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2517,6 +2517,10 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_CTL_MSG_DELAY_1M),
DEVICE_FLG(0x0a73, 0x003a, /* Mackie DLZ Creator XS */
QUIRK_FLAG_ALWAYS_SET_RATE),
+ DEVICE_FLG(0x0b05, 0x1826, /* ASUS SupremeFX Hi-Fi */
+ QUIRK_FLAG_DISABLE_AUTOSUSPEND),
+ DEVICE_FLG(0x0b05, 0x1827, /* ASUS SupremeFX Hi-Fi */
+ QUIRK_FLAG_DISABLE_AUTOSUSPEND),
DEVICE_FLG(0x0b05, 0x18a6, /* ASUSTek Computer, Inc. */
QUIRK_FLAG_MIXER_CAPTURE_MIN_MUTE),
DEVICE_FLG(0x0b0e, 0x0349, /* Jabra 550a */
--
2.55.0