diff options
author | Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> | 2023-11-28 17:56:38 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2023-11-29 18:53:25 +0000 |
commit | 15c7fab0e0477d7d7185eac574ca43c15b59b015 (patch) | |
tree | 681365789a2a48917ea9a40f752601a08432b5bc /crypto/scatterwalk.c | |
parent | d32bac9cb09cce4dc3131ec5d0b6ba3c277502ac (diff) |
ASoC: qcom: Move Soundwire runtime stream alloc to soundcards
Currently the Qualcomm Soundwire controller in its DAI startup op
allocates the Soundwire stream runtime. This works fine for existing
designs, but has limitations for stream runtimes with multiple
controllers, like upcoming Qualcomm X1E80100 SoC with four WSA8840
speakers on two Soundwire controllers.
When two Soundwire controllers are added to sound card codecs, Soundwire
startup() is called twice, one for each Soundwire controller, and second
execution overwrites what was set before. During shutdown() this causes
double free.
It is expected to have only one Soundwire stream runtime, thus it should
be allocated from SoC soundcard context startup(), not from each
Soundwire startup(). Such way will properly handle both cases: one and
two Soundwire controllers in the stream runtime.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231128165638.757665-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'crypto/scatterwalk.c')
0 files changed, 0 insertions, 0 deletions