summaryrefslogtreecommitdiff
path: root/scripts/Makefile.thinlto
diff options
context:
space:
mode:
authorMarek Szyprowski <m.szyprowski@samsung.com>2026-10-21 12:17:43 +0200
committerMark Brown <broonie@kernel.org>2026-10-21 16:25:52 +0100
commit693574504051a19383640cfb99524a6b69e4624f (patch)
tree928131d85e8767d640760075627873f1777f142e /scripts/Makefile.thinlto
parent872215109fc880de7a03fa30437346f9212649e8 (diff)
downloadlinux-693574504051a19383640cfb99524a6b69e4624f.tar.gz
linux-693574504051a19383640cfb99524a6b69e4624f.zip
ASoC: wm8994: don't lose the AIF clock ratio when staying at 32kHz SYSCLK
When SYSCLK drops below 50kHz, the AIFnCLK rate ratio is saved and temporarily lowered to 128fs for accessory detection, then restored once SYSCLK gets fast enough again. The ratio is however saved again on each clock reconfiguration done while SYSCLK is still slow, which overwrites the original ratio with the 128fs one. This happens on the Exynos4412 Trats2 board, which set MCLK2 as SYSCLK twice during the card probe and then configure FLL1 while still running from MCLK2. Once SYSCLK is switched to FLL1, the 128fs ratio is "restored", so AIF1 is left configured for 48kHz at 128fs while being clocked at 256fs. If any digital path is powered up before a stream reconfigures the AIF, the codec raises FIFO error interrupts every 10ms, flooding the kernel log: wm8994-codec wm8994-codec: FIFO error Save the original ratio only when entering the low SYSCLK mode. While at it, move the code duplicated in _wm8994_set_fll() and wm8994_set_dai_sysclk() to a common helper. Fixes: 6730049a4763 ("ASoC: wm8994: Lower AIFnCLK divisor when dropping to 32kHz") Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Link: https://patch.msgid.link/20261021101750.3297770-3-m.szyprowski@samsung.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'scripts/Makefile.thinlto')
0 files changed, 0 insertions, 0 deletions