cvs_schedule_and_wait(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ cvs_schedule_and_wait(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸ’– we are literally about to get into cvs_schedule_and_wait(9), and it’s giving β€œschedule the polling work, then wait for it to be done” energy. no cap.


πŸŽ€ NAME πŸŽ€

cvs_schedule_and_wait β€” Schedule polling work then wait for completion πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

int cvs_schedule_and_wait (struct icvs *ctx , unsigned int work_delay_ms
, unsigned long wait_jiffies );

🌸 ARGUMENTS 🌸

  • ctx β€” CVS device context. literally the device’s whole vibe container 🫢
  • work_delay_ms β€” Delay in milliseconds before polling work executes. yes bestie, it waits that many ms before the polling work does its thing ⏳
  • wait_jiffies β€” Timeout (jiffies) to wait for cmd completion. this is the β€œhow long are we willing to wait” number, measured in jiffies ✨

πŸ’œ DESCRIPTION πŸ’œ

okay so picture this: it queues ctx->work to run after work_delay_ms, and then it waits up to wait_jiffies for ctx->cmd_completion. that’s the whole arc πŸ˜ŒπŸ’…


πŸ”₯ RETURN πŸ”₯

  • 0 on success πŸŽ‰
  • -ETIMEDOUT on timeout 😭
  • negative errno on error πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file is ./drivers/media/i2c/cvs/core.c, and the whole squad is right here:


kisses bestie, this page is from ./drivers/media/i2c/cvs, October 2026 πŸ’–βœ¨

πŸ“¦ where this page comes from