diff options
author | Jean-Francois Moine <moinejf@free.fr> | 2013-11-25 14:19:05 -0500 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-11-27 12:16:21 -0500 |
commit | 4f6f1478c1ada4524e9ed21190b4549233a816a3 (patch) | |
tree | 3c8c0f797758f99135174a35dd71583939dd98af /sound | |
parent | 1c195ddb1de14ff9a6327c47f88428200f7c8d88 (diff) |
ASoC: kirkwood: Fix erroneous double output while playing
This patch fixes the setting of the register KIRKWOOD_PLAYCTL which did
always streaming on both I2S and SPDIF, ignoring the DAI ID.
The bug was introduced by the commit 75b9b65ee5a
"ASoC: kirkwood: add S/PDIF support"
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/kirkwood/kirkwood-i2s.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sound/soc/kirkwood/kirkwood-i2s.c b/sound/soc/kirkwood/kirkwood-i2s.c index b42492d87221..0b18f654b413 100644 --- a/sound/soc/kirkwood/kirkwood-i2s.c +++ b/sound/soc/kirkwood/kirkwood-i2s.c | |||
@@ -248,15 +248,15 @@ static int kirkwood_i2s_play_trigger(struct snd_pcm_substream *substream, | |||
248 | ctl); | 248 | ctl); |
249 | } | 249 | } |
250 | 250 | ||
251 | if (dai->id == 0) | ||
252 | ctl &= ~KIRKWOOD_PLAYCTL_SPDIF_EN; /* i2s */ | ||
253 | else | ||
254 | ctl &= ~KIRKWOOD_PLAYCTL_I2S_EN; /* spdif */ | ||
255 | |||
256 | switch (cmd) { | 251 | switch (cmd) { |
257 | case SNDRV_PCM_TRIGGER_START: | 252 | case SNDRV_PCM_TRIGGER_START: |
258 | /* configure */ | 253 | /* configure */ |
259 | ctl = priv->ctl_play; | 254 | ctl = priv->ctl_play; |
255 | if (dai->id == 0) | ||
256 | ctl &= ~KIRKWOOD_PLAYCTL_SPDIF_EN; /* i2s */ | ||
257 | else | ||
258 | ctl &= ~KIRKWOOD_PLAYCTL_I2S_EN; /* spdif */ | ||
259 | |||
260 | value = ctl & ~KIRKWOOD_PLAYCTL_ENABLE_MASK; | 260 | value = ctl & ~KIRKWOOD_PLAYCTL_ENABLE_MASK; |
261 | writel(value, priv->io + KIRKWOOD_PLAYCTL); | 261 | writel(value, priv->io + KIRKWOOD_PLAYCTL); |
262 | 262 | ||