dev_pm_clear_wake_irq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… dev_pm_clear_wake_irq ✨

okay so bestie, welcome to the Kernel API Manual β€” this one's a tiny lil function but she's lowkey important, and honestly the way she just cleans up after everyone is giving main character energy. πŸŽ€


🌸 NAME 🌸

dev_pm_clear_wake_irq β€” detach a device IO interrupt wake IRQ. that's it, that's the vibe. she's the one who undoes the thing. πŸ§ΉπŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

void dev_pm_clear_wake_irq (struct device *dev );

literally one argument, no return value, no drama. copy-paste it exactly, do not "fix" the spacing, i'm watching πŸ‘€


✨ ARGUMENTS ✨

  • dev β€” the device entry. that's your girl right there, the struct device * you're about to detach the wake IRQ from. 🫢

πŸ’œ DESCRIPTION πŸ’œ

so what does she actually do? she detaches a device wake IRQ and frees the resources. clean, simple, iconic. πŸŽ€

and here's the part that makes her an absolute queen β€” it's totally OK for drivers to call this without ever calling dev_pm_set_wake_irq. why? because not all the driver instances may have a wake IRQ configured in the first place, and honestly, who has the time. 😭

the whole point is that this avoids adding wake IRQ specific checks into the drivers β€” so your driver code stays cute and check-free instead of being cluttered with a million "was a wake IRQ even set tho?" branches. she does the vibe check for you, periodt. πŸ’…βœ¨

ngl this is the kind of defensive API design that just ate. call her unconditionally, she won't be weird about it. πŸ“

πŸ”₯ SEE ALSO πŸ”₯

the whole wake IRQ friend group lives in the kernel file ./drivers/base/power/wakeirq.c, and you should absolutely go meet them:

fr fr go read them, iykyk πŸŒˆπŸ‘‘


πŸ’« and that's the whole page!! sourced from ./drivers/base/power, stamped October 2026, in the Kernel API Manual, and yeah the footer spells the name out again as dev_pm_clear_wake_irq(9) because consistency is slay. love u, go free those resources responsibly πŸ’–πŸŽ€πŸ¦‹
πŸ“¦ where this page comes from