Linux 5.3 Will Surprisingly Support The Newest Keyboard/Trackpads Of Apple MacBooks

Written by Michael Larabel in Hardware on 21 July 2019 at 04:46 AM EDT. 25 Comments
HARDWARE
As a last minute surprise for the Linux 5.3 kernel merge window is support for the keyboard and trackpads on newer Apple MacBooks and MacBook Pro laptops.

Linux up to now hasn't had mainline support for the keyboard and trackpad on recent years of MacBooks: from MacBook8,1 or later or MacBookPro13 and MacBookPro14 models. These IDs roughly correlate to the MacBook systems since the end of 2015. There hasn't been this Linux support since rather than being exposed as USB devices like all of the other modern laptops, Apple made the strange move of making them SPI devices instead. Beyond that, Apple has never documented its protocol in use with this SPI controller for supporting these keyboards and trackpads.

Developers with time have reverse-engineered large portions of this protocol and thus able to write this basic Linux driver. However, there still are some yet to be deciphered fields and commands. But what's known today is at least good enough for standard usage on Linux.

Linux input subsystem maintaner Dmitry Torokhov sent in a secondary pull request on Saturday containing this new Apple SPI keyboard/trackpad driver along with a few other mundane input updates. The Apple SPI driver itself was led by Ronald Tschalär.

So with Linux 5.3+ and when enabling the new CONFIG_KEYBOARD_APPLESPI Kconfig switch, there is support for the newer MacBooks/MacBookPros with their keyboards and trackpads.

As reported a few days ago, there are also patches enabling the NVMe drive support in newer Apple devices under Linux though that work hasn't landed for Linux 5.3. But perhaps for Linux 5.4 is where we'll see the support working out nicely on newer Apple hardware.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week