diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-11-20 07:19:13 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-11-20 20:38:39 -0500 |
commit | 3ccdf5bbdf5f2488e4a36692d055ba9c43ae6717 (patch) | |
tree | 0bb790b03a3e41e607d3da9504da1248f33de485 | |
parent | 982b604bc56a3da874e489051fc7adb49b1eba65 (diff) |
ASoC: kirkwood-i2s: more pause-mode fixes
Don't even momentarily set the pause status when starting the channel;
if we do, we should check the busy bit to ensure that we comply with
the spec. In any case, it isn't necessary; we will not active on a
START event so there is no need to pause the DMA.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r-- | sound/soc/kirkwood/kirkwood-i2s.c | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/sound/soc/kirkwood/kirkwood-i2s.c b/sound/soc/kirkwood/kirkwood-i2s.c index 826306dfb72b..1d5db484d2df 100644 --- a/sound/soc/kirkwood/kirkwood-i2s.c +++ b/sound/soc/kirkwood/kirkwood-i2s.c | |||
@@ -205,10 +205,6 @@ static int kirkwood_i2s_play_trigger(struct snd_pcm_substream *substream, | |||
205 | 205 | ||
206 | switch (cmd) { | 206 | switch (cmd) { |
207 | case SNDRV_PCM_TRIGGER_START: | 207 | case SNDRV_PCM_TRIGGER_START: |
208 | /* stop audio, enable interrupts */ | ||
209 | ctl |= KIRKWOOD_PLAYCTL_PAUSE; | ||
210 | writel(ctl, priv->io + KIRKWOOD_PLAYCTL); | ||
211 | |||
212 | value = readl(priv->io + KIRKWOOD_INT_MASK); | 208 | value = readl(priv->io + KIRKWOOD_INT_MASK); |
213 | value |= KIRKWOOD_INT_CAUSE_PLAY_BYTES; | 209 | value |= KIRKWOOD_INT_CAUSE_PLAY_BYTES; |
214 | writel(value, priv->io + KIRKWOOD_INT_MASK); | 210 | writel(value, priv->io + KIRKWOOD_INT_MASK); |
@@ -269,11 +265,6 @@ static int kirkwood_i2s_rec_trigger(struct snd_pcm_substream *substream, | |||
269 | 265 | ||
270 | switch (cmd) { | 266 | switch (cmd) { |
271 | case SNDRV_PCM_TRIGGER_START: | 267 | case SNDRV_PCM_TRIGGER_START: |
272 | /* stop audio, enable interrupts */ | ||
273 | value = readl(priv->io + KIRKWOOD_RECCTL); | ||
274 | value |= KIRKWOOD_RECCTL_PAUSE; | ||
275 | writel(value, priv->io + KIRKWOOD_RECCTL); | ||
276 | |||
277 | value = readl(priv->io + KIRKWOOD_INT_MASK); | 268 | value = readl(priv->io + KIRKWOOD_INT_MASK); |
278 | value |= KIRKWOOD_INT_CAUSE_REC_BYTES; | 269 | value |= KIRKWOOD_INT_CAUSE_REC_BYTES; |
279 | writel(value, priv->io + KIRKWOOD_INT_MASK); | 270 | writel(value, priv->io + KIRKWOOD_INT_MASK); |