ssam_irq_disarm_wakeup(9)
π ssam_irq_disarm_wakeup β Kernel API Manual β¨
okay so bestie, welcome to ssam_irq_disarm_wakeup(9)</p> from the Kernel API Manual β yes that's the manual name, we're fancy now π
πΈ NAME πΈ
ssam_irq_disarm_wakeup β disarm the wakeup IRQ. that's it, that's the whole vibe check π
β¨ SYNOPSIS β¨
void ssam_irq_disarm_wakeup (struct ssam_controller *ctrl );
literally just that one call, no cap π«Ά
π¦ ARGUMENTS π¦
ctrlβ the controller for which the IRQ should be disarmed. like, the specific one. don't be out here disarming random controllers bestie π
π DESCRIPTION π
so what this does: it disarms the IRQ that you previously set up for wake via ssam_irq_arm_for_wakeup. undo the arm, basically β the un-slay π₯
this function is intended to disarm the IRQ after exiting S2idle suspend. so you go into suspend, you come back out, and this is your girl to clean up the wakeup situation π
π NOTE π
calls tossam_irq_arm_for_wakeupandssam_irq_disarm_wakeupmust be balanced. arm one, disarm one. no skipping, no doubling up, fr fr β balance is the whole point π
π§ SEE ALSO π§
kernel file ./drivers/platform/surface/aggregator/controller.c β go read it, it's giving source of truth π
and the whole extended friend group π (yes, all of them, we're not skipping anyone):
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(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)
okay that's the whole page bestie, go forth and balance your IRQs π
sign-off time π β this iconic little number comes from source ./drivers/platform/surface/agg... and it's dated October 2026, and the header/footer names it ssam_irq_disarm_wakeup(9) on both sides, periodt β¨
π¦ 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