rio_dma_prep_xfer(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

rio_dma_prep_xfer(9) from the Kernel API Manual β€” bestie, we're doing RapidIO DMA setup and it's giving β€œsmall function, big callback energy” πŸ’…βœ¨

πŸ’– NAME πŸ’–

rio_dma_prep_xfer β€” the RapidIO specific wrapper for the device_prep_slave_sg callback defined by DMAENGINE. no cap, that's literally the whole name vibe 🫢

πŸ¦‹ SYNOPSIS πŸ¦‹

struct dma_async_tx_descriptor * rio_dma_prep_xfer (struct dma_chan
       *dchan , u16 destid , struct rio_dma_data *data , enum
       dma_transfer_direction direction , unsigned long flags );

πŸŽ€ ARGUMENTS πŸŽ€

okay so here's the cast of characters, and yes every one matters:

  • dchan β€” the DMA channel to configure. main character channel energy ✨
  • destid β€” target RapidIO device destination ID. like the address of the bestie you're sending to πŸ’Œ
  • data β€” RIO specific data descriptor. the whole lil data package 🎁
  • direction β€” DMA data transfer direction (TO or FROM the device). pick a lane, bestie πŸ”
  • flags β€” dmaengine defined flags. the little switches and knobs πŸŽ›οΈ

✨ DESCRIPTION ✨

So this function initializes a RapidIO capable DMA channel for the specified data transfer. It uses the DMA channel private extension to pass information related to the remote target RIO device. That's it, that's the tea β˜•πŸ’…

πŸ’– RETURN πŸ’–

Returns a pointer to DMA transaction descriptor if successful. If it fails, you get an error-valued pointer or NULL. so: success = descriptor pointer, failure = error-valued pointer or NULL, pls check before you celebrate 😭✨

🌈 SEE ALSO 🌈

Kernel file: ./drivers/rapidio/rio.c

The whole RapidIO friend group, all invited to the group chat:

πŸ’Œ sign-off: source/version is ./drivers/rapidio, date is October 2026. bye bestie, go prep that xfer πŸ«ΆπŸ’…

πŸ“¦ where this page comes from