i40e_ptp_hwtstamp_set(9)
π i40e_ptp_hwtstamp_set β like, the whole vibe
okay bestie, so this is a page straight out of the Kernel API Manual, and it's about i40e_ptp_hwtstamp_set. yes it's a mouthful, yes it's iconic, let's get into it π
β¨ NAME β¨
i40e_ptp_hwtstamp_set β the interface that lets you control the HW timestamping, fr fr π°οΈ
π¦ SYNOPSIS π¦
int i40e_ptp_hwtstamp_set (struct net_device *netdev , struct
kernel_hwtstamp_config *config , struct netlink_ext_ack *extack );
like, that's the whole signature, no notes π
πΈ ARGUMENTS πΈ
netdevβ the network device structure, aka the main character here πconfigβ the timestamping configuration structure, where all the settings live πextackβ the netlink extended ack structure, which is literally just there for error reporting π«Ά
π DESCRIPTION π
so basically, this function's whole job is to respond to the user filter requests and make the appropriate hardware changes right here. that's it, that's the tea β
here's the important bit tho: the XL710 cannot support splitting of the Tx/Rx timestamping logic, so you gotta keep track in software of whether to indicate these timestamps or not. software said "i'll remember for you babe" ππ
also, it is permissible to "upgrade" the user request to a broader filter β as long as the user receives the timestamps they care about and the user is notified the filter has been broadened. like, leveling up their request is fine, just tell them, don't be sneaky πβ¨
π₯ SEE ALSO π₯
- Kernel file
./drivers/net/ethernet/intel/i40e/i40e_ptp.c i40e_ptp_extts0_work(9)i40e_is_ptp_pin_dev(9)i40e_can_set_pins(9)i40_ptp_reset_timing_events(9)i40e_ptp_verify(9)i40e_ptp_read(9)i40e_ptp_write(9)i40e_ptp_convert_to_hwtstamp(9)i40e_ptp_adjfine(9)i40e_ptp_set_1pps_signal_hw(9)i40e_ptp_adjtime(9)i40e_ptp_gettimex(9)i40e_ptp_settime(9)i40e_pps_configure(9)i40e_pin_state(9)i40e_ptp_enable_pin(9)i40e_ptp_feature_enable(9)i40e_ptp_get_rx_events(9)i40e_ptp_rx_hang(9)i40e_ptp_tx_hang(9)i40e_ptp_tx_hwtstamp(9)i40e_ptp_rx_hwtstamp(9)i40e_ptp_set_increment(9)i40e_ptp_hwtstamp_get(9)i40e_ptp_free_pins(9)i40e_ptp_set_pin_hw(9)i40e_ptp_set_led_hw(9)i40e_ptp_init_leds_hw(9)i40e_ptp_set_pins_hw(9)i40e_ptp_set_pins(9)i40e_ptp_alloc_pins(9)i40e_ptp_set_timestamp_mode(9)i40e_init_pin_config(9)i40e_ptp_create_clock(9)i40e_ptp_save_hw_time(9)i40e_ptp_restore_hw_time(9)i40e_ptp_init(9)i40e_ptp_stop(9)
like, that's a whole friend group right there, they all ate π β¨
and that's the page bestie!! brought to you by the fine folks over at ./drivers/net/ethernet/intel/i40e, dated October 2026 β slay, periodt, go read some kernel source π«Άπ
π¦ 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