summarylogtreecommitdiffstats
path: root/0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch
diff options
context:
space:
mode:
Diffstat (limited to '0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch')
-rw-r--r--0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch b/0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch
new file mode 100644
index 000000000000..6eb272a81b13
--- /dev/null
+++ b/0003-ALSA-hda-cs35l41-Check-mailbox-status-of-pause-comma.patch
@@ -0,0 +1,36 @@
+From 796af5ec6c6bb2eadf78a96f629e2c7fba11123b Mon Sep 17 00:00:00 2001
+From: Stefan Binding <sbinding@opensource.cirrus.com>
+Date: Fri, 21 Jul 2023 16:18:08 +0100
+Subject: [PATCH 03/11] 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>
+---
+ sound/pci/hda/cs35l41_hda.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+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;
+--
+2.41.0
+