__scmi_enable_evt(9)
π
__scmi_enable_evt β like, the whole vibe check on events
okay so before we even start: this is a page from the Kernel API Manual, section 9, and the function is __scmi_enable_evt. yeah. it's a kernel function. and honestly? she's kind of a big deal. π
β¨ NAME β¨
__scmi_enable_evt β Enable/disable events generation. that's it. that's the whole job. turning events on and off like a light switch bestie π¦
πΈ SYNOPSIS πΈ
int __scmi_enable_evt (struct scmi_registered_event *r_evt , u32 src_id
, bool enable );
so you're calling her with a registered event, a source id, and a yes/no. three little things and she handles the rest, no cap β¨
π ARGUMENTS π
here's what you're handing her, one by one:
r_evtβ The registered event to act upon. this is your main character pointer, the thing you're actually fiddling with π«Άsrc_idβ The src_id to act upon. the source you care about, like specifically that one πenableβ The action to perform:true->Enable,false->Disable. literally just on or off, bestie, that's the whole bit π
π¦ DESCRIPTION π¦
so what she actually does: she takes care of proper refcounting while performing enable/disable. like, she's keeping score so you don't have to, and she handles the special case of ALL sources requests by herself. icon behaviour fr fr π
also, and this is the important bit: she returns successfully if at least one of the required src_id has been successfully enabled/disabled. not all of them. at least one. yes, really. lowkey generous of her ngl πΈ
β RETURN β
0 on Success π₯
π SEE ALSO π
okay so she does not work alone, there is literally an entire friend group, and you should go meet all of them:
Kernel file ./drivers/firmware/arm_scmi/notify.cTheory of operation(9)struct scmi_notify_instance(9)struct events_queue(9)struct scmi_event_header(9)struct scmi_registered_events_desc(9)struct scmi_registered_event(9)struct scmi_event_handler(9)scmi_lookup_and_call_event_chain(9)scmi_process_event_header(9)scmi_process_event_payload(9)scmi_events_dispatcher(9)scmi_notify(9)scmi_kfifo_free(9)scmi_initialize_events_queue(9)scmi_allocate_registered_events_desc(9)scmi_register_protocol_events(9)scmi_deregister_protocol_events(9)scmi_allocate_event_handler(9)scmi_free_event_handler(9)scmi_bind_event_handler(9)scmi_valid_pending_handler(9)scmi_register_event_handler(9)__scmi_event_handler_get_ops(9)scmi_get_active_handler(9)scmi_put_handler_unlocked(9)scmi_event_handler_enable_events(9)scmi_notifier_register(9)scmi_notifier_unregister(9)scmi_devm_notifier_register(9)scmi_devm_notifier_unregister(9)scmi_protocols_late_init(9)scmi_notification_init(9)scmi_notification_quiesce(9)scmi_notification_exit(9)
like, that's the whole group chat. go say hi. iykyk π
π§ little aside, bestie: everything above is straight from the source, so if you're doing something cursed with refcounts, that's on you, not on me. take the caveats seriously, mwah π
and that's the page!! brought to you by ./drivers/firmware/arm_scmi, dated October 2026, and yeah β she's __scmi_enable_evt(9) and she ate. 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