SSAM_SDEV(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… SSAM_SDEV β€” the kernel macro that gets your device ID cute and ready

Okay bestie, you're looking at the SSAM_SDEV page from the Kernel API Manual β€” a 9 section manpage, so you know it's kernel-internals territory. Let's get into it 🫢


✨ NAME ✨

SSAM_SDEV β€” literally the macro that initializes a &struct ssam_device_id as a physical SSH device using whatever parameters you hand it. That's it, that's the whole vibe. πŸŽ€


🌸 SYNOPSIS 🌸

SSAM_SDEV (cat , tid , iid , fun );

Look at her go. Four args, no cap.


πŸ¦‹ ARGUMENTS πŸ¦‹

  • cat β€” the target category of the device. The main character of the group chat, ngl.
  • tid β€” the target ID of the device.
  • iid β€” the instance ID of the device.
  • fun β€” the sub-function of the device.

Four little parameters, all doing their thing πŸ’–


πŸ”₯ DESCRIPTION πŸ”₯

So what she does: SSAM_SDEV initializes a struct ssam_device_id with the parameters you gave her, up there in the SSH domain. If you want the full tea on what those parameters actually mean, go peek at struct ssam_device_uid β€” that's where the details live.

Now here's the slay part ✨ β€” there are three special values you can drop in:

  • SSAM_SSH_TID_ANY
  • SSAM_SSH_IID_ANY
  • SSAM_SSH_FUN_ANY

and they do exactly what they sound like: they say "hey, matching should ignore the target ID / instance ID / sub-function respectively." Respectively!! Use them for whichever one you're not picky about, iykyk.

This macro also initializes the match_flags field based on whatever parameters you handed over. Not me being thorough πŸ’…


⭐ NOTE ⭐

Real talk though, read this before you go feral with it πŸ™ˆ

The parameter cat must be a valid u8 value. Meanwhile tid, iid, and fun must either be valid u8 values or SSAM_SSH_TID_ANY, SSAM_SSH_IID_ANY, or SSAM_SSH_FUN_ANY, respectively (respectively again, she loves that word). Other non-u8 values are not allowed β€” like, at all. Periodt. ⚠️


🌈 SEE ALSO 🌈

The kernel file ./include/linux/surface_aggregator/device.h, plus this whole friend group:

Go read them all, they're iconic, I promise πŸ§šβ€β™€οΈ


Mwah πŸ’‹ β€” this page came from ./include/linux/surface_aggreg... and is dated October 2026, and she's serving SSAM_SDEV(9) energy from the Kernel API Manual. Catch you in the next one, bestie πŸ’œ

πŸ“¦ where this page comes from