ASoC: Samsung: I2S: Flush FIFO after stop
[deliverable/linux.git] / sound / soc / samsung / i2s.c
index 26b4bdf42c5bdb3f2c8eb430049e4f9c24462628..d00ac3a7102c892196061af29a5d9bd0d3a5a1af 100644 (file)
@@ -843,11 +843,6 @@ static int i2s_trigger(struct snd_pcm_substream *substream,
        case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
                local_irq_save(flags);
 
-               if (capture)
-                       i2s_fifo(i2s, FIC_RXFLUSH);
-               else
-                       i2s_fifo(i2s, FIC_TXFLUSH);
-
                if (config_setup(i2s)) {
                        local_irq_restore(flags);
                        return -EINVAL;
@@ -870,6 +865,11 @@ static int i2s_trigger(struct snd_pcm_substream *substream,
                else
                        i2s_txctrl(i2s, 0);
 
+               if (capture)
+                       i2s_fifo(i2s, FIC_RXFLUSH);
+               else
+                       i2s_fifo(i2s, FIC_TXFLUSH);
+
                local_irq_restore(flags);
                break;
        }
This page took 0.049864 seconds and 5 git commands to generate.