dma_async_is_tx_complete(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« dma_async_is_tx_complete β€” poll for transaction completion πŸ’«

okay so this is from the Kernel API Manual and bestie, it's literally about asking "hey… is my DMA transaction done yet?" πŸŽ€


🌸 NAME 🌸

dma_async_is_tx_complete β€” poll for transaction completion πŸ‘€


✨ SYNOPSIS ✨

enum dma_status dma_async_is_tx_complete (struct dma_chan *chan ,
dma_cookie_t cookie , dma_cookie_t *last , dma_cookie_t *used );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • chan β€” the DMA channel, like the main character of this whole operation πŸ’…
  • cookie β€” the transaction identifier you wanna check the status of πŸͺ (yes it's really called a cookie, no cap)
  • last β€” returns the last completed cookie; can be NULL if you're not about that info rn
  • used β€” returns the last issued cookie; can be NULL too, no pressure 🫢

πŸ’œ DESCRIPTION πŸ’œ

so here's the tea: if you pass in last and used, then upon return they reflect the driver's internal state ✨ and you can use them with dma_async_is_complete to check the status of multiple cookies without re-checking hardware state β€” which is lowkey iconic because hardware checks are expensive and nobody has time for that πŸ™ˆπŸ”₯


🌈 SEE ALSO 🌈

Kernel file ./include/linux/dmaengine.h and their whole friend group:


that's the whole page bestie, go poll some transactions and slay πŸ’–

source: ./include/linux Β· dated October 2026 Β· mwah, byeee πŸ§šπŸ’…

πŸ“¦ where this page comes from