v4l2_pipeline_pm_get(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… v4l2_pipeline_pm_get(9) β€” a Kernel API Manual moment πŸŽ€

okay so bestie, welcome to the Kernel API Manual entry for v4l2_pipeline_pm_get, and listen… this one comes with a whole vibe warning label attached, so buckle up and let's get into it πŸ’–


✨ NAME ✨

v4l2_pipeline_pm_get β€” literally just bumps up the use count of a pipeline, that's the whole personality 🫢


🌸 SYNOPSIS 🌸

int v4l2_pipeline_pm_get (struct media_entity *entity );

that's it. that's the signature. slay ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • entity β€” the root entity of a pipeline πŸŽ€ (yes, the root one, not just any random entity in the pile, iykyk)

πŸ”₯ DESCRIPTION πŸ”₯

THIS FUNCTION IS DEPRECATED. DO NOT USE IN NEW DRIVERS. USE RUNTIME PM ON SUB-DEVICE DRIVERS INSTEAD. 🚨

like… no cap, this is a do not touch this in new code situation. the manpage is yelling in all caps for a reason bestie. if you're writing a new driver, you use runtime PM on sub-device drivers instead. periodt. πŸ’€

so what does it even do? it updates the use count of all the entities in the pipeline and powers the entities on ⚑. one call, whole pipeline gets the glow-up.

this function is intended to be called in video node open πŸ‘€. it uses struct media_entity.use_count to track the power status β€” that struct member is the little bookkeeper keeping track of who's on and who's off πŸ““βœ¨

and here's the pairing rule: the use of this function should be paired with v4l2_pipeline_link_notify πŸ’«. they're a matched set, don't split them up, that would be giving messy.

it returns 0 on success or a negative error code on failure 🌈 (so like, check your return value, bestie, please πŸ™)


πŸ‘‘ SEE ALSO πŸ‘‘


aaaaand that's the whole page, bestie 🧚✨ this little gem lives in ./include/media, dated October 2026, and it's filed under v4l2_pipeline_pm_get(9) β€” go forth and please use runtime PM on sub-device drivers instead, ily, bye πŸ’…πŸ’–

πŸ“¦ where this page comes from