stmmac_dvr_probe(9)
π stmmac_dvr_probe(9) β a Kernel API Manual moment β¨
okay so this is a page from the Kernel API Manual (that's the manual name, bestie, keep it in your notes π) and today's main character is stmmac_dvr_probe. she's the probe function for the stmmac ethernet driver and honestly she does a lot of heavy lifting behind the scenes πΈ
β¨ NAME β¨
stmmac_dvr_probe β
not me leaving the description blank π nope, that's literally how it comes. no tagline, no summary, just the name and a dash. mysterious. iconic. the manpage said "figure it out."
π¦ SYNOPSIS π¦
int stmmac_dvr_probe (struct device *dev , struct plat_stmmacenet_data
*plat_dat , struct stmmac_resources *res );
she takes three pointers and hands you back an int. that's the whole vibe check π«
π ARGUMENTS π
devβ device pointer. the device's little handle, bestie π«Άplat_datβ platform data pointer.struct plat_stmmacenet_data *, so the platform bits live in here β¨resβ stmmac resource pointer.struct stmmac_resources *, the resources get passed in through this one π
π DESCRIPTION π
so basically π this is the main probe function, and here's the tea: it's the one that calls alloc_etherdev and allocates the priv structure. that's the assignment. that's what she does. no cap. π
like, when the driver gets probed, this is the function that shows up first with her clipboard, gets the ethernet device allocated via alloc_etherdev, and gets the private (priv) structure set up too. main character energy fr fr π
π RETURN π
- returns
0on success π - otherwise, it returns an
errnoπ
so like, 0 = slay, anything else = check your errno and go cry about it (affectionately) π
π₯ SEE ALSO π₯
first up, the actual kernel file where all this lives:
Kernel file ./drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
and now the extended universe β grab a snack, this is a long one πβ¨ every single one of these is (9) iykyk:
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_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_remove(9)stmmac_suspend(9)stmmac_reset_queues_param(9)stmmac_resume(9)
lowkey that's 80 functions. she has a lot of friends. i'm not jealous. i'm taking notes π§π
okay that's the page!! π and per the footer, this beauty comes from ./drivers/net/ethernet/stmicro... (yes the path is literally truncated in the source, don't come for me π) and it's dated October 2026 β so mark your calendars, bestie β this probe function is out here living her best life in the stmmac_dvr_probe(9) era π
β¨π
π¦ 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