ssam_device...ier_register(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ssam_device_notifier_register(9) πŸ’…

okay bestie, welcome to the Kernel API Manual entry for ssam_device_notifier_register β€” yes, the name is a whole mouthful, but we're here, we're hydrated, and we're slaying. πŸ’–

πŸ’– NAME πŸ’–

ssam_device_notifier_register β€” register an event notifier for the specified client device, periodt. ✨

✨ SYNOPSIS ✨

int ssam_device_notifier_register (struct ssam_device *sdev , struct
ssam_event_notifier *n );

🫢 ARGUMENTS 🫢

  • sdev β€” the device the notifier should be registered on. 🫢
  • n β€” the event notifier to register. ✨

πŸ’… DESCRIPTION πŸ’…

okay so here's the tea: you're registering an event notifier. If that notifier is not marked as an observer, the usage counter of the associated SAM event gets incremented. If the event is not marked as an observer and is currently not enabled, it will be enabled during this call. If the notifier is marked as an observer, then no attempt will be made at enabling any event and no reference count will be modified. πŸ’…

Notifiers marked as observers do not need to be associated with one specific event β€” i.e. as long as no event matching is performed, only the event target category needs to be set. Slay. πŸ¦‹

πŸ”₯ RETURN πŸ”₯

  • Returns zero on success β€” we love a clean win. πŸ”₯
  • -ENOSPC if there have already been INT_MAX notifiers for the event ID/type associated with the notifier block registered. 😭
  • -ENOMEM if the corresponding event entry could not be allocated. πŸ’€
  • -ENODEV if the device is marked as hot-removed. πŸ™ˆ
  • If this is the first time that a notifier block is registered for the specific associated event, returns the status of the event-enable EC-command. πŸ‘‘

🌈 SEE ALSO 🌈

first up, the kernel file in question is ./include/linux/surface_aggregator/device.h, and then the whole bestie directory:

xoxo, this page comes from ./include/linux/surface_aggreg... and is dated October 2026 β€” stay iconic, bestie πŸ’…πŸ’–πŸŽ€

πŸ“¦ where this page comes from