ice_tspll_init(9)
β¨ ice_tspll_init(9) β¨
okay so bestie, welcome to the Kernel API Manual π this one lives in section 9 and it's literally all about waking up the TSPLL. yes we're doing clock stuff today, buckle up π
πΈ NAME πΈ
ice_tspll_init β initializes the TSPLL using the settings that came straight from firmware π«Ά
β SYNOPSIS β
int ice_tspll_init (struct ice_hw *hw );
π¦ ARGUMENTS π¦
hwβ a pointer to the HW structure π that's it, that's the whole argument list, she's low maintenance
π DESCRIPTION π
So basically this function sets up the Clock Generation Unit of the E82X/E825 device β¨ like, it takes the config from firmware and makes the clock gen unit actually be a clock gen unit. main character energy fr fr ππ
π₯ RETURN π₯
0β slay, it worked π success- other error codes β it's giving "failed to read/write/cfg CGU" π so like, if reading, writing, or configuring the CGU didn't go through, you get a different error code back
ngl if you're not getting 0 back, something in the read/write/cfg pipeline said no π
π SEE ALSO π
- Kernel file
./drivers/net/ethernet/intel/ice/ice_tspll.cβ go read the source bestie, it's all there π ice_tspll_clk_freq_str(9)ice_tspll_default_freq(9)ice_tspll_check_params(9)ice_tspll_clk_src_str(9)ice_tspll_log_cfg(9)ice_tspll_cfg_e82x(9)ice_tspll_dis_sticky_bits_e82x(9)ice_tspll_cfg_e825c(9)ice_tspll_dis_sticky_bits_e825c(9)ice_tspll_cfg_pps_out_e825c(9)ice_tspll_cfg(9)ice_tspll_dis_sticky_bits(9)ice_tspll_bypass_mux_active_e825c(9)ice_tspll_cfg_bypass_mux_e825c(9)ice_tspll_get_div_e825c(9)ice_tspll_cfg_synce_ethdiv_e825c(9)
that's the whole page babes π huge thank you to the fine people over in ./drivers/net/ethernet/intel/ice β this one's dated October 2026 and documented as ice_tspll_init(9) π
β¨ mwah, go init some clocks π§ββοΈπ
π¦ 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