Релиз Linux 6.16 – Основные изменения, архитектуры Arm, RISC-V и MIPS

Линус Торвальдс объявил о выпуске Linux 6.16 в LKML :

Воскресным днем цикл выпуска завершился. Прошедшая неделя прошла спокойно, без серьезных сюрпризов, способных нарушить график, поэтому версия 6.16 была помечена и выпущена в соответствии с планом.

Стоит отметить, что предстоящее окно слияния для 6.17 будет несколько хаотичным: запланировано несколько семейных событий в августе (свадьба и крупный день рождения), и поскольку семья распределена не только по США, но и в Финляндии, примерно половину месяца будет занято поездками.

Это означает, что будут предприняты усилия для завершения большей части окна слияния в первую неделю перед поездками, и уже было предварительно уведомлено об этом лиц, которые обычно отправляют большинство запросов на включение. Действительно, уже ожидает рассмотрения 50 запросов, так что спасибо тем, кто принял это к сведению.


Но достаточно о следующем выпуске. *Текущий* выпуск вышел и выглядит хорошо, и, как упоминалось, прошлая неделя была очень небольшой и спокойной. Краткий журнал изменений приведен ниже для желающих ознакомиться с деталями, но он не слишком интересен (в лучшем смысле!). Почти все изменения — мелкие исправления в драйверах, с некоторыми случайными изменениями в других местах. Не много патчей, и все они небольшие.

Linus

Выпущенный около двух месяцев назад Linux 6.15 прекратил поддержку 32-разрядных систем x86 с более чем восемью CPU или более 4 ГБ ОЗУ, ввел различные изменения в монтировании файловых систем и включил подсистему fwctl, предназначенную для прямой передачи командных данных в сложные системы прошивки, среди многих других изменений. Теперь рассмотрим основные моменты выпуска Linux 6.16, прежде чем перейти к деталям об архитектурах Arm, RISC-V и MIPS.

Linux 6.16 release arm linux mips

Основные моменты Linux 6.16

К числу заметных изменений в Linux 6.16 относятся:

  • Поддержка выгрузки звука через USB – Эта функция обеспечивает значительную экономию энергии на встраиваемых устройствах, где поток звука через USB может продолжать передаваться, пока остальная система находится в режиме сна. На реализацию ушло около двух лет. Данная функция уже была доступна в Android в различных реализациях, но теперь появилась унифицированная реализация для всех. См. запрос на включение .
  • Начальная поддержка Intel Trusted Domain Extensions – Linux 6.16 добавляет начальную поддержку расширений доверенных доменов (TDX) от Intel для защиты конфиденциальных гостевых ВМ от хоста и физических атак путем шифрования памяти гостевой ВМ. Это похоже на уже поддерживаемый AMD SEV-SNP ( см. выпуск Linux 6.11 ). Подробнее см. в документации ядра и документации Intel .
  • Возможность отправки полезной нагрузки TCP без копирования из памяти DMABUF – Технология TCP для устройств памяти (включенная в Linux 6.12 ) предоставила возможность приема полезной нагрузки TCP без копирования в область памяти DMABUF, в то время как заголовки пакетов попадают отдельно в обычные буферы ядра. Этот новый выпуск Linux добавляет поддержку отправки полезной нагрузки TCP. Это означает, что данные из памяти устройств (например, от GPU или AI-ускорителя) могут приниматься и отправляться напрямую через сеть без участия основного CPU в передаче данных. Подробнее см. в документации .
  • Улучшения производительности CPU Intel
    • Поддержка Intel Advanced Performance Extensions (APX) – расширение удваивает количество регистров общего назначения с 16 до 32, что позволяет коду содержать меньше операций загрузки и сохранения, приводя к повышению производительности и экономии энергии. Подробности см. в документации Intel .

    • Оптимизация сборки для локального CPU на x86 – Linux 6.16 добавляет опцию CONFIG_X86_NATIVE_CPU , которая заставляет ядро собираться с опцией -march=native . Это позволяет компиляторам оптимизировать сборку для CPU на машине сборки, что может обеспечить повышение производительности при запуске ядра Linux на той же (или аналогичной) машине.

Архитектура Arm в Linux 6.16

Как обычно, архитектура Arm претерпела множество изменений. Ниже приведены изменения для процессоров от Allwinner, Amlogic, Rockchip, Samsung, Qualcomm и MediaTek, а также новые SoC/платы для других производителей и изменения, связанные с Raspberry Pi.

  • Поддержка ленивой вытесняющей многозадачности (lazy-preemption) и расширения масштабируемых матриц (scalable-matrix-extension) для Arm64 были включены.
  • Allwinner
    • Добавлена поддержка Allwinner A523 (аналогично A527 и T527 )
    • Драйвер тактирования
      • Добавлена поддержка тактовых сигналов DE (движка отображения) 3.3 для H616
      • Добавлено отсутствующее управление сбросом LVDS для H616
      • Не включать по умолчанию при тестовой компиляции
    • pmdomain – Добавлена поддержка Allwinner H6/H616 PRCM PPU
    • Изменения в DTS
      • Также включен EMAC0 Ethernet MAC для семейства A523 на Cubie A5E и Avaota-A1. Примечание: SoC имеет два разных контроллера Ethernet.
      • Включен GPU на H616 для всех поддерживаемых плат
      • Установлена максимальная частота MMC для A100
      • Добавлен разъем WiFi/BT на платах PINE64 A64
      • Добавлены hp-det-gpios для Anbernic RG35XX
      • Добавлена поддержка светодиодов PHY на Bananapi (оригинальной версии)
      • Различные улучшения
    • Новые устройства
  • Rockchip
    • Добавлена поддержка Rockchip RK3562 SoC на Cortex-A53
    • PHY
      • Добавлена поддержка Rockchip usb2 для RK3562, поддержка phy usb2 RK3036
      • Поддержка конфигурации и управления глубиной цвета Rockchip
      • Конвертация привязок Yaml для Type-C и PCIe Phy RK3399
    • Драйвер контроллера PCIe Rockchip
      • Изменение порядка rockchip_pci_core_rsts, поскольку reset_control_bulk_deassert() выполняет деактивацию в обратном порядке, для исправления регрессии обучения связи
      • Пометка RK3399 как способного генерировать прерывания INTx
    • Драйвер контроллера PCIe Rockchip DesignWare
      • Проверка только PCIE_LINKUP (без статуса LTSSM) для определения установления соединения
      • Увеличение N_FTS (используется при переходах L0s->L0) и включение ASPM L0s для режимов Root Complex и Endpoint
      • Скрытие неработающей возможности ATS в rockchip_pcie_ep_init() вместо rockchip_pcie_ep_pre_init(), чтобы она оставалась скрытой после сброса PERST# в непостоянных регистрах
      • Вызов phy_power_off() перед phy_exit() в rockchip_pcie_phy_deinit()
    • ATA – Добавление совместимости с SoC Rockchip RK3576 в привязки Designware AHCI DT
    • I2C & SPI – Добавлена поддержка RK3528
    • ASoC – Добавлена поддержка контроллеров SAI Rockchip
    • Тактовая подсистема
      • Возможность обработки различных системных регистров «General Register Files», не только системных, плюс моделирование отдельных вентилей
      • По какой-то причине Rockchip перенес mmc-фазирующие тактовые сигналы из тактового блока GRF в новых SoC (например, rk3528), перед их полным перемещением в контроллер eMMC на rk3576; добавлен новый вариант тактирования фаз с использованием новой обработки GRF
      • Для rk3036 добавлено управление мультиплексором usb480m и новые частоты PLL
    • Обновления Device Tree для Linux 6.16:
      • GMAC + SDMMC/SDIO на rk3528
      • SAI + HDMI-аудио на rk3576
      • Перенос псевдонимов i2c + uart rk3528 по запросу
      • Использование GIC ITS для PCIe3 MSI RK3568
      • Обновление устаревших свойств сброса dwmac на платах PX30
      • Обновления для USB-концентраторов Cypress на платах Theobroma
    • Новые устройства
      • Cobra и PP1516 от Theobroma-Systems (построенные на PX30)
      • Radxa Rock 5B+ (RK3588)
      • Промышленная оценочная плата Rockchip RK3399
      • Плата Rockchip RK3588 EVB2
  • Amlogic
    • Добавлена поддержка Amlogic S6/S7/S7D
    • Добавлена поддержка S805Y , аналогично S805X
    • Мультимедиа – процессор изображений Amlogic C3
    • SPI – поддержка DMA для контроллеров SPI Amlogic
    • Драйвер тактирования
      • Исправление источников тактовых сигналов SPICC Amlogic G12
      • Тест компиляции тактовых генераторов Amlogic только при установленном ARCH_MESON
    • Дерево устройств для Linux 6.16:
      • Поддержка Pinctrl для Amlogic A4
      • Свойства pinconf для подтяжки RX/TX UART для всех SoC
      • Поддержка SARADC для варианта SoC S905L
      • Уменьшение задержки тактового сигнала в узле CPU
      • Поддержка измерения тактовой частоты (clk measure) для SoC S4 и C3
      • Свойство pinconf для подтяжки I2C по умолчанию на платах на базе Amlogic GXL
      • Поддержка контроллера сброса (Reset Controller) для Amlogic A4 и A5
    • Новые устройства
      • Референсная плата Amlogic S6 BL209
      • Референсная плата Amlogic S7 BP201
      • Референсная плата Amlogic S7D BM202
      • Amlogic S805Y (xiaomi-aquaman) Mi TV Stick
      • Meson8 TCU Fernsehfee 3.0
  • Samsung
    • Добавлена поддержка Samsung Exynos7870, более старого чипа, аналогичного Exynos7885, с поддержкой контроллеров выводов, тактовых генераторов, I2C, MMC, последовательного интерфейса и USB.
    • PHY – поддержка eusb2 phy Samsung exynos2200 и рефакторинг драйвера для этой поддержки, поддержка USBDRD exynos7870
    • MFD
      • Различные изменения для Samsung Exynos ACPM (Управление доступом и питанием), LPASS и SEC
      • Добавлена поддержка PMIC S2MPG10, который взаимодействует через прошивку Samsung ACPM вместо I2C
    • Управление выводами (Pinctrl)
      • Индивидуальные обратные вызовы приостановки/возобновления для каждой системы на кристалле в драйверах Samsung
      • Рефакторинг функций приостановки и возобновления драйвера для обработки банков выводов GPIO EINT Google GS101 и добавление банка выводов alive для этой системы на кристалле.
    • SPI – Добавлена поддержка Samsung Exynos Autov920
    • Драйверы систем на кристалле (SoC Drivers)
      • Улучшена обработка таймаутов связи.
      • Исключено состояние сна, позволяя пользователям (PMIC) передавать данные во время выключения системы.
      • Исправлено чтение длинных сообщений из прошивки.
      • Улучшения отложенной инициализации (deferred probe).
      • Моделирование пользователя ACPM (PMIC) как дочернего устройства и экспорт функции devm_acpm_get_by_node() для данного сценария.
      • Добавлена поддержка горячей замены CPU на Google GS101 путем переключения соответствующих бит в блоке прерываний вторичного PMU (Power Management Unit (PMU) Interrupt Generation) из основного драйвера PMU.
    • Изменения в DTS для ARM – Отсутствуют
    • Изменения в DTS Samsung для ARM64
      • Tesla FSD: Добавлен Ethernet.
      • ExynosAutov920: Добавлены дополнительные узлы последовательного интерфейса, контроллеры тактирования для кластеров CPU CL0, CL1 и CL2.
      • Google GS101 – Добавлен узел syscon pmu-intr-gen для корректной горячей замены CPU.
      • Перевод узлов USI (движки последовательного интерфейса) на новую константу samsung,mode, появившуюся в DT bindings v6.15-rc1.
    • Изменения в конфигурации ядра (defconfig) – Отсутствуют
    • Новые устройства – Samsung Galaxy J7 Prime, Samsung Galaxy A2 Core и Samsung Galaxy J6 на базе Exynos7870
  • Qualcomm
    • Добавлена поддержка Qualcomm MSM8926, варианта MSM8226
    • Добавлена поддержка Qualcomm Snapdragon X1P42100 ( Snapdragon X Plus ), связанного с R1E80100
    • Физический уровень (PHY) – Добавлена поддержка qusb2 для Qualcomm IPQ5424, драйвер uniphy-pcie для IPQ5018
    • Драйвер контроллера PCIe Qualcomm
      • Добавлена поддержка разбора свойства DT ‘eq-presets-<N>gts’ для пресетов выравнивания линии
      • Чтение максимальной ширины линии из регистра Link Capabilities, если в DT отсутствует свойство ‘num-lanes’
      • Добавлен идентификатор возможности Physical Layer 64 GT/s и смещения регистров для выравнивания линии на 8, 32 и 64 GT/s
      • Добавлена универсальная поддержка dwc для настройки пресетов выравнивания линии
      • Добавлена поддержка DT и драйвера для PCIe на системе на кристалле IPQ5018
    • Управление выводами (Pinctrl)
      • Поддержка EGPIO в драйвере Qualcomm QCM2290
      • Исправлено количество доступных линий GPIO в Qualcomm QCS8300 и QCS615
    • Драйверы тактирования (Clock drivers)
      • Драйвер контроллера тактирования камеры для Qualcomm QCS8300
      • Исправлены значения wait_val для различных Qualcomm GDSCs
      • Исправлены настройки тактирования UFS для Qualcomm X Elite
      • Разрешение опциональности clkaN в драйвере контроллера тактирования Qualcomm RPMh, если command db его не определяет
    • WiFi
      • Qualcomm (ath12k):
        • Включена поддержка AHB для IPQ5332
        • Добавлена поддержка мониторного интерфейса для QCN9274
        • Добавлена поддержка multi-link operation для WCN7850
        • Добавлена поддержка оффлоада сканирования 802.11d для WCN7850
        • Режим монитора для WCN7850, улучшено регулирование в диапазоне 6 ГГц
      • Qualcomm (ath11k) – восстановлена поддержка гибернации
    • SPI – Добавлена поддержка Qualcomm IPQ5018
    • Обновления драйверов
      • Разрешено использование QSEECOM для служб переменных EFI на Asus Zenbook A14 и блокировка TZMEM на платформе SM7150 для предотвращения проблем с rmtfs.
      • Расширение драйвера кэша последнего уровня (llcc) для поддержки версии 6 аппаратного обеспечения и включение поддержки SM8750.
      • Также добавлена информация о системе (socinfo) для платформы SM8750.
      • Повторное включение поддержки UCSI на SC8280XP после устранения сбоя; добавлена фильтрация уведомлений altmode для предотвращения ложных событий горячего подключения в пользовательское пространство.
      • Добавлена поддержка SM7150 в pd-mapper.
      • Разрешено использование QSSECOM для доступа к переменным UEFI на HP EliteBook Ultra G1q. Добавлена отсутствующая совместимость для блока TCSR IPQ5018. Исправлено предупреждение kernel-doc в драйвере SCM.
    • Обновления дерева устройств для Arm64
      • Добавлены tsens и термальные зоны для IPQ5332 и IPQ5424. Для IPQ6018 добавлены частоты CPU 1.2ГГц и 1.5ГГц. Для IPQ5424 добавлены MMC, светодиоды и кнопки, а для IPQ9574 – контроллер тактирования NSS и поддержка SPI NAND.
      • Описание SMEM для IPQ6018 перенесено непосредственно в узел reserved-memory.
      • QCS6490
        • Rb3Gen2: Добавлены каналы АЦП для термопрофилирования, включен Bluetooth, активирован GPIO ориентации USB Type-C, описана мезонинная плата vision.
          Плата IDP получила необходимый список защищенных тактовых сигналов.
      • SC7280 – Описана подсистема камеры в SC7280, UFS переведен на использование точек эксплуатации.
      • Для MSM8916, MSM8919, MSM8939 и устройств на этих платформах очищено состояние pinctrl UART.
      • MSM8953 – Добавлен дополнительный UART и межсоединения.
      • SA8775P – Добавлены узлы CTCU и ETR, добавлены прерывания троттлинга CPUfreq.
      • Samsung Galaxy S9 SM-G9600 получил описание MAX77705 (зарядка, датчик топлива, тактильная отдача, светодиоды) и PMIC для дисплея и сенсорного экрана, что позволило включить сенсорный экран. Узел LPG/PWM добавлен к PM8937; Xiaomi Redmi 5A получил управление подсветкой дисплея.
      • QCS615 – Получено определение command DB.
      • QCS8300 – Добавлено описание дополнительных экземпляров QUP, CPUfreq, SMMU для PCIe и контроллера SPMI.
      • SAR2130P – Добавлены узлы устройства PCIe EP.
      • SDM630 – Добавлены отсутствующие сбросы для SDCC. Включен модем Fairphone FP3, определены firmware-path для ADSP и WCNSS.
      • SDM845 – На RB3/DragonBoard845c и QRB5165 RB5 включен сенсорный DSP; конфигурация CMA для мезонинной платы vision на обеих платах очищена. Xiaomi Pocophone F1 получил поддержку сенсорного экрана.
      • SM7325 – Nothing Phone (1): описаны EEPROM дисплея, GPU и камеры.
      • SM8450 – Описан контроллер конечной точки PCIe.
      • SM8550 – Описаны таблицы OPP для PCIe и QUP.
      • SM8750
        • Добавлена статистика сна RPMh.
        • Скорректированы состояния простоя кластеров; введены аудио и вычислительный DSP, а также блоки шифрования и генератора случайных чисел.
        • Добавлена и включена поддержка модема на устройствах MTP и QRD.
      • SM8650 – Добавлено масштабирование OSM L3, различные таблицы OPP и отсутствующие определения межсоединений. Термальные точки срабатывания для ядер CPU и GPU повышены с учетом аппаратного троттлинга.
      • SM8650 – Переведен на разделы прерываний для каждого CPU для корректного описания прерываний PMU. Добавлены отсутствующие экземпляры Coresight ETE.
      • SC8280XP – Введены оверлеи для устройств, работающих под Linux на уровне EL2. Добавлено несколько дополнительных экземпляров temp-alarm для PMIC.
      • X Elite
        • Поддержка масштабирования частоты CPU
        • Введены охлаждение GPU и сторожевой таймер
        • Dell XPS13 получил поддержку дисплея через USB Type-C, QCP – последовательность включения WiFi/BT, несколько устройств поддерживают HBR3.
        • Включена поддержка RTC; регуляторы, питающие ресурсы, требующие постоянной работы, помечены соответствующим образом на ряде плат.
        • Lenovo ThinkPad T14s получил поддержку модема SDX62 и аудиогарнитуры.
        • ASUS Vivobook S 15 получил поддержку Bluetooth.
        • Модель Microsoft Surface Laptop 7 получила поддержку DP через USB Type-C.
        • HP Omnibook X 14 получил поддержку аудио.
        • Для devkit описаны контроллер USB-мультипорта и два порта USB Type-A.
      • Поддержка промышленной мезонинной платы QCS6490 RB3gen2
      • Описаны и включены контроллеры и PHY PCIe для IPQ5018, IPQ5332 и IPQ5424. На IPQ9474 добавлен отсутствующий диапазон регистров MHI. Блок TCSR описан и используется для включения флагов режима загрузки на IPQ5018.
      • MS8998 – Видеокодек Venus включен на ноутбуке Lenovo Miix 630.
      • Движок шифрования включен на QCM2290 и QCS615. Bluetooth включен на плате RB1 на базе QCM2210.
      • Устройство Fairphone FP5 получило поддержку DisplayPort audio, сенсорного экрана и дисплея через USB Type-C.
      • SAR2130P – Добавлены узлы дисплея.
      • Snapdragon 8cx Gen3 – Представлен сенсорный удаленный процессор (SLPI); включен на Lenovo Thinkpad X13s и CRD.
      • SDM845 – Samsung Galaxy S9 получил поддержку графики, модема и базовую поддержку звука.
      • SDX75 – Добавлена поддержка QPIC BAM и NAND; включена на плате IDP.
      • Добавлен LLCC для SM8750. SM8550 получил поддержку видеодекодера Iris.
      • Добавлены отсутствующие свойства для BAM шифрования на ряде плат, устраняющие давнюю ошибку в журнале ядра при загрузке.
      • Идентификаторы тактовых сигналов DSI phy переведены на идентификаторы из заголовочного файла PHY; размер области VBIF исправлен на большом количестве плат.
      • Добавлено несколько особенностей (quirks) DWC3 для множества плат.
      • Внесены различные исправления в Devicetree, в основном выявленные при проверке связывания.
    • Обновления дерева устройств для Arm32
      • Введена поддержка LG Nexus 4 на базе AP8064. MSM8226 расширен модемными функциями; представлен LTE-совместимый вариант MSM8926; включена поддержка модема на Samsung Galaxy Tab 4.
      • Определены тактовые сигналы и домены питания для простого кадрового буфера Motorola Moto G, позволяющие загрузку без параметров clk_ignore_unused и pd_ignore_unused.
      • На MSM8960 введены SDCC BAM и термальный датчик (tsens).
    • Обновления конфигурации ядра (defconfig) для ARM64 в Linux 6.16 – Включение драйверов глобального контроллера тактирования и TLMM pinctrl для IPQ5424 для обеспечения загрузки.
    • Новые устройства
      • Ноутбук HP EliteBook Ultra G1q (Snapdragon X Elite)
      • Смартфон Xiaomi Redmi Note 8 (Snapdragon X Plus)
  • MediaTek
    • I2C — добавлен драйвер для MediaTek Dimensity 1200 (MT6893)
    • WiFi — MediaTek (mt76)
      • Улучшения для WiFi-7
      • Реализована поддержка MT7990
    • Обновления драйверов для Linux 6.16
      • Рефакторинг драйвера MediaTek DVFSRC с унификацией данных платформы об ограничениях пропускной способности
      • Добавлена поддержка аппаратного обеспечения DVFSRC в SoC MediaTek Dimensity 1200 MT6893
    • Обновления DTS для ARM64
      • MT6359 PMIC — переименован узел RTC PMIC для устранения предупреждения dtbs_check
        MT7988(A)

        • Добавлена поддержка контроллеров SPI в SoC и BPI-R4
        • Также добавлена поддержка XSPHY, USB и PCIe2
        • Добавлены карты вентиляторов и охлаждения для устройства BPI-R4
      • MT8365 — добавлена поддержка сенсорного экрана в MT8365 Genio EVK
      • MT8188 — устранены предупреждения dtbs_check для узлов MDP3
      • MT8390 (Genio) — отменено добавление имени прошивки SCP
    • Конфигурация Arm64 defconfig
      • PHY для PCIe, HDMI, DSI и DisplayPort на всех платах
      • Контроллер DMA UART MediaTek, также для всех плат
      • Драйвер MDP3 для MT8186/88/95 (Chromebook и варианты Genio)
      • Вспомогательный АЦП для PMIC MT6357/58/59, используемых в Genio EVK и Chromebook на базе проектов с SoC MT8183/86/88/92/95
      • Пассивный мультиплексор альтернативных режимов USB Type-C iTE IT5205, присутствующий в Chromebook и Genio EVK с MT8188/95
      • Контроллер питания Type-C Richtek RT1715, присутствующий на всех платах Genio
      • Контроллер дисплея DSI Himax HX8279 и панель KD070FHFID015, используемые в различных ревизиях плат Genio Evaluation Kit.
    • Новое устройство — добавлен вариант машины BananaPi R4 2G5
  • Другие новые аппаратные платформы Arm и SoC
    • NXP
      • i.MX94 SoC Cortex-A55/M33/M7 для промышленных и автомобильных приложений Edge AI
      • 10 плат NXP i.MX8/i.MX9, преимущественно для встраиваемых/промышленных применений
    • Renesas – RZ/V2N (R9A09G056)
    • Texas Instruments – 12 плат на основе чипов серии TI K3, большинство от Toradex
    • WonderMedia – Добавлена поддержка WM8950 , незначительной вариации чипа WM8850; примечание: компания была поглощена VIA в 2016 году, и чипы, вероятно, сняты с производства.
    • 9x 32-битных устройств, каждое на основе отдельного семейства SoC
  • Изменения, специфичные для Raspberry Pi
    • Дерево устройств
      • Документирование и добавление поддержки Raspberry Pi 2 второй ревизии
      • Добавляет и активирует узлы дерева устройств корневого комплекса PCIe, присутствующие на Raspberry Pi 5
      • Обновляет имена узлов кэша L2 BCM2712 для использования более соответствующего наименования
    • drm/v3d: Использование регистров V3D_SMS для включения/отключения питания и сброса на V3D 7.x – Исправляет проблемы со сбросом GPU на Raspberry Pi 5 (BCM2712).
    • Pi Camera V2 на i.MX 8M Plus – Несколько обновлений платы imx8mp-tqma8mpql-mba8mp-ras314 для поддержки Raspberry Pi Camera V2 и LVDS через оверлей дерева устройств

Журнал изменений RISC-V в Linux 6.16

Поддержка RISC-V в Linux развивается дальше со следующими изменениями:

  • Поддержка расширения FWFT SBI (часть SBI 3.0 и зависимость для многих новых расширений SBI и ISA)
  • Поддержка getrandom() в VDSO
  • Поддержка mseal
  • Оптимизированные процедуры для вычислений синдромов raid6 и восстановления
  • kexec_file() поддерживает загрузку ядер в формате Image
  • Улучшения фреймворка модификации инструкций для атомарной замены с правилами корректного поведения систем
  • Поддержка новых расширений ISA: Svinval, Zicbop, Zabha, вендорные расширения SiFive («xsfvqmaccdod», «xsfvqmaccqoq», «xsfvfnrclipxfqf», «xsfvfwmaccqqq»)
  • Различные исправления и оптимизации, включая: обработку невыровненного доступа, преобразование символов perf, загрузку модулей, PUD THPs, улучшенные процедуры uaccess
  • Alibaba T-Head – TH1520
    • Добавлен драйвер контроллера сброса
    • Драйверы тактовых сигналов контроллера VO (Video Output)
  • Microchip – PolarFire – PCI – Исправление свойства когерентности DMA
  • SiFive
    • Кэш – Добавлена поддержка SoC Eswin EIC7700 , требующего нестандартных операций кэширования от драйвера ccache.
    • Добавлен новый ключ hwprobe, RISCV_HWPROBE_KEY_VENDOR_EXT_SIFIVE_0, для запроса поддерживаемых вендорных расширений SiFive на текущей платформе.
  • SOPHGO
    • SoC
      • Добавлена поддержка устройства syscon SG2044 TOP. Устройство SG2044 TOP обеспечивает функцию тактовых сигналов PLL в своей области.
      • Добавлена поддержка RTC для SoC серии CV1800. Устройство называется RTC, но содержит управляющие регистры других блоков (модуль Power-on-Reset (PoR), IP DW8051 (ядро MCU) и сопутствующую SRAM), поэтому отнесено к подсистеме SoC.
    • Драйвер тактовых сигналов
      • Замена совместимости для SoC Sophgo CV1800 серии
      • Добавлена поддержка тактовых сигналов для Sophgo SG2044
    • Дерево устройств
      • Добавлена поддержка Pinctrl & SPI для SoC SG2042 и рефакторинг dts cv18xx для упрощения будущей поддержки ядра ARM (SG200X содержит ядра RISC-V и ARM64).
      • Начальная поддержка Sophgo SG2044 и платы SRD3-10 (пока только UART)
  • SpacemIT – K1
    • Добавлен драйвер тактовых сигналов
    • Исправление для pinctrl/uart
    • Добавлен драйвер GPIO, включена индикация активности LED
  • StarFive – Добавлен узел EEPROM в дерево устройств. Платы StarFive VisionFive2 и аналогичные на JH7110 содержат EEPROM, совместимый с Atmel 24c04.

Архитектура MIPS

Сводка обновлений MIPS состоит всего из трех строк:

  • Добавлена поддержка платформы EcoNet
  • Добавлена поддержка параллельной инициализации CPU на EyeQ
  •  Прочие исправления и оптимизации

Полный список из журнала:

  • MIPS: loongson2ef: lemote-2f: добавление отсутствующих прототипов функций
  • MIPS: loongson2ef: cs5536: добавление отсутствующих прототипов функций
  • MIPS: SMP: Перемещение точки синхронизации AP перед задержкой калибровки
  • mips: econet: Исправление некорректных зависимостей Kconfig
  • MAINTAINERS: Добавление записи для платформы EcoNet.
  • mips: dts: Добавление DTS EcoNet с платами EN751221 и SmartFiber XP8421-B
  • dt-bindings: vendor-prefixes: Добавление SmartFiber
  • mips: Добавление поддержки платформы EcoNet MIPS
  • dt-bindings: mips: Добавление привязки платформы EcoNet
  • MIPS: bcm63xx: nvram: Оптимизация использования crc32_le_combine()
  • mips: dts: pic32: pic32mzda: Переименование узла sdhci в соответствии с общей привязкой mmc-controller
  • MIPS: SMP: Перемещение точки синхронизации AP перед функциями, не поддерживающими параллелизм
  • MIPS: Замена strcpy() на strscpy() в vpe_elfload()
  • MIPS: BCM63XX: Замена strcpy() на strscpy() в board_prom_init()
  • mips: ptrace: Улучшение форматирования и отступов кода
  • MIPS: SMP: Реализация параллельной инициализации CPU для EyeQ
  • mips: Добавление флага -std= из KBUILD_CFLAGS в CFLAGS vdso
  • MIPS: Loongson64: Добавление отсутствующего ‘#interrupt-cells’ для loongson64c_ls7a
  • mips: dts: realtek: Добавление контроллера MDIO
  • MIPS: txx9: gpio: Использование новых callback-функций установки значений

Вся информация об изменениях в архитектурах Arm, RISC-V и MIPS взята из журнала изменений Linux 6.16 , сгенерированного командой git log v6.15..v6.16-rc7 --statс выводом только сообщений коммитов. Kernelnewbies также предоставляет собственный список изменений Linux 6.16.

Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments