The Apple System Management Controller (SMC) driver was successfully merged this week into Linux 6.17 for being able to reboot modern Apple M1 / M2 Macs under Linux (the Apple M3 / M4 Linux support remains in development). It’s the latest improvement for Apple Silicon on the upstream Linux kernel compared to the downstream Asahi Linux code that has been carrying the SMC driver and other in-development/tentative patches.
As covered in the aforelinked article, the Apple System Management Controller exposes temperature sensors, voltage/power meters, and is also responsible for shutdown/reboot handling. The Apple SMC support also in turn unblocks other Apple Silicon drivers for upstreaming that depend upon the GPIO support of the SMC.
The good news is that the Apple SMC driver was successfully merged via the GPIO feature pull for Linux 6.17. There were also a number of GPIO core improvements and other GPIO driver churn ready this kernel cycle.
The Apple SMC driver patches were also carried by the MFD pull request too. Other multi-function device (MFD) changes for Linux 6.17 include support for the Analog Devices ADP5589 I/O expander, TI TPS652G1 PMIC, and various other updates.