Linux 5.16版本的主要变化—Arm、RISC-V和MIPS架构

原文链接:Linux 5.16 Release – Main Changes, Arm, RISC-V and MIPS architectures 由Jean-Luc Aufranc撰写。
本文共计2868字,预计阅读6分钟

不久前,Linus Torvalds对外宣布 Linux 5.16 发布了

由于有额外的一周新年假期,自 -rc8 更新以来内容并不多,这在意料之中而且我们需要紧急处理的事情也不是很多。 

新版本主要内容包含一些驱动程序修复(主要是网络和 rdma)、一个 cgroup 凭证使用修复、一些核心网络修复、两个last-minute reverts以及一些其他零散内容。附加的短日志非常小,你们可以直接滚动浏览它。

这意味着 5.17 的合并窗口1月10打开,针对这一点我很激动跟你们说我已经提交了几个未决的早期pull请求其实我希望我们能完成更多,由于我们还是需要家庭旅行,这个合并窗口其实还是会有些痛苦。所以我会在路上用笔记本电脑做大部分事情当然通常来说我会尽量避免这样做

也就是说,合并窗口的合并部分在笔记本电脑上运行得非常好,只是我常常想在合并之间做更多的本地构建测试,与在笔记本工作相比,可以让我做更多的测试。因此,旅行期间的主要缺点是我最终更多地依赖于云中的自动构建测试。所以真的希望一切都在 linux-next 中正常运行,这样当事情发生在我的tree上时就不会出现不必要的问题。

其实,我们的自动化构建测试无论如何非常好,而且人们对 linux-next 的评价非常好,所以也许我的本地构建并不那么重要。我确实偶尔会遇到一些本不应该出现在我的tree上的问题,当然这并不常见,也不是很严重的问题。

无论如何,我觉得应该不会有任何真正的问题,但我可能会时差或在一些奇怪的时区,所以我回复你们的时间应该可变的

另外,合并窗口甚至打开之前,仍然有一些时间来为新内核版本提供一些 TLC和测试。

Linus

早期的Linux 5.15是一个 LTS 版本,它添加了由 Paragon Software 分发的 NTFS 文件系统实现,具有读/写支持、ksmbd 内核 SMB 3 服务器、DAMON(数据访问监控器)轻量级机制监控特定用户的内存访问模式和空间过程等。

Linux 5.16版本
Linux 5.16版本

下面是Linux 5.16内核一些有趣的更新和补充:

  • 文件系统健康报告– 内核为文件系统范围的错误报告添加了一个新的 FAN_FS_ERROR fanotify 事件类型,主要是为了在供文件系统健康监控守护的进程中使用。Ext-4 是目前唯一支持该接口的文件系统。你们查看文档获取更多详细信息
  • 使用内存组合基础架构加快内存管理– 可用 RAM 被分成小单元,称为页面,其大小 id 通常以 KB 表示。但是许多系统都配备了几十 GB 的 RAM,导致页面数量庞大且难以管理。Linux 5.16 内核引入了页面作品集的概念,它类似于复合页面,不过具有更好的语义,这有助于提高常见的工作负载性能。“page folios”其实一直存在争议,有些人反对它。你们可以通过阅读LWN.net上的文观看视频了解更多
  • 使用新的 futex_waitv()系统调用提高了Wine 和 Linux 游戏性能– futex_waitv(2) 允许通过单个系统调用等待多个 futex。它的主要用例是模拟 Windows 的“WaitForMultipleObjects”调用,它允许 Wine 提高 Windows 游戏的性能,但本地 Linux 游戏也可以从这个接口中受益。同样,你们可以通过阅读该文档以获取更多信息

Linux 5.16中的Arm变化

  • 全志
    • 全志 R329 – 看门狗驱动
    • 设备树更新:
      • DT 架构修复
      • R40 的 I2S 支持
      • Pinetab 的HDMI 支持
      • 对 A64 GPU 的 devfreq 支持
  • 瑞芯微
    • 为瑞芯微 RK817 PMIC 添加断电支持
    • ASoC – 添加对瑞芯微 RV1126 和 RK3568 的支持
    • 添加瑞芯微RK3566/RK3568
    • 合并瑞芯微 I2S/TDM 控制器 v5
    • 设备树
      • 添加 Rockchip SoC PCIe 控制器 DT 绑定
      • Odroid Go Advance, PX30启用 SFC
      • 在 Quartz64 A 上启用 spdif
    • 新开发板和设备
      • Station P1 mini PC 中的Firefly ROC-RK3399-PC-PLUS SBC
      • Station M1 Geek PC中的Firefly ROC-RK3328-PC SBC
  • 晶晨
    • Amlogic Meson6、Meson8、Meson8b 和 Meson8m2 有一个 ARC 内核来帮助在挂起后恢复系统,引入了一个新的 remoteproc 驱动程序来启动这个内核。
    • 时钟驱动程序– 更新 Amlogic meson8 的视频路径相关时钟
    • 少量清理,并添加了 S905Y2 SoC ID
    • 针对 Linux 5.16 的 Amlogic ARM64 DT 更改:
      • 为 ODROID-C4/HC4 添加以太网 PHY 复位线
      • 将音频播放节点添加到 rbox-pro
      • 修复 pwm 稳压器电源属性
      • meson-g12b-odroid-n2:添加缺少的 5v 稳压器 gpio
    • 新开发板
      • Radxa ZeroSBC (S905Y2)
      • Jethub D1 (A113X) & H1 (S905W) 家庭自动化控制器
  • 三星
    • 添加对三星 Exynos Auto V9 的支持
    • clk 驱动程序更新
      • Exynos850 SoC 的初始时钟驱动程序
      • 重构 CPU 时钟代码并将 Exynos5433 CPU 时钟驱动程序转换为平台驱动程序
      • 对 devm_platform_ioremap_resource() 的一些转换
      • 三星 Kconfig 帮助文本的更新
    • 修复了在S3C24xx中处理IRQ设置代码错误时的理论问题,并清理了S3C64xx。
    • Linux 5.16 的 DTS ARM 更改
      • 次要清理– 来自未记录或未使用的属性、编码风格
      • 添加机箱类型属性
    • DTS ARM64 变化
      • 将 Exynos5433 DTS 与 dtschema 匹配
      • 添加对 Exynos Auto v9 SoC 和 SADK(三星汽车开发套件)板的基本支持。Exynos Auto v9 是针对车载信息娱乐系统 (IVI) 和高级驾驶辅助系统 (ADAS) 的汽车设计
      • 添加机箱类型属性
      • 将 ChipID 节点添加到 ExynosAutov9 DTSI。
  • 高通
    • 支持高通Snapdragon 690(又名 SM6350)
    • 支持Fairphone 4 中的Snapdragon 750G (SM7225)
    • Pinctrl
      • 高通SM6350、QCM2290 和 PM6350 的新子驱动程序
      • 转换高通PMIC SSBI 和 SPMI MPP GPIO 驱动程序以使用分层中断。
      • 将高通PMIC MPP 设备树绑定转换为 YAML
      • 修复高通驱动程序中的 Kconfig 问题,实施一些高通SDM845 双边勘误表,修复 高通 SM8350 驱动程序中 UFS 和 SDC 的寄存器偏移
    • 时钟驱动器
      • GCC 和 RPMcc 支持高通QCM2290 SoC
      • GCC 支持高通MSM8994/MSM8992 SoC
      • 对高通SC7280 SoC 的 LPASSCC 和 CAMCC 支持
    • 为高通NAND 控制器驱动程序添加条目
    • 高通 PCIe 控制器驱动程序:
      • 添加 SC8180x 兼容字符串
      • 添加端点控制器驱动和DT绑定
      • 重组以使用 of_device_get_match_data()
      • 添加 SC7280 特定的 pcie_1_pipe_clk_src 处理
    • 网络
      • 高通以太网交换机 (qca8k):支持 QCA8328
      • 高通WiFi (ath11k)的各种更新– 支持 80P80 和 160 MHz 带宽、支持 6 GHz 频段的通道 2等等
      • 高通手机 SoC WiFi (wcn36xx) – 启用空闲模式省电 (IMPS) 以降低空闲期间的功耗
    • SPI 驱动程序– 高通 SC7280 和 SC7180
    • PHY – 高通 QCM2290 USB2 和 USB3 支持
    • 添加了高通“睡眠统计”驱动程序,有助于将各种高通平台带入低功耗模式。
    • 适用于 Linux 5.16 的 ARM64 DTS 更新
      • MSM8916 的清理修复
      • MSM8998 – 多媒体时钟控制器和 iommu、GPU 及其专用 IOMMU 的说明。
      • IPA6018 – 添加了 USB 控制器和 PHY
      • IPQ8074 – SPMI 控制器的描述。
      • SC7280 获得 QSPI、低速 (i2c/spi/uart)、GPU、热区、调制解调器、CPU 拓扑和更新的内存映射。
      • SDM845 – 将硬件的节流温度从约 70C 提高到 95C,结果基准测试提高了 30%。依靠硬件节流和热压,CPU冷却设备下降
    • ARM64 defconfig 更新:
      • 禁用固件加载用户空间回退
      • 启用新的限制驱动程序,该驱动程序控制一系列高通平台上基于硬件的热缓解。
      • 启用 prima/pronto WiFi 和蓝牙驱动程序
      • 启用启动平台所需的 SC7280 驱动程序
    • 新设备和开发板
      • 11 款新智能手机,包括 Fxtec Pro1 QX1000、索尼 Xperia XZ1、Xperia XZ1 Compact、Xperia XZ Premium、Xperia 10 III、小米Mi5 和小米Mi Note 2
      • 3款额外的 Chromebook
  • 联发科
    • PCIe – 添加 MediaTek MT7621 PCIe 主机控制器驱动和 DT 绑定
    • 联发科 WiFi (mt76)
      • MT7921 – ASPM、6GHz、SDIO 和测试模式支持
      • MT7915 – LED 和 TWT 支持
    • 联发科MT7922 和 MT7921 的蓝牙驱动支持
    • 联发科改进了对 Chromebook 中使用的 MT81xx SoC 以及 MT76xx 网络 SoC 的支持
  • 其他新的 Arm 硬件平台和 SoC(总结,因为这次有 60 块新
    • 苹果– M1 获得对 PCI 和 pinctrl 的支持,更接近于开箱即用的可用系统。
    • 信骅科技– 使用 AST2600 作为 BMC 的两个附加服务器主板
    • 博通– 几个 Cisco Meraki 无线控制器,以及两个新开发板
    • 英特尔– 英特尔 Arria SoC FPGA 家族中添加的新开发板
    • Marvell – 基于 Armada 381 的网络交换机和MOCHAbin 7040 开发板
    • Microchip – SAMA5D29 SoC、LAN966 SoC、为旧的 at91sam9g20 SoC 添加了两个板文件
    • 恩智浦
      • S32G2 汽车 SoC
      • 2 个基于 i.MX6 的电子书阅读器和三个额外的开发板
    • STMicroelectronics – STM32MP13 SoC 系列以及参考板
    • 瑞萨电子– 新版本的 R-Car Gen3 SoC
    • Texas Instruments – 三款带有K3 SoC 的新开发板。
    • 东芝– 维斯康蒂系列的开发板
    • 赛灵思– 五款基于 ZynqMP 的新设备

Linux 5.16中RISC-V的变更日志

Linux 5.16 中特定于 RISC-V 架构的一些更改

  • Allwinner D1 – 看门狗驱动程序
  • SiFive HiFive Unmatched 的 DT 更新,修复了调节器处理
  • SiFive Hifive Unleashed 和 Unmatched 的一对修复程序,可正确连接 MMC 卡检测信号。
  • 支持 VDSO 中的时间命名空间,以及一些相关的清理。
  • 支持构建 rv32 randconfigs。
  • 对 XIP 端口的改进,允许更大的内核运行
  • SiFive 和 Microchip 板的各种设备树清理
  • 一些 defconfig 更新,包括启用 Nouveau(这是 对GPU的支持!)

Linux 5.16中的MIPS

MIPS 架构也有一些小的变化:

  • 为 /proc/cpuinfo 添加了 CPU 选项的打印
  • 删除了对 Netlogic SOC 的支持
  • 修复和清理
    • 为启用 ZSTD 的配置构建修复程序
    • 修复先发警告
    • 修复龙芯FTLB检测
    • 修复页表级别选择KernelNewbies 网站
    • 连线 futex_waitv 系统调用
    • 为 lantiq 和 bcm63xx 配置构建修复
    • yamon-dt 错误修复

如需更完整的 Linux 5.16 变更日志,你们可以阅读使用命令生成的完整评论git log v5.15..v5.16-rc8 –stat,或查看KernelNewbies 网站上的摘要。

分享这篇文章
订阅评论
提醒
0 评论
最旧
最新 最多投票
内联反馈
查看所有评论