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

Linux 6.17 только что выпущен на LKML :

На прошлой неделе не было больших сюрпризов, так что вот он, ядро 6.17 выпущено и готово к использованию.

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

Кроме того, есть обычные мелкие исправления драйверов (как обычно, преобладают GPU и сетевые, но «преобладание» все равно довольно скромное), некоторые незначительные случайные обновления других драйверов, некоторый шум в файловых системах, а также ядро и mm.

И некоторые обновления самопроверок.

Очевидно, это означает, что окно слияния для 6.18 откроется завтра, и уже есть четыре дюжины ожидающих запросов на включение. Спасибо проактивным людям – вы знаете, кто вы. Но до открытия окна слияния еще есть время для окончательной проверки новейшего выпуска.

Спасибо,
Линус

Выпущенный два месяца назад, Linux 6.16 добавил поддержку оффлоада USB-аудио для экономии энергии на встроенных устройствах, реализовал начальную поддержку Intel Trusted Domain Extensions (TDX), принес нуль-копирование отправки TCP-полезных нагрузок из памяти DMABUF, полезное для копирования данных напрямую из GPU/NPU в сетевое устройство, различные улучшения производительности Intel CPU и многое другое. Теперь давайте проверим некоторые заметные изменения в Linux 6.17, прежде чем углубляться в подробности об архитектурах Arm, RISC-V и MIPS.

Linux 6.17 changelog

Заметные изменения в Linux 6.17

Вот некоторые основные моменты выпуска Linux 6.17:

  • Специальная поддержка одноядерных процессоров была удалена, и Linux 6.17 и выше будут поставляться с поддержкой SMP, даже на одноядерных машинах.
  • Управление векторами атак реализация была объединена для архитектуры x86; это дает лучший контроль над тем, какие меры защиты от аппаратных уязвимостей должны быть включены в ядре. Обратитесь к документации для получения дополнительной информации.
  • Новый модуль ядра DAMON_STAT обеспечивает упрощенный мониторинг активности управления памятью в системе; см. журнал изменений и документацию для подробностей.

Журнал изменений Arm в Linux 6.17

  • Системы Arm теперь могут использовать расширение буфера записи ветвлений Arm v9.2 branch record buffer extension в подсистеме perf events.
  • Динамическое исправление теперь поддерживается на 64-битных системах Arm.
  • Allwinner
    • Управление питанием – Добавлена поддержка контроллера питания PCK600 для Allwinner A523
    • Драйвер тактирования
      • Добавлен отсутствующий сброс PPU0 для Allwinner A523 (как привязка DT, так и драйвер). Изменение привязки разделено с деревом soc.
      • Исправлена ширина поля мультиплексора тактовых сигналов DE для Allwinner V3s
      • Прекращена передача запросов изменения частоты родителю для тактового сигнала DE Allwinner V3s
      • Принудительно установлены и заблокированы тактовые сигналы DE и TCON Allwinner V3s на один и тот же источник, видео PLL
    • Дисплей – Добавлена поддержка Display Engine 3.3 (DE33). DE33 – это более новая версия IP-блока Display Engine от Allwinner, встречающаяся в SoCs H616, H618, H700 и T507.
    • Изменения в дереве устройств для Linux 6.17
      • Определения выводов RGB666 LCD для выводов PE V3s и выводов PD V3
      • Очистка привязок DT плат Allwinner
      • Поддержка EMAC на A100/A133
      • Включено на плате Liontron H-A133L
      • Allwinner A523
        • Определения выводов UART1
        • Добавлены SID efuse, контроллеры питания и GPU
        •   Графический процессор Mali-G57 MC1 включен на всех существующих платах
        • Исправления порядка узлов
    • Новое устройство – Orange Pi 4A с SoC Allwinner T527
  • Rockchip
    • Драйвер контроллера PCIe Rockchip
      • Удалены неиспользуемые маршрутизация и определения кодов сообщений PCIe
      • Удалены несколько неиспользуемых включений заголовков
      • Использованы стандартные определения регистров конфигурации PCIe вместо специфичных для Rockchip переопределений
      • Установлена целевая скорость соединения на 5.0 GT/s перед повторным обучением, чтобы была возможность обучиться на более высокой скорости
    • Драйвер контроллера PCIe Rockchip DesignWare
      • Предотвращена гонка между обучением соединения и обновлением регистров через DBI путем запрета обучения соединения после горячего сброса и потери соединения
      • Добавлена необходимая задержка PCIE_RESET_CONFIG_WAIT_MS после прерывания Link up IRQ
    • Медиа – Драйвер декодера видео Rockchip переведен из стадии staging
    • DRM – Поддержка GPU Rockchip RK3528 (Lima, Mali-450 MP2)
    • Термальное – Реализована и документирована поддержка однократно программируемых предохранителей для драйвера Rockchip с целью повышения точности измерений
    • Обновления дерева устройств для Linux 6.17:
      • Поддержка камеры для PinePhone Pro.
      • Несколько очисток для улучшения работы DTC, исправление порядка каналов DMA UART на rk3528, а также включение некоторого видеовыхода и определений кнопок.
      • Интересная деталь – добавление поведения сброса, поскольку некоторые платы имеют специфические требования к тому, как PMIC должен выполнять перезапуск. DT-поддерживающие не считали заголовок с вспомогательными константами частью привязки, поэтому этот заголовок оказался в каталоге Rockchip
    • Defconfig – Включены модули Rockchip DFI + PM_DEVFREQ_EVENT и RGA.
    • Новые устройства
  • Amlogic
    • Pinctrl – добавление поддержки управления выводами для Amlogic S7, S7D и S6
    • SPI – добавлена поддержка контроллера Amlogic SPISG
    • Драйвер тактирования
      • Использование реализации вспомогательного контроллера сброса в Amlogic axg-audio вместо реализации контроллера сброса в drivers/clk
      • Удаление ненужных заголовочных файлов контроллера тактирования для драйверов Amlogic
      • Удаление больших таблиц regmap контроллера тактирования в драйверах Amlogic
    • Дерево устройств для Linux 6.17:
      • Приведение имени узла wifi в соответствие с привязками
      • Включение узлов NPU на Alta и VIM3
    • Новое устройство – ТВ-приставка Ugoos AM3 на базе Amlogic meson-gxm (S912)
  • Samsung
    • Добавление поддержки чипа Exynos 2200 для флагманских телефонов, используемого в Galaxy S22 и других телефонах Samsung; базовые узлы, контроллеры выводов, контроллеры тактирования и начальная поддержка USB
    • Ввод – драйвер клавиатуры Samsung получил обновление
    • PHY – поддержка Samsung Exynos990 usbdrd phy, Exynos7870 MIPI phy
    • IOMMU – добавление поддержки зарезервированных областей памяти, указанных загрузчиком (Exynos)
    • Pinctrl – добавление поддержки программирования пробуждения для контроллеров выводов Google GS101 SoC, чтобы SoC мог корректно пробуждаться из состояний низкого энергопотребления.
    • Драйверы SoC
      • Google GS101: небольшое улучшение привязки PMU.
      • ExynosAutov920: добавление привязки системных регистров HSI2.
    • DTS ARM изменения – несколько улучшений на основе dtbs_check.
    • Изменения Samsung DTS ARM64 для Linux 6.17
      • ExynosAutov920: добавление контроллера тактирования CMU_HSI2, оставшихся узлов SPI
      • Google GS101:
        • Подготовка к переходу на архитектурный таймер вместо Exynos MCT в качестве основного.
        • Добавление вторичного PMIC Maxim MAX77759 на платы Pixel для управления USB Type-C и зарядкой.
        • Добавление неполного описания основного PMIC Samsung S2MPG10. Несколько компонентов, такие как регуляторы, все еще отсутствуют.
        • Добавление вторичного режима перезагрузки через NVMEM MAX77759.
        • Переключение основного обработчика перезагрузки (SoC) на специфичный для Google google,gs101-reboot, который предоставляет дополнительные функции GS101 (холодная и теплая перезагрузка). Это изменение затронет других пользователей этого DTS, но насколько известно, используется только Android, откуда это изменение и происходит.
      • Exynos7870
        • Исправление проблем со скоростью в режиме USB gadget.
        • Корректировка карты памяти для избежания сбоев из-за защищенного мира.
      • Tesla FSD и Google GS101 DTS обрабатываются через дерево Samsung SoC, поэтому правило clean dtbs_check применяется и там – упомянуть это в записях сопровождающих.
      • Включение шаблонов Tesla FSD DTS в дерево Samsung SoC для документирования фактического пути патчей.
    • Изменения Defconfig
      • Несколько SoC (включая Samsung, Apple): переключение звука на модуль вместо встроенного, поскольку он не необходим для загрузки. Также удалены избыточные опции звукового кодека.
      • Включение драйверов PMIC для телефонов Google GS101 Pixel 6: MAX77759 и Samsung PMIC по протоколу ACPM.
    • Новое устройство – Samsung Galaxy S22+ (SM-S906B), называемое G0S.
  • Qualcomm
    • PHY
      • Добавлен Qualcomm Milos Synopsys eUSB2 PHY, SM8750 QMP phy, драйвер M31 eUSB2 PHY
      • Рефакторинг сброса UFS PHY в Qualcomm и поддержка драйвером UFS API калибровки phy
      • Свойства переопределения повторителя Qualcomm, исправление привязок qmp pcie для тактовых сигналов и последовательности инициализации для случая отключения питания прошивкой
    • Pinctrl
      • Добавлена поддержка управления выводами Qualcomm PMIV0104, PM7550 и Milos; из-за непрактичных схем нумерации драйверу Qualcomm теперь необходимо начать полагаться на кодовые имена SoC
      • Обработка нескольких регионов TLMM в драйвере Qualcomm
    • DMA контроллер – Добавлена поддержка Qualcomm Milos GPI, sc8280xp GPI
    • Драйвер контроллера PCIe
      • Добавлены привязки DT и поддержка драйвера для SA8255p, который поддерживает ECAM для доступа к пространству конфигурации
      • Обновлены привязки DT и драйвер для описания PHY и сбросов на корневой порт в stanza корневого порта и устарело описание их в
        хост-бридже; это позволяет поддерживать несколько корневых портов в будущем
      • Добавлен Qualcomm QCS615 в привязки DT SM8150
      • Добавлен Qualcomm QCS8300 в привязки DT SA8775p
      • Удалены TBU и опорные тактовые сигналы из привязок DT Qualcomm SM8150 и SC8180x
      • Документирован сброс ‘link_down’ в привязках DT Qualcomm SA8775P
      • Добавлена обязательная задержка PCIE_RESET_CONFIG_WAIT_MS после IRQ установления связи
    • Soundwire – Обновление отладочного вывода драйвера Qualcomm
    • Драйвер тактирования
      • Глобальный, дисплейный, GPU, видео, камеры, tcsr и rpmh контроллер тактирования для Qualcomm Milos SoC
      • Контроллеры тактирования камеры, дисплея, GPU и видео для Qualcomm QCS615
      • Драйвер контроллера тактирования видео для Qualcomm SM6350
      • Драйвер контроллера тактирования камеры для Qualcomm SC8180X
      • Перемещение конфигурации Qualcomm PLL в реальный probe на множестве платформ для обработки контроллеров тактирования, питаемых несколькими доменами питания.
      • Замена round_rate() на determine_rate() во всех реализациях тактирования Qualcomm
      • Включение аппаратного управления GDSC для GDSC контроллеров тактирования видео на нескольких платформах.
      • Исправлен сброс GE PHY на Qualcomm IPQ5018, исправлена некорректная таблица частот порта6 NSS на Qualcomm IPQ8074, добавлены отсутствующие сбросы видео на Qualcomm X1E80100 и поддержание тактового сигнала XO всегда включенным на Qualcomm IPQ5018.
    • IOMMU – Arm SMMU:
      • Обновление привязок Devicetree для Qualcomm SMMU в SoC «Milos»
      • Поддержка частей Qualcomm SM6115 MDSS
      • Отключение PRR на Qualcomm SM8250, поскольку использование этих бит вызывает сбой гипервизора
    • WiFi – Qualcomm/Atheros (ath12k):
      • Исправление сканирования на многоканальных устройствах
      • Дополнительные функции EHT/Wi-Fi 7
      • Разгрузка инкапсуляции/декапсуляции
    • Bluetooth – Добавлен еще один ID 0x28de:0x1401 для Qualcomm WCN6855 (btusb)
    • Регулятор – Добавлены Qualcomm PM7550 и PMR735B
    • Звук – Поддержка ASoC в Qualcomm QCS8275
    • Обновления драйверов
      • Выполнение проверки входных данных в загрузчике MDT, так как это не было должным образом выполнено в случаях без remoteproc.
      • Исправление проблем с порядком байт в кодировщике/декодере QMI.
      • Поддержка чтения статистики DDR с помощью драйвера статистики Qualcomm.
      • Добавлена поддержка чтения деталей прошивки TME в драйвер socinfo.
      • Документирован процессор Kryo 470 и добавлен SM7150 в DCC для привязок DeviceTree.
      • Обеспечение поддержки драйвером rpmh RSC версии 4 IP-блока.
      • Добавлено семейство SM7635 и связанные PMIC в драйвер socinfo. Также добавлена поддержка получения деталей сборки загрузчика.
    • Обновления дерева устройств Arm64
      • DB410c – Мезонин камеры D3 преобразован в оверлей.
      • MSM8976 – Введены определения pinctrl SDC2 и контроллер DMA BLSP помечен как управляемый другим объектом.
      • QCM2290 – Добавлена подсистема камеры
      • QCS615 – Добавлены и включены remoteproc и связанные устройства.
      • Добавлены и включены кодировщик/декодировщик видео на QCS8300 и SA8775P.
      • SA8775P – Добавлены таблицы OPP процессора для масштабирования пропускной способности DDR/L3 в зависимости от частоты процессора, добавлены определения межсоединения L3, поддержка DSI и
        кодировщика/декодировщика видео.
      • SDM850 – Включен remoteproc SLPI на Lenovo Yoga C630 .
      • SM6350 – Добавлен контроллер тактирования видео, APR и некоторые аудиосервисы.
      • Описана подсистема камеры на SM8550 и добавлен узел кодировщика/декодировщика видео Iris для SM8650.
      • SM8750 – Введена поддержка UFS и Soundwire, включены они и описано звуковое оборудование на MTP и QRD.
      • SC8180X – Добавлен контроллер тактирования камеры.
      • X Elite
        • Dell XPS13 – Добавлены pwrseq WiFi и Bluetooth и включен датчик отпечатков пальцев.
        • HP Omnibook X14 – Добавлен мультиплексор USB1 SS1 SBU и выполнена некоторая разная очистка.
        • Замена унаследованных от X Elite термозон на специфичные для X Plus.
      • Добавление отсутствующих прерываний и очистка несвязанных тактовых сигналов для контроллеров PCIe на множестве платформ.
    • Обновления дерева устройств Arm32
      • Добавлены псевдонимы для контроллеров MMC на MSM8974, включена зарядка USB на платформе Sony Xperia Rhine и добавлено новое DeviceTree для устройства Sony Xperia Z Ultra.
      • Упорядочивание спецификаторов прерываний на MSM8960 с использованием макроконстант.
    • Обновления defconfig Arm64 для Linux 6.17 – Включение контроллеров тактирования камеры и видео для платформ SM8450, SM8550 и SM8650.
    • Новое устройство – Ноутбук Asus Zenbook A14 Qualcomm Snapdragon X1
  • MediaTek
    • Добавлена поддержка MT6572, более старого чипа для мобильных телефонов, который был чрезвычайно популярен десять лет назад, но до сих пор не был включен в основную ветку
    • Watchdog – Корректировка времени поддержания активности для избежания состояния гонки MediaTek WS0
    • WiFi – mt76
      • Улучшения восстановления прошивки
      • Дополнительная работа над MLO
    • Bluetooth – Добавлены новые VID/PID 0489/e14e + 2c7c/7009 для MT7925 (btusb)
    • Pinctrl – Добавлен драйвер управления выводами для MT8189
    • Обновления драйверов для Linux 6.17 – коммит очистки для драйвера mtk-mutex, разъясняющий использование регистров MUTEX_MOD1, MUTEX_MOD2
      для применения настроек заглушки подкомпонентов контроллера дисплея на всех SoC MediaTek.
    • Обновления DTS ARM64
      • Добавлена зарезервированная память для AFE DMA для MT8173/83/86/92, выравнивание распределения памяти, связанной с аудио, между всеми SoC для Chromebook
      • Добавлены компоненты второго источника для Steelix и отмечены несколько тачпадов для Asurada как таковые
      • MediaTek Genio 1200: Включена поддержка Audio DSP и звука
      • MediaTek Genio 510/700/1200: Добавлена поддержка PMIC Keys
      • MediaTek MT7988: Добавлен когерентный интерконнект кэша для CPU DVFS
      • MT7988A-BananaPi-R4: Включен CCI, добавлены светодиоды GPIO
      • Airoha EN7581: Добавлены узлы Ethernet на оценочную плату
    • Arm64 defconfig – Н/Д
    • Новое устройство – Chromebook Steelix Squirtle (Mediatek MT8186)
  • Другие новые аппаратные платформы Arm и SoC
    • ASPEED – Две новые материнские платы на основе ASPEED BMC
    • Axiado – Встраиваемый чип Axiado AX3000 с ядрами CPU Cortex-A53, описанный как «Trusted Control/Compute Unit», который может быть
      использован в качестве BMC в серверах. Он поддерживает Ethernet 10Gbps и поставляется с NPU 4TOPS.
    • CIX  – Добавлен процессор P1 с 12 ядрами Cortex-A720/A520. Один из первых, использующих инструкции ARMv9.2.
    • Marvell – Чип Marvell PXA1908 для мобильных телефонов с 64-битной архитектурой (довольно старый чип)
    • NVIDIA – Добавлена поддержка Tegra264. Это новый чип Thor, используемый в модуле Jetson T5000 . Пока минимальная поддержка.
      на данный момент, и не так много информации о нем доступно публично
    • NXP – Промышленные платы на основе SoC i.MX6, i.MX 8 и i.MX 95
    • Renesas – Renesas R-Car V4M-7 (R8A779H2) является обновленной версией R-Car V4M (R8A779H0), используемой в автомобильных приложениях
    • Sophgo – SG2000 – это SoC с двойной архитектурой (ARM + RISC-V). RISC-V уже поддерживался, но Linux 6.17 добавляет поддержку Arm.
    • STMicro – Промышленная плата на основе STM32
    • Texas Instruments – Поддержка AM62D2; промышленные платы на основе AM33 и AM62D2
  • Специфичные изменения для Raspberry Pi
    • DRM – Поддержка дисплея Raspberry Pi 7″ 720×1280 (ilitek-ili9881c)
    • Драйвер для многофункционального I/O чипа Raspberry Pi RP1 , используемого в Raspberry Pi 5, вместе с подключением к фреймворкам pinctrl и clk.
    • DRM/FourCC – Добавлены форматы RGB161616 и BGR161616 – Не только для Pi, но будет использоваться Raspberry Pi PiSP Back End, поддерживаемый драйвером V4L2 в пространстве ядра и libcamera в пользовательском пространстве, который использует идентификаторы DRM FourCC

Обновления RISC-V в Linux 6.17

  • KVM
    • Включено кольцевое отслеживание грязной памяти
    • Улучшен perf kvm stat для отчетов о событиях прерываний
    • Делегирование ловушки недопустимой инструкции в VS-режим
    • Улучшения, связанные с MMU, для KVM RISC-V для предстоящей вложенной виртуализации
  • Defconfig
    • Spacemit – Включение драйверов sdhci и pwm для soc k1 в defconfig, первый в качестве встроенного, последний в качестве модуля.
    • Starfive – Удалена более не требуемая конфигурация для звукового драйвера Starfive.
  • AMD – Добавлена совместимость с 64-битным Microblaze V CPU.
  • Andes Technologies – QiLai четырехъядерный AX45MP SoC, используемый в плате Voyager Micro-ATX.
  • Sophgo
    • CV18xx
      • Добавлен узел RTCSYS MFD, который предоставляет богатые регистры управления для управления питанием soc и другими функциями управления;
      • Добавлен узел контроллера сброса и добавлены связанные свойства сброса для других периферийных устройств
      • Добавлены узлы, связанные с контроллером Ethernet, в soc и включено управление Ethernet устройством для HuashanPi.
    • SG2042
      • Добавлены ISA расширения, такие как xtheadvector/ziccrse/zfh для ядер cpu
      • Добавлена поддержка контроллера Ethernet
      • Добавлены платы EVB_V1 & EVB_V2
    • SG2044
      • Добавлена конфигурация PMU
      • Добавлены ISA расширения ziccrse и добавлено отсутствующее свойство riscv,cbop-block-size для ядер cpu
      • Добавлено больше периферийных узлов для SoC после готовности контроллера тактовых частот, таких как MSI/PCIe/pwm/SPI-NOR и т.д. Этот PR также добавляет HWMON MCU устройство для платы sophgo-srd3-10 и резервирует узел uart0 для платы sophgo-srd3-10, поскольку uart0 уже занят прошивкой.
    • Перемещение sophgo.yaml из директории riscv в soc/sophgo для совместного использования между riscv и arm. SoC CV18xx содержит большое ядро RISC-V и большое ядро ARM64. Перемещение sophgo.yaml в общее местоположение поможет добавить поддержку ядер ARM для чипа CV18xx в будущем.
  • SpacemiT
    • Изменения дерева устройств
      • Добавлены шины трансляции DMA
      • Добавлена поддержка PWM
      • Добавлена поддержка Reset
      • Добавлен узел eMMC
  • StarFive – Сортировка свойств на MilkV Mars и добавление светодиода статуса питания на все платы JH7110.

Отметим, что в этом цикле была некоторая драма с RISC-V Linux, и некоторые изменения не вошли из-за « мусорных pull requests ». Это будет в Linux 6.18.

Список изменений MIPS

Как обычно, MIPS добавляет только минимальные изменения:

  • Обновления DT для ralink, mobileye и atheros/qualcomm
  • Очистка использования mc146818
  • Ускорение калибровки задержки для CPS
  • Другие исправления и очистки

Для еще более подробной информации можно проверить    список изменений Linux 6.17     (только сообщения коммитов), сгенерированный командой git log v6.16..v6.17-rc7 --statперечисляющий только сообщения коммитов. Kernelnewbies также имеет свой собственный список изменений Linux 6.17.

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

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

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

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

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