summaryrefslogtreecommitdiff
path: root/sound/soc/fsl/fsl_rpmsg_i2s.c
diff options
context:
space:
mode:
authorViorel Suman <viorel.suman@nxp.com>2017-12-14 14:03:51 +0200
committerDong Aisheng <aisheng.dong@nxp.com>2019-11-25 15:52:56 +0800
commit53039092deebd9a22686c1ae5a02e0290652a677 (patch)
treeaec96249307a60dc37887f286395349531b556ba /sound/soc/fsl/fsl_rpmsg_i2s.c
parentccb2d1a9942c5317fe0bf969d3aa0621af22fc7d (diff)
MLK-17220: ASoC: fsl_rpmsg_i2s: restore original lock context
Restore original lock context and unlock the mutex in case if info->rpdev is uninitialized. Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Diffstat (limited to 'sound/soc/fsl/fsl_rpmsg_i2s.c')
-rw-r--r--sound/soc/fsl/fsl_rpmsg_i2s.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/soc/fsl/fsl_rpmsg_i2s.c b/sound/soc/fsl/fsl_rpmsg_i2s.c
index 95cbe455392b..60b872f091a1 100644
--- a/sound/soc/fsl/fsl_rpmsg_i2s.c
+++ b/sound/soc/fsl/fsl_rpmsg_i2s.c
@@ -35,15 +35,15 @@ static int i2s_send_message(struct i2s_rpmsg_s *msg,
{
int err;
+ mutex_lock(&info->tx_lock);
if (!info->rpdev) {
dev_dbg(info->dev, "rpmsg channel not ready, m4 image ready?\n");
+ mutex_unlock(&info->tx_lock);
return -EINVAL;
}
dev_dbg(&info->rpdev->dev, "send cmd %d\n", msg->header.cmd);
- mutex_lock(&info->tx_lock);
-
reinit_completion(&info->cmd_complete);
err = rpmsg_send(info->rpdev->ept, (void *)msg,
sizeof(struct i2s_rpmsg_s));