ssam_ctrl_notif_display_off(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ssam_ctrl_notif_display_off ✨

okay so bestie, we're in the Kernel API Manual today and this little function is genuinely so important β€” it's giving "hey EC, screen's off, chill out" energy. Let me tell you everything 🫢


🌸 NAME 🌸

ssam_ctrl_notif_display_off β€” it's the function that tells the EC (that's the embedded controller, your fave little chip bestie) that the display has been turned off. literally just a heads-up notification, no cap πŸ’…


✨ SYNOPSIS ✨

int ssam_ctrl_notif_display_off (struct ssam_controller *ctrl );

πŸŽ€ ARGUMENTS πŸŽ€

  • ctrl β€” the controller. that's it. that's the whole argument. she takes one (1) controller and she does her thing πŸ’–

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the vibe: you call this and it notifies the EC that the display has been turned off and the driver may enter a lower-power state. iconic energy, honestly β€” everyone's trying to save battery 🌱

Here's the important part though, bestie, listen up πŸ‘‘: this will prevent events from being sent directly. Instead, the EC signals an event by pulling the wakeup GPIO high for as long as there are pending events. So the events don't just vanish β€” they pile up, and they need to be manually released, one by one, via the GPIO callback request. iykyk 😭

Good news tho πŸŽ€ β€” all the pending events accumulated during this state can also be released by issuing the display-on notification, e.g. via ssam_ctrl_notif_display_on, which will also reset the GPIO. so you've got options, and both of them slay.

On some devices β€” specifically ones with an integrated keyboard β€” the keyboard backlight will be turned off by this call. not me finding out my keyboard glow is a casualty of power saving πŸ’€

Also, heads up 🫢: this function will only send the display-off notification command if display notifications are supported by the EC. Currently all known devices support these notifications, so like… you're probably fine, but she does check first ✨

And when you want to undo all of this? Use ssam_ctrl_notif_display_on to reverse the effects of this function. periodt πŸ’…


⭐ RETURN ⭐

Here's what you're getting back:

  • zero on success β€” or if no request has been executed (both are fine, don't stress πŸ“)
  • the status of the executed SAM request if that request failed 😭
  • -EPROTO if an unexpected response has been received β€” like, rude, but okay πŸ’€

🌈 SEE ALSO 🌈

Kernel file ./drivers/platform/surface/aggregator/controller.c


🧚 quick reminder bestie: if you display-off without a plan to display-on again, those events are just sitting there waiting. don't leave her hanging πŸ’œ

okay that's the whole page!! mwah πŸ’‹ β€” this came straight out of ./drivers/platform/surface/agg..., dated October 2026, and it's still serving ssam_ctrl_notif_display_off(9) realness. go forth and notify responsibly πŸŒŸπŸ¦‹

πŸ“¦ where this page comes from