[PATCH] ALSA: usb-audio: Fix Audio Advantage Micro II SPDIF switch

Cássio Gabriel posted 1 patch 1 month, 3 weeks ago
sound/usb/mixer_quirks.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] ALSA: usb-audio: Fix Audio Advantage Micro II SPDIF switch
Posted by Cássio Gabriel 1 month, 3 weeks ago
snd_microii_spdif_switch_put() returns 0 when the requested
vendor register value differs from the cached one.

This comparison was inverted by the resume-support conversion,
so real SPDIF switch toggles are ignored while no-op writes still
issue SET_CUR and report success.

Return early only when the requested value matches the cached one.

Fixes: 288673beae6c ("ALSA: usb-audio: Add resume support for MicroII SPDIF ctls")
Cc: stable@vger.kernel.org
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
---
 sound/usb/mixer_quirks.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/usb/mixer_quirks.c b/sound/usb/mixer_quirks.c
index a01510a855c2..6cd50cfc563b 100644
--- a/sound/usb/mixer_quirks.c
+++ b/sound/usb/mixer_quirks.c
@@ -2025,7 +2025,7 @@ static int snd_microii_spdif_switch_put(struct snd_kcontrol *kcontrol,
 	int err;
 
 	reg = ucontrol->value.integer.value[0] ? 0x28 : 0x2a;
-	if (reg != list->kctl->private_value)
+	if (reg == list->kctl->private_value)
 		return 0;
 
 	kcontrol->private_value = reg;

---
base-commit: 46b0e9075ce97e82726d45ce9b048840d0b4eec7
change-id: 20260417-microii-spdif-switch-fix-9d8b62193585

Best regards,
--  
Cássio Gabriel <cassiogabrielcontato@gmail.com>

Re: [PATCH] ALSA: usb-audio: Fix Audio Advantage Micro II SPDIF switch
Posted by Takashi Iwai 1 month, 3 weeks ago
On Wed, 22 Apr 2026 03:07:41 +0200,
Cássio Gabriel wrote:
> 
> snd_microii_spdif_switch_put() returns 0 when the requested
> vendor register value differs from the cached one.
> 
> This comparison was inverted by the resume-support conversion,
> so real SPDIF switch toggles are ignored while no-op writes still
> issue SET_CUR and report success.
> 
> Return early only when the requested value matches the cached one.
> 
> Fixes: 288673beae6c ("ALSA: usb-audio: Add resume support for MicroII SPDIF ctls")
> Cc: stable@vger.kernel.org
> Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>

Thanks, applied now.


Takashi