summaryrefslogtreecommitdiff
path: root/sound/soc/fsl/fsl_easrc_m2m.c
diff options
context:
space:
mode:
authorShengjiu Wang <shengjiu.wang@nxp.com>2019-07-05 17:48:29 +0800
committerDong Aisheng <aisheng.dong@nxp.com>2019-11-25 15:48:43 +0800
commitf45cca37292daf0f7f91c40ae045017564c3405d (patch)
tree7c2e2e0f5742a8826ff665542e40da3964d3a017 /sound/soc/fsl/fsl_easrc_m2m.c
parent2ca6909313e86735557e53f086499eed8038b517 (diff)
MLK-22168-2: fsl_easrc:fix timeout issue if STOP_CONV is not called
When error happen, user may not call STOP_CONV to stop the context, then there will be "input DMA task timeout" issue for next m2m task. In this patch, fsl_easrc_stop_context is called in RELEASE_PAIR to make sure context is stopped. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Diffstat (limited to 'sound/soc/fsl/fsl_easrc_m2m.c')
-rw-r--r--sound/soc/fsl/fsl_easrc_m2m.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/soc/fsl/fsl_easrc_m2m.c b/sound/soc/fsl/fsl_easrc_m2m.c
index 4a44df1e564e..74fb36ccad00 100644
--- a/sound/soc/fsl/fsl_easrc_m2m.c
+++ b/sound/soc/fsl/fsl_easrc_m2m.c
@@ -585,7 +585,10 @@ static long fsl_easrc_ioctl_release_context(struct fsl_easrc_m2m *m2m,
return -EINVAL;
}
- m2m->easrc_active = 0;
+ if (m2m->easrc_active) {
+ m2m->easrc_active = 0;
+ fsl_easrc_stop_context(ctx);
+ }
spin_lock_irqsave(&m2m->lock, lock_flags);
m2m->ctx_hold = 0;