reset_control_rearm(9)
π reset_control_rearm(9) β the Kernel API Manual page, bestie edition β¨
okay so you're reading a kernel API manual page (that's the (9) vibe, section 9, kernel dev stuff π§) and honestly? this one's short and sweet. let's get into it π«Ά
πΈ NAME πΈ
reset_control_rearm β lowkey the function that lets a shared reset line get re-triggered π
like, it's giving "second chance" energy fr fr
β¨ SYNOPSIS β¨
int reset_control_rearm (struct reset_control *rstc );
π ARGUMENTS π
rstcβ the reset controller. that's it, that's the whole arg. she's astruct reset_control *and she's the main character π
π¦ DESCRIPTION π¦
okay so picture this: you're on a shared reset line, right? the actual reset pulse only goes off once for the entire lifetime of the reset_control instance. one and done. no cap. π except β and this is the moment β if you use this call. that's what rearm is for, bestie, it's literally the loophole ποΈ
calls to this function must be balanced with calls to reset_control_reset. yes, they're a matched set, they're a duo, they're giving complementary energies π and a warning is thrown in case triggered_count ever dips below 0. so like, don't do that π
consumers must not use reset_control_(de)assert on shared reset lines when reset_control_reset or reset_control_rearm have been used. that's a hard no, bestie, we do not mix those, it's not the vibe, periodt π₯
oh and if rstc is NULL? the function just returns 0. iconic lazy queen behavior honestly, she said "not my problem, here's a zero" π«Ά
β οΈ real talk β that balanced-calls rule and the (de)assert restriction are not suggestions. ignore them and you get warnings and broken vibes. you've been warned π
π SEE ALSO π
- Kernel file
./drivers/reset/core.cβ go read the source, iykyk π struct reset_control(9)struct reset_control_array(9)struct reset_gpio_lookup(9)fwnode_reset_simple_xlate(9)reset_controller_register(9)reset_controller_unregister(9)devm_reset_controller_register(9)reset_control_reset(9)reset_control_bulk_reset(9)reset_control_assert(9)reset_control_bulk_assert(9)reset_control_deassert(9)reset_control_bulk_deassert(9)reset_control_status(9)reset_control_acquire(9)reset_control_bulk_acquire(9)reset_control_release(9)reset_control_bulk_release(9)reset_control_put(9)reset_control_bulk_put(9)__device_reset(9)fwnode_reset_control_get_count(9)fwnode_reset_control_array_get(9)devm_reset_control_array_get(9)reset_control_get_count(9)
and that's the whole page, bestie, you ate that π go forth and rearm responsibly π
sign-off szn π β this one comes from the source tree at ./drivers/reset, dated October 2026, and it's the reset_control_rearm(9) page, so now you know the lore β
π¦ 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