ASoC: Intel: Skylake: Fix to delete DSP pipe after stopping pipe
authorJeeja KP <jeeja.kp@intel.com>
Mon, 13 Mar 2017 16:41:23 +0000 (22:11 +0530)
committerMark Brown <broonie@kernel.org>
Wed, 15 Mar 2017 17:27:44 +0000 (17:27 +0000)
DSP pipe needs to stopped before deleting the pipe. Currently check is
for pipe state > STARTED, which is incorrect. So changed to include
pipe state STARTED to stop the pipe if it started.

Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/skylake/skl-messages.c

index e66870474f1061f2cbe14b5c1014197a033acad6..ed576965caccbe1aa2533dbb4093e232971d2df2 100644 (file)
@@ -1098,7 +1098,7 @@ int skl_delete_pipe(struct skl_sst *ctx, struct skl_pipe *pipe)
        dev_dbg(ctx->dev, "%s: pipe = %d\n", __func__, pipe->ppl_id);
 
        /* If pipe is started, do stop the pipe in FW. */
-       if (pipe->state > SKL_PIPE_STARTED) {
+       if (pipe->state >= SKL_PIPE_STARTED) {
                ret = skl_set_pipe_state(ctx, pipe, PPL_PAUSED);
                if (ret < 0) {
                        dev_err(ctx->dev, "Failed to stop pipeline\n");