stmmac_set_clk_tx_rate(9)
πΈ NAME πΈ
Okay so bestie, welcome to the stmmac_set_clk_tx_rate(9) manual page β this function sets the clock rate for the MAC transmit clock. Iconic little clock business, no cap. π
β¨ SYNOPSIS β¨
int stmmac_set_clk_tx_rate (void *bsp_priv , struct clk *clk_tx_i ,
phy_interface_t interface , int speed );
π ARGUMENTS π
bsp_privβ the BSP private data structure, and yes, it is unused. Sheβs just there vibing. πclk_tx_iβ the transmit clock. The main character of this function, fr fr. π°οΈinterfaceβ the selected interface mode. Gotta know which vibe weβre on. π¦speedβ the speed that the MAC will be operating at. Clock rate math starts now. β‘
π DESCRIPTION π
So this one sets the transmit clock rate for the MAC. Normally itβs 2.5MHz for 10Mbps, 25MHz for 100Mbps, and 125MHz for 1Gbps. Itβs suitable for at least MII, GMII, RGMII, and RMII interface modes β a whole little squad of modes, slay. π
Platforms can hook this into the plat_data->set_clk_tx_rate method directly, call it via their own implementation, or implement their own method should they have more complex requirements. It is intended to only be used in this method. Like, literally only in this method, bestie. π
π¨ Real talk: plat_data->clk_tx_i must be filled in. Do not forget, okay? This is not a drill. π
π SEE ALSO π
Kernel file ./drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
And hereβs the whole friend group β every single one, no skipping:
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_set(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)
Signing off from the source/version ./drivers/net/ethernet/stmicro..., dated October 2026 β this was the stmmac_set_clk_tx_rate(9) page, and she ate. Stay slay, bestie! πβ¨ππ¦
π¦ 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