summaryrefslogtreecommitdiff
path: root/sound/pci/hda/cs35l41_hda.c
diff options
context:
space:
mode:
authorStefan Binding <sbinding@opensource.cirrus.com>2023-07-21 16:18:08 +0100
committerTakashi Iwai <tiwai@suse.de>2023-07-24 11:00:00 +0200
commit5299b79ca1a2a9b017b87da08563100b0da98e5b (patch)
tree2f4d6805c55f714bacfd39ada4a55b1f9569fc71 /sound/pci/hda/cs35l41_hda.c
parentf8264c7592088727629e14f396f95ad643847740 (diff)
ALSA: hda: cs35l41: Check mailbox status of pause command after firmware load
Currently, we do not check the return status of the pause command, immediately after we load firmware. If the pause has failed, the firmware is not running. Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> Link: https://lore.kernel.org/r/20230721151816.2080453-4-sbinding@opensource.cirrus.com Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/cs35l41_hda.c')
-rw-r--r--sound/pci/hda/cs35l41_hda.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sound/pci/hda/cs35l41_hda.c b/sound/pci/hda/cs35l41_hda.c
index f9c97270db6f..29f1dce45f1d 100644
--- a/sound/pci/hda/cs35l41_hda.c
+++ b/sound/pci/hda/cs35l41_hda.c
@@ -781,7 +781,12 @@ static int cs35l41_smart_amp(struct cs35l41_hda *cs35l41)
goto clean_dsp;
}
- cs35l41_set_cspl_mbox_cmd(cs35l41->dev, cs35l41->regmap, CSPL_MBOX_CMD_PAUSE);
+ ret = cs35l41_set_cspl_mbox_cmd(cs35l41->dev, cs35l41->regmap, CSPL_MBOX_CMD_PAUSE);
+ if (ret) {
+ dev_err(cs35l41->dev, "Error waiting for DSP to pause: %u\n", ret);
+ goto clean_dsp;
+ }
+
cs35l41->firmware_running = true;
return 0;