module_scmi_driver(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… module_scmi_driver(9) β€” a Kernel API Manual moment ✨

okay so bestie, welcome to the Kernel API Manual πŸ’– this is the page for module_scmi_driver, and it's honestly a tiny little icon. let's get into it πŸŽ€


✨ NAME ✨

module_scmi_driver β€” the helper macro that handles registering a scmi driver πŸ¦‹


🌸 SYNOPSIS 🌸

module_scmi_driver (__scmi_driver );

like that's it. that's the whole vibe. one argument, no stress, no notes πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • __scmi_driver β€” your scmi_driver structure 🫢 that's the thing you're handing over. it's literally just the driver struct, no cap.

⭐ DESCRIPTION ⭐

so here's the tea β˜• module_scmi_driver is a helper macro for scmi drivers, and what it does is set up your module init / exit functions properly for you. main character energy fr fr πŸ‘‘

it replaces module_init and module_exit β€” so instead of writing those out yourself, you just use this and let the macro cook πŸ”₯

and the lowkey best part? it keeps people from printing pointless things to the kernel log when their driver is loaded 😭 like bestie we do NOT need that noise in dmesg. the macro said "not on my watch" and honestly? slay.


🌈 SEE ALSO 🌈

the kernel file ./include/linux/scmi_protocol.h is where it's all at, and there is a whole friend group of structs and pages linked up here β€” every single one, no skipping πŸ™ˆ:

  • 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_protocol(9)

go read them all, iykyk πŸ’œ


fr fr that's the whole page β€” it's short, it's sweet, it does exactly one job and it does it flawlessly 🧚✨

and that's a wrap bestie!! this one came from ./include/linux and it's dated October 2026, page module_scmi_driver(9) β€” mwah, go forth and register your drivers responsibly πŸ’–πŸŽ€πŸ¦‹πŸŒΈπŸ’…

πŸ“¦ where this page comes from