genpd_xlate_simple(9)
π NAME
okay so bestie, welcome to genpd_xlate_simple β the Xlate function for direct node-domain mapping. that's the whole vibe. it maps, it translates, it's giving "one node, one domain, no cap." β¨
this one lives in the Kernel API Manual, section 9. π
πΈ SYNOPSIS
struct generic_pm_domain * genpd_xlate_simple (const struct of_phandle_args *genpdspec , void *data );
π¦ ARGUMENTS
genpdspecβ the OF phandle args that get mapped into a PM domain. that's the whole point of her existence πdataβ the xlate function's private data, which is a pointer tostruct generic_pm_domain. yes, that struct. the main character. π
π DESCRIPTION
so this is a generic xlate function, right? and she's the one you reach for when you're modelling PM domains that have their own device tree nodes β like, each domain has its own lil DT node and she maps you straight there. direct. no detours. periodt. π
the one thing you gotta know: the private data of the xlate function needs to be a valid pointer to struct generic_pm_domain. not a vibe. not a maybe. a valid pointer. so double-check that before you hand it over, bestie π«Ά
π§ SEE ALSO
the kernel file, first of all:
./drivers/pmdomain/core.c
and then the whole friend group β she literally knows everyone, iykyk:
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_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_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)
and that's the whole page, bestie!! mwah π this one's sourced from ./drivers/pmdomain, dated October 2026, and she answers to genpd_xlate_simple(9). go slay those device tree nodes πβ¨
π¦ 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