[PATCH v6 05/10] mfd: Add Apple Silicon System Management Controller

Lee Jones lee at kernel.org
Thu May 22 01:59:06 PDT 2025


On Thu, 15 May 2025, Sven Peter via B4 Relay wrote:

> From: Sven Peter <sven at svenpeter.dev>
> 
> The System Management Controller (SMC) on Apple Silicon machines is a
> piece of hardware that exposes various functionalities such as
> temperature sensors, voltage/power meters, shutdown/reboot handling,
> GPIOs and more.
> 
> Communication happens via a shared mailbox using the RTKit protocol
> which is also used for other co-processors. The SMC protocol then allows
> reading and writing many different keys which implement the various
> features. The MFD core device handles this protocol and exposes it
> to the sub-devices.
> 
> Some of the sub-devices are potentially also useful on pre-M1 Apple
> machines and support for SMCs on these machines can be added at a later
> time.
> 
> Co-developed-by: Hector Martin <marcan at marcan.st>
> Signed-off-by: Hector Martin <marcan at marcan.st>
> Reviewed-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>
> Reviewed-by: Neal Gompa <neal at gompa.dev>
> Signed-off-by: Sven Peter <sven at svenpeter.dev>
> ---
>  MAINTAINERS                |   2 +
>  drivers/mfd/Kconfig        |  18 ++
>  drivers/mfd/Makefile       |   1 +
>  drivers/mfd/macsmc.c       | 498 +++++++++++++++++++++++++++++++++++++++++++++
>  include/linux/mfd/macsmc.h | 279 +++++++++++++++++++++++++
>  5 files changed, 798 insertions(+)

Arghhh, so close!

[...]

> +static struct platform_driver apple_smc_driver = {
> +	.driver = {
> +		.name = "mfd-macsmc",

Drop the 'mfd-' part please.

> +		.of_match_table = apple_smc_of_match,
> +	},
> +	.probe = apple_smc_probe,
> +};
> +module_platform_driver(apple_smc_driver);
> +
> +MODULE_AUTHOR("Hector Martin <marcan at marcan.st>");
> +MODULE_AUTHOR("Sven Peter <sven at svenpeter.dev>");
> +MODULE_LICENSE("Dual MIT/GPL");
> +MODULE_DESCRIPTION("Apple SMC driver");

I plan to apply this set after the merge-window.

What else are you waiting on?

-- 
Lee Jones [李琼斯]



More information about the linux-arm-kernel mailing list