clkdm_clear_all_wkdeps(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– clkdm_clear_all_wkdeps πŸ’–

okay bestie, so this one's from the Kernel API Manual β€” yes, that Kernel API Manual β€” and it's literally the "clean slate" function for clockdomain wakeup deps. let's get into it ✨


🌸 NAME 🌸

clkdm_clear_all_wkdeps β€” remove all wakeup dependencies from target clkdm

like, all of them. every last one. gone. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

int clkdm_clear_all_wkdeps (struct clockdomain *clkdm );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • clkdm β€” a struct clockdomain *, and this is the one we're stripping every single wakeup dependency off of. she's the target, she's the main character, and she's about to be dependency-free πŸ‘‘

✨ DESCRIPTION ✨

so what does it actually do? it removes all the inter-clockdomain wakeup dependencies that could cause clkdm to wake. all of 'em. the whole group chat. removed from the chat. 😭

it's intended to be used during boot to initialize the PRCM to a known state β€” and the timing matters, bestie: this happens after all clockdomains are put into swsup idle and woken up. so it's like, the final little cleanup pass once everybody's where they should be. 🧚

and the returns?

  • -EINVAL if the clkdm pointer is invalid (so like, if you handed it garbage, it's gonna tell you 🫢)
  • 0 upon success β€” slay, no notes πŸ’–

πŸ‘‘ SEE ALSO πŸ‘‘

it's giving "linked list of friends," so let's give them all their shoutouts. also peep the kernel file ./arch/arm/mach-omap2/clockdomain.c:

_clkdm_register(9), _autodep_lookup(9), _resolve_clkdm_deps(9), _clkdm_add_wkdep(9), _clkdm_del_wkdep(9), _clkdm_add_sleepdep(9), _clkdm_del_sleepdep(9), clkdm_register_platform_funcs(9), clkdm_register_clkdms(9), clkdm_register_autodeps(9), clkdm_complete_init(9), clkdm_lookup(9), clkdm_for_each(9), clkdm_get_pwrdm(9), clkdm_add_wkdep(9), clkdm_del_wkdep(9), clkdm_read_wkdep(9), clkdm_add_sleepdep(9), clkdm_del_sleepdep(9), clkdm_read_sleepdep(9), clkdm_clear_all_sleepdeps(9), clkdm_sleep_nolock(9), clkdm_sleep(9), clkdm_wakeup_nolock(9), clkdm_wakeup(9), clkdm_allow_idle_nolock(9), clkdm_allow_idle(9), clkdm_deny_idle_nolock(9), clkdm_deny_idle(9), clkdm_add_autodeps(9), clkdm_del_autodeps(9), clkdm_clk_enable(9), clkdm_clk_disable(9), clkdm_hwmod_enable(9), clkdm_hwmod_disable(9), _clkdm_save_context(9), _clkdm_restore_context(9), clkdm_save_context(9), clkdm_restore_context(9)


fr fr read those before you go poking at clockdomains, they're all right there in ./arch/arm/mach-omap2 πŸ’€

k bye bestie, this page lived at ./arch/arm/mach-omap2, dated October 2026, and answered to the name clkdm_clear_all_wkdeps(9) β€” periodt πŸŽ€πŸŒˆπŸ’œ

πŸ“¦ where this page comes from