[PATCH v2 05/17] clk: imx: pll14xx: Add constraint for fvco frequency
Rasmus Villemoes
rasmus.villemoes at prevas.dk
Mon May 13 05:13:45 PDT 2024
On 10/05/2024 11.19, Peng Fan (OSS) wrote:
> From: Shengjiu Wang <shengjiu.wang at nxp.com>
>
> The fvco frequency range is between 1600MHz and 3200MHz, without
> this constraint the fvco may out of range, the real output
> frequency is no accurate.
Could you please point everybody in the direction of where that
requirement is stated? The imx8mp reference manual, for example, merely
lists constraints for p, m, s and k.
>
> /* First try if we can get the desired rate from one of the static entries */
> @@ -193,6 +195,10 @@ static void imx_pll14xx_calc_settings(struct clk_pll14xx *pll, unsigned long rat
> kdiv = pll1443x_calc_kdiv(mdiv, pdiv, sdiv, rate, prate);
> fout = pll14xx_calc_rate(pll, mdiv, pdiv, sdiv, kdiv, prate);
>
> + fvco = fout << sdiv;
> +
> + if (fvco < 1600000000 || fvco > 3200000000)
> + continue;
If this is really a necessary constraint, it seems that one could just
up-front compute the only possible value of s, or at least change the
logic so that one loops over a smaller range of possible values of s.
Rasmus
More information about the linux-arm-kernel
mailing list