Asahi Linux 7.1 Progress Report
Asahi Linux 7.1 Progress Report
Linux 7.1 has officially arrived! Along with the release, we are providing a detailed update on our recent technical hurdles and triumphs.
🛠️ The Return of the Master Boot Record
When you trigger the boot picker via a long-press of the power button or utilize the Startup Disk utility, the entry labeled "Asahi" isn't actually the primary OS partition.
Because Apple's boot infrastructure requires a valid macOS installation within an APFS container to function, the Asahi Installer employs a clever workaround: it creates a tiny macOS installation 2.5 GB APFS container containing just enough macOS components to fool the system into thinking it's a standard bootable install, but with m1n1 acting as the kernel.
The macOS 27 "Disappearing Act"
This method remained stable from macOS 12 through macOS 26. However, the release of the macOS 27 Golden Gate developer beta broke this. Users reported that Asahi had vanished from the boot picker entirely.
Investigation Process
- Disk Analysis: Using
diskutil, we confirmed all Asahi partitions remained intact. - Cross-Testing: Asahi remained bootable if the machine was booted using tools from a macOS 26 installation.
- Root Cause:
chaos_princessdiscovered that the macOS Installer sets a specific APFS metadata flag to mark a volume as bootable.
| macOS Version | Bootable Flag Requirement | Result for Asahi |
|---|---|---|
| macOS 26 & Prior | Ignored by boot tooling | Bootable |
| macOS 27 Beta | Required for visibility | Hidden |
How to Resolve the Issue
New installations now have this flag set by default. For existing users, we have provided two paths:
- Option A: Rerun the Asahi Installer and select the
Fix macOS 27 boot picker compatibilitymode. - Option B: Use the experimental Linux-based tool developed by
chaos_princess.
Warning: The Linux-based fix is currently in testing to ensure it doesn't corrupt filesystems. If you wish to help, clone the repository, build it, and run it before upgrading to macOS 27.
# Example conceptual flow for the Linux fix
git clone https://github.com/asahi-linux/boot-fix-tool
cd boot-fix-tool
make
sudo ./fix-apfs-flag
⚡ Three Bytes, Total Shutdown
macOS 27 introduced firmware updates for global peripherals, including the System Management Controller (SMC). Our power supply driver relies on the SMC for critical data:
- Battery charge state and voltage.
- Estimated time until empty.
- Overall battery health and charge thresholds.
The ABI Breakage
The SMC firmware changed a specific battery management interface. Previously, it returned a 32-bit integer; now, it returns a single byte.
This discrepancy caused our driver to misinterpret the data, leading the system to believe the battery had failed, which triggered an emergency shutdown to prevent hardware damage.
The Fix: We have patched the downstream kernel. Starting with version 7.0.12, the driver is compatible with both firmware ABIs.
⚠️ A Note on Developer Betas
STOP! Please refrain from installing developer betas on your primary machines.
Bugs like the ones mentioned above are exactly why they are called "developer betas." While these specific issues were manageable, others could be catastrophic. Furthermore, global firmware updates are permanent; the only way to revert them is a full DFU restore.
We have sacrificial machines dedicated to this testing. Please do not risk your expensive hardware or critical data.
🎧 Consistency in Design: M3 Support
Hardware design is costly. Consequently, Apple rarely changes existing IC (Integrated Circuit) designs unless absolutely necessary. We bet on this stability, and for the most part, we were right.
Audio Implementation
Audio on Apple Silicon involves several components that have remained virtually identical since the M1:
- Bus: The industry-standard
I2S(I2C-based) bus. - Clocking: The Numerically Controlled Oscillator (NCO).
- Amplification: Identical speaker and headset amplifier chips.
Because of this, adding support for M3 machines was straightforward. It required only minor updates to:
- Devicetree additions.
asahi-audioconfiguration files.speakersafetydsettings.
The Result: M3 machines now feature high-fidelity audio output! Additionally, we have successfully implemented CPU frequency switching and proper big.LITTLE core management for the M3 series.