diff options
| author | Fabio Estevam <festevam@gmail.com> | 2026-10-19 19:47:24 -0300 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-10-23 18:48:40 +0100 |
| commit | cc3fc99f1bce93c3ae3771ef98cb91a566da857e (patch) | |
| tree | 7172be5f0a0b85fe7a78a601cb108a022b6ca3c6 /scripts/basic | |
| parent | bcb2efda7abf56f212133044f135d88f68796fff (diff) | |
| download | linux-cc3fc99f1bce93c3ae3771ef98cb91a566da857e.tar.gz linux-cc3fc99f1bce93c3ae3771ef98cb91a566da857e.zip | |
ASoC: fsl_utils: Tolerate fractional PLL rate residue
fsl_asoc_constrain_rates() admits a sample rate only when an audio PLL
divides it exactly. On i.MX8M Plus, fractional audio PLLs may read a few
hertz off their nominal rate after clk_set_rate(). For example,
audio_pll1 can read 393215997 Hz after restoring 393216000 Hz.
This residue can make the helper exclude a valid sample-rate family,
causing a 48 kHz stream to fail or be resampled after PLL trimming.
Accept remainders within 100 Hz of either end of the divisor range.
The other rate family differs by tens of kilohertz, so the tolerance
does not make the families overlap.
Observed on a custom i.MX8MP-based board: after 44.1 kHz playback and
PLL trimming, subsequent 48 kHz playback was silently resampled.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Link: https://patch.msgid.link/20261019224724.236388-1-festevam@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions
