1. 02 Mar, 2010 1 commit
  2. 23 Feb, 2010 6 commits
    • Daniel Mack's avatar
      usb/gadget/{f_audio,gmidi}.c: follow recent changes in audio.h · aefbd3e8
      Daniel Mack authored
      Some structs in linux/usb/audio.h have got new names to mark them as
      part of version 1.0 of the USB audio standard. Follow these changes
      in the gadget drivers.
      
      Note that this header and the ALSA USB driver will undergo some
      refactoring soon, so there might be another update to the gadgets as
      well.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      aefbd3e8
    • Daniel Mack's avatar
      ALSA: usbaudio: consolidate header files · de48c7bc
      Daniel Mack authored
      Use the definitions from linux/usb/audio.h all over the ALSA USB audio
      driver and add some missing definitions there as well.
      
      Use the endpoint attribute macros from linux/usb/ch9 and remove the own
      things from sound/usb/usbaudio.h.
      
      Now things are also nicely prefixed which makes understanding the code
      easier.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      de48c7bc
    • Daniel Mack's avatar
      ALSA: usbmixer: bail out early when parsing audio class v2 descriptors · 7b8a043f
      Daniel Mack authored
      This is just a quick hack that needs to be removed once the new units
      defined by the audio class v2.0 standard are supported.
      
      However, it allows using these devices for now, without mixer support.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      7b8a043f
    • Daniel Mack's avatar
      ALSA: usbaudio: implement basic set of class v2.0 parser · 53ee98fe
      Daniel Mack authored
      This adds a number of parsers for audio class v2.0. In particular, the
      following internals are different and now handled by the code:
      
      * the number of streaming interfaces is now reported by an interface
        association descriptor. The old approach using a proprietary
        descriptor is deprecated.
      
      * The number of channels per interface is now stored in the AS_GENERAL
        descriptor (used to be part of the FORMAT_TYPE descriptor).
      
      * The list of supported sample rates is no longer stored in a variable
        length appendix of the format_type descriptor but is retrieved from
        the device using a class specific GET_RANGE command.
      
      * Supported sample formats are now reported as 32bit bitmap rather than
        a fixed value. For now, this is worked around by choosing just one of
        them.
      
      * A devices needs to have at least one CLOCK_SOURCE descriptor which
        denotes a clockID that is needed im the class request command.
      
      * Many descriptors (format_type, ...) have changed their layout. Handle
        this by casting the descriptors to the appropriate structs.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      53ee98fe
    • Daniel Mack's avatar
      ALSA: usbaudio: introduce new types for audio class v2 · 8fee4aff
      Daniel Mack authored
      This patch adds some definitions for audio class v2.
      
      Unfortunately, the UNIT types PROCESSING_UNIT and EXTENSION_UNIT have
      different numerical representations in both standards, so there is need
      for a _V1 add-on now. usbmixer.c is changed accordingly.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      8fee4aff
    • Daniel Mack's avatar
      ALSA: usbaudio: parse USB descriptors with structs · 28e1b773
      Daniel Mack authored
      In preparation of support for v2.0 audio class, use the structs from
      linux/usb/audio.h and add some new ones to describe the fields that are
      actually parsed by the descriptor decoders.
      
      Also, factor out code from usb_create_streams(). This makes it easier to
      adopt the new iteration logic needed for v2.0.
      Signed-off-by: default avatarDaniel Mack <daniel@caiaq.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      28e1b773
  3. 22 Feb, 2010 1 commit
  4. 18 Feb, 2010 2 commits
  5. 17 Feb, 2010 3 commits
  6. 16 Feb, 2010 8 commits
  7. 15 Feb, 2010 4 commits
    • Giuliano Pochini's avatar
      ALSA: Echoaudio - Add suspend support #2 · 47b5d028
      Giuliano Pochini authored
      This patch adds rearranges parts of the initialization code and adds
      suspend and resume callbacks.
      
      This patch adds suspend and resume callbacks.
      It also rearranges parts of the initialization code so it can be
      used in both the first initialization (when the module is loaded we
      also have to load default settings) and the resume callback (where
      we have to restore the previous settings).
      Signed-off-by: default avatarGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      47b5d028
    • Giuliano Pochini's avatar
      ALSA: Echoaudio - Add suspend support #1 · ad3499f4
      Giuliano Pochini authored
      Move the controls init code outside the init_hw() function because is must
      not be called during resume.
      
      This patch moves the code that initializes the card's controls with
      default valued from the init_hw() function into a separated
      set_mixer_defaults() function (one for each of the 16 supported
      cards). This change is necessary because during resume we must
      resurrect the hardware without losing the previous
      settings. set_mixer_defaults() must be called only once when the
      module is loaded.
      Signed-off-by: default avatarGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      ad3499f4
    • Giuliano Pochini's avatar
      ALSA: Echoaudio - Add firmware cache #2 · 4f8ada44
      Giuliano Pochini authored
      This patch implements a simple cache for the firmware files when CONFIG_PM is defined.
      
      This patch changes get_firmware(), free_firmware() and adds
      free_firmware_cache(). The first two functions implement a very
      simple cache and the latter is used to actually release all the stored
      firmwares when the module is unloaded. 
      When CONFIG_PM is not enabled those functions act as before, that is
      free_firmware() releases the firmware immediately and
      free_firmware_cache() does nothing.
      Signed-off-by: default avatarGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      4f8ada44
    • Giuliano Pochini's avatar
      ALSA: Echoaudio - Add firmware cache #1 · 19b50063
      Giuliano Pochini authored
      Changes the way the firmware is passed through functions.
      
      When CONFIG_PM is enabled the firmware cannot be released because the
      driver will need it again to resume the card. 
      With this patch the firmware is passed as an index of the struct
      firmware card_fw[] in place of a pointer. That same index is then used
      to locate the firmware in the firmware cache.
      Signed-off-by: default avatarGiuliano Pochini <pochini@shiny.it>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      19b50063
  8. 12 Feb, 2010 13 commits
  9. 11 Feb, 2010 2 commits