stmmac_hwtstamp_set(9)
π stmmac_hwtstamp_set β kernel API manual, but make it cute π
okay so real talk, bestie: this is stmmac_hwtstamp_set(9) from the Kernel API Manual, and it's literally the function that controls hardware timestamping β¨ like, that's the whole vibe. no cap.
πΈ NAME πΈ
stmmac_hwtstamp_set β control hardware timestamping. that's it. that's the girl. π
β¨ SYNOPSIS β¨
int stmmac_hwtstamp_set (struct net_device *dev , struct
kernel_hwtstamp_config *config , struct netlink_ext_ack *extack );
three args, one int coming back at you. it's giving "small function, big responsibilities" energy fr fr π«Ά
π ARGUMENTS π
devβ the device pointer. like, the actual net device we're messing with. main character energy right here πconfigβ the timestamping configuration. this is the user's wishlist, the whole dream, the settings πextackβ the netlink extended ack structure, used for error reporting. so when something goes wrong it can tell you why instead of just ghosting you π
π¦ DESCRIPTION π¦
so what does it actually do?? it configures the MAC to enable/disable both outgoing (TX) and incoming (RX) packets' time stamping, based on user input. yes bestie, both directions, we don't do half measures here π₯
return value: 0 on success and an appropriate -ve integer on failure. ngl a negative number coming back is never good news π
π SEE ALSO π
the kernel file lives at ./drivers/net/ethernet/stmicro/stmmac/stmmac_main.c β go read it, iykyk π
and now the friend group, because this function literally knows everyone π―ββοΈ:
stmmac_set_clk_tx_rate(9),stmmac_axi_blen_to_mask(9),stmmac_verify_args(9),stmmac_disable_all_queues(9),stmmac_enable_all_queues(9),stmmac_rx_dirty(9),stmmac_try_to_start_sw_lpi(9),stmmac_stop_sw_lpi(9),stmmac_eee_ctrl_timer(9),stmmac_hwtstamp_get(9),stmmac_init_tstamp_counter(9),stmmac_init_timestamping(9),stmmac_mac_flow_ctrl(9),stmmac_check_pcs_mode(9),stmmac_init_phy(9),stmmac_clear_rx_descriptors(9),stmmac_clear_tx_descriptors(9),stmmac_clear_descriptors(9),stmmac_init_rx_buffers(9),stmmac_free_rx_buffer(9),stmmac_free_tx_buffer(9),dma_free_rx_skbufs(9),dma_free_rx_xskbufs(9),__init_dma_rx_desc_rings(9),__init_dma_tx_desc_rings(9),init_dma_desc_rings(9),dma_free_tx_skbufs(9),stmmac_free_tx_skbufs(9),__free_dma_rx_desc_resources(9),__free_dma_tx_desc_resources(9),__alloc_dma_rx_desc_resources(9),__alloc_dma_tx_desc_resources(9),alloc_dma_desc_resources(9),free_dma_desc_resources(9),stmmac_mac_enable_rx_queues(9),stmmac_start_rx_dma(9),stmmac_start_tx_dma(9),stmmac_stop_rx_dma(9),stmmac_stop_tx_dma(9),stmmac_start_all_dma(9),stmmac_stop_all_dma(9),stmmac_dma_operation_mode(9),stmmac_tx_clean(9),stmmac_tx_err(9),stmmac_set_dma_operation_mode(9),stmmac_dma_interrupt(9),stmmac_mmc_setup(9),stmmac_get_hw_features(9),stmmac_check_ether_addr(9),stmmac_init_dma_engine(9),stmmac_tx_timer(9),stmmac_init_coalesce(9),stmmac_set_tx_queue_weight(9),stmmac_configure_cbs(9),stmmac_rx_queue_dma_chan_map(9),stmmac_mac_config_rx_queues_prio(9),stmmac_mac_config_tx_queues_prio(9),stmmac_mac_config_rx_queues_routing(9),stmmac_mtl_configuration(9),stmmac_hw_setup(9),stmmac_setup_dma_desc(9),__stmmac_open(9),stmmac_release(9),stmmac_tso_allocator(9),stmmac_tso_xmit(9),stmmac_has_ip_ethertype(9),stmmac_xmit(9),stmmac_rx_refill(9),stmmac_rx(9),stmmac_tx_timeout(9),stmmac_set_rx_mode(9),stmmac_change_mtu(9),stmmac_interrupt(9),stmmac_ioctl(9),stmmac_hw_init(9),stmmac_dvr_probe(9),stmmac_dvr_remove(9),stmmac_suspend(9),stmmac_reset_queues_param(9),stmmac_resume(9)
like, that's a whole contact list bestie ππ
π«Ά also, the source path in the footer got squished to ./drivers/net/ethernet/stmicro... and the date on the original was October 2026 β so yeah, this page is from the future apparently, no cap β
that's the whole manual page, bestie! go forth and timestamp responsibly ππ§ββοΈπΈ
π¦ 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