STRUCT PTP_DATA(9)
๐ struct ptp_data(9) โ the Kernel API Manual, but make it make sense
okay so bestie, welcome to the manual page for struct ptp_data(9), literally the kernel API manual entry, and no cap this is the whole thing, every field, every time unit, every default. let's go ๐ซถ
๐ธ NAME ๐ธ
struct ptp_data โ PTP hardware clock data
like, it's the lil struct that holds all the PTP hardware clock data. that's the vibe. ๐
โจ SYNOPSIS โจ
struct ptp_data {
struct ptp_clock *ptp_clock;
struct ptp_clock_info ptp_clock_info;
spinlock_t lock;
s64 delta;
u32 scale_update_gp2;
u64 scale_update_adj_time_ns;
u64 scaled_freq;
u32 last_gp2;
u32 wrap_counter;
struct delayed_work dwork;
};
not me putting the whole struct up there character for character ๐ญ that's the layout, that's the icon, that's the main character energy. ๐
๐ Members ๐
okay now the part everyone actually came for โ the member-by-member breakdown. lowkey obsessed with how organized this is. ๐
ptp_clockโ astruct ptp_clockpointer, the exact one handed back to you by theptp_clock_registerfunction. it's giving "receipt from the registration desk". ๐งพptp_clock_infoโ astruct ptp_clock_infothat describes a PTP hardware clock. the whole personality of the clock basically. ๐ฐ๏ธlockโ aspinlock_tthat protects the time adjustments data. yes bestie, the adjustments data needs a bodyguard. ๐deltaโ the delta between the hardware clock and the ptp clock, measured in nanoseconds. tiny little difference, huge implications, iykyk. ๐ฅscale_update_gp2โ the GP2 time when the scale was last updated. that's it, that's the fact. โจscale_update_adj_time_nsโ the adjusted time when the scale was last updated, in nanoseconds. again with the nanoseconds, we love a consistent unit. ๐scaled_freqโ the clock frequency offset, scaled to65536000000. not65536, not6553600โ65536000000. do not come for me, that's the number in the manual, periodt. ๐last_gp2โ the last GP2 reading from the hardware, and it's used for tracking GP2 wraparounds. our little wrap-watcher. ๐ฆwrap_counterโ the number of wraparounds sincescale_update_adj_time_ns. keeping count, always keeping count. ๐งฎdworkโ astruct delayed_workworker that's scheduled every 1 hour to detect workarounds. hourly check-in, very responsible, very demure. โฐ
๐ SEE ALSO ๐
- Kernel file
./drivers/net/wireless/intel/iwlwifi/mld/ptp.hโ go read it, bestie, that's where the lore lives. ๐
and that's the whole page, fr fr. this lil masterpiece is sourced from ./drivers/net/wireless/intel/i... and dated October 2026, so likeโฆ mark your calendars and stan responsibly. mwah ๐โจ๐
๐ฆ 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