ssam_request_do_sync(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay bestie, this is the manual page for ssam_request_do_sync(9), and it's coming at you from the Kernel API Manual. The whole vibe? ssam_request_do_sync β€” Execute a synchronous request. Literally the send-it-and-wait girlie. πŸ’…

✨ SYNOPSIS ✨

int ssam_request_do_sync (struct ssam_controller *ctrl , const struct
       ssam_request *spec , struct ssam_response *rsp );

πŸŽ€ ARGUMENTS πŸŽ€

  • ctrl β€” the controller via which the request will be submitted. It's the route, the connector, the main-character controller in question.
  • spec β€” the request specification and payload. This is the whole β€œwhat are we even asking for” package.
  • rsp β€” the response buffer. This is where the answer gets to live.

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's the pipeline, and it's honestly kind of iconic: it allocates a synchronous request with its message data buffer on the heap via ssam_request_sync_alloc, fully initializes it via the provided request specification, submits it, and finally waits for its completion before freeing it and returning its status. No cap, that's the whole sequence. ✨

🌸 RETURN 🌸

It returns the status of the request or any failure during setup. That's it, that's the tea. 🫢

🌈 SEE ALSO 🌈

The cross-ref squad is enormous and we are obsessed β€” every single one is here, no skips, no edits:

Kernel file ./drivers/platform/surface/aggregator/controller.c
ssh_seq_reset(9), ssh_seq_next(9), ssh_rqid_reset(9), ssh_rqid_next(9),
ssam_event_matches_notifier(9), ssam_nfblk_call_chain(9),
ssam_nfblk_insert(9), ssam_nfblk_find(9), ssam_nfblk_remove(9),
ssam_nf_head_init(9), ssam_nf_head_destroy(9), struct
ssam_nf_refcount_key(9), struct ssam_nf_refcount_entry(9),
ssam_nf_refcount_inc(9), ssam_nf_refcount_dec(9),
ssam_nf_refcount_dec_free(9), ssam_nf_refcount_empty(9),
ssam_nf_call(9), ssam_nf_init(9), ssam_nf_destroy(9),
ssam_event_item_cache_init(9), ssam_event_item_cache_destroy(9),
ssam_event_item_free(9), ssam_event_item_alloc(9),
ssam_event_queue_push(9), ssam_event_queue_pop(9),
ssam_event_queue_is_empty(9), ssam_cplt_get_event_queue(9),
ssam_cplt_submit(9), ssam_cplt_submit_event(9), ssam_cplt_flush(9),
ssam_event_queue_init(9), ssam_cplt_init(9), ssam_cplt_destroy(9),
ssam_controller_device(9), ssam_controller_get(9),
ssam_controller_put(9), ssam_controller_statelock(9),
ssam_controller_stateunlock(9), ssam_controller_lock(9),
ssam_controller_caps_load_from_acpi(9),
ssam_controller_caps_load_from_of(9), ssam_controller_caps_load(9),
ssam_controller_init(9), ssam_controller_start(9),
ssam_controller_shutdown(9), ssam_controller_destroy(9),
ssam_controller_suspend(9), ssam_controller_resume(9),
ssam_request_write_data(9), ssam_request_sync_alloc(9),
ssam_request_sync_free(9), ssam_request_sync_init(9),
ssam_request_sync_submit(9), ssam_request_do_sync_with_buffer(9), struct
ssh_notification_params(9), ssam_ssh_event_enable(9),
ssam_ssh_event_disable(9), ssam_get_firmware_version(9),
ssam_ctrl_notif_display_off(9), ssam_ctrl_notif_display_on(9),
ssam_ctrl_notif_d0_exit(9), ssam_ctrl_notif_d0_entry(9),
ssam_nf_refcount_enable(9), ssam_nf_refcount_disable_free(9),
ssam_notifier_register(9), __ssam_notifier_unregister(9),
ssam_controller_event_enable(9), ssam_controller_event_disable(9),
ssam_notifier_disable_registered(9),
ssam_notifier_restore_registered(9), ssam_notifier_is_empty(9),
ssam_notifier_unregister_all(9), ssam_irq_setup(9), ssam_irq_free(9),
ssam_irq_arm_for_wakeup(9), ssam_irq_disarm_wakeup(9)

That's the whole page, bestie πŸ’–. Cute little sign-off: this one is sourced from ./drivers/platform/surface/agg..., dated October 2026. Stay synchronous, stay slay. πŸ’…βœ¨

πŸ“¦ where this page comes from