pruss_get(9)
π pruss_get(9) π
okay so this is a page from the Kernel API Manual and honestly? it's a little baddie. it's pruss_get, and it's giving "i just want my PRU to find its parent." let's get into it π
β¨ NAME β¨
pruss_get β get the pruss for a given PRU remoteproc π
πΈ SYNOPSIS πΈ
struct pruss * pruss_get (struct rproc *rproc );
like. that's the whole vibe. one function, one job.
π¦ ARGUMENTS π¦
rprocβ the remoteproc handle of a PRU instance. that's your girl. that's who you're asking about π«Ά
π DESCRIPTION π
okay bestie, so what this does: it finds the parent pruss device for a PRU, given the rproc handle of that PRU remote processor. matchmaker energy fr fr π
and here's the part you cannot skip: this function increments the pruss device's refcount. so you always gotta use pruss_put to decrement it back once you don't need the pruss anymore. no leaving it hanging, that's rude π
β οΈ also important: this API doesn't check ifrprocis valid or not. nope. not its job. it fully expects the caller to have done apru_rproc_getonrprocbefore calling this API, so thatrprocis guaranteed valid. do your homework first, bestie π
β RETURN β
- success β you get a
prusshandle. slay π - failure β you get an
ERR_PTR, using one of these error values:-EINVALβ invalid parameter π-ENODEVβ the PRU device or the PRUSS device is not found π
π§ SEE ALSO π§
- Kernel file
./drivers/soc/ti/pruss.c struct pruss_private_data(9)pruss_put(9)pruss_request_mem_region(9)pruss_release_mem_region(9)pruss_cfg_get_gpmux(9)pruss_cfg_set_gpmux(9)pruss_cfg_gpimode(9)pruss_cfg_miirt_enable(9)pruss_cfg_xfr_enable(9)
like a whole friend group of pruss functions. iykyk π
okay that's the page!! and for the little sign-off moment: this one lives under ./drivers/soc/ti, dated October 2026, and it's filed as pruss_get(9) β iconic, periodt πβ¨π
π¦ 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