mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 20:51:44 +00:00
ASoC: mediatek: mt8195: update audio tuner settings
Audio tuner is used to handle clock drift between 26M and APLL domain. It's expected when abs(chg_cnt) equals to upper bound, tuner updates pcw setting automatically, and then abs(chg_cnt) decreases. In the stress test, we found abs(chg_cnt) possibly equals to 2 at the unexpected timing. This results in wrong pcw updating. Finally, abs(chg_cnt) will always be larger than upper bound, As a result, we update the upper bound to 3 to handle the corner case. Signed-off-by: Trevor Wu <trevor.wu@mediatek.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/20220927151141.11846-1-trevor.wu@mediatek.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
16b51447b2
commit
7ba6546b54
@ -117,7 +117,7 @@ static struct mt8195_afe_tuner_cfg mt8195_afe_tuner_cfgs[MT8195_AUD_PLL_NUM] = {
|
||||
.upper_bound_reg = AFE_APLL_TUNER_CFG,
|
||||
.upper_bound_shift = 8,
|
||||
.upper_bound_maskbit = 0xff,
|
||||
.upper_bound_default = 0x2,
|
||||
.upper_bound_default = 0x3,
|
||||
},
|
||||
[MT8195_AUD_PLL2] = {
|
||||
.id = MT8195_AUD_PLL2,
|
||||
@ -135,7 +135,7 @@ static struct mt8195_afe_tuner_cfg mt8195_afe_tuner_cfgs[MT8195_AUD_PLL_NUM] = {
|
||||
.upper_bound_reg = AFE_APLL_TUNER_CFG1,
|
||||
.upper_bound_shift = 8,
|
||||
.upper_bound_maskbit = 0xff,
|
||||
.upper_bound_default = 0x2,
|
||||
.upper_bound_default = 0x3,
|
||||
},
|
||||
[MT8195_AUD_PLL3] = {
|
||||
.id = MT8195_AUD_PLL3,
|
||||
|
Loading…
Reference in New Issue
Block a user