
Linuxカーネルへの主要ドライバー提出が進展
Asahi LinuxはLinux 7.3の公開に合わせ、Apple Silicon対応の進捗を更新しました。音声ドライバー「macaudio」と映像関連の「avd」がLinuxカーネルのレビューに提出され、M4 Pro、M4 Max、M5向けの初期デバイスツリーも加わりました。
デバイスツリーは、カーネルがSoCのハードウェア構成を把握するための情報です。M4 Pro、M4 Max、M5向けの初期版は、起動してTTYと呼ばれる文字ベースの画面を表示する段階に限られ、各機能への対応は続いています。
macaudioのドライバーとデバイスツリーの変更は約3,100行、avd関連は約13,000行です。avdは、Asahi Linux側のコードに入ってから約3カ月でレビュー提出に至りました。
M3の一般提供とGPU対応の現状
M3シリーズのMacは、これまでインストーラーで「EXPERT」フラグを有効にした場合に限り、初期対応を利用できました。早期利用者から寄せられた問題がほとんどなかったため、フラグなしで使える一般提供へ移行しました。
M3対応ではDCPも有効になりました。性能とバッテリー駆動時間が改善し、スリープに対応したほか、MacBookのノッチ周辺も利用できるようになりました。
一方、M3のGPUは引き続き開発上の課題です。GPUを初期化して三角形を描画する段階まで進みましたが、M1やM2とは異なる設計への対応が必要で、Mesaへの統合に向けた開発が続いています。
Thunderboltは一部機能から利用可能に
Apple Silicon MacのThunderboltコントローラーに対応する変更は、Linuxカーネルへの提出と並行してAsahi Linuxのカーネルにも取り込まれ、利用者に提供されています。コントローラーはRTKitを実行するCortex-M3と、独自のThunderbolt/USB4ルーターで構成されています。
LinuxのThunderboltサブシステムは、これまで広く使われてきたIntel製コントローラーを前提としており、Apple独自の構成には調整が必要でした。また、各コントローラーのリセットはPMGRのレジスター操作に結び付いています。
現時点で使えるのはUSB 3、XDomain、Thunderboltネットワーキングです。USB機器を接続できるほか、Thunderboltで2台のコンピューターをつないで通信できますが、多くのドックで使われるPCIeとDisplayPortのトンネリングには未対応です。
FEXとWineを組み合わせたゲーム実行
Apple Silicon上でPCゲームを動かすには、異なる種類のソフトウェアを組み合わせます。FEXはx86やx86-64向けの命令をArm向けに変換し、WineはWindowsのAPIをLinux上で扱えるようにします。Asahi Linuxでは、これらを組み合わせてゲームを実行します。
ゲームの多くは4KiBのメモリーページを前提にしていますが、Linuxカーネルはシステムと同じ粒度でページを割り当てます。この差を埋めるため、muvmは小規模な仮想マシンを使い、ゲームに4KiBページを提示します。
ただし、muvmの使用には負荷があり、ワークロードによって約20%の性能低下が生じます。仮想マシン内ではWaylandを使えず、入出力が遅く、一部の入力機器にも問題が残ります。以前試された仮想マシン外での実行方法は、FEXの保守性と変換の正確性を優先して削除されました。









