В основную ветку ядра Linux впервые включена поддержка российского процессора
Компания Baikal Electronics сообщает, что стала первым из производителей процессоров в России, включенным в основную ветку ядра Linux, что принесло дополнительные удобства для тех, кто использует или планирует использовать решения на базе SoC BE-T1000.
Список изменений от Baikal Electronics (vendor-префикс — «baikal»), которые вошли в ядро Linux 5.8-rc2:
- Общий код ядра и архитектуры MIPS CPU P5600:
- Добавлен конфиг сборки ядра специфичного для CPU MIPSr5.
- Добавлен конфиг сборки ядра специфичного для CPU P5600.
- Добавлена автоматическая активация UCA MMU-атрибута, если он поддержтвается архитектурой.
- Добавлена поддержка детектирования и расшифровки CM2 L2 ECC ошибок.
- Добавлена поддержка MAAR-регистров в режиме XPA.
- Доработан драйвер R4K clockevent для работы при включенной фиче CPU-freq.
- Доработан драйвер R4K clocksource для работы при включенной фиче CPU-freq.
- Исправлена ошибка udelay при включенной фиче CPU-freq.
- Исправлена ошибка с неверным значением BogoMIPS при включенной фиче CPU-freq.
- Исправлены другие менее значительные ошибки.
- MIPS GIC timer:
- Доработан драйвер R4K clocksource для работы при включенной фиче CPU-freq.
- Добавлена регистрация таймера в качестве sched_clock.
- MIPS CM2 L2:
- Разработан новый драйвер для изменения latency L2-cach-RAM.
- Добавлен yaml-схема с описанием DT-узла устройства.
- Baikal-T1 CCU:
- Разработан новый драйвер CCU PLL.
- Разработан новый драйвер CCU делителей.
- Добавлена поддержка фичи CPU-freq из коробки.
- Добавлена возможность изменения частоты для всех тактовых сигналов
- Добавлены yaml-схемы с описанием DT-узлов устройств.
- Baikal-T1 APB-bus:
- Разработан новый драйвер для детектирования и тестовой инъекции ошибок на шине APB-bus.
- Добавлена yaml-схема с описанием DT-узла устройства.
- Baikal-T1 AXI-bus:
- Разработан новый драйвер для детектирования и тестовой инъекции ошибок на шине AXI-bus.
- Добавлена yaml-схема с описанием DT-узла устройства.
- Baikal-T1 PVT sensor:
- Переработан драйвер встроенного в CPU сенсора.
- Добавлена поддержка событий превышения пороговых значений сенсора.
- Добавлена yaml-схема с описанием DT-узла устройства.
- DW APB Timer:
- Убрана привязки clocksource-таймеров к первому CPU.
- Добавлена возможность регистрировать один таймер как clocksource, а все остальные — как clockevent (ранее только один регистрировался как clockevent).
- Добавлена yaml-схема с описанием DT-узла устройства.
- DW APB SSI (SPI):
- Выполнен рефакторинг драйвера DW APB SSI DMA. Теперь он поддерживает платформенную декларацию DMA-каналов.
- Обеспечена корректная обработка SPI Rx-only трансферов
- Обеспечено более точное определение задержек между трансферами.
- Исправлены другие менее значительные ошибки.
- Добавлена yaml-схема с описанием DT-узла устройства.
- DW APB I2C:
- Добавлена поддержка regmap для доступа к регистрам контроллера.
- Добавлена поддержка I2C, встроенного в системный контроллер Baikal-T1, регистры которого адресуются косвенно.
- Исправлены другие менее значительные ошибки.
- DW APB GPIO:
- Добавлена поддержка тактового сигнала для фичи Debounce.
- Добавлена yaml-схема с описанием DT-узла устройства.
- DW APB Watchdog:
- Добавлена поддержка нестандартных интервалов таймера.
- Добавлена поддержка pre-timeout прерываний.
- Добавлена yaml-схема с описанием DT-узла устройства.
Оставшаяся часть изменений в подсистемы ядра Linux находится в процессе ревью и войдет в ядро Linux 5.9, в который также будет добавлена поддержка Baikal-T1 SoC с файлом дерева устройств, использующим все добавленные Baikal Electronics версии драйверов.