]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: rsnd: core: Check convert rate in rsnd_hw_params
authorMikhail Durnev <mikhail_durnev@mentor.com>
Tue, 16 Mar 2021 04:47:35 +0000 (14:47 +1000)
committerMark Brown <broonie@kernel.org>
Tue, 16 Mar 2021 13:29:37 +0000 (13:29 +0000)
commit5d1bcd57a633ab312e4d80c04b397c9cb146d91b
tree4aadbd7582b262f523cbde3903b8a127f183874a
parent45146757cc472f12b4a1c4f161eb61f5334ff3d8
ASoC: rsnd: core: Check convert rate in rsnd_hw_params

snd_pcm_hw_params_set_rate_near can return incorrect sample rate in
some cases, e.g. when the backend output rate is set to some value higher
than 48000 Hz and the input rate is 8000 Hz. So passing the value returned
by snd_pcm_hw_params_set_rate_near to snd_pcm_hw_params will result in
"FSO/FSI ratio error" and playing no audio at all while the userland
is not properly notified about the issue.

If SRC is unable to convert the requested sample rate to the sample rate
the backend is using, then the requested sample rate should be adjusted in
rsnd_hw_params. The userland will be notified about that change in the
returned hw_params structure.

Signed-off-by: Mikhail Durnev <mikhail_durnev@mentor.com>
Link: https://lore.kernel.org/r/1615870055-13954-1-git-send-email-mikhail_durnev@mentor.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sh/rcar/core.c