reset_control_get_exclusive(9)
π reset_control_get_exclusive β the Kernel API Manual page you didn't know you needed
okay so bestie, welcome to the Kernel API Manual entry for reset_control_get_exclusive(9), and trust me when I say this one is lowkey iconic. it's giving "I want my own reset controller and I don't want to share" energy, and honestly? relatable.
β¨ NAME β¨
reset_control_get_exclusive β lookup and obtain an exclusive reference to a reset controller π
πΈ SYNOPSIS πΈ
struct reset_control * reset_control_get_exclusive (struct device *dev ,
const char *id );
like, that's the whole vibe right there. two args, one return value, no drama (until -EBUSY shows up π).
π¦ ARGUMENTS π¦
devβ the device that's gonna get reset by the controller. it's the main character in this operation, fr fr.idβ the reset line name. just the name, bestie. that's it.
π DESCRIPTION π
so what does it do?? it returns a struct reset_control or an IS_ERR condition containing errno. periodt. π
and here's the tea π: if this function is called more than once for the same reset_control, it will return -EBUSY. not me calling twice and getting yelled at π that's the exclusive part doing its job β one owner only, no plus-ones.
highly recommend checking out reset_control_get_shared if you actually want the details on shared references to reset-controls. that's the whole "we can share this" page, this is the "no, it's mine" page. π
also: use of id names is optional. so if you don't have one, you're still valid, bestie π«Ά
π₯ SEE ALSO π₯
okay this list is long β like, scroll-for-days long β but every single one of these is here so don't skip:
- Kernel file
./include/linux/reset.hβ the home base π struct reset_control_bulk_data(9)enum reset_control_flags(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_exclusive(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)
like I said. scroll city. but now you know them all and that's a slay π
that's the whole page, bestie π β brought to you straight out of ./include/linux, dated October 2026, version 9 of the manual. go reset something responsibly, and remember: exclusive means exclusive πβ¨
π¦ 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