From 1bb7cda702d9698f34b97824697a40c5890338fe Mon Sep 17 00:00:00 2001 From: Liam Girdwood Date: Thu, 12 Oct 2017 15:21:21 +0100 Subject: [PATCH] ssp: pause: fix pause/release logic SSP can either be in paused or prepared state during stream pause depending on the state of the other SSP data direction. Make sure this is taken into account. Signed-off-by: Liam Girdwood --- src/drivers/ssp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/drivers/ssp.c b/src/drivers/ssp.c index a47297417..404abd803 100644 --- a/src/drivers/ssp.c +++ b/src/drivers/ssp.c @@ -356,7 +356,8 @@ static int ssp_trigger(struct dai *dai, int cmd, int direction) ssp_start(dai, direction); break; case COMP_CMD_RELEASE: - if (ssp->state[direction] == COMP_STATE_PAUSED) + if (ssp->state[direction] == COMP_STATE_PAUSED || + ssp->state[direction] == COMP_STATE_PREPARE) ssp_start(dai, direction); break; case COMP_CMD_STOP: