dmaengine_p...eral_dma_vec(9)
β¨ NAME β¨
okay so bestie, this page is from the Kernel API Manual and it's all about dmaengine_prep_peripheral_dma_vec β the function that prepares a DMA scatter-gather descriptor π
πΈ SYNOPSIS πΈ
struct dma_async_tx_descriptor * dmaengine_prep_peripheral_dma_vec
(struct dma_chan *chan , const struct dma_vec *vecs , size_t nents ,
enum dma_transfer_direction dir , unsigned long flags );
π ARGUMENTS π
chanβ the channel to be used for this descriptor. it's giving "which lane are we driving in" energy πvecsβ the array of DMA vectors that should be transferred. literally the whole squad of vectors π¦nentsβ the number of DMA vectors in the array. yes, you gotta count them, no vibes-only guesses πdirβ specifies the direction of the data transfer. which way is the data going? main character question fr fr πflagsβ DMA engine flags.DMA_PREP_REPEATcan be used to mark a cyclic DMA transfer π
ngl bestie, that DMA_PREP_REPEAT flag is the one to remember β it's how you say "this transfer goes round and round" π«
π«Ά SEE ALSO π«Ά
Kernel file ./include/linux/dmaengine.h β and the whole extended fam, no cap:
dma_cookie_t(9),enum dma_status(9),enum dma_transaction_type(9),enum dma_transfer_direction(9),struct data_chunk(9),struct dma_interleaved_template(9),struct dma_vec(9),enum dma_ctrl_flags(9),enum sum_check_bits(9),enum sum_check_flags(9),enum dma_desc_metadata_mode(9),struct dma_chan_percpu(9),struct dma_router(9),struct dma_chan(9),struct dma_chan_dev(9),enum dma_slave_buswidth(9),struct dma_slave_config(9),enum dma_residue_granularity(9),struct dma_slave_caps(9),dma_filter_fn(9),struct dma_async_tx_descriptor(9),struct dma_tx_state(9),enum dmaengine_alignment(9),struct dma_slave_map(9),struct dma_filter(9),struct dma_device(9)dmaengine_prep_config_sg_safe(9),dmaengine_prep_config_single_safe(9),dmaengine_prep_dma_memset(9),dmaengine_terminate_all(9),dmaengine_terminate_async(9),dmaengine_synchronize(9),dmaengine_terminate_sync(9),dma_async_issue_pending(9),dma_async_is_tx_complete(9),dma_async_is_complete(9)
that's the whole group chat, hope you said hi to everyone π
π§ cute lil sign-off: this icon lives in./include/linux, dated October 2026, and it's pagedmaengine_p...eral_dma_vec(9)of the Kernel API Manual. slay, you're done, go prep some descriptors β¨π
π¦ 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