| From efad63e9365545401006bf57b93b1c672432a6e4 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 27 Aug 2018 14:26:47 +0100 |
| Subject: ASoC: dpcm: Properly initialise hw->rate_max |
| |
| From: Charles Keepax <ckeepax@opensource.cirrus.com> |
| |
| [ Upstream commit e33ffbd9cd39da09831ce62c11025d830bf78d9e ] |
| |
| If the CPU DAI does not initialise rate_max, say if using |
| using KNOT or CONTINUOUS, then the rate_max field will be |
| initialised to 0. A value of zero in the rate_max field of |
| the hardware runtime will cause the sound card to support no |
| sample rates at all. Obviously this is not desired, just a |
| different mechanism is being used to apply the constraints. As |
| such update the setting of rate_max in dpcm_init_runtime_hw |
| to be consistent with the non-DPCM cases and set rate_max to |
| UINT_MAX if nothing is defined on the CPU DAI. |
| |
| Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| sound/soc/soc-pcm.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c |
| index 6566c8831a965..551bfc581fc12 100644 |
| --- a/sound/soc/soc-pcm.c |
| +++ b/sound/soc/soc-pcm.c |
| @@ -1683,7 +1683,7 @@ static void dpcm_init_runtime_hw(struct snd_pcm_runtime *runtime, |
| struct snd_soc_pcm_stream *stream) |
| { |
| runtime->hw.rate_min = stream->rate_min; |
| - runtime->hw.rate_max = stream->rate_max; |
| + runtime->hw.rate_max = min_not_zero(stream->rate_max, UINT_MAX); |
| runtime->hw.channels_min = stream->channels_min; |
| runtime->hw.channels_max = stream->channels_max; |
| if (runtime->hw.formats) |
| -- |
| 2.20.1 |
| |