← Back to team overview

kernel-packages team mailing list archive

[Bug 1265103] Re: 046d:09a4 USB mixer quirks not applied correctly for Logitech E3500 webcam microphone

 

** Tags added: cherry-pick

** Changed in: linux (Ubuntu)
       Status: Confirmed => Triaged

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1265103

Title:
  046d:09a4 USB mixer quirks not applied correctly for Logitech E3500
  webcam microphone

Status in “linux” package in Ubuntu:
  Triaged

Bug description:
  Having problems getting microphone working on Logitech E3500 webcam.
  It's worked before but I can't say when.

  I noticed messages from snd-usb-audio relating to "Unlikely big volume
  range" which at first glance at the code in sound/usb/mixer.c in
  volume_control_quirks shouldn't happen since the quirk handler should
  fix things.

  So I added some debug into the module and see that the quirk handler
  code compares kctl->id.name against "Mic Capture Volume" and this test
  fails every time.

  This appears to be because the quirk handler code is called via
  get_min_max_with_quirks from build_feature_ctl immediately before the
  block of code which creates the kctl->id.name string.

  With my debug added to sound/usb/mixer.c, I see:

  [53438.864077] usb 1-1: new high-speed USB device number 8 using ehci_hcd
  [53439.105737] uvcvideo: Found UVC 1.00 device <unnamed> (046d:09a4)
  [53439.133317] input: UVC Camera (046d:09a4) as /devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/input/input12
  [53440.136199] 8:3:1: cannot get freq at ep 0x86
  [53440.136447] usb_audio:1165:f11b3700::
  Debug line 1165 shows the current value of kctl->id.name is empty just before the call to get_min_max_with_quirks in build_feature_ctl, just before the "switch (control)" line.

  [53440.136456] usb_audio:936:f11b3700
  [53440.136463] usb_audio: 806 f11b3700
  Debug line at 806 at top of volume_control_quirks shows valid kctl is passed in

  [53440.136469] usb_audio:826::
  Debug line at 826 shows kctl->id.name is empty so no quirk is applied

  [53440.136480] usb_audio:1216:f11b3700:Mic Capture Switch:
  Debug line at 1216 shows that after the "switch (control)" block the kctl->id.name is now set up

  [53440.136492] usb_audio:1165:f11b3200::
  Repeat the above for the Mic Capture Volume, the interesting control

  [53440.907700] usb_audio:936:f11b3200
  [53440.907710] usb_audio: 806 f11b3200
  Debug line at 806 at top of volume_control_quirks shows valid kctl is passed in

  [53440.907717] usb_audio:826::
  Debug line at 826 shows kctl->id.name is empty so no quirk is applied

  [53440.907728] usb_audio:1216:f11b3200:Mic Capture Volume:
  Debug line at 1216 shows that after the "switch (control)" block the kctl->id.name is now set up

  [53440.907736] usb_audio: Warning! Unlikely big volume range (=3072), cval->res is probably wrong.
  [53440.907748] usb_audio: [5] FU [Mic Capture Volume] ch = 1, val = 5888/8960/1
  And then we get the warning that the volume range is bad because the quirk handler didn't get applied

  My guess is that this causes the microphone to not have its input
  range adjusted as expected and thus it only ever picks up silence.

  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: linux-image-3.2.0-57-generic 3.2.0-57.87
  ProcVersionSignature: Ubuntu 3.2.0-57.87-generic 3.2.52
  Uname: Linux 3.2.0-57-generic i686
  AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
  ApportVersion: 2.0.1-0ubuntu17.6
  Architecture: i386
  AudioDevicesInUse:
   USER        PID ACCESS COMMAND
   /dev/snd/controlC1:  andy       2322 F.... pulseaudio
   /dev/snd/controlC0:  andy       2322 F.... pulseaudio
  CRDA: Error: [Errno 2] No such file or directory
  Card0.Amixer.info:
   Card hw:0 'I82801DBICH4'/'Intel 82801DB-ICH4 with AD1981B at irq 9'
     Mixer name	: 'Analog Devices AD1981B'
     Components	: 'AC97a:41445374'
     Controls      : 28
     Simple ctrls  : 20
  Card1.Amixer.info:
   Card hw:1 'U0x46d0x9a4'/'USB Device 0x46d:0x9a4 at usb-0000:00:1d.7-1, high speed'
     Mixer name	: 'USB Mixer'
     Components	: 'USB046d:09a4'
     Controls      : 2
     Simple ctrls  : 1
  Card1.Amixer.values:
   Simple mixer control 'Mic',0
     Capabilities: cvolume cvolume-joined cswitch cswitch-joined penum
     Capture channels: Mono
     Limits: Capture 0 - 3072
     Mono: Capture 3069 [100%] [34.98dB] [on]
  Date: Tue Dec 31 01:08:46 2013
  HibernationDevice: RESUME=UUID=6eb2f8e7-fadb-4e67-b648-c7d4016d49ad
  InstallationMedia: Lubuntu 12.04 "Precise Pangolin" - Release i386 (20120423)
  MachineType: Sony Corporation VGN-S2HP(GB)
  MarkForUpload: True
  ProcEnviron:
   LANGUAGE=en_GB:en
   TERM=xterm
   PATH=(custom, no user)
   LANG=en_GB.UTF-8
   SHELL=/bin/bash
  ProcFB: 0 radeondrmfb
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-57-generic root=UUID=519c7823-96d8-4c6b-81f9-f04e64f4cab6 ro quiet splash vt.handoff=7
  RelatedPackageVersions:
   linux-restricted-modules-3.2.0-57-generic N/A
   linux-backports-modules-3.2.0-57-generic  N/A
   linux-firmware                            1.79.9
  SourcePackage: linux
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 10/18/2004
  dmi.bios.vendor: Phoenix Technologies LTD
  dmi.bios.version: R0071G4
  dmi.chassis.asset.tag: 6D1M000000000000000000190000
  dmi.chassis.type: 10
  dmi.chassis.vendor: Sony Corporation
  dmi.chassis.version: N/A
  dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvrR0071G4:bd10/18/2004:svnSonyCorporation:pnVGN-S2HP(GB):pvrJ000JCYU:cvnSonyCorporation:ct10:cvrN/A:
  dmi.product.name: VGN-S2HP(GB)
  dmi.product.version: J000JCYU
  dmi.sys.vendor: Sony Corporation

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1265103/+subscriptions


References