Проблема базовой поддержки
Несмотря на то, что Linux 7.2 принес первоначальную поддержку Apple M3, а Linux 7.3 расширила её на модели Pro, Max и Ultra, основная ветка ядра остается слишком базовой для повседневного использования. Ключевым недостающим элементом была работа с накопителями: без драйверов NVMe система не могла полноценно взаимодействовать с быстрым хранилищем устройств Apple.
Технические детали патчей
Разработчик Janne Grunau опубликовал серию из семи патчей, которые активируют NVMe-накопители на всех устройствах с чипами M3. Механика работы аналогична решениям для предыдущего поколения M2 Pro/Max/Ultra, но требует специфических правок. Для корректной инициализации необходимо добавить около 140 строк кода в YAML-файлы и описания Device Trees (DT), чтобы ядро «увидело» контроллеры хранения данных.
Сравнение поколений Apple Silicon в Linux
| Поколение | Статус поддержки в ядре (на момент релиза) | Требования для NVMe |
|---|---|---|
| Apple M2 Pro/Max/Ultra | Стабильная поддержка | Стандартная реализация |
| Apple M3 (базовый) | Базовая (Linux 7.2) | Новые DT-описания (~140 строк) |
| Apple M3 Pro/Max/Ultra | Базовая (Linux 7.3) | Новые DT-описания (~140 строк) |
Сроки и альтернативы
Учитывая, что изменения касаются преимущественно описания оборудования (Device Tree), ожидается, что патчи успеют попасть в окно слияния Linux 7.4, которое запланировано на октябрь. Однако для тех, кто хочет использовать Linux на M3-устройствах уже сейчас, разработчики рекомендуют обращаться к форку Asahi Linux. Эта ветка содержит все последние наработки по поддержке M3-серии задолго до их интеграции в официальное ядро.
Источник: Phoronix ↗
