regulator_bulk_free(9)
π regulator_bulk_free β the kernel API manual, but make it make sense
Hey bestie, welcome to regulator_bulk_free(9) from the Kernel API Manual π β yes, we're doing kernel regulator stuff today, and honestly? It's giving cleanup-era main character energy.
πΈ NAME πΈ
regulator_bulk_free β free multiple regulator consumers
Like, plural. A whole friend group of them. One call. Iconic.
β¨ SYNOPSIS β¨
void regulator_bulk_free (int num_consumers , struct regulator_bulk_data
*consumers );
That's the whole vibe β no return value, it just does the thing and dips π
π«Ά ARGUMENTS π«Ά
num_consumersβ Number of consumers. Yep, that's literally it β how many of them you're rounding up for the freeing party πconsumersβ Consumer data; clients are stored here. This is the spot where all your regulator clients are hanging out, so it's also the spot they get freed from.
π¦ DESCRIPTION π¦
Okay so here's the tea: this convenience API lets consumers free multiple regulator clients in a single API call. No cap. Instead of writing out a whole lil' loop of individual frees, you just pass the count and the array and let it handle business β¨ Convenience, periodt.
π SEE ALSO π
The whole extended universe, fr fr β all of these live in the Kernel file ./drivers/regulator/core.c:
regulator_lock_nested(9)regulator_lock(9)regulator_unlock(9)regulator_lock_two(9)regulator_unlock_two(9)regulator_unlock_dependent(9)regulator_lock_dependent(9)set_machine_constraints(9)regulator_event_work_fn(9)regulator_event_forward_notifier(9)register_regulator_event_forwarding(9)set_supply(9)set_consumer_device_supply(9)regulator_dev_lookup(9)_regulator_get_common(9)regulator_get(9)regulator_get_exclusive(9)regulator_get_optional(9)regulator_put(9)regulator_register_supply_alias(9)regulator_unregister_supply_alias(9)regulator_bulk_register_supply_alias(9)regulator_bulk_unregister_supply_alias(9)regulator_ena_gpio_ctrl(9)_regulator_check_status_enabled(9)_regulator_handle_consumer_enable(9)_regulator_handle_consumer_disable(9)regulator_enable(9)regulator_disable(9)regulator_force_disable(9)regulator_disable_deferred(9)regulator_is_enabled(9)regulator_count_voltages(9)regulator_list_voltage(9)regulator_get_regmap(9)regulator_get_hardware_vsel_register(9)regulator_list_hardware_vsel(9)regulator_hardware_enable(9)regulator_get_linear_step(9)regulator_is_supported_voltage(9)regulator_set_voltage(9)regulator_set_voltage_time(9)regulator_set_voltage_time_sel(9)regulator_sync_voltage(9)regulator_get_voltage(9)regulator_set_current_limit(9)regulator_get_current_limit(9)regulator_get_unclaimed_power_budget(9)regulator_request_power_budget(9)regulator_free_power_budget(9)regulator_set_mode(9)regulator_get_mode(9)regulator_get_error_flags(9)regulator_set_load(9)regulator_allow_bypass(9)regulator_register_notifier(9)regulator_unregister_notifier(9)regulator_bulk_get(9)regulator_bulk_enable(9)regulator_bulk_disable(9)regulator_bulk_force_disable(9)regulator_handle_critical(9)regulator_notifier_call_chain(9)regulator_mode_to_status(9)regulator_register(9)regulator_unregister(9)regulator_suspend(9)regulator_has_full_constraints(9)rdev_get_drvdata(9)regulator_get_drvdata(9)regulator_set_drvdata(9)rdev_get_id(9)
Go read them. Not me being a good influence for once π
Okay bye bestie, love u, stay regulated π β¨ π
Sign-off tea: this page comes from ./drivers/regulator, dated October 2026, and it's regulator_bulk_free(9) all the way through β slay π¦π
π¦ 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