clkdm_register_autodeps(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… clkdm_register_autodeps β€” bestie's guide to the Kernel API Manual ✨

Okay so listen 🫢 this one lives in the Kernel API Manual and it's literally about registering autodeps (if required). Lowkey niche, highkey important. Let's get into it πŸŽ€


✨ NAME ✨

clkdm_register_autodeps β€” register autodeps (if required) πŸ‘‘


🌸 SYNOPSIS 🌸

int clkdm_register_autodeps (struct clkdm_autodep *ia );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • ia β€” pointer to a static array of struct clkdm_autodep to register. Yeah. Static. I said what I said, more on that below πŸ’€

πŸ’– DESCRIPTION πŸ’–

So what this does is register clockdomain "automatic dependencies." These are clockdomain wakeup and sleep dependencies that get automatically added whenever the first clock inside a clockdomain is enabled, and removed whenever the last clock inside a clockdomain is disabled. Automatic. Iconic behavior, honestly ✨

These are currently only used on OMAP3 devices, and ngl they're deprecated, since they waste energy. Not the vibe. BUT β€” until the OMAP2/3 IP block enable/disable sequence can be converted to match the OMAP4 sequence, they are needed. So we keep them around, like that one friend who's chaotic but useful 😭

Bestie, timing matters: this must be called only after all of the SoC clockdomains are registered, since the function will resolve autodep clockdomain names into clockdomain pointers. Call it too early and it just doesn't have the info yet πŸ™ˆ
Also important: the struct clkdm_autodep ia array must be static, because this function does not copy the array elements. It's holding a reference to your array, not making its own copy β€” so if your array evaporates, so does everything. Periodt πŸ’…

Returns:

  • -EACCES if called before any clockdomains have been registered πŸ”₯
  • -EINVAL if called with a null ia argument πŸ’€
  • -EEXIST if autodeps have already been registered πŸ™ˆ
  • 0 upon success πŸŽ‰

⭐ SEE ALSO ⭐

Kernel file ./arch/arm/mach-omap2/clockdomain.c, plus the whole friend group:


Okay that's the whole thing, go read about clockdomains bestie 🧚 πŸ’œ


🌸 that's a wrap 🌸 β€” sourced from ./arch/arm/mach-omap2, dated October 2026. Catch you in the next manpage, mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from