diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-01-19 22:04:18 +0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-01-22 01:15:37 +0400 |
commit | 278047fd654dde7ed95c8604fcefeeacc5c0bb2b (patch) | |
tree | 306d088ca76a4e64fa132702ba050ae46de36075 /sound/soc/soc-pcm.c | |
parent | 09452f23eb01241fa19c2e99585af5e340a0961b (diff) | |
download | linux-278047fd654dde7ed95c8604fcefeeacc5c0bb2b.tar.xz |
ASoC: Don't tell applications about msbits unless we're ignoring input
On the off chance that an application both pays attention and gets
confused.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/soc-pcm.c')
-rw-r--r-- | sound/soc/soc-pcm.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c index 8bb17937d59a..326890148a26 100644 --- a/sound/soc/soc-pcm.c +++ b/sound/soc/soc-pcm.c @@ -85,9 +85,11 @@ static void soc_pcm_apply_msb(struct snd_pcm_substream *substream, return; for (i = 0; i < ARRAY_SIZE(sample_sizes); i++) { - ret = snd_pcm_hw_constraint_msbits(substream->runtime, - 0, sample_sizes[i], - bits); + if (bits >= sample_sizes[i]) + continue; + + ret = snd_pcm_hw_constraint_msbits(substream->runtime, 0, + sample_sizes[i], bits); if (ret != 0) dev_warn(dai->dev, "Failed to set MSB %d/%d: %d\n", |