ice_sq_send_cmd(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ice_sq_send_cmd β€” the kernel API manual, bestie edition πŸŽ€

okay so this is ice_sq_send_cmd(9) from the Kernel API Manual, and it's literally the main character of the transmit side of a control queue. stay with me, you're gonna slay this πŸ’…


✨ NAME ✨

ice_sq_send_cmd β€” send command to a control queue πŸ¦‹


✨ SYNOPSIS ✨

int ice_sq_send_cmd (struct ice_hw *hw , struct ice_ctl_q_info *cq ,
struct libie_aq_desc *desc , void *buf , u16 buf_size , struct ice_sq_cd
*cd );

✨ ARGUMENTS ✨

  • hw β€” pointer to the HW struct. the hardware vibes, essential, no cap 🫢
  • cq β€” pointer to the specific Control queue. like, which queue, be specific bestie 🌸
  • desc β€” a prefilled descriptor describing the command. you do the filling before you call, okay? it's already dressed, you're just sending it out πŸ’…
  • buf β€” buffer to use for indirect commands (or NULL for direct commands). yes, NULL is valid here, that's the direct-command life πŸ’€
  • buf_size β€” size of buffer for indirect commands (or 0 for direct commands). pair it up with buf, they're a matching set πŸŽ€
  • cd β€” pointer to command details structure πŸ‘‘

✨ DESCRIPTION ✨

Main command for the transmit side of a control queue. literally the icon, the moment πŸ”₯

Here's the whole glow-up it does for you:

  1. it puts the command on the queue πŸ“₯
  2. it bumps the tail πŸš€
  3. it waits for processing of the command ⏳ (yes, actual waiting, be patient)
  4. it captures command status and results πŸ“Έ
  5. etc. ✨

so yeah. it's the "send the thing and stick around to see what happened" function. very responsible of it, honestly 🧚


✨ SEE ALSO ✨

Kernel file ./drivers/net/ethernet/intel/ice/ice_controlq.c

and like, the entire friend group 😭:


and that's the whole page, bestie. this one lives in ./drivers/net/ethernet/intel/ice, dated October 2026 β€” so go forth, send those commands, and remember: bump the tail responsibly πŸ’œβ­πŸŒˆ

πŸ“¦ where this page comes from