STRUCT SCMI_EVENT_HANDLER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct scmi_event_handler(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” this is the page for struct scmi_event_handler, and it's literally the little bookkeeping babe that keeps track of event handler info. no cap, it's giving "backstage pass coordinator" energy. let's get into it πŸŽ€


✨ NAME ✨

struct scmi_event_handler β€” Event handler information 🫢


🌸 SYNOPSIS 🌸

struct scmi_event_handler {
    u32 key;
    refcount_t users;
    struct scmi_registered_event    *r_evt;
    struct blocking_notifier_head   chain;
    struct hlist_node               hash;
    bool enabled;
 };

like, that's the whole vibe. six fields, all iconic, each one doing its little job πŸ’…


πŸ‘‘ Members πŸ‘‘

key

The used hashkey πŸ”‘

users

A reference count for number of active users for this handler β€” yes it's counting how many besties are currently using it πŸ“ˆ

r_evt

A reference to the associated registered event; when this is NULL this handler is pending, which means that identifies a set of callbacks intended to be attached to an event which is still not known nor registered by any protocol at that point in time 🌫️

ngl, NULL here = the handler is in its waiting-room era. it's got callbacks ready to go, but the event it's meant for isn't known or registered by any protocol yet. main character in limbo fr fr 😭

chain

The notification chain dedicated to this specific event tuple ⛓️

hash

The hlist_node used for collision handling 🧩

enabled

A boolean which records if event's generation has been already enabled for this handler as a whole βœ…


πŸ’œ Description πŸ’œ

So this structure collects all the information needed to process a received event identified by the tuple (proto_id, evt_id, src_id). those three lil ids? that's the whole identity, bestie 🌈

These descriptors are stored in a per-protocol registered_events_handlers table using as a key a value derived from that tuple. so basically: tuple goes in, key comes out, table lookup happens, slay πŸ’«


πŸ¦‹ SEE ALSO πŸ¦‹


and that's the page!! tysm for reading, ily 🫢 this one lives under ./drivers/firmware/arm_scmi and it's dated October 2026 β€” go off, king πŸ’…βœ¨πŸŒ·

πŸ“¦ where this page comes from