ASoC: rsnd: tidyup DMA start/stop timing on SSI
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 15 Jan 2015 08:09:26 +0000 (08:09 +0000)
committerMark Brown <broonie@kernel.org>
Thu, 15 Jan 2015 11:37:49 +0000 (11:37 +0000)
Current DMA starts after SSI, and stops before SSI. but we need
to reverse these order. Otherwise, under/over run error might happen.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sh/rcar/ssi.c

index 4b646124ab8a86931d311f09b7c96c7774f16647..9e7b627c08e2256dbe09acd063432b7b3b7c1107 100644 (file)
@@ -535,10 +535,10 @@ static int rsnd_ssi_dma_start(struct rsnd_mod *mod,
 {
        struct rsnd_dma *dma = rsnd_mod_to_dma(mod);
 
-       rsnd_ssi_start(mod, priv);
-
        rsnd_dma_start(dma);
 
+       rsnd_ssi_start(mod, priv);
+
        return 0;
 }
 
@@ -547,10 +547,10 @@ static int rsnd_ssi_dma_stop(struct rsnd_mod *mod,
 {
        struct rsnd_dma *dma = rsnd_mod_to_dma(mod);
 
-       rsnd_dma_stop(dma);
-
        rsnd_ssi_stop(mod, priv);
 
+       rsnd_dma_stop(dma);
+
        return 0;
 }