STRUCT SCMI_BASE_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

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

okay bestie, welcome to the Kernel API Manual entry for struct scmi_base_info β€” the version-information structure, aka the little glow-up card that tells you what this SCMI thing actually is. no cap, it's giving "hi my name is and here's my whole personality in six fields." πŸŽ€


✨ SYNOPSIS ✨

struct scmi_base_info {
    u16 major_ver;
    u16 minor_ver;
    u8 num_protocols;
    u8 num_agents;
    u32 impl_ver;
    char vendor_id[SCMI_SHORT_NAME_MAX_SIZE];
    char sub_vendor_id[SCMI_SHORT_NAME_MAX_SIZE];
 };

literally the whole struct, copied with love and zero typos 🫢


🌸 Members 🌸

πŸ’… major_ver

The major ABI version. heads up though β€” if this one changes, that implies risk of a backward compatibility break. so like, not a casual little tweak, it's a whole era shift 😭

πŸ¦‹ minor_ver

The minor ABI version. a change here implies a new feature got added, or a compatible change in the ABI. the chill one. the low-stakes one. we love her πŸ’–

⭐ num_protocols

The number of protocols that are implemented β€” and psa, this excludes the base protocol. don't count base, she doesn't want to be counted πŸ™ˆ

πŸ”₯ num_agents

The number of agents in the system. that's it, that's the field. iconic brevity πŸ‘‘

🌈 impl_ver

A vendor-specific implementation version. every vendor does their own little thing here, iykyk πŸ’«

πŸ“ vendor_id

A vendor identifier (Null terminated ASCII string). so remember the null terminator bestie, it matters 🧚

πŸ’œ sub_vendor_id

A sub-vendor identifier (Null terminated ASCII string). yes there's a sub-vendor too, the lore goes deep πŸŒ€


πŸ‘€ SEE ALSO πŸ‘€

Kernel file ./include/linux/scmi_protocol.h:

  • struct scmi_clk_proto_ops(9)
  • struct scmi_perf_proto_ops(9)
  • struct scmi_power_proto_ops(9)
  • struct scmi_sensor_reading(9)
  • struct scmi_range_attrs(9)
  • struct scmi_sensor_axis_info(9)
  • struct scmi_sensor_intervals_info(9)
  • struct scmi_sensor_info(9)
  • struct scmi_sensor_proto_ops(9)
  • struct scmi_reset_proto_ops(9)
  • struct scmi_voltage_info(9)
  • struct scmi_voltage_proto_ops(9)
  • struct scmi_powercap_info(9)
  • struct scmi_powercap_proto_ops(9)
  • struct scmi_pinctrl_proto_ops(9)
  • struct scmi_notify_ops(9)
  • struct scmi_handle(9)
  • module_scmi_driver(9)
  • module_scmi_protocol(9)

like, the entire friend group. go say hi πŸ’•


ngl this one's a read-only info struct β€” you're here to look, not to scribble on it. 🫢

okay that's the whole page!! sourced straight from ./include/linux, dated October 2026, and yes she ate πŸ’…βœ¨ no crumbs. mwah, go read some more kernel headers, love u πŸŽ€πŸ’–

πŸ“¦ where this page comes from