xilinx_dma_c...e_descriptor(9)
π
xilinx_dma_complete_descriptor(9) β bestie edition
okay so this page is literally from the Kernel API Manual, and it's about one tiny function that does one tiny thing: it flags the currently active descriptor as done. that's it. that's the whole vibe. it's short, it's sweet, it's giving "one line and a dream" β¨
πΈ NAME
xilinx_dma_complete_descriptor β marks the active descriptor as complete. no drama, no extra steps, just "bestie you're done here" π
π SYNOPSIS
void xilinx_dma_complete_descriptor (struct xilinx_dma_chan *chan );
yep, that's the whole thing. void return, one argument, no notes π«Ά
π¦ ARGUMENTS
chanβ the xilinx DMA channel. that's the one and only thing you hand it, and it's astruct xilinx_dma_chan *. she's the main character here π
π₯ CONTEXT
hardirq
β οΈ okay so important: this runs in hardirq context. like, actual hard interrupt context. so no sleeping, no blocking, no "let me just allocate a little something" β behave yourself in there fr fr π
π SEE ALSO
the kernel file lives at ./drivers/dma/xilinx/xilinx_dma.c β go say hi to the source, it's iconic π
and here's the whole friend group, in the exact order they showed up (no cap, every single one):
struct xilinx_vdma_desc_hw(9)struct xilinx_axidma_desc_hw(9)struct xilinx_aximcdma_desc_hw(9)struct xilinx_cdma_desc_hw(9)struct xilinx_vdma_tx_segment(9)struct xilinx_axidma_tx_segment(9)struct xilinx_aximcdma_tx_segment(9)struct xilinx_cdma_tx_segment(9)struct xilinx_dma_tx_descriptor(9)struct xilinx_dma_chan(9)enum xdma_ip_type(9)struct xilinx_dma_device(9)vdma_desc_write_64(9)xilinx_dma_get_metadata_ptr(9)xilinx_vdma_alloc_tx_segment(9)xilinx_cdma_alloc_tx_segment(9)xilinx_axidma_alloc_tx_segment(9)xilinx_aximcdma_alloc_tx_segment(9)xilinx_dma_free_tx_segment(9)xilinx_mcdma_free_tx_segment(9)xilinx_cdma_free_tx_segment(9)xilinx_vdma_free_tx_segment(9)xilinx_dma_alloc_tx_descriptor(9)xilinx_dma_free_tx_descriptor(9)xilinx_dma_free_desc_list(9)xilinx_dma_free_descriptors(9)xilinx_dma_free_chan_resources(9)xilinx_dma_get_residue(9)xilinx_dma_chan_handle_cyclic(9)xilinx_dma_chan_desc_cleanup(9)xilinx_dma_do_tasklet(9)xilinx_dma_alloc_chan_resources(9)xilinx_dma_calc_copysize(9)xilinx_dma_tx_status(9)xilinx_dma_stop_transfer(9)xilinx_cdma_stop_transfer(9)xilinx_dma_start(9)xilinx_vdma_start_transfer(9)xilinx_cdma_start_transfer(9)xilinx_dma_start_transfer(9)xilinx_mcdma_start_transfer(9)xilinx_dma_issue_pending(9)xilinx_dma_device_config(9)xilinx_dma_reset(9)xilinx_dma_chan_reset(9)xilinx_mcdma_irq_handler(9)xilinx_dma_irq_handler(9)append_desc_queue(9)xilinx_dma_tx_submit(9)xilinx_vdma_dma_prep_interleaved(9)xilinx_cdma_prep_memcpy(9)xilinx_dma_prep_peripheral_dma_vec(9)xilinx_dma_prep_slave_sg(9)xilinx_dma_prep_dma_cyclic(9)xilinx_mcdma_prep_slave_sg(9)xilinx_dma_terminate_all(9)xilinx_vdma_channel_set_config(9)xilinx_dma_chan_remove(9)xilinx_dma_chan_probe(9)xilinx_dma_child_probe(9)of_dma_xilinx_xlate(9)xilinx_dma_probe(9)xilinx_dma_remove(9)
and that's the whole page, bestie π short, sweet, hardirq-safe. this cutie came out of ./drivers/dma/xilinx and it's dated October 2026 β screenshot it, cite it, slay πβ¨
π¦ 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