mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-27 01:11:31 +00:00
ASoC: codecs: wcd938x: fix unbind tear down order
Make sure to deregister the component before tearing down the resources
it depends on during unbind().
Fixes: 16572522ae ("ASoC: codecs: wcd938x-sdw: add SoundWire driver")
Cc: stable@vger.kernel.org # 5.14
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20231003155558.27079-3-johan+linaro@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
bfbc79de60
commit
fa2f8a991b
1 changed files with 1 additions and 1 deletions
|
|
@ -3504,10 +3504,10 @@ static void wcd938x_unbind(struct device *dev)
|
||||||
{
|
{
|
||||||
struct wcd938x_priv *wcd938x = dev_get_drvdata(dev);
|
struct wcd938x_priv *wcd938x = dev_get_drvdata(dev);
|
||||||
|
|
||||||
|
snd_soc_unregister_component(dev);
|
||||||
device_link_remove(dev, wcd938x->txdev);
|
device_link_remove(dev, wcd938x->txdev);
|
||||||
device_link_remove(dev, wcd938x->rxdev);
|
device_link_remove(dev, wcd938x->rxdev);
|
||||||
device_link_remove(wcd938x->rxdev, wcd938x->txdev);
|
device_link_remove(wcd938x->rxdev, wcd938x->txdev);
|
||||||
snd_soc_unregister_component(dev);
|
|
||||||
component_unbind_all(dev, wcd938x);
|
component_unbind_all(dev, wcd938x);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue