ice_ptp_init_tx(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ice_ptp_init_tx β€” like, the Kernel API Manual, but make it make sense πŸ’–

okay bestie, welcome to the ice_ptp_init_tx(9) glow-up ✨ this is a page from the Kernel API Manual, and honestly? it's short, it's sweet, and it's about to be your new hyperfixation πŸŽ€


🌸 NAME 🌸

ice_ptp_init_tx β€” literally just initializing the tracking for Tx timestamps πŸ’… that's the whole vibe, no cap.


✨ SYNOPSIS ✨

int ice_ptp_init_tx (struct ice_pf *pf , struct ice_ptp_tx *tx , u8 port );

she takes three things and gives you back an int, periodt 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • pf β€” the board private structure, aka the main character of this whole operation πŸ‘‘
  • tx β€” the Tx tracking structure you're gonna initialize (yes, this exact one, don't get it twisted πŸ™ˆ)
  • port β€” the port that this structure is tracking 🌈

πŸ’œ DESCRIPTION πŸ’œ

so the way this works is: ice_ptp_init_tx initializes the Tx timestamp tracker for this PF. that's it, that's the job ✨

and here's the tea πŸ“ β€” for all PHYs except E82X, every single port has its own block of timestamps, independent of all the other ports. like, no sharing, no overlap, each port living its own best life πŸ’… E82X? not invited to that party, she's built different, iykyk 😭


⭐ RETURN ⭐

  • 0 on success β€” slay, we ate, no notes πŸ’–
  • -ENOMEM when you're out of memory β€” aka the vibe check failed, sorry bestie πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

okay this is the part where the whole friend group shows up 🫢 first up, the kernel file itself β€” Kernel file ./drivers/net/ethernet/intel/ice/ice_ptp.c πŸ“ β€” and then, like, everyone:

ice_ptp_find_pin_idx(9), ice_ptp_cfg_tx_interrupt(9), ice_set_rx_tstamp(9), ice_ptp_disable_timestamp_mode(9), ice_ptp_restore_timestamp_mode(9), ice_ptp_read_src_clk_reg(9), ice_ptp_extend_32b_ts(9), ice_ptp_extend_40b_ts(9), ice_ptp_is_tx_tracker_up(9), ice_ptp_req_tx_single_tstamp(9), ice_ptp_complete_tx_single_tstamp(9), ice_ptp_process_tx_tstamp(9), ice_ptp_alloc_tx_tracker(9), ice_ptp_flush_tx_tracker(9), ice_ptp_mark_tx_tracker_stale(9), ice_ptp_flush_all_tx_tracker(9), ice_ptp_release_tx_tracker(9), ice_ptp_init_tx_e82x(9), ice_ptp_update_cached_phctime(9), ice_ptp_reset_cached_phctime(9), ice_ptp_write_init(9), ice_ptp_write_adj(9), ice_base_incval(9), ice_ptp_check_tx_fifo(9), ice_ptp_wait_for_offsets(9), ice_ptp_port_phy_stop(9), ice_ptp_port_phy_restart(9), ice_ptp_link_change(9), ice_ptp_cfg_phy_interrupt(9), ice_ptp_reset_phy_timestamping(9), ice_ptp_restart_all_phy(9), ice_ptp_adjfine(9), ice_ptp_extts_event(9), ice_ptp_cfg_extts(9), ice_ptp_disable_all_extts(9), ice_ptp_enable_all_extts(9), ice_ptp_write_perout(9), ice_ptp_cfg_perout(9), ice_ptp_disable_all_perout(9), ice_ptp_enable_all_perout(9), ice_verify_pin(9), ice_ptp_gpio_enable(9), ice_ptp_gettimex64(9), ice_ptp_settime64(9), ice_ptp_adjtime_nonatomic(9), ice_ptp_adjtime(9), struct ice_crosststamp_cfg(9), struct ice_crosststamp_ctx(9), ice_capture_crosststamp(9), ice_ptp_getcrosststamp(9), ice_ptp_hwtstamp_get(9), ice_ptp_set_timestamp_mode(9), ice_ptp_hwtstamp_set(9), ice_ptp_get_rx_hwts(9), ice_ptp_setup_pin_cfg(9), ice_ptp_disable_pins(9), ice_ptp_parse_sdp_entries(9), ice_ptp_set_funcs_e82x(9), ice_ptp_set_funcs_e810(9), ice_ptp_set_funcs_e830(9), ice_ptp_set_caps(9), ice_ptp_create_clock(9), ice_ptp_request_ts(9), ice_ptp_ts_irq(9), ice_ptp_maybe_trigger_tx_interrupt(9), ice_ptp_queue_work(9), ice_ptp_prepare_rebuild_sec(9), ice_ptp_prepare_for_reset(9), ice_ptp_rebuild_owner(9), ice_ptp_rebuild(9), ice_ptp_clock_index(9), ice_ptp_init_owner(9), ice_ptp_init_work(9), ice_ptp_init_port(9), ice_ptp_init_tx_interrupt_mode(9), ice_ptp_init(9), ice_ptp_release(9)

like i said β€” the whole group chat πŸ’€ but honestly? iconic behavior, every single one 🌟


okay that's the page bestie, you're officially educated πŸ’…βœ¨

sign-off time πŸŽ€ this little love letter lives in ./drivers/net/ethernet/intel/ice and it's dated October 2026 β€” mwah, go timestamp something πŸ¦‹πŸ’–

πŸ“¦ where this page comes from