Review zu Apple Hardware mit Apple M4-CPUs (Geekerwan) 03
写真: 极客湾Geekerwan / CC BY 3.0 / Wikimedia Commons

Asahi Linuxの開発者Sven Peter氏が、Apple M4向けの基本的な対応とMacBook Neo向けの変更をLinuxカーネルに取り込むため、プルリクエストを提出しました。Linux 7.4での対応が見込まれますが、当初は対象機器にカーネルをインストールできる段階で、実用には追加開発が必要です。

M4対応は起動の土台づくり

今回の変更には、M4向けデバイスツリーの基本対応が含まれます。デバイスツリーは、プロセッサや周辺機器など、機器のハードウェア構成をLinuxカーネルへ伝えるデータです。Linuxはこれを使って機器を把握し、適切なハードウェア初期化やドライバーの起動につなげます。

Apple Silicon搭載MacでLinuxを起動する際は、カーネルの前にも複数の段階があります。Asahi Linuxの起動手順では、m1n1が機器に合ったデバイスツリーを選び、動的な情報を加えてU-Bootへ渡します。U-BootはEFIサービスを用意し、GRUBなどのローダーがLinuxカーネルを読み込める環境を整えます。

新しいチップ向けのデバイスツリーは、Linuxがハードウェアを認識するために必要です。ただし、デバイスツリーの追加だけで各機能のドライバーや初期化処理がそろうわけではありません。Asahi Linuxによると、新しいハードウェアを動かすにはLinux側のデバイスツリー更新に加え、起動時の初期化を担うm1n1側の更新が必要になる場合もあります。

GPUなどの追加開発が必要

今回のM4向け初期対応では、カーネルをインストールできても、それだけで日常用途に使える状態にはなりません。GPU対応を含む開発が今後必要です。GPU用ドライバーなどが整うまでは、M4のグラフィックス機能をLinuxから十分に利用できません。

M3では、Asahi Linuxの対応が公式インストーラーに加わったとByteIotaが報じています。ByteIotaはM3のGPUアクセラレーションを未対応分野として挙げ、機能の成熟度には課題が残ると評価しています。M4はインストーラーで扱えるM3とは段階が異なり、Linux 7.4に向けて基本的なカーネル対応を進める段階です。