ssam_client_link(9)
π ssam_client_link π
okay bestie, so this is a page from the Kernel API Manual, section 9 (the kernel API girlies β¨). Its whole personality is "link an arbitrary client device to the controller" β and honestly? iconic behaviour. Let's get into it π«Ά
β¨ SYNOPSIS β¨
int ssam_client_link (struct ssam_controller *c , struct device *client );
π ARGUMENTS π
cβ the controller you're linking to, bestie. the provider of the whole situation.clientβ the client device. the consumer. the main character of this link π
πΈ DESCRIPTION πΈ
So what it does is literally link an arbitrary client device to the controller by creating a device link between them β with the client as the consumer and the controller device as the provider. no cap, that's the whole vibe π¦
And the reason this exists? It's for non-SSAM devices (or SSAM devices that aren't registered as a child under the controller) to guarantee two things:
- that the controller is valid for as long as the driver of the client device is bound π₯
- and that proper suspend and resume ordering is guaranteed β
π the good news: you do not have to destruct the device link manually. It gets removed automatically once the driver of the client device unbinds. slay, it cleans up after itself. self-care queen π§
π RETURN π
- zero on success β we love a clean win πβ¨
-ENODEVif the controller is not ready or is going to be removed soon β she's not available, respectfully π-ENOMEMif the device link could not be created for other reasons β memory said no π
π SEE ALSO π
Kernel file ./drivers/platform/surface/aggregator/core.c
go read those too, iykyk π
π
okay that's the whole page, bestie β no notes, she ate. this one came from ./drivers/platform/surface/agg..., dated October 2026, and it's filed under ssam_client_link(9). mwah ππΈ
π¦ 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