ice_cpi_phy_lock(9)
π ice_cpi_phy_lock(9) β like, the per-PHY lock for CPI transaction serialization, bestie
okay so this is a page from the Kernel API Manual (ice_cpi_phy_lock(9), if we're being formal) and honestly? it's short, it's sweet, and it's giving "tiny function, big responsibility." let's get into it π
β¨ NAME β¨
ice_cpi_phy_lock β get per-PHY lock for CPI transaction serialization
like, it hands you the lock so your CPI transactions don't all talk over each other. polite king behavior π
πΈ SYNOPSIS πΈ
struct mutex * ice_cpi_phy_lock (struct ice_hw *hw , u8 phy );
that's it. that's the whole vibe. you give it a hw and a phy, it gives you back a struct mutex *. slay β¨
π¦ ARGUMENTS π¦
hwβ pointer to the HW struct. yes bestie, the hardware one. the main character of the whole driver πphyβ the PHY index. it's au8, so keep it cute and keep it in range π
π RETURN π
pointer to PHY mutex, or NULL when context is unavailable.
β οΈ heads up: NULL is a real possibility here, so fr fr check it before you dereference. don't be that girl π
π₯ SEE ALSO π₯
Kernel file ./drivers/net/ethernet/intel/ice/ice_cpi.c β that's the whole squad's home base π
then the friend group, in order:
ice_cpi_get_dest_dev(9)ice_cpi_write_phy(9)ice_cpi_read_phy(9)ice_cpi_wait_req0_ack0(9)ice_cpi_wait_ack(9)ice_cpi_req0(9)ice_cpi_exec_cmd(9)ice_cpi_exec(9)ice_cpi_set_cmd(9)ice_cpi_ena_dis_clk_ref(9)
go read them too, iykyk π«Ά
and that's the whole page, bestie β no cap, that's genuinely all of it π
mwah π this little love letter lives in ./drivers/net/ethernet/intel/ice, dated October 2026, and yes the tag at the bottom still says ice_cpi_phy_lock(9) β periodt. πβ¨
π¦ 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