ALSA: hda/cs35l56: Call cs_dsp_power_down() before calling cs_dsp_remove()
authorRichard Fitzgerald <rf@opensource.cirrus.com>
Mon, 31 Jul 2023 16:57:22 +0000 (17:57 +0100)
committerTakashi Iwai <tiwai@suse.de>
Tue, 1 Aug 2023 06:30:06 +0000 (08:30 +0200)
In cs35l56_hda_unbind() cs_dsp_power_down() must be called to cleanup
before calling cs_dsp_remove cs_dsp_remove().

Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20230731165726.7940-6-rf@opensource.cirrus.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/cs35l56_hda.c

index 2870f82..e8c41a4 100644 (file)
@@ -649,6 +649,9 @@ static void cs35l56_hda_unbind(struct device *dev, struct device *master, void *
        debugfs_remove_recursive(cs35l56->debugfs_root);
 #endif
 
+       if (cs35l56->base.fw_patched)
+               cs_dsp_power_down(&cs35l56->cs_dsp);
+
        cs_dsp_remove(&cs35l56->cs_dsp);
 
        if (comps[cs35l56->index].dev == dev)