ice_ptp_prep_phy_adj_e810(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

ice_ptp_prep_phy_adj_e810 β€” bestie, this is the one that preps the PHY port for a time adjustment ✨


πŸŽ€ SYNOPSIS πŸŽ€

int ice_ptp_prep_phy_adj_e810 (struct ice_hw *hw , s32 adj );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • hw β€” pointer to HW struct. yes the whole hardware struct, she's holding all of it πŸ’…
  • adj β€” the adjustment value to program. this is the number you're feeding in, no cap

🌸 DESCRIPTION 🌸

okay so picture this: you want to do an atomic adjustment, and before you can actually do the thing, you gotta prepare the PHY port for it. that's literally the whole job of this function 🫢

what she does is program two registers β€” ETH_GLTSYN_SHADJ_L and ETH_GLTSYN_SHADJ_H β€” to get the PHY port ready. but heads up: this is only the prep era. the actual adjustment doesn't happen here. it gets completed by issuing an ICE_PTP_ADJ_TIME sync command. so like, this function is the getting-ready-with-me part, and ICE_PTP_ADJ_TIME is the actually-doing-it part 😭✨

also important, and this is giving very specific: the adjustment value only contains the portion used for the upper 32 bits of the PHY timer, usually in units of nominal nanoseconds. and yes β€” negative adjustments are supported using 2s complement arithmetic πŸ”₯ so go ahead and go backwards, she can handle it.

fr fr do not forget: the adjustment is not done until you issue that ICE_PTP_ADJ_TIME sync command. prep β‰  done, bestie πŸ’€

🌈 SEE ALSO 🌈

the main character source file is right here: Kernel file ./drivers/net/ethernet/intel/ice/ice_ptp_hw.c πŸ“πŸ’œ

and now, the guest list. she brought everyone to the function party, and honestly? iconic πŸ‘‘

the clock / timer command girlies:

the E825 / E825C crew:

the ETH56G section (she's long, she's thorough, we respect her):

the E82X squad:

the E810 besties (aka the home team, since our function is _e810):

the E830 girlies:

the generic / shared lore:

the CGU / pin crew:


πŸ’« okay that's the whole page, you ate that. go prep a PHY port, bestie πŸ’…

that's a wrap! this little love letter lives in ./drivers/net/ethernet/intel/ice, dated October 2026, and the page herself is ice_ptp_prep_phy_adj_e810(9) β€” bye bestie, mwah! πŸŽ€πŸ’–

πŸ“¦ where this page comes from