STRUCT SSAM_CONTROLLER(9)
π struct ssam_controller(9) β like, the Kernel API Manual bestie β¨
okay so this is a page from the Kernel API Manual, and we're talking about struct ssam_controller β the SSAM controller device itself. yes, the whole main character. let's get into it π«Ά
πΈ NAME πΈ
struct ssam_controller β the SSAM controller device, no cap π
β¨ SYNOPSIS β¨
here's the struct in all its glory, bestie β copy it exactly, don't @ me:
struct ssam_controller {
struct kref kref;
struct rw_semaphore lock;
enum ssam_controller_state state;
struct ssh_rtl rtl;
struct ssam_cplt cplt;
struct {
struct ssh_seq_counter seq;
struct ssh_rqid_counter rqid;
} counter;
struct {
int num;
bool wakeup_enabled;
} irq;
struct ssam_controller_caps caps;
};
π Members π
krefβ the reference count of the controller. like a little tally of who's holding onto it πlockβ the main lock for the controller, and it's lowkey the bouncer at the club: it guards all the state changes so nothing gets messy π₯stateβ literally just the controller state. that's it, that's the vibe β¨rtlβ the request transport layer for SSH I/O. the whole delivery pipeline, iconic π¦cpltβ the completion system for SSH/SSAM events and asynchronous requests. it's giving "we'll let you know when it's done" energy πΈcounterβ safe SSH message ID counters. keeping the IDs cute and collision-free πcounter.seqβ the sequence ID counter β¨counter.rqidβ the request ID counter β
irqβ the wakeup IRQ resources πirq.numβ the wakeup IRQ number, literally just the number πirq.wakeup_enabledβ whether wakeup by IRQ is enabled during suspend. yes/no, that's the whole thing π
capsβ the controller device capabilities. what it can do, its whole skill set π
π SEE ALSO π
go look at the kernel file ./drivers/platform/surface/aggregator/controller.h for the real ones, plus all these besties:
struct ssh_seq_counter(9)struct ssh_rqid_counter(9)struct ssam_nf_head(9)struct ssam_nf(9)struct ssam_event_item(9)struct ssam_event_queue(9)struct ssam_event_target(9)struct ssam_cplt(9)enum ssam_controller_state(9)struct ssam_controller_caps(9)ssam_controller_receive_buf(9)ssam_controller_write_wakeup(9)
fr fr, that's the whole page. every member, every field, nothing skipped π
k bye bestie, this came from ./drivers/platform/surface/agg..., dated October 2026, and it's the struct ssam_controller(9) page ππ§ββοΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms