rproc_boot(9)
π rproc_boot(9) β like, the kernel API manual, but make it make sense π
okay bestie, you know how the kernel API manual has that whole rproc_boot(9) page? yeah. that one. we're doing it. it lives in the kernel API manual section 9, and honestly it's kind of a vibe. let's get into it π«Ά
β¨ NAME β¨
rproc_boot β boot a remote processor. that's it. that's the whole job. main character energy fr π₯
πΈ SYNOPSIS πΈ
int rproc_boot (struct rproc *rproc );
like, hand it a processor and it'll hand you back an int. simple as. no cap.
π ARGUMENTS π
rprocβ the handle of a remote processor π like, this is the one you're booting. the handle. the whole point.
π¦ DESCRIPTION π¦
bestie. okay. so what this actually does π is boot a remote processor. and by "boot" i mean the full little ritual: it loads its firmware, it powers it on, the whole ... situation. it's giving "wake up sleepyhead" but for hardware β¨
and here's the cute part β if the remote processor is already powered on, this function immediately returns, and it returns successfully. no drama. no double-boot. it just peeks, sees the lights are already on, and goes "yep, we're good" and bounces π iconic behavior honestly.
β RETURN β
0on success π- and an appropriate error value otherwise π (like, some error. the appropriate one. you'll know.)
π SEE ALSO π
okay this is the part where the manpage just goes off. like it's a whole friend group. the kernel file to look at is ./drivers/remoteproc/remoteproc_core.c, and then there's this entire roster of siblings:
rproc_da_to_va(9)rproc_find_carveout_by_name(9)rproc_check_carveout_da(9)rproc_handle_vdev(9)rproc_handle_trace(9)rproc_handle_devmem(9)rproc_alloc_carveout(9)rproc_release_carveout(9)rproc_handle_carveout(9)rproc_add_carveout(9)rproc_mem_entry_init(9)rproc_of_resm_mem_entry_init(9)rproc_of_parse_firmware(9)rproc_alloc_registered_carveouts(9)rproc_resource_cleanup(9)rproc_trigger_recovery(9)rproc_crash_handler_work(9)rproc_shutdown(9)rproc_detach(9)rproc_get_by_phandle(9)rproc_set_firmware(9)rproc_add(9)devm_rproc_add(9)rproc_type_release(9)rproc_alloc(9)rproc_free(9)rproc_put(9)rproc_del(9)devm_rproc_alloc(9)rproc_add_subdev(9)rproc_remove_subdev(9)rproc_get_by_child(9)rproc_report_crash(9)
yeah. thirty-three of them. i counted. go read them all, i'll wait π
π quick reminder bestie: rproc_boot returning success when the thing is already on is a feature, not a bug β don't go adding your own "already booted" check and then be confused when it's fine. iykyk.
and that's the page!! sourced from ./drivers/remoteproc, dated October 2026, in the Kernel API Manual β mwah, love that for us ππ§ββοΈπ«
π¦ 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