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

Линус Торвальдс объявил о выпуске Linux 6.3 в списке рассылки Linux Kernel Mailing List (LKML):

Этот релиз прошел спокойно, и последняя неделя не стала исключением. Итак, мы выпускаем версию 6.3 точно по графику, готовая к использованию.

Конечно, это не означает, что за эти недели не могло скрываться что-то неприятное, но будем надеяться, что все прошло гладко, и цикл разработки действительно был контролируемым. Такое случается.

Это также означает, что окно слияния для версии 6.4 откроется завтра. Уже есть два десятка запросов на включение, ожидающих обработки, что очень удобно. Ожидается, что к завтрашнему утру их станет еще больше.

А пока давайте насладимся (и протестируем) релизом 6.3. Как всегда, краткий список изменений ниже включает только исправления за последнюю неделю, представляя собой довольно случайную подборку. Выделяются некоторые исправления в подсистеме VM, но это звучит страшнее, чем есть на самом деле – они просто выделяются на фоне остальных мелких правок, и редко можно увидеть каталог mm/ в статистике изменений. Впрочем, все они довольно малы, и значительная часть касается таких вещей, как kmsan, а не «обычного» кода VM. Хотя есть и последствия перехода на maple tree и итератор vma. Будем надеяться, что эти сложности позади.

В любом случае – все выглядит хорошо, но лучше проверить на практике: реальное тестирование – вот что действительно важно.

Линус

Linux 6.2 был выпущен около двух месяцев назад с ускоренным устранением уязвимости Retbleed, связанной со спекулятивным выполнением команд на процессорах x86-64 и ARM, инструментом Runtime Verification (RV), опциональной энергосберегающей оптимизацией с улучшенной блокировкой RCU (в основном для Android и Chrome OS), ускоренным созданием файлов и каталогов в exFAT и множеством других изменений.

Linux 6.3 release

Основные изменения в Linux 6.3

Среди наиболее значимых изменений в Linux 6.3:

  • Реализация механизма защиты от Spectre от AMD под названием automatic IBRS , который ограничивает спекулятивное выполнение косвенных ветвлений с меньшими затратами производительности по сравнению с retpoline.
  • Дополнительный прогресс в поддержке Rust, включая работу в пользовательском режиме (только для систем x86-64).
  • Файловая система NFS (как клиентская, так и серверная части) получила поддержку шифрования на основе AES-SHA2.
  • Ядро теперь может включать встроенный бенчмарк Dhrystone для тестирования производительности на этапе запуска SoC.
  • Добавлена поддержка новых Wi-Fi устройств, включая RealTek RTL8188EU (rtl8xxxu) и Qualcomm Wi-Fi 7 (ath12k).

Изменения для архитектуры Arm в Linux 6.3

Как обычно, в архитектуру Arm внесено множество изменений:

  • Добавлена поддержка инструкций Scalable Matrix Extension 2 (SME2) для Arm (Aarch64). Подробности можно найти в документации .
  • Дальнейшая очистка устаревших файлов плат (эпоха до device tree) – см. коммит .
  • Allwinner
    • Allwinner H3/H5 – DRAM-часы как фиксированные часы
    • Allwinner R528/T113 – Добавлен драйвер часов (аналогично Allwinner D1 RISC-V CPU)
    • Allwinner A64 и A33 – Добавлено прерывание DPHY
    • Allwinner F1C100s – Поддержка USB PHY
    • Banana Pi M3 – Добавлен регулятор SATA
    • NanoPi Duo2 – Исправление ссылки на регуляторBeelink X2 (H3) – Выравнивание имени узла HDMI CEC
    • Новые платы и устройства – Нет данных
  • Rockchip
    • Добавлена поддержка RV1126 Vision SoC с NPU
    • Добавлена базовая поддержка RK3128 TV box SoC
    • Добавлена поддержка SoC Rockchip RK3588 / RK3588s
    • Новые устройства и платы
      • Плата Edgeble Neural Compute Module 2 (Neu2) на базе RV1126 (и Neu2K на базе RV1126K, промышленной версии процессора с диапазоном температур от -40°C до +85°C)
      • Референсные платформы для RK3588/RK3588S
      • Девять плат разработки или модулей на базе Rockchip RK3588, RK3568, RK3566 и RK3328, включая Radxa Compute Module 3 (CM3) , 96boards-совместимый Edgeble AI Neural Compute Module 6 (Neu6), Orange Pi R1 Plus SBC , EmbedFire LubanCat 2 SBC и другие.
  • Amlogic
    • Ethernet – Мультиплексор MDIO Amlogic gxl
    • Amlogic A311D – Добавление домена питания NNA
    • Изменения в Device Tree для ARM:
      • Выравнивание имен таблиц OPP в соответствии со схемой DT
      • meson8/8b: Добавление дополнительных свойств кеша L2 (PL310)
      • Выравнивание имен узлов LED в соответствии с dtschema
    • Изменения в Device Tree для ARM64 в Linux 6.3:
      • Слияние с веткой неизменяемых привязок, включая привязки Reset и power domain
      • Добавление узла DT для VIPNano-QI на A311D
      • Исправления привязок DT для всех семейств SoC: узлы MAC-адресов, имя узла Ethernet PHY, имена узлов scpi и дочерних узлов, имя узла SD/SDIO и т.д.
      • Удаление OPP для CPU ниже 1 ГГц для плат G12A, как это было сделано для G12B/SM1
      • Исправление определения WiFi/Bt для P212 и Khadas VIM1
      • Добавление аудиоузла для P212
      • Исправление определения триггера вентилятора для Odroid-HC4
      • Исправление определения GPIO для вентилятора
        – Разрешение OTG на USB1 для Radxa Zero
        – Исправление GPIO включения VDDIO_C с использованием флага OPEN DRAIN
    • Новые устройства и платы – ODROID-N2L , Banana Pi M2-Pro , Radxa Zero2 (Amlogic A311D)
  • Samsung
    • SoC Samsung/Tesla FSD – драйвер ASoC (поддержка I2S)
    • Исправление прототипа s3c64xx_set_timer_source().
    • Переработка MIPI и DP PHY как дочерних элементов системного контроллера Exynos PMU. Это лучше отражает иерархию устройств и позволяет устранить предупреждения от dtc W=1 и dtbs_check.
    • Системный контроллер – использование уникальных совместимых идентификаторов для разных контроллеров с разной организацией регистров (Exynos, Tesla FSD). Расширение привязок с добавлением отсутствующих тактовых сигналов.
    • Изменения в DTS для ARM в Linux 6.3:
      • Исправление совместимых идентификаторов для MIPI DSI и PHY в Exynos5420.
      • Исправление совместимых идентификаторов для HDMI PHY в Exynos4210 и Exynos4412.
      • Несколько масштабных исправлений для достижения нулевых предупреждений при проверке dtbs_check и dtc W=1
    • Изменения в DTS для ARM64 в Samsung:
      • Добавление свойств кэша L2 (Exynos, Tesla FSD).
      • Tesla FSD: добавление узлов Bosch MCAN (CAN bus), звуковой карты (аудиокарта с кодеком и контроллерами I2S), системного контроллера.
      • Tesla FSD: исправление свойств подтяжки выводов в соответствии с рекомендациями руководства пользователя.
      • Незначительные исправления: использование уникальных совместимых идентификаторов для sysreg, устранение предупреждений dtbs_check, удаление неподдерживаемых свойств
    • Новое устройство – плата Samsung Galaxy S5 (SM-G900H).
  • Qualcomm
    • Добавлен Qualcomm SM8550 ( Snapdragon 8 Gen 2 ) для мобильных телефонов с поддержкой хранилищ, USB, удаленных процессоров, PCIe, низкоскоростных шин, криптографии и подсистемы дисплея
    • Добавлена платформа Qualcomm QDU1000/QRU1000 для 5G RAN
    • Драйвер для мониторинга состояния батареи и питания в Qualcomm
    • Qualcomm SM8550 – поддержка UFS, PCIe, комбинированного PHY
    • Qualcomm SM6115 / SM4250 – поддержка USB3 PHY
    • Qualcomm SM6350 – поддержка комбинированного PHY
    • Qualcomm SM6125 – поддержка UFS PHY
    • Qualcomm SM8350 & SM8450 – поддержка комбинированного PHY
    • Драйверы повторителя Qualcomm SNPS eUSB2
    • Драйвер контроллера PCIe
      • Добавлена совместимая строка DT для MSM8998
      • Унификация порядка тактовых сигналов для MSM8996 и MSM8998
      • Добавление привязок DT и поддержки драйвера для SM8350
      • Добавление привязок DT Gen3 и поддержки драйвера для IPQ8074
      • Исправление qcom,perst-regs в привязках DT
      • Добавление qcom_pcie_host_deinit() для отключения PHY, регуляторов и тактовых сигналов при ошибках инициализации хоста
    • Драйверы управления выводами
      • Новый поддрайвер для контроллера выводов SoC Qualcomm QDU1000/QRU1000
      • Новые поддрайверы для контроллеров выводов SoC Qualcomm SM8550 и LPASS
      • Новый поддрайвер для контроллера выводов SoC Qualcomm SA8775P
      • Новый поддрайвер для контроллера выводов SoC Qualcomm IPQ5332
      • Новая (простая) поддержка управления выводами PMIC Qualcomm PM8550 и PMR735D
    • Обновления DTS для ARM32:
      • Поддержка Acer Iconia Talk S A1-724
      • Добавление поддержки ADSP и подсветки для Samsung Galaxy Tab 4 10.1.
      • Для Xperia Z2 Tablet включена зарядка и увеличен таймаут запуска сенсорного экрана.
      • Улучшение иерархии тактовых сигналов для APQ8064 и MSM8974. Добавление калибровочных данных для каждого датчика в драйвере термодатчика (tsens) APQ8064.
      • Добавление подсветки, светодиода уведомлений, вибратора, кнопок громкости и датчика Холла для OnePlus One
      • Ряд исправлений валидации Device Tree на различных платформах.
    • Обновления DTS для Arm64 в Linux 6.3
      • IPQ8074 – исправлены регионы регистров PCIe PHY и названия тактовых сигналов PHY, добавлен QFPROM.
      • MSM8916 – добавлена DMA для контроллеров I2C и безусловное включение blsp_dma. Добавлены калибровочные данные для каждого датчика в блоке термодатчика (tsens). Добавлено устройство GPLUS FL8005A с поддержкой сенсорного экрана и светодиодной вспышки. Добавлен вариант Samsung Galaxy J5 и поддержка датчика Холла и MUIC.
      • MS8956 – добавление калибровочной информации для каждого датчика термодатчика
      • MSM8996
        • Добавление GPLL0 в качестве возможного входа для контроллера тактовых сигналов Kryo, добавление области для извлечения метаданных модема из системной памяти. Добавление отсутствующих тактовых сигналов шины для agnoc2.
        • Добавление описания Core Bus Fabric (CBF), а также путей взаимодействия для UFS.
        • Включение SDHCI1 на платформе Sony Xperia Tone и ограничение USB до high-speed для корректной работы USB.
      • MSM8998 – добавление области для метаданных модема, как на других платформах, и улучшение описания иерархии тактовых сигналов.
      • QCS404 – улучшение описания иерархии тактовых сигналов, корректировка узла CDSP PAS в соответствии с привязками и добавление калибровочных данных для каждого датчика термодатчика (tsens).
      • SC7180 – добавление блока Data Capture and Compare и области для метаданных модема для их извлечения из системной памяти. Добавление поддержки сенсорного экрана для Pazquel360. Корректировка времени отключения-включения регулятора для eDP и сенсорного экрана Trogdor. Добавление свойств для линий данных и частот для соединений DisplayPort.
      • SC7280
        • Добавление поддержки Data Capture and Compare и выделенной области для метаданных модема. Добавление поддержки DP audio для Herobrine. Обновление описания IPA для активации только на платах с модемом.
        • Исправления, связанные с энергосистемой herobrine
      • SC8280XP – добавление подсистемы дисплея с поддержкой большинства контроллеров DisplayPort. Добавление GPR, SoundWire и LPASS для поддержки аудио. Добавление отсутствующих контроллеров I2C и SPI. Добавление поддержки EDP для CRD, Lenovo ThinkPad X13s и автомобильной платы SA8295P ADP. Платформа SA8540P Ride включает один контроллер i2c и pcie. Определение области CMA для CRD и X13s для избежания проблем с выделением памяти для поддержки NVMe.
      • Добавление поддержки NFC для Fairphone FP3 и описание simplefb для платформы Sony Xperia Nile.
      • SDM670 – добавление определения QFPROM и провайдеров взаимодействия
      • SDM845
        • Добавление области для метаданных модема и поддержки блока Data Capture and Compare.
        • Выравнивание путей прошивки Lenovo Yoga C630 с другими платформами Qualcomm.
        • Перенос дублированного описания аудиокодека wcd9340 из устройств в общий файл, добавление аудиоустройств для OnePlus 6 и 6T.
      • SM6125
        • Добавление Apss SMMU и определение потоков для контроллеров USB и SDHCI. Добавление описания GPI DMA, а также отсутствующих последовательных движков SPI и I2C.
        • Улучшение определений регуляторов для Sony Xperia 10 IIa, добавление SDHCI2 и включение I2C и связанных блоков GPI DMA.
      • SM6350 – добавление IPA. Добавление масштабирования DDR и L3 на основе CPUfreq.
      • SM7225 – включение IPA и светодиодной вспышки для Fairphone FP4.
      • SM8150 – добавление подсистемы дисплея с контроллером тактовых сигналов, DPU и двумя контроллерами DSI. Добавление блока Data Capture and Compare. Добавление поддержки GPIO-кнопок и NFC для платформы Sony Xperia Kumano
      • SM8350 – добавление PCIe и подсистемы дисплея с контроллером тактовых сигналов дисплея, DPU и двумя контроллерами DSI. Изменение #interconnect-cells на 2 для согласования с другими платформами и поддержки голосований только для активных состояний. Включение дисплея и описание LT9611uxc для платы разработки SM8350 Hardware Development Kit для вывода HDMI.
      • SM8450
        • Представлена подсистема дисплея с DPU и двумя контроллерами DSI.
        • Добавлена поддержка GIC-ITS для PCIe0 и PCIe1.
        • Добавлена поддержка шины SPMI, а также подключение PMIC к различным устройствам.
        • Микросхема LT9611uxc обеспечивает вывод HDMI на аппаратном комплекте разработки SM8450.
        • На платформе Sony Xperia Nagara добавлены GPIO-кнопки и названия GPIO-линий. Также определены PMIC SLG51000 и регуляторы для камеры.
      • Для SM6115 добавлены узлы отладочного UART, SMP2P и watchdog, а платформа переведена на использование #address/size-cells со значением 2, как и большинство других платформ.
      • Для SM6350 добавлен интерфейс управления камерой и контроллеры тактовых сигналов, а интерфейс CCI активирован на Fairphone FP4.
      • Для SM8350 исправлена ссылка на межсоединение контроллера SDHCI, тактовые сигналы DSI1 PHY корректно описаны как источники для контроллера тактовых сигналов дисплея, а DSI1 подключен к контроллеру дисплея. Исправлены пути к прошивкам для платформы Sony Xperia Nagara.
      • Для SM8550 добавлены шина GPR, узлы аудиосервисов и LPASS pinctrl.
      • Добавлены контроллеры DisplayPort и pmic_glink на SC8280XP (8cx Gen3) для дисплеев с USB Type-C на Lenovo ThinkPad X13s и эталонном вычислительном устройстве. pmic_glink также предоставляет информацию о состоянии батареи и питания.
      • Исправлены родительские прерывания для PMIC на SC8280XP, чтобы некорпоративные ОС могли корректно обрабатывать прерывания в различных блоках.
      • Оптимизирован базовый dtsi для SM8350, добавлена поддержка GPU на этой платформе, а также активация для аппаратного комплекта разработки (HDK).
      • Активированы шины I2C на Fairphone FP4.
      • Унифицированы названия узлов glink в соответствии со спецификациями на нескольких платформах, исправлен совместимый идентификатор для блока PON в PMIC pmk8350.
    • Обновления конфигурации Arm defconfig.
    • Обновления конфигурации Arm64 defconfig.
      • Активированы драйверы, необходимые для поддержки внешних дисплеев с USB Type-C на ноутбуках SC8280XP.
      • Активированы несколько основных драйверов для платформы Qualcomm SA8775P.
    • Новые устройства и платы.
      • Эталонные платформы для SM8550 и QDU1000.
      • Шесть планшетов на базе Qualcomm MSM8916 (Snapdragon 410), SM6115 ( Snapdragon 662 ) и SM8250 ( Snapdragon 865 ).
      • Два LTE-модема на базе MSM8916.
      • Семь мобильных телефонов на базе Qualcomm MSM8953 (Snapdragon 610), SDM450 и SDM632.
      • Три Chromebook на базе Qualcomm SC7280 ( Snapdragon 7c ).
  • MediaTek.
    • Добавлен драйвер регулятора MediaTek для обеспечения соответствия напряжения SRAM напряжению GPU.
    • Pinctrl – Новый поддрайвер для контроллера выводов SoC MediaTek MT7981
    • Драйвер контроллера PCIe MediaTek MT7621 – Задержка инициализации порта PHY для повышения надежности загрузки для ZBT WE1326, ZBT WF3526-P и некоторых моделей Netgear
    • Драйвер ASoC – Добавлена поддержка SOF для SoC MediaTek MT8188. MT8188 ADSP интегрирует однопроцессорный DSP Cadence HiFi-5. IPC-взаимодействие между AP и DSP основано на общей DRAM и прерываниях через почтовый ящик.
    • WiFi MediaTek (mt76):
      • Поддержка светодиодов для каждого PHY
      • mt7996: Поддержка EHT ( Wi-Fi 7 )
      • Поддержка сброса Wireless Ethernet Dispatch (WED)
      • Переход на аллокатор page pool
    • Новое устройство – Роутер Banana Pi BPI-R3 на базе MediaTek MT7986A
  • Другие новые аппаратные платформы и SoC на Arm
    • ASpeed – Две BMC-платы на базе AST2600
    • Enclustra – Базовый модуль PE1 FPGA-SoM (Arria10)
    • Microchip – Отладочная плата sam9x60_curiosity (на базе Armv5)
    • NXP
      • Несколько плат на i.MX53 и i.MX6ULL.
      • Шесть встраиваемых систем на базе NXP i.MX8MM и i.MX8MP
    • Texas Instruments
      • SoC J784S4 и референсная платформа для промышленных и автомобильных применений
      • Пять отладочных систем на базе TI K3 ( AM642 / AM654 AM68/AM69 )

Изменения в RISC-V Linux 6.3

  • BPF-трамплины теперь полностью поддерживаются в системах RISC-V RV64 (и s390x).
  • Ядра RISC-V могут использовать расширение битовых манипуляций “ZBB” для ускорения строковых операций, если оно присутствует.
  • Различные улучшения в инфраструктуре обнаружения расширений и альтернативного патчинга
  • Поддержка cpu-capacity в DT-привязках RISC-V
  • Zicbom больше не зависит от поддержки инструментальной цепочки
  • Улучшения производительности и размера кода в ftrace
  • Поддержка ARCH_WANT_LD_ORPHAN_WARN
  • Сообщения oops теперь содержат инструкцию, вызвавшую ошибку”
  • Allwinner D1
    • Новые драйверы управления питанием
    • Добавлены гейты и сбросы для шины CAN
  • StarFive JH7110
    • Новые драйверы управления питанием
    • Новый драйвер для контроллеров выводов “sys” и “aon” (always-on) SoC StarFive JH7110.
    • Добавлена поддержка драйверов sdio/emmc
    • DT-привязки для VisionFive 2
  • Новые платы
    • Десять одноплатных компьютеров на базе вариаций Allwinner D1/T113, включая MangoPi MQ Pro
    • Aldec TySoM devkit – плата на базе Microchip Polarfire.

Обновления архитектуры MIPS

Томас Богендорфер кратко описывает обновления MIPS для Linux 6.3: “Только исправления и чистка кода”. Полный список изменений и исправлений приведен ниже:

  • MIPS: vpe-mt: удален physical_memsize
  • mips: исправлен syscall_get_nr
  • MIPS: SMP-CPS: исправлена ошибка сборки при отключенном HOTPLUG_CPU
  • MIPS: DTS: jz4780: добавлен #clock-cells для rtc_dev
    MIPS: dts: Boston: Исправлено предупреждение dtc ‘pci_device_reg’
  • mips: dts: ralink: mt7621: добавлен port@5 как CPU-порт
  • mips: dts: приведение имен узлов LED в соответствие с dtschema
  • MIPS: ralink: Использование devm_platform_get_and_ioremap_resource()
  • MIPS: pci-mt7620: Использование devm_platform_get_and_ioremap_resource()
  • MIPS: pci: lantiq: Использование devm_platform_get_and_ioremap_resource()
  • MIPS: lantiq: xway: Использование devm_platform_get_and_ioremap_resource()
  • MIPS: BCM47XX: Добавлена поддержка Linksys E2500 V3
  • mips: ralink: обеспечение выбора PINCTRL_MT7621 при SOC_MT7621 и исправление раздела справки
  • MIPS: DTS: CI20: исправлен gpio питания otg
  • MIPS: dts: lantiq: Удалена ошибочная строка interrupt-parent;
  • MIPS: Исправлена проблема компиляции
  • MIPS: удалена CONFIG_MIPS_LD_CAN_LINK_VDSO
  • mips: Realtek RTL: выбор NO_EXCEPT_FILL
  • MIPS: OCTEON: octeon-usb: Унификация сообщений об ошибках
  • Исправление для предотвращения сбоев на платформах BCM6358: mips: bmips: BCM6358: отключение RAC flush для TP1

Также доступен более полный список изменений Linux 6.3 , сгенерированный командой git log v6.2..v6.3-rc8 --stat. Альтернативно, изменения можно прочитать на сайте KernelNewbies .

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

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

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

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

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