1. 14 Jun, 2018 1 commit
  2. 15 May, 2018 1 commit
  3. 21 Mar, 2018 1 commit
    • Ruslan Bilovol's avatar
      ALSA: usb: initial USB Audio Device Class 3.0 support · 9a2fe9b8
      Ruslan Bilovol authored
      
      
      Recently released USB Audio Class 3.0 specification
      introduces many significant changes comparing to
      previous versions, like
       - new Power Domains, support for LPM/L1
       - new Cluster descriptor
       - changed layout of all class-specific descriptors
       - new High Capability descriptors
       - New class-specific String descriptors
       - new and removed units
       - additional sources for interrupts
       - removed Type II Audio Data Formats
       - ... and many other things (check spec)
      
      It also provides backward compatibility through
      multiple configurations, as well as requires
      mandatory support for BADD (Basic Audio Device
      Definition) on each ADC3.0 compliant device
      
      This patch adds initial support of UAC3 specification
      that is enough for Generic I/O Profile (BAOF, BAIF)
      device support from BADD document.
      Signed-off-by: default avatarRuslan Bilovol <ruslan.bilovol@gmail.com>
      Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      9a2fe9b8
  4. 19 Mar, 2018 1 commit
  5. 02 Nov, 2017 1 commit
    • Greg Kroah-Hartman's avatar
      License cleanup: add SPDX license identifier to uapi header files with a license · e2be04c7
      Greg Kroah-Hartman authored
      
      
      Many user space API headers have licensing information, which is either
      incomplete, badly formatted or just a shorthand for referring to the
      license under which the file is supposed to be.  This makes it hard for
      compliance tools to determine the correct license.
      
      Update these files with an SPDX license identifier.  The identifier was
      chosen based on the license information in the file.
      
      GPL/LGPL licensed headers get the matching GPL/LGPL SPDX license
      identifier with the added 'WITH Linux-syscall-note' exception, which is
      the officially assigned exception identifier for the kernel syscall
      exception:
      
         NOTE! This copyright does *not* cover user programs that use kernel
         services by normal system calls - this is merely considered normal use
         of the kernel, and does *not* fall under the heading of "derived work".
      
      This exception makes it possible to include GPL headers into non GPL
      code, without confusing license compliance tools.
      
      Headers which have either explicit dual licensing or are just licensed
      under a non GPL license are updated with the corresponding SPDX
      identifier and the GPLv2 with syscall exception identifier.  The format
      is:
              ((GPL-2.0 WITH Linux-syscall-note) OR SPDX-ID-OF-OTHER-LICENSE)
      
      SPDX license identifiers are a legally binding shorthand, which can be
      used instead of the full boiler plate text.  The update does not remove
      existing license information as this has to be done on a case by case
      basis and the copyright holders might have to be consulted. This will
      happen in a separate step.
      
      This patch is based on work done by Thomas Gleixner and Kate Stewart and
      Philippe Ombredanne.  See the previous patch in this series for the
      methodology of how this patch was researched.
      Reviewed-by: default avatarKate Stewart <kstewart@linuxfoundation.org>
      Reviewed-by: default avatarPhilippe Ombredanne <pombredanne@nexb.com>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      e2be04c7
  6. 18 Jul, 2017 1 commit
  7. 21 Feb, 2013 1 commit
    • Pawel Moll's avatar
      ALSA: usb: Fix Processing Unit Descriptor parsers · b531f81b
      Pawel Moll authored
      Commit 99fc8645
      
       "ALSA: usb-mixer:
      parse descriptors with structs" introduced a set of useful parsers
      for descriptors. Unfortunately the parses for the Processing Unit
      Descriptor came with a very subtle bug...
      
      Functions uac_processing_unit_iProcessing() and
      uac_processing_unit_specific() were indexing the baSourceID array
      forgetting the fields before the iProcessing and process-specific
      descriptors.
      
      The problem was observed with Sound Blaster Extigy mixer,
      where nNrModes in Up/Down-mix Processing Unit Descriptor
      was accessed at offset 10 of the descriptor (value 0)
      instead of offset 15 (value 7). In result the resulting
      control had interesting limit values:
      
      Simple mixer control 'Channel Routing Mode Select',0
        Capabilities: volume volume-joined penum
        Playback channels: Mono
        Capture channels: Mono
        Limits: 0 - -1
        Mono: -1 [100%]
      
      Fixed by starting from the bmControls, which was calculated
      correctly, instead of baSourceID.
      
      Now the mentioned control is fine:
      
      Simple mixer control 'Channel Routing Mode Select',0
        Capabilities: volume volume-joined penum
        Playback channels: Mono
        Capture channels: Mono
        Limits: 0 - 6
        Mono: 0 [0%]
      Signed-off-by: default avatarPawel Moll <mail@pawelmoll.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      b531f81b
  8. 09 Oct, 2012 1 commit
  9. 23 Jun, 2010 1 commit
  10. 31 May, 2010 2 commits
  11. 20 May, 2010 1 commit
  12. 11 May, 2010 2 commits
  13. 08 May, 2010 1 commit
  14. 12 Mar, 2010 3 commits
  15. 05 Mar, 2010 1 commit
  16. 23 Feb, 2010 3 commits
  17. 23 Sep, 2009 5 commits
  18. 16 Jun, 2009 1 commit
  19. 25 Apr, 2008 1 commit
  20. 01 Feb, 2008 1 commit
  21. 27 Sep, 2006 1 commit
    • Ben Williamson's avatar
      USB: gmidi: New USB MIDI Gadget class driver. · f2ebf92c
      Ben Williamson authored
      
      
      This driver is glue between the USB gadget interface
      and the ALSA MIDI interface. It allows us to appear
      as a MIDI Streaming device to a host system on the
      other end of a USB cable.
      
      This includes linux/usb/audio.h and linux/usb/midi.h
      containing definitions from the relevant USB specifications
      for USB audio and USB MIDI devices.
      
      The following changes have been made since the first RFC
      posting:
      
      * Bug fixes to endpoint handling.
      * Workaround for USB_REQ_SET_CONFIGURATION handling,
        not understood yet.
      * Added SND and SND_RAWMIDI dependencies in Kconfig.
      * Moved usb_audio.h and usb_midi.h to usb/*.h
      * Added module parameters for ALSA card index and id.
      * Added module parameters for USB descriptor IDs and strings.
      * Removed some unneeded stuff inherited from zero.c, more to go.
      * Provide DECLARE_* macros for the variable-length structs.
      * Use kmalloc instead of usb_ep_alloc_buffer.
      * Limit source to 80 columns.
      * Return actual error code instead of -ENOMEM in a few places.
      Signed-off-by: default avatarBen Williamson <ben.williamson@greyinnovation.com>
      Cc: David Brownell <david-b@pacbell.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      f2ebf92c