]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: codecs: va-macro: use fsgen as clock
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Wed, 27 Jul 2022 12:47:49 +0000 (13:47 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 27 Jul 2022 13:46:41 +0000 (14:46 +0100)
commit53059156794a8cb449fef98976189f68f88e4d0c
treeb344fcc3048744dd81f07b0103ba1f9bfdddfb49
parent9dfb807bc2d64ad574f4491cfa68c4b1bb7097b9
ASoC: codecs: va-macro: use fsgen as clock

VA Macro fsgen clock is supplied to other LPASS Macros using proper
clock apis, however the internal user uses the registers directly without
clk apis. This approch has race condition where in external users of
the clock might cut the clock while VA macro is actively using this.

Moving the internal usage to clk apis would provide a proper refcounting
and avoid such race conditions.

This issue was noticed while headset was pulled out while recording is
in progress and shifting record patch to DMIC.

Reported-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tested-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Link: https://lore.kernel.org/r/20220727124749.4604-1-srinivas.kandagatla@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/lpass-va-macro.c