of_genpd_sync_state(9)
π NAME
of_genpd_sync_state β the one shared sync_state function that every genpd provider can call, bestie. Like, it's the communal glue. β¨
πΈ SYNOPSIS
void of_genpd_sync_state (struct device_node *np );
That's it. One argument. Void return. No drama. π
π ARGUMENTS
npβ thestruct device_nodethat the genpd provider is attached to. Like, the node is the whole identity of the provider, iykyk. π¦
β¨ DESCRIPTION
Okay so here's the tea: the np that corresponds to a genpd provider might be responsible for one genpd, or honestly it might be out here juggling multiple genpds at once β main character energy, no cap. π
What this function does is take that np and use it to find all the genpds that belong to the provider. Scavenger hunt but make it kernel internals. π
Then, for each genpd it finds, it tries a power-off. That's the whole vibe β one by one, we attempt to power them down. π΄
π₯ SEE ALSO
Like, literally the whole extended friend group. Every single one of them:
Kernel file ./drivers/pmdomain/core.cdev_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_runtime_resume(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)
And that's the whole page, bestie π«Ά this one came from the ./drivers/pmdomain source, dated October 2026 β go forth and power things off responsibly ππ
π¦ 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