summaryrefslogtreecommitdiff
path: root/sound/soc/sh/rcar/ssi.c
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2014-11-27 11:05:34 +0300
committerMark Brown <broonie@kernel.org>2014-12-03 21:51:39 +0300
commitd1b64056d479a115e02c88ab63bc2406a0c46468 (patch)
tree8e6e4d7b3617880c30c8405784e0b8389520ab95 /sound/soc/sh/rcar/ssi.c
parentc17dba8b8e198758a4f61fe89e16106b82af18a9 (diff)
downloadlinux-d1b64056d479a115e02c88ab63bc2406a0c46468.tar.xz
ASoC: rsnd: care SSIWSR register in rsnd_ssi_hw_start()
Current SSI is careing SSIWSR which controls WS continue mode when DMA mode, but, it should be cared when PIO mode too. This patch fixup it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sh/rcar/ssi.c')
-rw-r--r--sound/soc/sh/rcar/ssi.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
index 42d7c7e8226b..d67bca9fef2b 100644
--- a/sound/soc/sh/rcar/ssi.c
+++ b/sound/soc/sh/rcar/ssi.c
@@ -210,6 +210,10 @@ static void rsnd_ssi_hw_start(struct rsnd_ssi *ssi,
rsnd_mod_write(&ssi->mod, SSICR, cr);
+ /* enable WS continue */
+ if (rsnd_dai_is_clk_master(rdai))
+ rsnd_mod_write(&ssi->mod, SSIWSR, CONT);
+
ssi->usrcnt++;
dev_dbg(dev, "%s[%d] hw started\n",
@@ -506,10 +510,6 @@ static int rsnd_ssi_dma_start(struct rsnd_mod *mod,
rsnd_ssi_hw_start(ssi, ssi->rdai, io);
- /* enable WS continue */
- if (rsnd_dai_is_clk_master(rdai))
- rsnd_mod_write(&ssi->mod, SSIWSR, CONT);
-
return 0;
}