[alsa-devel] [PATCH] Mixer quirk for QuickCam E 3500

Alexey Fisher bug-track at fisher-privat.net
Tue Jul 21 23:10:42 CEST 2009


1. E3500 report cval->max more than it actually can handel, so if you
set 95% capture level it will be muted.
2. betwen cval->min and cval-max(real) is 2940 control units,
but real are only 7.
3. we found only 7 real control units, with cval->res = 384,
but alsa can't handel less than 10 controls, so make it more
and set cval->res = 192.

Signed-off-by: Alexey Fisher <bug-track at fisher-privat.net>
---
 sound/usb/usbmixer.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/sound/usb/usbmixer.c b/sound/usb/usbmixer.c
index 4bd3a7a..72562ee 100644
--- a/sound/usb/usbmixer.c
+++ b/sound/usb/usbmixer.c
@@ -995,6 +995,13 @@ static void build_feature_ctl(struct mixer_build *state, unsigned char *desc,
 	/* is not very clear from datasheets */
 	/* I hope that the min value is -15360 for newer firmware --jk */
 	switch (state->chip->usb_id) {
+	case USB_ID(0x046d, 0x09a4):
+		if (!strcmp(kctl->id.name, "Mic Capture Volume")) {
+			snd_printk(KERN_INFO "using volume control quirk for the QuickCam E3500\n");
+			cval->min = 6080;
+			cval->max = 8768;
+			cval->res = 192;
+		}
 	case USB_ID(0x0471, 0x0101):
 	case USB_ID(0x0471, 0x0104):
 	case USB_ID(0x0471, 0x0105):
-- 
1.6.3.3



More information about the Alsa-devel mailing list