1. 19 12月, 2012 1 次提交
    • D
      ALSA: usb-audio: Support for Digidesign Mbox 2 USB sound card: · cb99864d
      Damien Zammit 提交于
      This patch is the result of a lot of trial and error, since there are no specs
      available for the device.
      
      Full duplex support is provided, i.e. playback and recording in stereo.
      The format is hardcoded at 48000Hz @ 24 bit, which is the maximum that the
      device supports.  Also, MIDI in and MIDI out both work.
      
      Users will notice that the S/PDIF light also flashes when playback or recording
      is active.  I believe this means that S/PDIF input/output is simultaneously
      activated with the analogue i/o during use.
      But this particular functionality remains untested.
      
      Note that this particular version of the patch is so far untested on the
      physical hardware because I have not compiled a full kernel with the changes.
      However, extensive testing has been done by many users of the hardware
      who believe other versions of my patch have worked since circa 2009.
      
      [Modified to make a function static by tiwai]
      Signed-off-by: NDamien Zammit <damien@zamaudio.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      cb99864d
  2. 15 12月, 2012 1 次提交
  3. 12 12月, 2012 1 次提交
  4. 07 12月, 2012 3 次提交
  5. 04 12月, 2012 3 次提交
    • E
      ALSA: usb-audio: sync ep init fix for audioformat mismatch · 0d9741c0
      Eldad Zack 提交于
      Commit 947d2996 , "ALSA: snd-usb:
      properly initialize the sync endpoint", while correcting the
      initialization of the sync endpoint when opening just the data
      endpoint, prevents devices that has a sync endpoint, with a channel
      number different than that of the data endpoint, from functioning.
      Due to a different channel and period bytes count, attempting to
      initialize the sync endpoint will fail at the usb host driver.
      For example, when using xhci:
      
       cannot submit urb 0, error -90: internal error
      
      With this patch, if a sync endpoint has multiple audioformats, a
      matching audioformat is preferred. An audioformat must be found
      with at least one channel and support the requested sample rate
      and PCM format, otherwise the stream will not be opened.
      
      If the number of channels differ between the selected audioformat
      and the requested format, adjust the period bytes count accordingly.
      It is safe to perform the calculation on the basis of the channel
      count, since the requested PCM audio format and the rate must be
      supported by the selected audioformat.
      
      Cc: Jeffrey Barish <jeff_barish@earthlink.net>
      Cc: Daniel Mack <zonque@gmail.com>
      Signed-off-by: NEldad Zack <eldad@fogrefinery.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      0d9741c0
    • T
      ALSA: usb-audio: Fix missing autopm for MIDI input · f5f16541
      Takashi Iwai 提交于
      The commit [88a8516a: ALSA: usbaudio: implement USB autosuspend] added
      the support of autopm for USB MIDI output, but it didn't take the MIDI
      input into account.
      
      This patch adds the following for fixing the autopm:
      - Manage the URB start at the first MIDI input stream open, instead of
        the time of instance creation
      - Move autopm code to the common substream_open()
      - Make snd_usbmidi_input_start/_stop() more robust and add the running
        state check
      Reviewd-by: NClemens Ladisch <clemens@ladisch.de>
      Tested-by: NClemens Ladisch <clemens@ladisch.de>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f5f16541
    • T
      ALSA: usb-audio: Avoid autopm calls after disconnection · 59866da9
      Takashi Iwai 提交于
      Add a similar protection against the disconnection race and the
      invalid use of usb instance after disconnection, as well as we've done
      for the USB audio PCM.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=51201Reviewd-by: NClemens Ladisch <clemens@ladisch.de>
      Tested-by: NClemens Ladisch <clemens@ladisch.de>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      59866da9
  6. 29 11月, 2012 10 次提交
  7. 26 11月, 2012 1 次提交
    • T
      ALSA: usb-audio: add channel map support · 04324ccc
      Takashi Iwai 提交于
      Add the support for channel maps of the PCM streams on USB audio
      devices.  The channel map information is already found in
      ChannelConfig descriptor entries, which haven't been referred until
      now.
      
      Each chmap entry is added to audioformat list entry and copied to TLV
      dynamically instead of creating a whole chmap array.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      04324ccc
  8. 23 11月, 2012 3 次提交
  9. 21 11月, 2012 7 次提交
  10. 19 11月, 2012 1 次提交
  11. 17 11月, 2012 1 次提交
  12. 14 11月, 2012 1 次提交
    • T
      ALSA: usb-audio: Fix mutex deadlock at disconnection · 10e44239
      Takashi Iwai 提交于
      The recent change for USB-audio disconnection race fixes introduced a
      mutex deadlock again.  There is a circular dependency between
      chip->shutdown_rwsem and pcm->open_mutex, depicted like below, when a
      device is opened during the disconnection operation:
      
      A. snd_usb_audio_disconnect() ->
           card.c::register_mutex ->
             chip->shutdown_rwsem (write) ->
               snd_card_disconnect() ->
                 pcm.c::register_mutex ->
                   pcm->open_mutex
      
      B. snd_pcm_open() ->
           pcm->open_mutex ->
             snd_usb_pcm_open() ->
               chip->shutdown_rwsem (read)
      
      Since the chip->shutdown_rwsem protection in the case A is required
      only for turning on the chip->shutdown flag and it doesn't have to be
      taken for the whole operation, we can reduce its window in
      snd_usb_audio_disconnect().
      Reported-by: NJiri Slaby <jslaby@suse.cz>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      10e44239
  13. 13 11月, 2012 1 次提交
    • M
      ALSA: usb-audio: Add quirk for Focusrite Scarlett 18i6 · 1762a59d
      Martin Schwenke 提交于
      Probing this device currently fails in snd_usb_audio_probe() because
      the call to snd_usb_create_mixer() fails.  This is due to unknown or
      non-standard interface descriptor subtypes in parse_audio_unit():
      
        usbaudio: unit 51: unexpected type 0x09
        snd-usb-audio: probe of 1-8:1.0 failed with error -5
      
      Some people are working around this by recompiling usb-audio with the
      call to snd_usb_create_mixer() commented out.  It would be nice to
      avoid that.
      
      While the best idea would be to look into the mixer creation failure,
      a reasonable short-term solution is to use quirks to only probe the
      trouble-free interfaces.  This allows audio and MIDI interfaces to be
      used without any obvious issues.
      
      Interface 0 is the main one to ignore.  It contains lots of
      control-fu, including the unexpected interface descriptor subtypes.
      Interface 5 is for firmware updates and I'm not sure how to get
      support for this.  Interface 3 is some sort of control interface that
      I don't understand:
      
          Interface Descriptor:
            bLength                 9
            bDescriptorType         4
            bInterfaceNumber        3
            bAlternateSetting       0
            bNumEndpoints           0
            bInterfaceClass         1 Audio
            bInterfaceSubClass      1 Control Device
            bInterfaceProtocol      0
            iInterface              0
            AudioControl Interface Descriptor:
              bLength                 9
              bDescriptorType        36
              bDescriptorSubtype      1 (HEADER)
              bcdADC               1.00
              wTotalLength            9
              bInCollection           1
              baInterfaceNr( 0)       1
      Signed-off-by: NMartin Schwenke <martin@meltin.net>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1762a59d
  14. 08 11月, 2012 1 次提交
  15. 30 10月, 2012 3 次提交
  16. 25 10月, 2012 1 次提交
  17. 23 10月, 2012 1 次提交