1. 30 Nov, 2017 1 commit
  2. 29 Apr, 2016 1 commit
    • Takashi Iwai's avatar
      ALSA: usb-audio: Limit retrying sample rate reads · 57dd5414
      Takashi Iwai authored
      There are many USB audio devices with buggy firmware that don't react
      with the sample rate reading properly.  This often results in the
      flood of error messages and slowing down the operation.
      
      The sample rate read back is basically only for confirming the sample
      rate setup, and it's not critically important.  As a compromise, in
      this patch, we stop the sample rate read back once when the device
      gives errors more than tolerance (twice, as of now).  This should
      improve most of error cases while we still can catch the firmware
      bugginess.
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      57dd5414
  3. 16 Mar, 2016 1 commit
  4. 17 Feb, 2015 1 commit
    • Joe Turner's avatar
      ALSA: usb-audio: Don't attempt to get Lifecam HD-5000 sample rate · b62b9980
      Joe Turner authored
      Adds a quirk to disable the check that the sample rate has been set correctly, as the Lifecam does not support getting the sample rate.
      
      This means that we don't need to wait for the USB timeout when attempting to get the sample rate. Waiting for the timeout causes problems in some applications, which give up on the device acquisition process before it has had time to complete, resulting in no sound.
      
      [minor tidy up by tiwai]
      Signed-off-by: default avatarJoe Turner <joe@oampo.co.uk>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      b62b9980
  5. 26 Feb, 2014 1 commit
    • Takashi Iwai's avatar
      ALSA: usb-audio: Use standard printk helpers · 0ba41d91
      Takashi Iwai authored
      Convert with dev_err() and co from snd_printk(), etc.
      As there are too deep indirections (e.g. ep->chip->dev->dev),
      a few new local macros, usb_audio_err() & co, are introduced.
      
      Also, the device numbers in some messages are dropped, as they are
      shown in the prefix automatically.
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      0ba41d91
  6. 27 Jun, 2013 1 commit
  7. 26 Apr, 2013 1 commit
  8. 10 Apr, 2013 1 commit
  9. 04 Apr, 2013 6 commits
  10. 03 Apr, 2013 2 commits
    • Takashi Iwai's avatar
      ALSA: usb-audio: Clean up the code in set_sample_rate_v2() · 7c517465
      Takashi Iwai authored
      Just for cleaning up, introduce a new function get_sample_rate_v2()
      for replacing two identical calls in set_sample_rate_v2().
      
      No functional change.
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      7c517465
    • Torstein Hegge's avatar
      ALSA: usb: Work around CM6631 sample rate change bug · 690a863f
      Torstein Hegge authored
      The C-Media CM6631 USB receiver doesn't respond to changes in sample rate
      while the interface is active. The same behavior is observed in other UAC2
      hardware like the VIA VT1731.
      
      Reset the interface after setting the sampling frequency on sample rate
      changes, to ensure that the sample rate set by snd_usb_init_sample_rate() is
      used. Otherwise, the device will try to use the sample rate of the previous
      stream, causing distorted sound on sample rate changes.
      
      The reset is performed for all UAC2 devices, as it should not affect a
      standards compliant device, but it is only necessary for C-Media CM6631,
      VIA VT1731 and possibly others.
      
      Failure to read sample rate from the device is not handled as an error in
      set_sample_rate_v2(), as (permanent or intermittent) failure to read sample
      rate isn't essential for a successful sample rate set.
      Signed-off-by: default avatarTorstein Hegge <hegge@resisty.net>
      Acked-by: default avatarClemens Ladisch <clemens@ladisch.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      690a863f
  11. 01 Aug, 2012 1 commit
  12. 27 Sep, 2011 1 commit
  13. 18 May, 2011 1 commit
  14. 03 Sep, 2010 1 commit
    • Clemens Ladisch's avatar
      ALSA: usb-audio: fix detection of vendor-specific device protocol settings · a2acad82
      Clemens Ladisch authored
      The Audio Class v2 support code in 2.6.35 added checks for the
      bInterfaceProtocol field.  However, there are devices (usually those
      detected by vendor-specific quirks) that do not have one of the
      predefined values in this field, which made the driver reject them.
      
      To fix this regression, restore the old behaviour, i.e., assume that
      a device with an unknown bInterfaceProtocol field (other than
      UAC_VERSION_2) has more or less UAC-v1-compatible descriptors.
      
      [compile warning fixes by tiwai]
      Signed-off-by: default avatarClemens Ladisch <clemens@ladisch.de>
      Cc: Daniel Mack <daniel@caiaq.de>
      Cc: <stable@kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      a2acad82
  15. 09 Jul, 2010 1 commit
  16. 23 Jun, 2010 3 commits
  17. 11 Jun, 2010 1 commit
  18. 31 May, 2010 1 commit
    • Daniel Mack's avatar
      ALSA: usb-audio: parse clock topology of UAC2 devices · 79f920fb
      Daniel Mack authored
      Audio devices which comply to the UAC2 standard can export complex clock
      topologies in its descriptors and set up links between them.
      
      The entities that are defined are
      
       - clock sources, which define the end-leafs.
       - clock selectors, which act as switch to select one out of many
         possible clocks sources.
       - clock multipliers, which have an input clock source, and act as clock
         source again. They can be used to derive one clock from another.
      
      All sample rate changes, clock validity queries and the like must go to
      clock source elements, while clock selectors and multipliers can be used
      as terminal clock source.
      
      The following patch adds a parser for these elements and functions to
      iterate over the tree and find the leaf nodes (clock sources).
      
      The samplerate set functions were moved to the new clock.c file.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      79f920fb