Reverse Engineering & Bring-Up Of Linux On The Apple Silicon M1 Continues
Asahi Linux continues making progress on enabling the Apple M1 under Linux. Some of the work they've been tackling this summer includes:
- Initial support for Apple M1 in Linux 5.13.
- The reverse-engineering work continues. Besides blind proving, helping in reverse-engineering for more advanced components has been helped by leveraging their custom hypervisor atop the project's m1n1 bootloader with macOS on top. The m1n1-based hypervisor in turn has various debugging features for helping to reverse-engineer, tracing, and providing low-level debugging capabilities.
- One of the areas seeing a lot of reverse engineering work is on their DCP display engine co-processor. While there has been the early "Asahi" work within Mesa, they still need to ultimately assemble a Linux kernel DRM driver for the display and 3D graphics capabilities.
- when the DCP support is sorted out, due to resources they will likely end up only supporting certain firmware versions of it. The DCP firmware version does change and due to the battle of bringing up and maintaining the support, they are likely only to target a subset.
- There is also work on creating an Asahi Linux installer for deploying the Linux environment on the Apple Silicon hardware. The installation is tricky due to needing to create a "macOS" installation so Apple will recognize it as a bootable operating system.
- For Linux 5.15 the M1 DART driver is likely to land that in turn is required for PCIe, USB, DCP, and other functionality moving forward.
More details on this work via their August 2021 progress report.