Linux 5.12变更日志,主要涉及Arm、MIPS和RISC-V

原文链接:Linux 5.12 – Main Changes, Arm, MIPS and RISC-V Architectures 由Jean-Luc Aufranc撰写。

Linux 5.12在上周末如期发布了,不过为确保所有问题都能够得到解决,Linus Torvalds决定再发布一个候选版本—Linux 5.12-RC8,最新的Linux内核则有望在本周末发布。而且Linux 5.12与候选版本不会有任何显著的变化,因此我们主要针对嵌入式SoC系统中常用的Arm、MIPS和RISC-V体系,对比检查了Linux5.12版中的新功能。

约两个月前,Linux 5.11的发布就增加了对Intel的软件保护扩展(SGX)和平台监控技术(PMT),还有AMD“Van Gogh”和“Dimgray cavefish”图形处理器、MIPI I3C主机控制器接口等等的相关支持。

 

Linux5.12中一些有趣的变化包括:

  • 增加了对物联网嵌入式设备ACRN管理程序的支持
  • 增加了对Playstation DualSense和Nintendo 64游戏控制器以及Nintendo64数据盒的支持
  • 通过子系统进行动态热管理,允许对设备的使用功率进行限制,以满足热量约束,详情可参见文档
  • 完全取消了O-profile, 我记得很多年前,我曾经在o-profile的帮助下优化软件,但从那时起它就被perf工具取代了,此次的12则完全取消了对它的支持

Linux 5.12中对Arm的更新

  • 移除了几个基于32位Arm平台的相关设备驱动程序—如efm32、picoxcell、prima2、tango、u300、zx和c6x
  • Allwinner
    • 对Allwinner H616和H616-R–初始设置支持,包括PIN控制器、时钟
    • Allwinner/sunxi电源控制
    • 各种DTS更改
    • 新平台–L631运动摄影机(Allwinner V3),又名SJCAM SJ4000
  • Rockchip
    • PCIe控制驱动程序– 绑定NanoPi M4BDT,使“ep gpios”DT性能可选
    • Clocks–Rockchip新品rk3368含clock-ids,可摄像头输入,文档修复
    • 新板块–NanoPi M4B单板计算机(RK3399),Radxa Rock Pi E路由器SBC(RK3328
  • Amlogic
    • Clocks –PLL驱动程序,meson8b时钟控制器DT支架清理,可从AXG时钟控制器中删除MIPI clk域
    • 新器件–Hardkernel的ODROID-HC4开发板(S905X3),Beelink GS-King-X TV Box(S922X)
  • Samsung
    • 修复S3C24xx:一次“叮当”声表示成功,两次表示警告
    • 12对SoC 驱动做的修改
      • 调试了Exynos ASV驱动程序中的探测延迟和regmap_Uread()域的错误修复
      • 将ChipID域代码转换成驱动程序(早期的initcall)并将其合并到Exynos ASV中
      • 将PM域代码转换为驱动程序,这对于即将使用的fw_ devlinks域代码启用是非常有必要的
    • Linux 5.12版对DTS ARM 做的更改
      • 使用新型可兼容的、正确配置的Exynos5420 USB2 PHY,修复其暂停/恢复循环
      • 修正了SamsungPMIC多级板上的中断触发电压
      • 校正了SamsungGT-I9100充电器的电压,并增加top-off型充电器
    • DTS ARM64 更改– 修正了TM2/TM2E 和 Espresso板的 Samsung PMIC 和 S3FWRN5 NFC 中断触发电压
  • Qualcomm
    • 增加了对Snapdragon 888/SM8350等高端手机SoC的支持
    • 增加了对独立SoC 的QualcommSDX55 5G的支持
    • 对PMIC的Qualcomm socinfo驱动程序的支持
    • Qualcomm SoC可识别更多产品
    • Qualcomm SM8350 和SC8180x 针脚控制器
    • PCIe控制器驱动程序–可用 PHY_REFCLK_USE_PAD 仅适用于 ipq8064,对sm8250 则增加了ddrss_sf_tbu clock时钟域的支持
  • iommu – 新Qualcomm兼容字符串
  • Clocks –用于QualcommSC8180x和SC7280 SoCs的GCC和RPMh clks时钟域,用于Qualcomm SDM660/SDM630GPU clks 时钟域
  • SM8250支持LLCC 驱动程序
  • SM8350 支持AOSS QMP
  • MSM894电源域支持RPMPD 驱动程序
  • Linux 5.12对ARM dts的更新
    • 引入QualcommSDX55平台和该平台的MTP设备,并支持NAND、SDHCI和USB
    • 已为IPQ4019启用USB,并添加了Alfa网络AP120C-AC和8Devices Jalapeno板
    • Samsung Galaxy S5 屏幕增益显影和 GPU 支持
  • ARM64 DT 更新
    • 增加了PCIe、audio音频、 显示、GPU、HDMI 看门狗、 LLCC 和 PMIC ADC等功能,而且支持SM8250平台,特别是RB5,并增强了CPU处理单元,还修复了一些较小的问题
    • 彻底检查现有的MSM8992和MSM8994平台源文件,并引入RPM电源域和SMP2P节点
    • 增加了对触摸屏、附加电压调节器、microSD卡的支持,并增加了Sony Mobile Ivy、Karin、 Suzuran和 Satsuki 的设备。可将Lumia 950和950XL的公用部分连接起来,并通过支持传感器扩展了NFC、蓝牙、音频、microSD和Type-C mux管脚等功能
    • 改善了SDM850笔记本电脑频率不高的问题,在SM8150上增加了CPU集群闲置支持,并对SC7180平台进行了一些微调
  • ARM64 defconfig更新–为现行版Snapdragon笔记本电脑提供HID多点触控和TMPFS Posix ACL配置选项支持。它还支持用于SM8250,特别是RB5板的时钟显示、音频配置和LT9611UXC HDMI桥线连接
  • 新设备和主板–
    • Snapdragon MTP 主板(SM8350)
    • Snapdragon MTP 主板(SDX55)
    • Sony Kitakami 手机:Xperia Z3+/Z4/Z5 (APQ8094)系列
    • Alcatel Idol 3 手机(MSM8916)
    • ASUS Zenfone 2 Laser 手机(MSM8916)
    • BQ Aquaris X5 aka Longcheer L8910 手机(MSM8916)
    • OnePlus6 手机(SDM845)
    • OnePlus6T 手机(SDM845)
    • Alfa 网络AP120C-AC 接入点 (IPQ4018)
  • MediaTek
    • iommu 驱动程序– –支持Mediatek的MT8192 IOMMU、Arm v7s io-pgtable MT8192的扩展
    • Linux 5.12下一代DRM
      • Decouple Mediatek DRM副驱动程序
      • 共享mtk(联发科技)DRM和MDP的Mutex驱动程序
  • 其它Arm硬件平台和SOCs
    • ASpeed:
      • Ampere Mt. Jade, 适用x86 服务器BMC(主板管理控制器) (AST2500)
      • IBM Everest, 适用Power10 服务器BMC (AST2600)
      • Supermicro x11spi, 适用ARM 服务器BMC (AST2500)
    • Broadcom – BCM4906 网络芯片, Netgear R8000P路由器(BCM4906)
    • Intel – eASIC N5X 主板(N5X SoCFPGA)
    • NXP
      • MX6 (32-bit):
        • 用于过滤系统的Plymovent BAS 基本系统控制器(imx6dl)
        • Protonic MVT工业触摸屏终端(imx6dl)
        • Protonic PRTI6G 主板(imx6ul)
        • Kverneland UT1、UT1Q、UT1P、TGO 农产品终端 (imx6q/dl/qp)
      • NXP i.MX8 (64-bit)
        • Beacon i.MX8M 纳米开发工具包(imx8mn)
        • Boundary Devices i.MX8MM Nitrogen SBC (imx8mm)
        • Gateworks Venice i.MX 8M迷你开发包 (imx8mm)
        • phyBOARD-Pollux-i.MX8MP (imx8mp)
        • Purism Librem5 Samsung Evergreen 手机(imx8mp)
        • KontronSMARC-sAL28 模块系统(imx8mp)
      • Renesas –双内置工作板(RZ/G2H and RZ/G2N based)
      • ST-Ericsson Ux500 – Samsung GT-I9070 (Janice) 手机(u8500)
      • Texas Instruments – MYIR 科技公司研制板(AM335X)
      • Xilinx – Ebang EBAZ4205, FPGA board (Zynq-7000), ZynqMP zcu104 revC 主板(ZynqMP)

Linux 5.12系统MIPS结构的更新日志

Linux MIPS有一些更新,特别是针对Nintendo(任天堂)N64游戏机的支持

  • 添加了对Nintendo N64Added 的支持
  • 添加了对Realtek RTL83XX SoCs的支持
  • 支持Loongson64 kaslr(内核地址空间布局随机化)
  • 首次删除set_fs()域函数
  • DMA运行时相干/非相干选择清除
  • 内核整理和修复

RISC-V Linux 5.12更新

对于RISC-V系统,最近几个Linux内核版本相对来说比较乏味,但Linux 5.12增加了更多有趣的功能。

  • 支持非统一内存访问(NUMA)系统,此系统同样支持kprobes、uprobes, 以及任务前漏洞缓解技术。
  • 确保驱动程序正确使用uaccess,这在我当前使用的任何驱动程序中都没有表现出来,但可能会在新驱动程序使用中发现错误。
  • 对SiFive FU740的初始支持,同样也将提高HiFive的显示效果。
  • 支持内存检测工具(kasan)在动态内存映射区的(vmalloc region)的检测。
  • 少有的适用于Kendryte K210的新驱动程序,连同启动K210主板的DT必要通道。
  • 支持分配ASIDs。
  • 支持大于128MiB的内核处理器。
  • 支持对KASAN的各类性能提升,包括利用内核参数huge pages 配置KASAN。

以上即为完整的Linux5.12变更日志,它是用gitlogv5.11..v5.12-rc8–stat命令生成的。KernelNewbies网站还应该有一个Linux 5.12更改的详细摘要,有兴趣也可以去查看。

分享这篇文章
订阅评论
提醒
0 评论
内联反馈
查看所有评论