[alsa-devel] [PATCH 0/5] RFC for snd-usb: rework usb endpoint logic

Daniel Mack zonque at gmail.com
Mon Oct 31 13:10:25 CET 2011

It's been a while since the last round of patches for this topic, so
here is a new version.

In contrast to earlier versions, I did another bunch of cleanips and
can now use input and output simultaniously.

The patches that follow are structured in a way that should make
reviews easier, as they first implement a new streaming model while
leaving the old one working, and then switch to it in a separate
patch. This way, the series is also fully bisectable.

The problems that remain is a regression in handling data streams
with feedback endpoints in full duplex mode and a hard lockup when
changing audio parameters while two streams are running. I guess the
latter is caused by missing locking.

I didn't sign-off the patches on purpose, as I would really like to
get them reviewed before they go in. Can people have a look and state
whether the whole idea is at all sane?

Thanks a lot,

Daniel Mack (5):
  ALSA: snd-usb: implement new endpoint streaming model
  ALSA: snd-usb: switch over to new endpoint streaming logic
  ALSA: snd-usb: remove old streaming logic
  ALSA: snd-usb: set MAX_URBS to 16
  ALSA: snd-usb: add support for implicit feedback

 sound/usb/card.c     |    6 +-
 sound/usb/card.h     |   56 ++-
 sound/usb/endpoint.c | 1347 ++++++++++++++++++++++++--------------------------
 sound/usb/endpoint.h |   31 +-
 sound/usb/pcm.c      |  412 +++++++++++++---
 sound/usb/stream.c   |   31 +-
 sound/usb/usbaudio.h |    1 +
 7 files changed, 1081 insertions(+), 803 deletions(-)


More information about the Alsa-devel mailing list