1. 24 6月, 2019 1 次提交
    • T
      ALSA: usb-audio: Sanity checks for each pipe and EP types · 801ebf10
      Takashi Iwai 提交于
      The recent USB core code performs sanity checks for the given pipe and
      EP types, and it can be hit by manipulated USB descriptors by syzbot.
      For making syzbot happier, this patch introduces a local helper for a
      sanity check in the driver side and calls it at each place before the
      message handling, so that we can avoid the WARNING splats.
      
      Reported-by: syzbot+d952e5e28f5fb7718d23@syzkaller.appspotmail.com
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      801ebf10
  2. 01 3月, 2019 1 次提交
    • M
      ALSA: usb-audio: Add quirk for MOTU MicroBook II · a634090a
      Manuel Reinhardt 提交于
      Add an entry to the quirks-table to for usb-audio to recognize the
      Microbook II (although it only exposes vendor interfaces). A simple boot
      quirk is also implemented to set up the sample rate and  make sure that
      no audio urbs are sent before the device is ready.
      
      This patch only provides audio playback and capture at 96kHz sample
      rate. Notice the following shortcomings:
      
      - The sample rate is currently hardcoded to 96k although the device also
        supports 48k and 44.1k.
      
      - The various mixer controls of the MicroBook are not made available.
      
      - The keep-iface control should be on by default because the device
        shuts down whenever the altsetting is reset which is usually unwanted.
        (I don't know the best way to do this)
      
      - The communication format used by the MicroBook for sample rate setting
        and also other setup has been reverse engineered by looking at the
        usbmon output while running the windows driver through virtualbox. In
        this patch the first byte of every message is set to \0 while in the
        observed communications the first byte acts as a "message-counter"
        increasing its value with every message sent. Leaving it at \0 does
        not seem to affect the device.
      Signed-off-by: NManuel Reinhardt <manuel.rhdt@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      a634090a
  3. 06 2月, 2019 1 次提交
  4. 29 1月, 2019 1 次提交
    • J
      ALSA: usb-audio: Cleanup DSD whitelist · 202e69e6
      Jussi Laako 提交于
      XMOS/Thesycon family of USB Audio Class firmware flags DSD altsetting
      separate from the PCM ones. Thus the DSD altsetting can be auto-detected
      based on the flag and doesn't need maintaining specific altsetting
      whitelist.
      
      In addition, static VID:PID-to-altsetting whitelisting causes problems
      when firmware update changes the altsetting, or same VID:PID is reused
      for another device that has different kind of firmware.
      
      This patch removes existing explicit whitelist mappings for XMOS VID
      (0x20b1) and Thesycon VID (0x152a).
      
      Also corrects placement of Hegel HD12 and NuPrime DAC-10 to keep list
      sorted based on VID.
      Signed-off-by: NJussi Laako <jussi@sonarnerd.net>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      202e69e6
  5. 26 1月, 2019 1 次提交
  6. 09 1月, 2019 1 次提交
  7. 29 11月, 2018 1 次提交
  8. 06 11月, 2018 1 次提交
  9. 27 7月, 2018 1 次提交
  10. 26 7月, 2018 1 次提交
  11. 23 7月, 2018 1 次提交
  12. 13 6月, 2018 3 次提交
  13. 13 5月, 2018 1 次提交
  14. 23 4月, 2018 1 次提交
  15. 24 3月, 2018 4 次提交
    • N
      ALSA: usb-audio: Integrate native DSD support for ITF-USB based DACs. · f3b906d7
      Nobutaka Okabe 提交于
      Integrate the native DSD support quirk codes of "ITF-USB DSD" based DACs.
      
      Now, "is_itf_usb_dsd_2alts_dac()" and "is_itf_usb_dsd_3alts_dac()" is
      integrated into one function "is_itf_usb_dsd_dac()".
      So, remove the logic to distinguish UD-501 and UD-501V2 by the
      "Product Name".
      
      The integration is possible by changing the following two functions.
      
      - snd_usb_select_mode_quirk():
      Change the determination condition of the DSD mode switch command,
      from the altset number being used, to the audio format being played.
      Actually, this operation is same as playback using ASIO driver in
      Windows environment.
      
      - snd_usb_interface_dsd_format_quirk():
      To which altset supports native DSD is determined by the number of altsets.
      Previously, it's a constant "2" or "3".
      Signed-off-by: NNobutaka Okabe <nob77413@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f3b906d7
    • N
      ALSA: usb-audio: FIX native DSD support for TEAC UD-501 DAC · 74dc71f8
      Nobutaka Okabe 提交于
      There are two versions of TEAC UD-501, the normal version and
      the vendor updated version(UD-501V2).
      
      They have the same VID/PID, but the num of the altsetting is different,
      UD-501 has 2 altsets for stream, and UD-501V2 has 3.
      
      So, add the logic to distinguish them by the Product Name, not by the PID.
      Signed-off-by: NNobutaka Okabe <nob77413@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      74dc71f8
    • N
      ALSA: usb-audio: Add native DSD support for Luxman DA-06 · 71426535
      Nobutaka Okabe 提交于
      Add native DSD support quirk for Luxman DA-06 DAC, by adding the
      PID/VID 1852:5065.
      
      Rename "is_marantz_denon_dac()" function to "is_itf_usb_dsd_2alts_dac()"
      to cover broader device family sharing the same USB audio
      implementation(*).
      For the same reason, rename "is_teac_dsd_dac()" function to
      "is_itf_usb_dsd_3alts_dac()".
      
      (*)
      These devices have the same USB controller "ITF-USB DSD", supplied by
      INTERFACE Co., Ltd.
      "ITF-USB DSD" USB controller has two patterns,
      
      Pattern 1. (2 altsets version)
      - Altset 0: for control
      - Altset 1: for stream (S32)
      - Altset 2: for stream (S32, DSD_U32)
      
      Pattern 2. (3 altsets version)
      - Altset 0: for control
      - Altset 1: for stream (S16)
      - Altset 2: for stream (S32)
      - Altset 3: for stream (S32, DSD_U32)
      
      "is_itf_usb_dsd_2alts_dac()" returns true, if the DAC has "Pattern 1"
      USB controller, and "is_itf_usb_dsd_3alts_dac()" returns true, if
      "Pattern2".
      Signed-off-by: NNobutaka Okabe <nob77413@gmail.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      71426535
    • N
      ALSA: usb-audio: Add native DSD support for TEAC UD-301 · b0021486
      Nobutaka Okabe 提交于
      Add native DSD support quirk for TEAC UD-301 DAC,
      by adding the PID/VID 0644:804a.
      Signed-off-by: NNobutaka Okabe <nob77413@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      b0021486
  16. 20 3月, 2018 1 次提交
  17. 12 2月, 2018 1 次提交
  18. 07 12月, 2017 1 次提交
  19. 02 11月, 2017 1 次提交
  20. 16 10月, 2017 1 次提交
  21. 09 10月, 2017 2 次提交
  22. 21 9月, 2017 1 次提交
  23. 22 8月, 2017 1 次提交
  24. 18 8月, 2017 1 次提交
  25. 15 8月, 2017 1 次提交
  26. 13 8月, 2017 1 次提交
  27. 15 5月, 2017 1 次提交
  28. 10 1月, 2017 1 次提交
  29. 28 12月, 2016 1 次提交
  30. 13 12月, 2016 1 次提交
  31. 29 8月, 2016 1 次提交
  32. 22 8月, 2016 2 次提交
  33. 09 8月, 2016 1 次提交