summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2012-11-20 12:19:13 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-11-21 10:38:39 +0900
commit3ccdf5bbdf5f2488e4a36692d055ba9c43ae6717 (patch)
tree0bb790b03a3e41e607d3da9504da1248f33de485 /sound
parent982b604bc56a3da874e489051fc7adb49b1eba65 (diff)
downloadlinux-stable-3ccdf5bbdf5f2488e4a36692d055ba9c43ae6717.tar.gz
linux-stable-3ccdf5bbdf5f2488e4a36692d055ba9c43ae6717.tar.bz2
linux-stable-3ccdf5bbdf5f2488e4a36692d055ba9c43ae6717.zip
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>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/kirkwood/kirkwood-i2s.c9
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,
switch (cmd) {
case SNDRV_PCM_TRIGGER_START:
- /* stop audio, enable interrupts */
- ctl |= KIRKWOOD_PLAYCTL_PAUSE;
- writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
-
value = readl(priv->io + KIRKWOOD_INT_MASK);
value |= KIRKWOOD_INT_CAUSE_PLAY_BYTES;
writel(value, priv->io + KIRKWOOD_INT_MASK);
@@ -269,11 +265,6 @@ static int kirkwood_i2s_rec_trigger(struct snd_pcm_substream *substream,
switch (cmd) {
case SNDRV_PCM_TRIGGER_START:
- /* stop audio, enable interrupts */
- value = readl(priv->io + KIRKWOOD_RECCTL);
- value |= KIRKWOOD_RECCTL_PAUSE;
- writel(value, priv->io + KIRKWOOD_RECCTL);
-
value = readl(priv->io + KIRKWOOD_INT_MASK);
value |= KIRKWOOD_INT_CAUSE_REC_BYTES;
writel(value, priv->io + KIRKWOOD_INT_MASK);