atc_prep_slave_sg(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… atc_prep_slave_sg(9) β€” your fave Kernel API Manual entry, bestie ✨

okay so picture this: it's the Kernel API Manual, and we're reading atc_prep_slave_sg(9) πŸ’– no cap, this one is lowkey iconic and it's giving "behind the scenes of a DMA_SLAVE transaction." Let's get into it 🫢


πŸŽ€ NAME πŸŽ€

atc_prep_slave_sg β€” literally the function that prepares descriptors for a DMA_SLAVE transaction ✨ it's doing the prep work so the actual transfer can slay later, periodt πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

bestie, here's the signature, exactly as it is, do not come for me about the spacing 😭

struct dma_async_tx_descriptor * atc_prep_slave_sg (struct dma_chan
*chan , struct scatterlist *sgl , unsigned int sg_len , enum
dma_transfer_direction direction , unsigned long flags , void *context
);

it hands you back a struct dma_async_tx_descriptor * and honestly? main character energy πŸ”₯


🌸 ARGUMENTS 🌸

six little besties walk into the function and here's what each one is about 🧚

  • chan β€” the DMA channel πŸ’« that's your gal, the one actually doing the thing
  • sgl β€” the scatterlist to transfer to/from πŸ¦‹ like, the list of where the data's coming from or going to, whichever way the vibe flows
  • sg_len β€” the number of entries in scatterlist ⭐ so basically how many things are in that list, count 'em
  • direction β€” the DMA direction 🌈 the enum dma_transfer_direction of it all, the way that it tells you which way we're moving
  • flags β€” the tx descriptor status flags πŸŽ€ all the little settings, the seasoning on the descriptor
  • context β€” the transaction context, and bestie please note: it's (ignored) πŸ™ˆ not me passing in context just for it to be ignored, we've all been there 😭
genuine heads-up from the original page: context is literally ignored. taking it, not using it. we respect the honesty πŸ’€

🌟 SEE ALSO 🌟

okay this section is a whole friend group πŸ‘‘ and the original page says they all live in the kernel file ./drivers/dma/at_hdmac.c β€” go say hi πŸ’–

twenty-four entries, every single one of them accounted for, iykyk πŸ§šβ€β™€οΈβœ¨


and that's the whole page, bestie 🫢 come back anytime, the kernel lore is always here for you πŸ’œ

signed, sealed, delivered: ./drivers/dma, October 2026, atc_prep_slave_sg(9) β€” mwah πŸ’‹πŸŽ€
πŸ“¦ where this page comes from