of_reset_con...et_exclusive(9)
π of_reset_con...et_exclusive(9) π
okay bestie so this is a page from the Kernel API Manual, and lowkey the title got truncated by the terminal like always (of_reset_con...et_exclusive(9), yeah, that's the whole flex). It's a kernel function page, so grab a lil snack and let's get into it π
β¨ NAME β¨
of_reset_control_get_exclusive β the function that looks up a reset controller and hands you an exclusive reference to it. No sharing, no side-eyes, one owner only π
π¦ SYNOPSIS π¦
struct reset_control * of_reset_control_get_exclusive (struct
device_node *node , const char *id );
like, look at her. she's returning a struct reset_control * and she's taking exactly two things. iconic signature tbh π«Ά
πΈ ARGUMENTS πΈ
nodeβ the device that's gonna get reset by the controller. this is the lil guy getting yeeted back to factory settings π«idβ the name of the reset line. it's how you tell the function which specific line you're talking about π·οΈ
π§ DESCRIPTION π§
so what does she actually do? she returns a struct reset_control, or an IS_ERR condition that's carrying an errno inside it π like, that's the whole contract β either you get a real pointer or you get an error dressed up as one. no in-between, no vibes-based guessing. check it with IS_ERR, bestie, always.
and the tea on id? using id names is optional π you can skip it, it's not mandatory, the function is chill like that.
π SEE ALSO π
okay this is the part where the manpage dumps the entire friend group π literally the whole squad, here we go, no skips:
struct reset_control_bulk_data(9)enum reset_control_flags(9)reset_control_get_exclusive(9)reset_control_bulk_get_exclusive(9)reset_control_get_exclusive_released(9)reset_control_bulk_get_exclusive_released(9)reset_control_bulk_get_optional_exclusive_released(9)reset_control_get_shared(9)reset_control_bulk_get_shared(9)reset_control_get_optional_exclusive(9)reset_control_bulk_get_optional_exclusive(9)reset_control_get_optional_shared(9)reset_control_bulk_get_optional_shared(9)of_reset_control_get_optional_exclusive(9)of_reset_control_get_shared(9)of_reset_control_get_exclusive_by_index(9)of_reset_control_get_shared_by_index(9)devm_reset_control_get_exclusive(9)devm_reset_control_get_exclusive_deasserted(9)devm_reset_control_bulk_get_exclusive(9)devm_reset_control_get_exclusive_released(9)devm_reset_control_bulk_get_exclusive_released(9)devm_reset_control_get_optional_exclusive_released(9)devm_reset_control_bulk_get_optional_exclusive_released(9)devm_reset_control_get_shared(9)devm_reset_control_get_shared_deasserted(9)devm_reset_control_bulk_get_shared(9)devm_reset_control_bulk_get_shared_deasserted(9)devm_reset_control_get_optional_exclusive(9)devm_reset_control_get_optional_exclusive_deasserted(9)devm_reset_control_bulk_get_optional_exclusive(9)devm_reset_control_get_optional_shared(9)devm_reset_control_get_optional_shared_deasserted(9)devm_reset_control_bulk_get_optional_shared(9)devm_reset_control_get_exclusive_by_index(9)devm_reset_control_get_shared_by_index(9)
(and yes, it also points you at the kernel file ./include/linux/reset.h if you wanna go read the source like the main character you are πβ¨)
ngl if you're about to write a reset driver, at least three of these are gonna end up in your #include stack. iykyk π
mwah π that's the whole page. this beauty lives over in ./include/linux, stamped October 2026, and the header/footer both repped of_reset_con...et_exclusive(9) because truncation is forever bestie πβοΈ
π¦ 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