Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c6855bc authored by Sidipotu Ashok's avatar Sidipotu Ashok Committed by Gerrit - the friendly Code Review server
Browse files

ASoC: qdsp6v2: Flush record session during stop



It is recommended for record session to be flushed during
stop to ensure that there is no problem after resuming the
session.

Change-Id: I0bfc22f335e141630d473fc0dd9437a0b47e0785
Signed-off-by: default avatarSidipotu Ashok <sashok@codeaurora.org>
parent 90799d27
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
/* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -591,6 +591,9 @@ static int msm_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
		if (substream->stream != SNDRV_PCM_STREAM_PLAYBACK) {
			prtd->enabled = STOPPED;
			ret = q6asm_cmd_nowait(prtd->audio_client, CMD_PAUSE);
			if (!ret)
				ret = q6asm_cmd_nowait(prtd->audio_client,
					CMD_FLUSH);
			break;
		}
		/* pending CMD_EOS isn't expected */
+7 −1
Original line number Diff line number Diff line
/*
 * Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
 * Copyright (c) 2012-2019, The Linux Foundation. All rights reserved.
 * Author: Brian Swetland <swetland@google.com>
 *
 * This software is licensed under the terms of the GNU General Public
@@ -9736,6 +9736,12 @@ static int __q6asm_cmd_nowait(struct audio_client *ac, int cmd,
		pr_debug("%s: CMD_PAUSE\n", __func__);
		hdr.opcode = ASM_SESSION_CMD_PAUSE;
		break;

	case CMD_FLUSH:
		pr_debug("%s: CMD_FLUSH\n", __func__);
		hdr.opcode = ASM_STREAM_CMD_FLUSH;
		break;

	case CMD_EOS:
		pr_debug("%s: CMD_EOS\n", __func__);
		hdr.opcode = ASM_DATA_CMD_EOS;