summaryrefslogtreecommitdiff
path: root/sound/soc/kirkwood
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-06-26 18:23:10 +0400
committerMark Brown <broonie@linaro.org>2014-06-28 16:18:33 +0400
commit4d2097e51795b760c392d3fbc6ca6b6f77c83419 (patch)
tree9c0782508d1d40a753c71b8e1e5a4b85b43978f0 /sound/soc/kirkwood
parent2fbc38219c0af91afbeb3c9d97c62e1c7c74df61 (diff)
downloadlinux-4d2097e51795b760c392d3fbc6ca6b6f77c83419.tar.xz
ASoC: kirkwood-i2s: fix pause handling some more
We still see the occasional timeout waiting for busy to clear. As the spec is contradictory, and we know that the current implementation doesn't work, try an alternative interpretation from the spec. This one appears to work - I have yet to find any issue with it during my testing over several months. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/kirkwood')
-rw-r--r--sound/soc/kirkwood/kirkwood-i2s.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/kirkwood/kirkwood-i2s.c b/sound/soc/kirkwood/kirkwood-i2s.c
index b601ad680d7b..e98650c01eba 100644
--- a/sound/soc/kirkwood/kirkwood-i2s.c
+++ b/sound/soc/kirkwood/kirkwood-i2s.c
@@ -238,7 +238,7 @@ static int kirkwood_i2s_play_trigger(struct snd_pcm_substream *substream,
uint32_t ctl, value;
ctl = readl(priv->io + KIRKWOOD_PLAYCTL);
- if (ctl & KIRKWOOD_PLAYCTL_PAUSE) {
+ if ((ctl & KIRKWOOD_PLAYCTL_ENABLE_MASK) == 0) {
unsigned timeout = 5000;
/*
* The Armada510 spec says that if we enter pause mode, the