dev_pm_enab...irq_complete(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– dev_pm_enable_wake_irq_complete β€” wake IRQ glow-up, part two πŸ’–

okay bestie, so this one's a kernel API manual page (section 9, the fancy "Kernel API Manual" collection ✨) and it is exactly the little helper you want when your wake IRQ needs to wake up after you've already told your device to go night-night 😴


✨ NAME ✨

dev_pm_enable_wake_irq_complete β€” enable wake IRQ not enabled before 🫢

like, it does the enabling thing that didn't happen earlier. that's the whole vibe. slay.


🌸 SYNOPSIS 🌸

void dev_pm_enable_wake_irq_complete (struct device *dev );

note that it returns void β€” nothing comes back, it just does the thing πŸ’… (also pls enjoy the little space before the ) in the original, we respect the original formatting around here πŸŽ€)


πŸ¦‹ ARGUMENTS πŸ¦‹

  • dev β€” Device using the wake IRQ πŸŽ€ (yep. that's the one. that's your device.)

πŸ‘‘ DESCRIPTION πŸ‘‘

So here's the tea, bestie πŸ“: this function enables the wake IRQ conditionally based on status β€” meaning it checks the vibe first before doing anything πŸ™ˆ. It's mainly used when you want to enable the wake IRQ after running ->runtime_suspend, and that whole situation depends on WAKE_IRQ_DEDICATED_REVERSE. iykyk πŸ’€

And the rule, the golden rule, the do not skip this rule πŸ™: it should be called from rpm_suspend or pm_runtime_force_suspend. That's the only place this makes sense β€” anywhere else and it's giving chaos energy, not main character energy.

⚠️ fr fr, call it from rpm_suspend or pm_runtime_force_suspend. That's not a suggestion, that's the contract πŸ’–

πŸ”₯ SEE ALSO πŸ”₯

The kernel file lives at ./drivers/base/power/wakeirq.c β€” go read it, it's iconic πŸ‘‘

and the whole friend group of wake IRQ functions, all here, no cap:


bye bestie!! πŸ’œβœ¨ this one came from ./drivers/base/power and it's dated October 2026 πŸ—“οΈ β€” go enable some IRQs, you've got this πŸ§šπŸ’–

πŸ“¦ where this page comes from