genpd_runtime_resume(9)
π« genpd_runtime_resume β a Kernel API Manual moment π«
okay so bestie, welcome to the genpd_runtime_resume(9) page, aka the glow-up era of a device that lives in an I/O PM domain β¨ this is kernel API manual territory, so grab your iced coffee and let's go π«Ά
πΈ NAME πΈ
genpd_runtime_resume β resume a device belonging to an I/O PM domain. that's it, that's the whole vibe. the device was napping, and now we're waking it up π
β¨ SYNOPSIS β¨
int genpd_runtime_resume (struct device *dev);
like, it returns an int and it takes exactly one thing. simple. iconic. no cap π₯
π ARGUMENTS π
devβ the device we're resuming. like, the actual one. wakey wakey bestie βοΈ
π¦ DESCRIPTION π¦
so here's the tea π: this function carries out a runtime resume of a device, and it does it under the assumption that the device's pm_domain field points to the domain member of an object of type struct generic_pm_domain β which is the little struct that represents a PM domain consisting of I/O devices π
read that assumption again, because it's doing a LOT of work: pm_domain field β domain member β object of type struct generic_pm_domain β representing a PM domain of I/O devices. the way that whole chain has to line up π that's the contract, and the function is literally just trusting you on it. no vibe check, no fallback, just assumption energy π
π SEE ALSO π
the friend group, in order, because I would never leave anyone out π«Ά
- Kernel file
./drivers/pmdomain/core.c dev_pm_genpd_set_performance_state(9),dev_pm_genpd_set_next_wakeup(9),dev_pm_genpd_get_next_hrtimer(9),dev_pm_genpd_set_hwmode(9),dev_pm_genpd_get_hwmode(9),dev_pm_genpd_rpm_always_on(9),dev_pm_genpd_is_on(9),pm_genpd_inc_rejected(9),genpd_queue_power_off_work(9),genpd_power_off(9),genpd_power_on(9),genpd_power_off_work_fn(9),__genpd_runtime_suspend(9),__genpd_runtime_resume(9),genpd_runtime_suspend(9),genpd_power_off_unused(9),genpd_sync_power_off(9),genpd_sync_power_on(9),genpd_prepare(9),genpd_finish_suspend(9),genpd_suspend_noirq(9),genpd_finish_resume(9),genpd_resume_noirq(9),genpd_freeze_noirq(9),genpd_thaw_noirq(9),genpd_poweroff_noirq(9),genpd_restore_noirq(9),genpd_complete(9),dev_pm_genpd_suspend(9),dev_pm_genpd_resume(9),pm_genpd_add_device(9),pm_genpd_remove_device(9),dev_pm_genpd_add_notifier(9),dev_pm_genpd_remove_notifier(9),pm_genpd_add_subdomain(9),pm_genpd_remove_subdomain(9),pm_genpd_init(9),pm_genpd_remove(9),struct of_genpd_provider(9),genpd_xlate_simple(9),genpd_xlate_onecell(9),genpd_add_provider(9),of_genpd_add_provider_simple(9),of_genpd_add_provider_onecell(9),of_genpd_del_provider(9),genpd_get_from_provider(9),of_genpd_add_child_ids(9),of_genpd_remove_child_ids(9),of_genpd_add_device(9),of_genpd_add_subdomain(9),of_genpd_remove_subdomain(9),of_genpd_remove_last(9),genpd_dev_pm_detach(9),genpd_dev_pm_attach(9),genpd_dev_pm_attach_by_id(9),genpd_dev_pm_attach_by_name(9),of_genpd_parse_idle_states(9),of_genpd_sync_state(9)
fr fr, that's a whole group chat of genpd functions and every single one of them is invited π don't skip any of them, they all ate π₯
okay that's the page!! mwah π big sign-off energy: this whole thing lives in ./drivers/pmdomain, dated October 2026, and it's the genpd_runtime_resume(9) page β the one and only, main character energy ππβ
π¦ 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