STRUCT SCMI_TRANSPORT_CORE_OPERATIONS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct scmi_transport_core_operations(9) ✨

okay bestie, so this is a page from the Kernel API Manual and it's literally all about struct scmi_transport_core_operations β€” no cap, the original NAME section lowkey has a typo ("Transpoert") and I'm not fixing it because that's iconic behavior and I respect it πŸ’…. This struct is the transportation core operations situation, and we're about to unpack every single member like it's a group chat gossip session. Let's go πŸŽ€


🌸 SYNOPSIS 🌸

here's the vibe, character for character:

struct scmi_transport_core_operations {
    void (*bad_message_trace)(struct scmi_chan_info *cinfo, u32 msg_hdr,
enum scmi_bad_msg err);
    void (*rx_callback)(struct scmi_chan_info *cinfo, u32 msg_hdr, void
*priv);
    const struct scmi_shared_mem_operations *shmem;
    const struct scmi_message_operations *msg;
 };

slay, that's the whole shape of it πŸ¦‹


πŸ’– MEMBERS πŸ’–

  • bad_message_trace β€” an absolute helper function whose whole job is to report a malformed/unexpected message 😭 like it's the friend who calls out the red flags. the way that it uses struct scmi_chan_info *cinfo, u32 msg_hdr, and enum scmi_bad_msg err? periodt.
  • rx_callback β€” the callback that reports received messages πŸ’Œ literally the bestie who tells you everything that came in. signature is struct scmi_chan_info *cinfo, u32 msg_hdr, and void *priv β€” keep those exact, iykyk.
  • shmem β€” datagram operations for shared memory based transports 🧚 it's a const struct scmi_shared_mem_operations * and it's giving main character energy for the shmem crew.
  • msg β€” datagram operations for message based transports πŸ”₯ also a const pointer, this time to struct scmi_message_operations, holding it down for the message-based side of things.

πŸ‘‘ SEE ALSO πŸ‘‘

okay so the kernel file is ./drivers/firmware/arm_scmi/common.h and you should also check out these icons, no skips, all of them:

pack_scmi_header(9), unpack_scmi_header(9), struct scmi_chan_info(9), struct scmi_transport_ops(9), struct scmi_desc(9), struct scmi_debug_info(9), struct scmi_shmem_io_ops(9), struct scmi_shared_mem_operations(9), struct scmi_message_operations(9), struct scmi_transport_handle(9), struct scmi_transport(9), struct scmi_transport_supplier(9), scmi_transport_supplier_put(9), scmi_transport_supplier_get(9)

that's the whole reading list, bestie, don't skip a single one πŸ“šβœ¨


and that's a wrap on struct scmi_transport_core_operations(9)! live from ./drivers/firmware/arm_scmi, dated October 2026, and yes the footer does that little repeat of struct scmi...e_operations(9) πŸ’€ ngl that abbreviation is a whole mood. go ship something iconic, ily, bye! 🫢🌸
πŸ“¦ where this page comes from