genpd_power_off(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ genpd_power_off(9) β€” Kernel API Manual, bestie edition πŸ’…

Okay so welcome to the Kernel API Manual page for genpd_power_off(9). We are lowkey in the PM domain corner of the kernel, where the whole goal is: everybody asleep? subdomains off? cool, cut the power. Let's go. 🫢

🌸 NAME 🌸

genpd_power_off β€” Remove power from a given PM domain. πŸ’€βš‘

🧾 SYNOPSIS 🧾

       void genpd_power_off (struct generic_pm_domain *genpd , bool one_dev_on
       , unsigned int depth );

🧩 ARGUMENTS 🧩

  • genpd β€” the PM domain to power down. Bye, power! πŸ‘‹
  • one_dev_on β€” If invoked from genpd's ->runtime_suspend|resume callback, the RPM status of the related device is in an intermediate state, not yet turned into RPM_SUSPENDED. This means genpd_power_off must allow one device to not be RPM_SUSPENDED, while it tries to power off the PM domain. So yeah, one device gets a little hall pass in that exact callback situation. 😭
  • depth β€” nesting count for lockdep. Gotta keep lockdep happy. πŸ”’

πŸ“– DESCRIPTION πŸ“–

If all of the genpd's devices have been suspended and all of its subdomains have been powered down, remove power from genpd. That's the vibe check: every device suspended, every subdomain powered down, and then the domain can actually power off. No skipping steps, bestie. ✨

πŸ‘€ SEE ALSO πŸ‘€

Kernel file: ./drivers/pmdomain/core.c β€” that's where the source lives. 🧚

The whole reference crew:

That's the whole squad, no cap. πŸ’œ


Okay that's the page, bestie! Source/version corner: ./drivers/pmdomain, dated October 2026, and we're back at genpd_power_off(9). Stay powered (or don't, depending on the domain 😌) β€” mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from