С выходом ядра Linux 7.1 из основной ветки удалён код, отвечающий за поддержку процессоров семейства Baikal, разработанных в России. Удаление вызвано отсутствием обновлений от производителя, а также редким распространением этих чипов даже внутри страны. Пользователям, работающим на Baikal‑T1, Baikal‑M и Baikal‑S, придётся оставаться на версии ядра 6.18 LTS — последнем релизе, где поддержка сохранена полностью.
Что именно исчезает из mainline
В недавнем pull‑request по подсистеме ATA удалены привязки Device Tree, связанные с Baikal. Комментарий к запросу чётко указывает, что код для этой системы‑на‑кристалле не будет интегрирован в основную ветку. Пакет патчей под общим названием «Remove not‑going‑to‑be‑supported code for Baikal SoC» охватывает несколько подсистем: тактирование (clk: baikal‑t1), контроллеры PCI Express на базе Synopsys DesignWare, SATA‑драйвер ahci‑dwc, а также шинные драйверы и сопутствующие компоненты. Все изменения опубликованы в публичной рассылке разработчиков ядра и проходят рецензирование.
Device Tree bindings — это описания аппаратных блоков в виде дерева, без которых ядро не может определить адреса регистров и инициализировать периферийные устройства. Удаление этих описаний делает невозможным полноценный запуск Linux на процессорах Baikal без собственного форка ядра.
Как Baikal попал в ядро и почему уходит
Первоначально компания Baikal Electronics планировала процессоры на архитектуре ARM, затем переключилась на MIPS, что привело к появлению Baikal‑T1. Позднее, вернувшись к ARM, были выпущены клиентский Baikal‑M и серверный Baikal‑S. Поддержка этих чипов находилась в основной ветке ядра почти десять лет.
В 2024 году в связи с международными санкциями из проекта ядра было отстранено 11 разработчиков, связанных с Россией, включая тех, кто отвечал за подсистемы Baikal. Кроме того, компания потеряла доступ к производственным мощностям TSMC, а в августе 2023 года объявила о банкротстве. Отсутствие активных мейнтейнеров и перспектива выпуска новых чипов сделали дальнейшее хранение кода в mainline неоправданным, что и послужило основанием для предложенных патчей.
Для сохранения работоспособности устройств рекомендуется перейти на ветку Linux 6.18 LTS и обеспечить её поддержку в течение оставшегося срока. Ниже приведён простой план действий.
- Скачать исходные коды версии 6.18 LTS из официального репозитория.
- Сохранить текущие патчи и конфигурации, использованные для Baikal‑устройств.
- Собрать ядро с включёнными драйверами и привязками, относящимися к Baikal.
- Регулярно обновлять пакеты безопасности из ветки LTS (поддержка до декабря 2028 года).
- При необходимости поддерживать собственный форк, включающий исправления из более новых веток.
Перспективы на базе RISC‑V
Обсуждается возможность появления новой итерации процессоров Baikal на архитектуре RISC‑V, однако публичной информации о проекте практически нет, и неизвестно, кто в условиях санкций возьмётся за их производство. Текущий процесс удаления кода в ядре Linux не относится к потенциальному RISC‑V‑решению, которое, скорее всего, будет реализовано с нуля.
Практический вывод: для систем, использующих процессоры Baikal, актуальной базой остаётся Linux 6.18 LTS или более ранние ветки с долгосрочной поддержкой. Возврат поддержки в mainline возможен только при появлении активных мейнтейнеров от производителя или в рамках полностью нового проекта на RISC‑V.