axienet_dma_bd_init(9)
π
axienet_dma_bd_init (9) β Kernel API Manual, bestie edition π
Okay so this is a page from the Kernel API Manual, and today's main character is axienet_dma_bd_init. Buckle up buttercup, it's giving "DMA rings" and honestly? Iconic.
β¨ NAME β¨
axienet_dma_bd_init β Setup buffer descriptor rings for Axi DMA πΈ
β¨ SYNOPSIS β¨
int axienet_dma_bd_init (struct net_device *ndev );
β¨ ARGUMENTS β¨
ndevβ Pointer to thenet_devicestructure π«Ά (yes, just the one argument, she's lowkey simple like that)
β¨ RETURN β¨
0, on success π-ENOMEM, on failure π
No cap, those are literally the only two outcomes. Either you slayed or you ran out of memory, there is no in-between.
β¨ DESCRIPTION β¨
So this function gets called to initialize the Rx and Tx DMA descriptor rings. π¦ It initializes the descriptors with the required default values β cozy little baseline vibes β and it gets called when the Axi Ethernet driver reset is called. Like, reset happens, this function shows up to set the table again. Periodt. π
β¨ SEE ALSO β¨
Bestie, the friend group is huge, so let's go:
- Kernel file
./drivers/net/ethernet/xilinx/xilinx_axienet_main.cβ that's the home base, iykyk π axienet_dma_in32(9)axienet_dma_bd_release(9)axienet_calc_cr(9)axienet_coalesce_params(9)axienet_dma_start(9)axienet_set_mac_address(9)netdev_set_mac_address(9)axienet_set_multicast_list(9)axienet_setoptions(9)axienet_dma_stop(9)axienet_device_reset(9)axienet_free_tx_chain(9)axienet_check_tx_bd_space(9)axienet_dma_tx_cb(9)axienet_start_xmit_dmaengine(9)axienet_tx_poll(9)axienet_start_xmit(9)axienet_dma_rx_cb(9)axienet_rx_poll(9)axienet_tx_irq(9)axienet_rx_irq(9)axienet_eth_irq(9)axienet_rx_submit_desc(9)axienet_init_dmaengine(9)axienet_init_legacy_dma(9)axienet_open(9)axienet_stop(9)axienet_change_mtu(9)axienet_poll_controller(9)axienet_ethtools_get_drvinfo(9)axienet_ethtools_get_regs_len(9)axienet_ethtools_get_regs(9)axienet_ethtools_get_pauseparam(9)axienet_ethtools_set_pauseparam(9)axienet_update_coalesce_rx(9)axienet_dim_coalesce_count_rx(9)axienet_rx_dim_work(9)axienet_update_coalesce_tx(9)axienet_ethtools_get_coalesce(9)axienet_ethtools_set_coalesce(9)axienet_dma_err_handler(9)axienet_probe(9)
Go read all of them, I'll wait. π
Okay that's the whole page, mwah π
Sign-off time: this lil masterpiece lives in ./drivers/net/ethernet/xilinx, dated October 2026, and it's filed under axienet_dma_bd_init(9) in the Kernel API Manual. Slay, go init some rings. π¦β¨π
π¦ 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