set_consumer_device_supply(9)
π set_consumer_device_supply(9) β¨
okay so bestie, welcome to the Kernel API Manual β yeah, the Kernel API Manual, we're doing kernel stuff today and honestly? iconic. this page is all about set_consumer_device_supply(9) and the way it just binds things together. let's get into it π
πΈ NAME πΈ
set_consumer_device_supply β literally binds a regulator to a symbolic supply. that's the whole vibe. simple, elegant, slay π
β¨ SYNOPSIS β¨
int set_consumer_device_supply (struct regulator_dev *rdev , const char
*consumer_dev_name , const char *supply );
yep, it returns an int. it takes three things. no cap, that's the whole signature π«Ά
π¦ ARGUMENTS π¦
okay so the three besties you're passing in:
rdevβ the regulator source. this is the origin point, the main character energy of the whole call πconsumer_dev_nameβ thedev_namestring for the device supply this applies to. so like, who is this supply for πsupplyβ the symbolic name for the supply. the cute little nickname, basically β
π DESCRIPTION π
so here's what's happening: this lets platform initialisation code map physical regulator sources to symbolic names for supplies, for use by devices. lowkey a matchmaking service for hardware π
and the whole point? devices should use these symbolic names to request regulators β which means you avoid the need to provide board-specific regulator names as platform data. no hardcoded board names in your platform data, we simply don't do that anymore π§β¨
π₯ RETURN π₯
0on success π- or a negative error number on failure π
that's it, that's the return contract, fr fr.
π SEE ALSO π
everything below lives in the kernel file ./drivers/regulator/core.c β go read it, iykwim π
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), 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_bulk_free(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)
that's the whole friend group, periodt π
tiny reminder bestie π«Ά β the return is 0 on success or a negative error number on failure. don't be out here assuming positives mean anything nice, ok? π
π and that's the page π
this lil beauty ships out of the ./drivers/regulator directory and it's stamped October 2026 β so bestie, it's from the future and it's still serving. mwah πβ¨πΈ
π¦ 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