STRUCT CCS_PLL_BRANCH_LIMITS_FR(9)
π struct ccs_pll_branch_limits_fr β CCS PLL front-end limits π
okay bestie, welcome to the Kernel API Manual β¨ this one's a little struct named struct ccs_pll_branch_limits_fr, and honestly? it's giving "the front-end limits sheet for the CCS PLL" π no cap, that's literally what it is. it's the vibe check for the PLL front-end: every min and every max you're allowed to touch. so slay, let's get into it π¦
β¨ NAME β¨
struct ccs_pll_branch_limits_fr β CCS PLL front-end limits π
πΈ SYNOPSIS πΈ
struct ccs_pll_branch_limits_fr {
u16 min_pre_pll_clk_div;
u16 max_pre_pll_clk_div;
u32 min_pll_ip_clk_freq_hz;
u32 max_pll_ip_clk_freq_hz;
u16 min_pll_multiplier;
u16 max_pll_multiplier;
u32 min_pll_op_clk_freq_hz;
u32 max_pll_op_clk_freq_hz;
};
like, that's the whole struct. eight little fields, all of them limits, all of them iconic π
π«Ά Members π«Ά
okay so every single member is a min-or-max situation, which is lowkey the whole personality of this struct. here they are, in order, no skipping, fr fr:
min_pre_pll_clk_divβ the minimum pre-PLL clock divider π§ smallest divider you're allowed to use before the PLL.max_pre_pll_clk_divβ the maximum pre-PLL clock divider π the biggest divider on the menu.min_pll_ip_clk_freq_hzβ the minimum PLL input clock frequency πΈ the lowest input clock freq the PLL will accept.max_pll_ip_clk_freq_hzβ the maximum PLL input clock frequency π the highest input clock freq it'll take, bestie, don't push past it.min_pll_multiplierβ the minimum PLL multiplier β the smallest multiplier allowed.max_pll_multiplierβ the maximum PLL multiplier π₯ the biggest multiplier allowed.min_pll_op_clk_freq_hzβ the minimum PLL output clock frequency π the lowest output clock freq you can land on.max_pll_op_clk_freq_hzβ the maximum PLL output clock frequency π and the highest output clock freq, periodt.
π reminder that these are limits, not suggestions β a struct called ..._limits_fr is absolutely not here to be flexible with you. the vibe check is the whole point. π
π SEE ALSO π
go read these next, they're the friend group this struct runs with π«Ά the kernel file is ./drivers/media/i2c/ccs-pll.h, and the whole squad is:
struct ccs_pll_branch_fr(9)struct ccs_pll_branch_bk(9)struct ccs_pll(9)struct ccs_pll_branch_limits_bk(9)struct ccs_pll_limits(9)ccs_pll_calculate(9)
like, the back-end limits twin (struct ccs_pll_branch_limits_bk(9)) is right there β matching energy, you know how it is π
alright bestie, that's the page π it lives over in ./drivers/media/i2c, dated October 2026, and it's filed under struct ccs_...ch_limits_fr(9) in the manual β love that for us. bye, go read the SEE ALSOs, ily β¨ππ¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms