OSDN Git Service

ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Thu, 16 Sep 2021 12:57:25 +0000 (15:57 +0300)
committerMark Brown <broonie@kernel.org>
Fri, 17 Sep 2021 12:17:45 +0000 (13:17 +0100)
If the snd_sof_dsp_send_msg() failed then we have already returned from
sof_ipc_tx_message_unlocked() with the error message.

There is no need to check if ret is really 0 after this and we can return
directly the return value from tx_wait_done()

At the same time make the remaining checks for error (ret) to match.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210916125725.25934-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/ipc.c

index 8145b0d..ff27437 100644 (file)
@@ -309,7 +309,7 @@ static int sof_ipc_tx_message_unlocked(struct snd_sof_ipc *ipc, u32 header,
 
        spin_unlock_irq(&sdev->ipc_lock);
 
-       if (ret < 0) {
+       if (ret) {
                dev_err_ratelimited(sdev->dev,
                                    "error: ipc tx failed with error %d\n",
                                    ret);
@@ -319,10 +319,7 @@ static int sof_ipc_tx_message_unlocked(struct snd_sof_ipc *ipc, u32 header,
        ipc_log_header(sdev->dev, "ipc tx", msg->header);
 
        /* now wait for completion */
-       if (!ret)
-               ret = tx_wait_done(ipc, msg, reply_data);
-
-       return ret;
+       return tx_wait_done(ipc, msg, reply_data);
 }
 
 /* send IPC message from host to DSP */