[PATCH 0/6] soundwire: stream: fix state machines and transitions

From: Pierre-Louis Bossart
Date: Wed Jan 08 2020 - 12:54:59 EST


The existing stream support works fine with simple cases, but does not
map well with ALSA transitions for underflows/resume where prepare()
can be called multiple times. Concurrency with multiple devices per
links or multiple streams enabled on the same link also needs to be
fixed.

These patches are the result of hours of validation on the Intel side
and should benefit other implementations since there is nothing
hardware-specific. The Intel-specific changes being reviewed do depend
on those stream changes though to be functional.

Bard Liao (1):
soundwire: stream: only prepare stream when it is configured.

Pierre-Louis Bossart (3):
soundwire: stream: remove redundant pr_err traces
soundwire: stream: update state machine and add state checks
soundwire: stream: do not update parameters during DISABLED-PREPARED
transition

Rander Wang (2):
soundwire: stream: fix support for multiple Slaves on the same link
soundwire: stream: don't program ports for a stream that has not been
prepared

Documentation/driver-api/soundwire/stream.rst | 63 ++++++++----
drivers/soundwire/stream.c | 97 +++++++++++++++----
2 files changed, 124 insertions(+), 36 deletions(-)


base-commit: 09f6a72d014386939d21899921dd379006471a4b
--
2.20.1