STRUCT SCMI_EVENT_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct scmi_event_ops(9)

okay so this is from the Kernel API Manual bestie, and it's literally the struct scmi_event_ops page β€” aka the protocol helpers that the notification core calls up when it needs something. no cap, this is the group chat between SCMI protocols and the notify core 🫢


✨ NAME ✨

struct scmi_event_ops β€” the protocol helper crew that the notification core rings up whenever it needs a favor. literally their whole job πŸ’–


🌸 SYNOPSIS 🌸

struct scmi_event_ops {
    bool (*is_notify_supported)(const struct scmi_protocol_handle *ph,
u8 evt_id, u32 src_id);
    int (*get_num_sources)(const struct scmi_protocol_handle *ph);
    int (*set_notify_enabled)(const struct scmi_protocol_handle *ph, u8
evt_id, u32 src_id, bool enabled);
    void *(*fill_custom_report)(const struct scmi_protocol_handle *ph,
u8 evt_id, ktime_t timestamp, const void *payld, size_t payld_sz, void
*report, u32 *src_id);
 };

like, that's the whole squad right there πŸ‘‘ four function pointers, all main character energy.


πŸŽ€ Members πŸŽ€

  • is_notify_supported β€” returns 0 if the notification you asked about for that specific resource (src_id) is supported. short king, one job, does it well ✨
  • get_num_sources β€” hands back the number of possible event sources for this protocol. it's giving census-taker energy πŸ¦‹
  • set_notify_enabled β€” turns the required evt_id/src_id notifications on or off, using the proper custom protocol commands (no shortcuts bestie, do it the right way). returns 0 on Success πŸ’…
  • fill_custom_report β€” fills in a custom event report from the event message payld you handed it, identifying the event-specific src_id. returns NULL on failure, otherwise the report comes back fully populated and slayed 🌈

πŸ’œ Context πŸ’œ

the helpers described in struct scmi_event_ops are called only in process context. that's the vibe check β€” no weird contexts allowed 🧚


⭐ SEE ALSO ⭐

  • Kernel file ./drivers/firmware/arm_scmi/notify.h
  • struct scmi_event(9)
  • struct scmi_protocol_events(9)

go read those two structs next fr fr, they're the friends of this one 😭

okay that's the whole page bestie, hope it ate πŸ’– this came out of ./drivers/firmware/arm_scmi, dated October 2026, and it's titled struct scmi_event_ops(9) β€” periodt πŸŽ€

πŸ“¦ where this page comes from