module_scmi_protocol(9)
β¨ module_scmi_protocol(9) β¨
okay so bestie, welcome to the Kernel API Manual β this one's a tiny little macro page and honestly it's giving "small but mighty" π
πΈ NAME πΈ
module_scmi_protocol β the helper macro for registering an scmi protocol π
π¦ SYNOPSIS π¦
module_scmi_protocol (__scmi_protocol );
π ARGUMENTS π
__scmi_protocolβ thescmi_protocolstructure, that's it, that's the whole argument, she's lowkey carrying the entire operation π«Ά
π DESCRIPTION π
So here's the vibe: this is a helper macro for scmi drivers to set up their proper module init / exit functions β¨ Replaces module_init and module_exit, and β and this part is iconic β keeps people from printing pointless things to the kernel log when their driver is loaded π like bestie, nobody needed that log line, no cap.
fr fr, it's the "put this macro in your driver and stop being messy" macro and we respect her for it π§
π SEE ALSO π
Kernel file ./include/linux/scmi_protocol.h, plus all of these lovely structs and functions β yes, all of them, don't scroll past, they're all here π:
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_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)
and that's the whole page, mwah π this cutie lives over in ./include/linux, sourced from the October 2026 drop of the Kernel API Manual β go forth and register your protocols correctly, bestie, iykyk π¦β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms