ASoC: dpcm: Allow PCMs to omit the set of supported formats
authorLars-Peter Clausen <lars@metafoo.de>
Mon, 6 Jan 2014 13:19:07 +0000 (14:19 +0100)
committerMark Brown <broonie@linaro.org>
Mon, 6 Jan 2014 17:42:42 +0000 (17:42 +0000)
Allow PCMs that do not impose any restrictions on the supported formats to set
the formats field to 0, Instead of assuming that this means that the PCM does
not support any formats (which doesn't make much sense), assume that it supports
all formats. This brings the behavior of DPCM closer to that of non-DPCM.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/soc-pcm.c

index b649e32..feb0f28 100644 (file)
@@ -1235,7 +1235,10 @@ static void dpcm_init_runtime_hw(struct snd_pcm_runtime *runtime,
        runtime->hw.rate_max = stream->rate_max;
        runtime->hw.channels_min = stream->channels_min;
        runtime->hw.channels_max = stream->channels_max;
-       runtime->hw.formats &= stream->formats;
+       if (runtime->hw.formats)
+               runtime->hw.formats &= stream->formats;
+       else
+               runtime->hw.formats = stream->formats;
        runtime->hw.rates = stream->rates;
 }