From: Lars-Peter Clausen Date: Wed, 27 Nov 2013 08:58:18 +0000 (+0100) Subject: ASoC: pcm: Always honor DAI min and max sample rate constraints X-Git-Tag: v3.13-rc3~12^2~1^2~2^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=78e45c99f6d470e6069c8669ee533c97cc5fd296;p=pandora-kernel.git ASoC: pcm: Always honor DAI min and max sample rate constraints snd_pcm_limit_hw_rates() will initialize the minimum and maximum sample rate for the PCM stream based on the rates specified in the rates field. Since we call snd_pcm_limit_hw_rates() after soc_pcm_init_runtime_hw() it will essentially overwrite the min and max rate set in soc_pcm_init_runtime_hw(). This may cause the minimum or maximum rate to be set to a value outside the range of one of the components if one of the components sets either SNDRV_PCM_RATE_CONTINUOUS or SNDRV_PCM_RATE_KNOT and the other component specified a discrete rate via SNDRV_PCM_RATE_[0-9]* that is outside of the first component's rate range. To fix this first calculate the minimum and maximum rates using snd_pcm_limit_hw_rates() and then on top of that apply the contraints specified in the snd_soc_pcm_stream structs. Signed-off-by: Lars-Peter Clausen Acked-by: Takashi iwai Signed-off-by: Mark Brown --- Reading git-diff-tree failed