pvr_cccb_wri..._with_header(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– pvr_cccb_wri..._with_header(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” this one's called pvr_cccb_wri..._with_header (yes the name is lowkey giving "my homework file was due at 11:59pm", but she's iconic, we love her) 🫢


✨ NAME ✨

pvr_cccb_write_command_with_header β€” writes a command plus a command header into a Client CCB. that's the whole vibe. πŸ’…


🌸 SYNOPSIS 🌸

void pvr_cccb_write_command_with_header (struct pvr_cccb *pvr_cccb , u32
cmd_type , u32 cmd_size , void *cmd_data , u32 ext_job_ref , u32
int_job_ref );

like, that's it. that's the signature. no cap. ✨


πŸŽ€ ARGUMENTS πŸŽ€

okay so here's the cast of characters, everybody plays a role:

  • pvr_cccb β€” the Target Client CCB. the main character, honestly. πŸ‘‘
  • cmd_type β€” the Client CCB command type. must be one of ROGUE_FWIF_CCB_CMD_TYPE_* β€” no freestyling, bestie, it's giving strict dress code. πŸ™ˆ
  • cmd_size β€” size of the command, in bytes. πŸ“
  • cmd_data β€” pointer to the command you're actually writing. πŸ–ŠοΈ
  • ext_job_ref β€” the External job reference.
  • int_job_ref β€” the Internal job reference.

πŸ¦‹ DESCRIPTION πŸ¦‹

so what does she do? she writes a command + command header to a Client CCB. slay. ✨

⚠️ read this part, bestie, fr fr: the caller must make sure there's enough space in CCCB to queue this command. you can check that by calling pvr_cccb_cmdseq_fits. do the vibe check before you commit, okay?? 😭

also, and this is important β€” this function is not protected by any lock. nope, zero, none. πŸ”’βŒ the caller must ensure there's no concurrent caller. and apparently that should be guaranteed by the drm_sched model (job submission is serialized in drm_sched_main) β€” so like, the system's got your back, but only because of how drm_sched does its thing. don't go making it weird. πŸ’€


🌈 SEE ALSO 🌈

go look at the Kernel file ./drivers/gpu/drm/imagination/pvr_cccb.c β€” and while you're there, say hi to:


🫢 okay that's the whole page!! sourced straight from ./drivers/gpu/drm/imagination, dated October 2026 β€” write that down, bestie, it's on the exam πŸ’œβ­

πŸ“¦ where this page comes from