gsi_trans_pool_init_dma(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« gsi_trans_pool_init_dma(9) πŸ’«

okay bestie, welcome to the Kernel API Manual β€” yes the whole manual, and yes this page is the main character today πŸŽ€


✨ NAME ✨

gsi_trans_pool_init_dma β€” literally just initializes a pool of DMA-able structures, that's the whole vibe πŸ’…


🌸 SYNOPSIS 🌸

int gsi_trans_pool_init_dma (struct device *dev , struct gsi_trans_pool
*pool , size_t size , u32 count , u32 max_alloc );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • dev β€” the Device used for DMA. it's giving "the actual hardware we're doing all this for" energy πŸ‘‘
  • pool β€” Pool pointer. yes bestie, you point at the pool 🫢
  • size β€” Size of elements in the pool. how chunky is each one ⭐
  • count β€” Minimum number of elements in the pool. the floor, not the ceiling πŸ’œ
  • max_alloc β€” Maximum number of elements allocated at a time from pool. the literal cap on greed πŸ™ˆ

πŸ’– RETURN πŸ’–

0 if successful, or a negative error code 😭 (iykyk β€” check that return value fr fr)


πŸ”₯ DESCRIPTION πŸ”₯

Structures in this pool reside in DMA-coherent memory. no cap, that's the whole point of this one β€” it's the DMA sibling of the regular init 🌈


πŸŽ€ SEE ALSO πŸŽ€

Kernel file ./drivers/net/ipa/gsi_trans.h struct gsi_trans(9), gsi_trans_pool_init(9), gsi_trans_pool_alloc(9), gsi_trans_pool_exit(9), gsi_trans_pool_alloc_dma(9), gsi_trans_pool_exit_dma(9), gsi_channel_trans_idle(9), gsi_channel_trans_alloc(9), gsi_trans_free(9), gsi_trans_cmd_add(9), gsi_trans_page_add(9), gsi_trans_skb_add(9), gsi_trans_commit(9), gsi_trans_commit_wait(9), gsi_trans_read_byte(9), gsi_trans_read_byte_done(9)

like, the whole friend group, go read them too 🧚


that's the page bestie πŸ’œ go forth and init your DMA pools responsibly ✨

sign-off time: this little masterpiece lives in ./drivers/net/ipa, dated October 2026 β€” slay, see you in the next one πŸ“πŸ‘‘

πŸ“¦ where this page comes from