When Apple adopted its new ARM-based processors, known collectively as Apple Silicon, all existing Linux distributions were incompatible with its newest hardware. That’s changing thanks to the hard work of the Asahi Linux team, which recently introduced preliminary support for the Apple M1 Ultra and M2 processors.
The new version closely follows the first alpha made available last March for the M1, M1 Pro and M1 Max machines. Being alpha, this release didn’t support all the features you usually take for granted in a kernel, including GPU, Bluetooth, HDMI, Touch Bar and others.
The new version, in addition to adding support for newer processors, also removes some of these limitations. Specifically, the latest Asahi kernel includes a working Bluetooth driver:
Fortunately, while the PCIe transport is new, the HCI interface running on top is standard, so once the main initialization and data transfer parts of the driver start working, most functionality Bluetooth did too. The driver doesn’t need to worry about these details, it just shuffles the data to/from the device.
Unfortunately, the current Bluetooth implementation doesn’t perfectly co-exist with 2.4GHz Wi-Fi, so you either have to turn off Wi-Fi or use a 5GHz network.
The addition of the Bluetooth driver provided the playing field to test what the Asahi team calls “seamless upgrading”, i.e. the ability for users to update their kernels without getting confused. engage in a complex reconfiguration. In fact, adding Bluetooth support involved modifying a number of different kernel components, including the device tree, installer, and so on. With the “seamless upgrade” approach, existing users will only need to upgrade their packages and reboot for Bluetooth to work.
Regarding support for the new M2 chip, according to the Asahi team, it took a relatively short time to run a minimal system on the M2, with keyboard and trackpad support requiring additional effort. . In fact, the initial 12-hour reverse-engineering marathon that led to the system running minimally can be viewed on YouTube. This result confirms the team’s expectation that expanding support for new processors that Apple will introduce will not require as much effort as the initial work required to support the M1 chip. However, M2 support is currently only at a very experimental stage. For example, the Asahi team does not guarantee that installing new versions for the M2 will not require reinstalling everything from scratch.
Finally, the Asahi team also reported progress on the GPU support front, thanks to Asahi Lina‘s work. Currently, a prototype driver is available, capable of running graphics applications and performance tests, passing 94% of dEQP-GLES2 test suite, but the stack is still too experimental to be included in the release. Asahi Lina’s reverse engineering sessions can also be viewed on YouTube.