1. 14 Dec, 2011 22 commits
  2. 13 Dec, 2011 16 commits
  3. 10 Dec, 2011 2 commits
    • Markus Grabner's avatar
      staging: line6: fixed ALSA/PCM interaction · 6b02a17e
      Markus Grabner authored
      The PCM subsystem in the Line6 driver is mainly used for PCM playback and
      capture by ALSA, but also has other tasks, most notably providing a
      low-latency software monitor for devices which don't support hardware
      monitoring (e.g., the TonePort series). This patch makes ALSA "play nicely"
      with the other components, i.e., prevents it from resetting the isochronous
      USB transfer while other PCM tasks (software monitoring) are running.
      Signed-off-by: default avatarMarkus Grabner <grabner@icg.tugraz.at>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      6b02a17e
    • Stefan Hajnoczi's avatar
      staging: line6: wait for urbs in snd_line6_prepare() · 665f3f50
      Stefan Hajnoczi authored
      The .trigger() pcm callbacks are not allowed to block and cannot wait
      until urbs have completed.  We need to ensure that stopping, preparing,
      and then restarting a stream always works.
      
      Currently the driver will sometimes return -EBUSY when restarting the
      stream because urbs have not completed yet.  This can be triggered by
      jackd from userspace.
      
      The solution is to wait on urbs in the .prepare() pcm callback since
      blocking is allowed in that callback.  This guarantees that all urbs are
      quiesced and ready to be submitted when the start trigger callback is
      invoked.
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@gmail.com>
      Signed-off-by: default avatarMarkus Grabner <grabner@icg.tugraz.at>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      665f3f50