| From 4c3cbf8b3dbcc13d756e3d04d8be1cb6b27bda49 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 21 Jun 2021 02:16:45 +0930 |
| Subject: ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values |
| |
| From: Geoffrey D. Bennett <g@b4.vu> |
| |
| [ 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 | 8 ++++++++ |
| 1 file changed, 8 insertions(+) |
| |
| diff --git a/sound/usb/mixer_scarlett_gen2.c b/sound/usb/mixer_scarlett_gen2.c |
| index 2ea41c8eafd1..b92319928ddd 100644 |
| --- a/sound/usb/mixer_scarlett_gen2.c |
| +++ b/sound/usb/mixer_scarlett_gen2.c |
| @@ -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); |
| -- |
| 2.30.2 |
| |