summary refs log tree commit diff
path: root/sound
diff options
context:
space:
mode:
authorFederico Cuello <fedux@fedux.com.ar>2018-05-09 00:13:38 +0200
committerTakashi Iwai <tiwai@suse.de>2018-05-13 18:53:53 +0200
commit21493316a3c4598f308d5a9fa31cc74639c4caff (patch)
treed0e2a2ff282d33c3a6dbdaacdec05e8fb468c0e5 /sound
parentc8beccc19b92f5172994c0732db689c08f4f98e5 (diff)
downloadlinux-21493316a3c4598f308d5a9fa31cc74639c4caff.tar.gz
ALSA: usb: mixer: volume quirk for CM102-A+/102S+
Currently it's not possible to set volume lower than 26% (it just mutes).

Also fixes this warning:

  Warning! Unlikely big volume range (=9472), cval->res is probably wrong.
  [13] FU [PCM Playback Volume] ch = 2, val = -9473/-1/1

, and volume works fine for full range.

Signed-off-by: Federico Cuello <fedux@fedux.com.ar>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/usb/mixer.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index 344d7b069d59..bb5ab7a7dfa5 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -967,6 +967,14 @@ static void volume_control_quirks(struct usb_mixer_elem_info *cval,
 		}
 		break;
 
+	case USB_ID(0x0d8c, 0x0103):
+		if (!strcmp(kctl->id.name, "PCM Playback Volume")) {
+			usb_audio_info(chip,
+				 "set volume quirk for CM102-A+/102S+\n");
+			cval->min = -256;
+		}
+		break;
+
 	case USB_ID(0x0471, 0x0101):
 	case USB_ID(0x0471, 0x0104):
 	case USB_ID(0x0471, 0x0105):