Asahi Linux привносит улучшения Apple Silicon в цикл Linux 6.17
Команда Asahi Linux опубликовала свой последний отчёт о проделанной работе. Несмотря на то, что ведущий разработчик отошёл от проекта несколько месяцев назад, работа продолжается и ведётся активная подготовка к полноценной поддержке Linux на оборудовании Apple Silicon. В частности, с выходом ядра Linux 6.17 несколько долгожданных компонентов наконец-то были интегрированы в основную ветку. Вот подробности.
После нескольких лет обсуждений был объединён основной драйвер SMC с драйверами для GPIO и контроллеров перезагрузки. Это означает, что устройства, на которых уже установлены ядра upstream, теперь могут корректно перезагружаться — это важный шаг на пути к поддержке Wi-Fi и Bluetooth в upstream. Ядро Linux 6.17 также включает новые определения дерева устройств, необходимые для будущей интеграции драйверов графических процессоров.
Поддержка также была расширена и теперь охватывает DART IOMMU на чипах Apple M2 Pro, Max и Ultra. Теперь драйвер реализует четырёхуровневые таблицы страниц для работы с большим адресным пространством на этих системах на кристалле. Таким образом, деревья устройств для всех вариантов M2 были объединены и появятся в Linux 6.18-rc1.
Помимо работы над ядром, команда обратила внимание на m1n1 — гипервизор и загрузчик, которые служат связующим звеном между прошивкой Apple и Linux. Новый конвейер непрерывной интеграции теперь автоматизирует сборку пакетов UEFI, обеспечивая актуальность установочных образов. В последней версии m1n1, 1.5.2, представлены обновления совместимости для деревьев устройств USB и GPU, а также сделаны первые шаги в переходе на Rust.
Части m1n1 теперь переписываются на Rust для повышения безопасности и удобства сопровождения, начиная с кода обработки Apple Device Tree. Несмотря на смену языка, производительность осталась прежней, что доказывает, что безопасность не требует жертв.
Разработчики Asahi также представили tuxvdmtool — нативную для Linux реализацию macvdmtool, для которой ранее требовалась macOS. Эта новая утилита позволяет перезагружать устройства Apple Silicon и направлять их UART-выход через USB с другого хоста Linux. Цель состоит в том, чтобы сделать низкоуровневую инициализацию и отладку более доступными, даже если хост-система сама является Apple Silicon Mac под управлением Linux.
Неизменной темой в работе Asahi остаётся подход только для апстрима. Вместо того чтобы поддерживать нисходящие форки, проект сосредоточился на интеграции своих изменений непосредственно в основное ядро Linux и другие проекты с открытым исходным кодом.
Такой подход обеспечивает долгосрочную поддержку и приносит пользу всей экосистеме — например, благодаря общему коду Mesa, который позволяет эмулировать шейдеры геометрии и тесселяции на нескольких мобильных графических процессорах, а не только на устройствах Apple.
В отчёте особое внимание уделяется poly — новой совместной разработке, призванной сделать эмуляцию геометрических и тесселяционных шейдеров доступной для всех драйверов Mesa, что потенциально улучшит совместимость OpenGL и Vulkan на устройствах с графическими процессорами ARM или PowerVR.
Наконец-то начались ежедневные сборки Fedora Asahi Remix для Fedora 43, а интеграция с Fedora 44 уже обсуждается в рамках новой инициативы KDE Plasma Setup. Тем временем, по словам разработчиков, началась предварительная работа над чипами Apple M3, и m1n1 может загружаться с мигающим курсором.
Для получения дополнительной информации см. отчёт: https://asahilinux.org/2025/10/progress-report-6-17/.
Редактор: AndreyEx