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

Lee Jones lee at kernel.org
Tue Jun 24 08:53:40 PDT 2025


On Sat, 21 Jun 2025, Sven Peter wrote:

> On 19.06.25 13:49, Lee Jones wrote:
> > On Tue, 10 Jun 2025, Sven Peter wrote:
> > 
> > > 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 kernel.org>
> > > ---
> > >   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(+)
> > 
> > This is ready.  Let me know when you have all of the other driver/* Acks.
> > 
> 
> They've all been reviewed by the respective maintainers.
> 
> I assume you want to take this all through the mfd tree and we'll need acks
> from Sebastian for power/reset and either Linus or Bartosz for gpio then.

That's right.

> The one line change inside drivers/soc/apple would usually go through my
> tree and I'm fine with taking that through mfd instead.

If there are no build-time dependencies on it, you can take it.

I'm happy to take only the inter-dep ones or all (except the arch/ ones).

-- 
Lee Jones [李琼斯]



More information about the linux-arm-kernel mailing list