This series revisits the SoundWire 'sdw_stream' support to split allocation and configuration steps. This is necessary if for example the routines are called multiple times from the hw_params stage. This also helps with better error handling. Pierre-Louis Bossart (19): soundwire: stream: remove unused parameter in sdw_stream_add_slave soundwire: stream: add slave runtime to list earlier soundwire: stream: simplify check on port range soundwire: stream: add alloc/config/free helpers for ports soundwire: stream: split port allocation and configuration loops soundwire: stream: split alloc and config in two functions soundwire: stream: add 'slave' prefix for port range checks soundwire: stream: group sdw_port and sdw_master/slave_port functions soundwire: stream: simplify sdw_alloc_master_rt() soundwire: stream: split sdw_alloc_master_rt() in alloc and config soundwire: stream: move sdw_alloc_slave_rt() before 'master' helpers soundwire: stream: split sdw_alloc_slave_rt() in alloc and config soundwire: stream: group sdw_stream_ functions soundwire: stream: rename and move master/slave_rt_free routines soundwire: stream: move list addition to sdw_slave_alloc_rt() soundwire: stream: separate alloc and config within sdw_stream_add_xxx() soundwire: stream: introduce sdw_slave_rt_find() helper soundwire: stream: sdw_stream_add_ functions can be called multiple times soundwire: stream: make enable/disable/deprepare idempotent drivers/soundwire/stream.c | 960 +++++++++++++++++++++---------------- 1 file changed, 547 insertions(+), 413 deletions(-) -- 2.17.1