| From bcf8ce0f63df36c4b9741a8e2589dedfbbfcb367 Mon Sep 17 00:00:00 2001 |
| From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Date: Thu, 6 Apr 2017 07:24:36 +0000 |
| Subject: [PATCH 096/286] ASoC: rsnd: tidyup src->convert_rate reset timing |
| |
| Current src->convert_rate will be set on .hw_param, and |
| be reset on .quit timing. |
| But, .hw_param will not be called again if user did Ctrl-Z + fg. |
| It should be reset on initial of .hw_param to keep its value. |
| Here, ctu.c already do this. |
| This patch solves this issue, other wise, MIXed sound will be |
| strange if user did like below. |
| |
| > aplay -D plughw:0,0 sound_44100.wav & |
| > aplay -D plughw:0,1 sound_96000.wav |
| > Ctrl-Z |
| > fg # 96kHz will be played as 44.1kHz |
| |
| Reported-by: Hiroyuki Yokoyama <hiroyuki.yokoyama.vx@renesas.com> |
| Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Tested-by: Hiroyuki Yokoyama <hiroyuki.yokoyama.vx@renesas.com> |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| (cherry picked from commit fc99d23f6d3ec6b17772915114018444393e0ad1) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| sound/soc/sh/rcar/src.c | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| --- a/sound/soc/sh/rcar/src.c |
| +++ b/sound/soc/sh/rcar/src.c |
| @@ -167,6 +167,7 @@ static int rsnd_src_hw_params(struct rsn |
| * dpcm_fe_dai_hw_params() |
| * dpcm_be_dai_hw_params() |
| */ |
| + src->convert_rate = 0; |
| if (fe->dai_link->dynamic) { |
| int stream = substream->stream; |
| struct snd_soc_dpcm *dpcm; |
| @@ -414,8 +415,6 @@ static int rsnd_src_quit(struct rsnd_mod |
| |
| rsnd_mod_power_off(mod); |
| |
| - src->convert_rate = 0; |
| - |
| /* reset sync convert_rate */ |
| src->sync.val = 0; |
| |