dev_pm_opp_set_opp(9)
π
dev_pm_opp_set_opp β kernel API manual, bestie edition β¨
okay so real talk, this one is from the Kernel API Manual, section 9, and it's lowkey a little icon. let's get into it π«Ά
πΈ NAME
dev_pm_opp_set_opp β configure the device for an OPP. that's it. that's the whole vibe check. π
β¨ SYNOPSIS
int dev_pm_opp_set_opp (struct device *dev , struct dev_pm_opp *opp );
literally two args, no drama. we love a signature that minds its own business. π
π¦ ARGUMENTS
devβ the device we're doing this whole operation for. she's the main character here πoppβ the OPP we're setting to. the destination, the moment, the ~look~ π
π DESCRIPTION
so basically this routine configures the device based on the properties of the OPP you hand it. that's the entire plot. no subplots, no twist endings β you pass an OPP, the device gets configured off its properties. slay. π₯
π RETURN
0 on success, and a negative error number otherwise. so if you get anything below zero, that's not a win, bestie β go read the error code, ngl π
β SEE ALSO
the kernel file lives at ./drivers/opp/core.c btw, and here's the whole friend group π«Ά β no cap, every single one:
_find_opp_table(9)dev_pm_opp_get_bw(9)dev_pm_opp_get_voltage(9)dev_pm_opp_get_supplies(9)dev_pm_opp_get_power(9)dev_pm_opp_get_freq_indexed(9)dev_pm_opp_get_level(9)dev_pm_opp_get_required_pstate(9)dev_pm_opp_is_turbo(9)dev_pm_opp_get_max_clock_latency(9)dev_pm_opp_get_max_volt_latency(9)dev_pm_opp_get_max_transition_latency(9)dev_pm_opp_get_suspend_opp_freq(9)dev_pm_opp_get_opp_count(9)dev_pm_opp_find_freq_exact(9)dev_pm_opp_find_key_exact(9)dev_pm_opp_find_freq_exact_indexed(9)dev_pm_opp_find_freq_ceil(9)dev_pm_opp_find_freq_ceil_indexed(9)dev_pm_opp_find_freq_floor(9)dev_pm_opp_find_freq_floor_indexed(9)dev_pm_opp_find_level_exact(9)dev_pm_opp_find_level_ceil(9)dev_pm_opp_find_level_floor(9)dev_pm_opp_find_bw_ceil(9)dev_pm_opp_find_bw_floor(9)dev_pm_opp_set_rate(9)dev_pm_opp_remove(9)dev_pm_opp_remove_all_dynamic(9)_opp_add_v1(9)dev_pm_opp_set_config(9)dev_pm_opp_clear_config(9)devm_pm_opp_set_config(9)dev_pm_opp_xlate_required_opp(9)dev_pm_opp_xlate_performance_state(9)dev_pm_opp_add_dynamic(9)_opp_set_availability(9)dev_pm_opp_adjust_voltage(9)dev_pm_opp_sync_regulators(9)dev_pm_opp_enable(9)dev_pm_opp_disable(9)dev_pm_opp_register_notifier(9)dev_pm_opp_unregister_notifier(9)dev_pm_opp_remove_table(9)
and that's the whole page, bestie π§ ok bye, this one came from ./drivers/opp and it's dated October 2026 β iconic of her, honestly ππ
π¦ 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