Recent addition of SoundWire stream state-machine checks in linux-next have shown an existing issue with handling soundwire streams in codec drivers.
In general soundwire stream prepare/enable/disable can be called from either codec/machine/controller driver. However calling it in codec driver means that if multiple instances(Left/Right speakers) of the same codec is connected to the same stream then it will endup calling stream prepare/enable/disable more than once. This will mess up the stream state-machine checks in the soundwire core.
Moving this stream handling to machine driver would fix this issue and also allow board/platform specfic power sequencing.
Srinivas Kandagatla (2): ASoC: qcom: sdm845: handle soundwire stream ASoC: codecs: wsa881x: remove soundwire stream handling
sound/soc/codecs/wsa881x.c | 44 +----------------------- sound/soc/qcom/Kconfig | 2 +- sound/soc/qcom/sdm845.c | 69 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+), 44 deletions(-)