]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values
authorGeoffrey D. Bennett <g@b4.vu>
Sun, 20 Jun 2021 16:46:45 +0000 (02:16 +0930)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 20 Jul 2021 14:02:11 +0000 (16:02 +0200)
[ Upstream commit c5d8e008032f3cd5f266d552732973a960b0bd4b ]

Mixer control put callbacks should return 1 if the value is changed.
Fix the sw_hw, level, pad, and button controls accordingly.

Signed-off-by: Geoffrey D. Bennett <g@b4.vu>
Link: https://lore.kernel.org/r/20210620164645.GA9221@m.b4.vu
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/usb/mixer_scarlett_gen2.c

index 2ea41c8eafd1c86c4bdffa9917e6e56918ec8ab0..b92319928ddd7b47e760987bcc2ff121b77d7285 100644 (file)
@@ -1184,6 +1184,8 @@ static int scarlett2_sw_hw_enum_ctl_put(struct snd_kcontrol *kctl,
        /* Send SW/HW switch change to the device */
        err = scarlett2_usb_set_config(mixer, SCARLETT2_CONFIG_SW_HW_SWITCH,
                                       index, val);
+       if (err == 0)
+               err = 1;
 
 unlock:
        mutex_unlock(&private->data_mutex);
@@ -1244,6 +1246,8 @@ static int scarlett2_level_enum_ctl_put(struct snd_kcontrol *kctl,
        /* Send switch change to the device */
        err = scarlett2_usb_set_config(mixer, SCARLETT2_CONFIG_LEVEL_SWITCH,
                                       index, val);
+       if (err == 0)
+               err = 1;
 
 unlock:
        mutex_unlock(&private->data_mutex);
@@ -1294,6 +1298,8 @@ static int scarlett2_pad_ctl_put(struct snd_kcontrol *kctl,
        /* Send switch change to the device */
        err = scarlett2_usb_set_config(mixer, SCARLETT2_CONFIG_PAD_SWITCH,
                                       index, val);
+       if (err == 0)
+               err = 1;
 
 unlock:
        mutex_unlock(&private->data_mutex);
@@ -1349,6 +1355,8 @@ static int scarlett2_button_ctl_put(struct snd_kcontrol *kctl,
        /* Send switch change to the device */
        err = scarlett2_usb_set_config(mixer, SCARLETT2_CONFIG_BUTTONS,
                                       index, val);
+       if (err == 0)
+               err = 1;
 
 unlock:
        mutex_unlock(&private->data_mutex);