summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-06-26 16:23:00 +0200
committerMark Brown <broonie@linaro.org>2014-06-28 14:18:22 +0200
commit6772190632ebce6c5c6010d2bc77d5de866831b6 (patch)
treeb88718302fa237e688b90a973a9369d53eaf8aed
parentASoC: kirkwood-i2s: provide helper KIRKWOOD_RECCTL_ENABLE_MASK definition (diff)
downloadlinux-6772190632ebce6c5c6010d2bc77d5de866831b6.tar.xz
linux-6772190632ebce6c5c6010d2bc77d5de866831b6.zip
ASoC: kirkwood-i2s: fix RECCTL masking
Since we wish to disable capture inputs for some formats, we need to ensure that we clear the enable bits in our cached record control register. This seems to have been missed, resulting in the register only accumulating enable bits. 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>
-rw-r--r--sound/soc/kirkwood/kirkwood-i2s.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/soc/kirkwood/kirkwood-i2s.c b/sound/soc/kirkwood/kirkwood-i2s.c
index 55af6c8e4603..ef1a164d8703 100644
--- a/sound/soc/kirkwood/kirkwood-i2s.c
+++ b/sound/soc/kirkwood/kirkwood-i2s.c
@@ -212,7 +212,8 @@ static int kirkwood_i2s_hw_params(struct snd_pcm_substream *substream,
KIRKWOOD_PLAYCTL_SIZE_MASK);
priv->ctl_play |= ctl_play;
} else {
- priv->ctl_rec &= ~KIRKWOOD_RECCTL_SIZE_MASK;
+ priv->ctl_rec &= ~(KIRKWOOD_RECCTL_ENABLE_MASK |
+ KIRKWOOD_RECCTL_SIZE_MASK);
priv->ctl_rec |= ctl_rec;
}