i40e_ptp_settime(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i40e_ptp_settime(9)

okay bestie, so this is a page from the Kernel API Manual β€” yes, the real one, the kernel docs β€” and it's all about i40e_ptp_settime. Sit down, hydrate, and let's get into it πŸ’–


✨ NAME ✨

i40e_ptp_settime β€” set the time of the PHC πŸ•βœ¨

(that's the PTP Hardware Clock, iykyk β€” the actual clock living on the network card itself, not your system clock, no cap)


πŸ¦‹ SYNOPSIS πŸ¦‹

int i40e_ptp_settime (struct ptp_clock_info *ptp , const struct
       timespec64 *ts );

that's the whole signature, copy it exactly, don't be weird about the spacing, it's literally how it's printed 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • ptp β€” the PTP clock structure πŸ’« this is the clock thingy you're working with.
  • ts β€” a timespec64 structure that's holding the brand-new time value you wanna slam in there. that's the payload, bestie πŸ“

🌸 DESCRIPTION 🌸

so what it does is: it sets the device clock to the value the user handed in. that's the vibe. the clock on the device gets updated to whatever you passed.

and the little detail that matters, bestie β€” the conversion from timespec to ns (nanoseconds, obviously) happens in the write function. not here. so this function itself? it's not doing that math. the write function is the one doing the conversion, periodt ✨


πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file lives right here, go look, it's giving source-of-truth:

./drivers/net/ethernet/intel/i40e/i40e_ptp.c

and now the whole friend group, in order, no skips, no cuts 🌈:

like, that's the entire clique and they're all iconic in their own way πŸ’€πŸ’…


ngl the i40_ptp_reset_timing_events(9) one is spelled i40_ not i40e_ up there β€” that's literally how it appears on the page, so bestie I'm keeping it exactly as-is, don't come for me πŸ™ˆ

and that's the page!! this one's from the kernel docs under ./drivers/net/ethernet/intel/i40e, dated October 2026, and the page itself is i40e_ptp_settime(9). mwah, go set some clocks, you're gonna slay πŸ’œπŸŽ€βœ¨

πŸ“¦ where this page comes from