STRUCT SCMI_SENSOR_AXIS_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 struct scmi_sensor_axis_info β€” bestie's guide to one sensor axis 🌸

okay so this is a page from the Kernel API Manual, and ngl it's lowkey iconic: struct scmi_sensor_axis_info describes exactly ONE sensor axes. that's it. that's the whole vibe. one axis, all the deets, main character energy ✨


✨ NAME ✨

struct scmi_sensor_axis_info β€” describes one sensor axes πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

struct scmi_sensor_axis_info {
    unsigned int id;
    unsigned int type;
    int scale;
    char name[SCMI_MAX_STR_SIZE];
    bool extended_attrs;
    unsigned int resolution;
    int exponent;
    struct scmi_range_attrs attrs;
 };

like, look at her. so structured. so put together. 🫢


πŸ¦‹ MEMBERS πŸ¦‹

  • id β€” the axes ID. the little name tag of the axis, its whole identity fr fr πŸͺͺ
  • type β€” the axes type. it gets chosen amongst one of enum scmi_sensor_class β€” so it's always one of those, no improvising 🎯
  • scale β€” a power-of-10 multiplier that gets applied to the axis unit. a lil glow-up number for the units ✨
  • name β€” a NULL-terminated string that's the axes name, exactly as advertised by the SCMI platform. it's giving official government name πŸŽ€
  • extended_attrs β€” flag that says "hey, there are additional extended attributes for this axes". a little yes/no situation πŸ™ˆ
  • resolution β€” extended attribute representing the resolution of the axes. set to 0 if it's not reported by this axes. (so 0 is the "no data, don't @ me" value πŸ’€)
  • exponent β€” extended attribute representing the power-of-10 multiplier that gets applied to the resolution field. set to 0 if it's not reported by this axes. besties resolution and exponent are literally a duo 🀝
  • attrs β€” extended attributes representing the minimum and maximum values measurable by this axes. set to 0 if it's not reported by this sensor. (yes, this one says sensor β€” not axes β€” that's just how it's written, don't come for me 😭)

🧚 SEE ALSO 🧚

kernel file ./include/linux/scmi_protocol.h, and the whole friend group:

struct scmi_base_info(9), 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_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)


ok that's the whole page bestie πŸ’– everything's here, nothing skipped, we ate and left no crumbs πŸ“

mwah πŸ’‹ β€” this one lives in ./include/linux, dated October 2026, and it's the struct scmi_...or_axis_info(9) page of the Kernel API Manual. go forth and describe exactly one axes πŸ‘‘

πŸ“¦ where this page comes from