xilinx_dpdma...et_dma_addrs(9)
π xilinx_dpdma...et_dma_addrs(9) π
okay bestie, welcome to the Kernel API Manual page for this little icon β¨ yes the header is truncated and it's giving "we ran out of room" energy, but the function inside is xilinx_dpdma_sw_desc_set_dma_addrs, and we're gonna get you comfy with it π
β¨ NAME β¨
xilinx_dpdma_sw_desc_set_dma_addrs β Set DMA addresses in the descriptor. that's the whole vibe: descriptor, DMA addresses, set. slay π
π¦ SYNOPSIS π¦
void xilinx_dpdma_sw_desc_set_dma_addrs (struct xilinx_dpdma_device
*xdev , struct xilinx_dpdma_sw_desc *sw_desc , struct
xilinx_dpdma_sw_desc *prev , dma_addr_t dma_addr[] , unsigned int
num_src_addr );
πΈ ARGUMENTS πΈ
xdevβ DPDMA device. the main-character device, obviously π«Άsw_descβ The software descriptor in which to set DMA addresses. this is where the DMA addresses are going, bestie πprevβ The previous descriptor. the one before, if you have one πdma_addrβ array of dma addresses. literally an array of DMA addresses, no cap β¨num_src_addrβ number of addresses indma_addr. how many little address besties are in that array π’
π DESCRIPTION π
Set all the DMA addresses in the hardware descriptor corresponding to dev from dma_addr. so it's taking the DMA addresses from dma_addr and putting them into the hardware descriptor for dev β very demure, very mindful π§
If a previous descriptor is specified in prev, its next descriptor DMA address is set to the DMA address of sw_desc. yes, prev's next-descriptor DMA address gets linked up to sw_desc's DMA address, iykyk π₯
prev may be identical to sw_desc for cyclic transfers. and that's valid β same descriptor in both spots, no drama, cyclic transfers said "let me do it" ππ
π SEE ALSO π
Kernel file ./drivers/dma/xilinx/xilinx_dpdma.c plus the whole bestie list:
struct xilinx_dpdma_hw_desc(9)struct xilinx_dpdma_sw_desc(9)struct xilinx_dpdma_tx_desc(9)struct xilinx_dpdma_chan(9)struct xilinx_dpdma_device(9)xilinx_dpdma_chan_alloc_sw_desc(9)xilinx_dpdma_chan_free_sw_desc(9)xilinx_dpdma_chan_dump_tx_desc(9)xilinx_dpdma_chan_alloc_tx_desc(9)xilinx_dpdma_chan_free_tx_desc(9)xilinx_dpdma_chan_prep_cyclic(9)xilinx_dpdma_chan_prep_interleaved_dma(9)xilinx_dpdma_chan_enable(9)xilinx_dpdma_chan_disable(9)xilinx_dpdma_chan_pause(9)xilinx_dpdma_chan_unpause(9)xilinx_dpdma_chan_queue_transfer(9)xilinx_dpdma_chan_ostand(9)xilinx_dpdma_chan_notify_no_ostand(9)xilinx_dpdma_chan_wait_no_ostand(9)xilinx_dpdma_chan_poll_no_ostand(9)xilinx_dpdma_chan_stop(9)xilinx_dpdma_chan_done_irq(9)xilinx_dpdma_chan_vsync_irq(9)xilinx_dpdma_chan_err(9)xilinx_dpdma_chan_handle_err(9)xilinx_dpdma_alloc_chan_resources(9)xilinx_dpdma_free_chan_resources(9)xilinx_dpdma_terminate_all(9)xilinx_dpdma_synchronize(9)xilinx_dpdma_err(9)xilinx_dpdma_handle_err_irq(9)xilinx_dpdma_enable_irq(9)xilinx_dpdma_disable_irq(9)xilinx_dpdma_chan_err_task(9)
okay bestie, that's the whole cute little page π the source/version line is from ./drivers/dma/xilinx, it's dated October 2026, and the header on the tin is xilinx_dpdma...et_dma_addrs(9). go set those DMA addresses, you absolute icon πβ¨
π¦ 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