gsi_trans_cmd_add(9)
β¨ gsi_trans_cmd_add β Kernel API Manual, but make it make sense β¨
okay bestie, so this one lives in the Kernel API Manual and it's literally the function that adds an immediate command to a transaction. yes i know, "gsi_trans_cmd_add" sounds like a wifi password, but stick with me π
πΈ NAME πΈ
gsi_trans_cmd_add β Add an immediate command to a transaction. that's the whole vibe, no notes π
π¦ SYNOPSIS π¦
void gsi_trans_cmd_add (struct gsi_trans *trans , void *buf , u32 size ,
dma_addr_t addr , enum ipa_cmd_opcode opcode );
that's the signature, copy it exactly bestie, no "fixing" it, no merging args, we don't do that here π
π₯ ARGUMENTS π₯
transβ Transaction. it's the transaction you're adding the command to, main character energy πbufβ Buffer pointer for command payload. the actual pointer where the payload lives β¨sizeβ Number of bytes in buffer. so like, how many bytes are actually in there πaddrβ DMA address for payload. the DMA address for that payload, no cap πΈopcodeβ IPA immediate command opcode. like i said, the IPA immediate command opcode π«Ά
β SEE ALSO β
so these are all in the kernel file ./drivers/net/ipa/gsi_trans.h β here's the whole squad, and yes i'm listing every single one because they all matter π
struct gsi_trans(9)gsi_trans_pool_init(9)gsi_trans_pool_alloc(9)gsi_trans_pool_exit(9)gsi_trans_pool_init_dma(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_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)
that's it, that's the page π go add your immediate command bestie, you got this β¨
sign-off: this whole thing is from ./drivers/net/ipa and the date on it is October 2026 π¦ that's the source/version and date right there, iykyk π
π¦ 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