1. 20 1月, 2015 2 次提交
  2. 13 1月, 2015 4 次提交
  3. 14 11月, 2012 1 次提交
  4. 10 2月, 2012 2 次提交
    • M
      staging: line6: separate handling of buffer allocation and stream startup · 0ca54888
      Markus Grabner 提交于
      There are several features of the Line6 USB driver which require PCM
      data to be exchanged with the device:
      *) PCM playback and capture via ALSA
      *) software monitoring (for devices without hardware monitoring)
      *) optional impulse response measurement
      However, from the device's point of view, there is just a single
      capture and playback stream, which must be shared between these
      subsystems. It is therefore necessary to maintain the state of the
      subsystems with respect to PCM usage. We define several constants of
      the form LINE6_BIT_PCM_<subsystem>_<direction>_<resource> with the
      following meanings:
      *) <subsystem> is one of
      -) ALSA: PCM playback and capture via ALSA
      -) MONITOR: software monitoring
      -) IMPULSE: optional impulse response measurement
      *) <direction> is one of
      -) PLAYBACK: audio output (from host to device)
      -) CAPTURE: audio input (from device to host)
      *) <resource> is one of
      -) BUFFER: buffer required by PCM data stream
      -) STREAM: actual PCM data stream
      
      The subsystems call line6_pcm_acquire() to acquire the (shared)
      resources needed for a particular operation (e.g., allocate the buffer
      for ALSA playback or start the capture stream for software monitoring).
      When a resource is no longer needed, it is released by calling
      line6_pcm_release(). Buffer allocation and stream startup are handled
      separately to allow the ALSA kernel driver to perform them at
      appropriate places (since the callback which starts a PCM stream is not
      allowed to sleep).
      Signed-off-by: NMarkus Grabner <grabner@icg.tugraz.at>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      0ca54888
    • M
      3784129a
  5. 10 12月, 2011 1 次提交
  6. 09 12月, 2011 1 次提交
  7. 22 9月, 2010 1 次提交
  8. 01 9月, 2010 2 次提交
  9. 04 4月, 2009 2 次提交
    • G
      Staging: line6: coding style cleanups for .h files. · a49e4838
      Greg Kroah-Hartman 提交于
      Mostly all line length issues.
      Skipped the control.h file as it makes sense to leave it alone.
      
      Cc: Markus Grabner <grabner@icg.tugraz.at>
      Cc: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a49e4838
    • M
      Staging: add line6 usb driver · 705ececd
      Markus Grabner 提交于
      This is an experimental Linux driver for the guitar amp, cab, and
      effects modeller PODxt Pro by Line6 (and similar devices), supporting
      the following features:
      
        - Reading/writing individual parameters
        - Reading/writing complete channel, effects setup, and amp setup data
        - Channel switching
        - Virtual MIDI interface
        - Tuner access
        - Playback/capture/mixer device for any  ALSA-compatible PCM audio
          application
        - Signal routing (record clean/processed  guitar signal, re-amping)
      
      Moreover, preliminary support for the Variax Workbench is included.
      
      From: Markus Grabner <grabner@icg.tugraz.at>
      Cc: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      705ececd