ice_ptp_init_tx_e82x(9)
π ice_ptp_init_tx_e82x β a Kernel API Manual moment π
okay so bestie, we're in the kernel API manual today, and this one is literally the function that sets up Tx timestamp tracking. yes ma'am, timestamps. from the ./drivers/net/ethernet/intel/ice girlies. let's get into it π«Ά
β¨ NAME β¨
ice_ptp_init_tx_e82x β Initialize tracking for Tx timestamps
πΈ SYNOPSIS πΈ
int ice_ptp_init_tx_e82x (struct ice_pf *pf , struct ice_ptp_tx *tx , u8
port );
π ARGUMENTS π
pfβ Board private structure. yes the whole board's business lives in here πtxβ the Tx tracking structure to initialize. this is the one we're setting up, main character energy fr frportβ the port this structure tracks. one port, one tracker, that's the vibe π
π¦ DESCRIPTION π¦
okay so here's the situation: this function initializes the Tx timestamp tracker for this port. iconic. but wait, there's lore π
For generic MAC devices, the timestamp block is shared for all ports in the same quad. shared!! like a group chat for registers π so to avoid ports using the same timestamp index (which would be a whole mess, ngl), the function logically breaks the block of registers into chunks based on the port number. slay, no collisions, no drama β¨
β RETURN β
0on success π-ENOMEMwhen out of memory π (memory said "not today bestie")
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/ice/ice_ptp.c
and literally the entire extended universe, no cap:
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(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)
that's the whole friend group, go say hi π
mwah, that's the page π this little gem lives in ./drivers/net/ethernet/intel/ice, dated October 2026, from the Kernel API Manual β go forth and timestamp your Tx like the icon you are π
β¨
π¦ 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