[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