Linux 6.9引入了对64位ARM的Rust支持,用于扩展虚拟寻址的LPA2模式,以及针对Allwinner、Rockchip和Samsung等平台的大量驱动程序更新。增强功能包括音频、散热和电源管理,以及高通和联发科SoC的设备树和WiFi改进。此外,RISC-V获得了加密、休眠和各种优化,而MIPS则支持Mobileye SoC和代码细化。
Linux 6.9 changelog for the Arm architecture
- The Rust language is now supported on 64-bit Arm processors.
- It is now possible to run 64-bit Arm CPUs in LPA2 mode, which sets up a 52-bit virtual address space.
- Allwinner
- Allwinner H616 – Added SPDIF, DMA, and Thermal drivers
- Rockchip
- Audio – Added internal audio codec driver for RK3308
- PHY driver – Rockchip HDMI/eDP Combo PHY driver
- Clock
- New PLL-rate for Rockchip RK3568
- I2S rate improvements for Rockchip RK3399
- Rockchip RK3588 syscon clock fixes and removal of overall clock-number from the RK3588 binding header
- A prerequisite for later improvements to the Rockchip RK3588 linked clocks
- Arm64 device tree updates
- Amlogic
- Clock driver – Fix clock listing Oops on Amlogic axg
- Amlogic T7 – GPIO and IRQ drivers
- Amlogic ARM64 DT changes for Linux 6.9:
- Add reset controller for Amlogic C3
- Set initial rate for the NPU on Amlogic G12 SoCs
- Set initial clocks for USB on Amlogic A1
- Initialize Amlogic AXG SoC capacitance
- Drop unstable remark on Amlogic Bindings
- Add all Amlogic maintainers/reviewers on Amlogic SoCs bindings
- Cleanups – T7 whitespaces, underscore in names
- Samsung
- Extend Exynos PMU (Power Management Unit) driver being also the syscon to main system controller registers block, to support Google GS101. The Google GS101 has PMU registers protected and writing is available only via SMC. The Exynos PMU will register its own custom regmap for such case of mixed MMIO+SMC.
- Rework Samsung watchdog driver to get the regmap to PMU block not via syscon API, but from the Exynos PMU driver. This is necessary for the watchdog driver to work on Google GS101.
- DTS Arm changes for Linux 6.9
- Disable thermal polling by Linux in Eynos5422 Odroid XU3 boards, because drivers implement proper dynamic trip points management.
- Mark crosc-ec-spi in Peach Pi and Peach Pit as wake-up source, to reflect the hardware capabilities.
- Samsung P4 Note (Exynos4412): add accelerometer.
- Samsung Galaxy Tab (Exynos5420)
- Reduce available RAM to avoid conflict with TrustZone.
- Add WiFi on MMC.
- Samsung DTS ARM64 changes
- Mostly work around Google GS101 SoC and Pixel phone (Oriole) adding support for:
- Multi Core Timer (MCT) clocksource.
- Several clock controllers (DTS and DT bindings) and use new clocks in several other device nodes.
- More serial-interface instances: USI8 and USI12 with I2C.
- Exynos850 – SPI and DMA controllers (PL330).
- Mostly work around Google GS101 SoC and Pixel phone (Oriole) adding support for:
- Qualcomm
- PHY driver – Qualcomm X1E80100 PCIe phy support, SM8550 PCIe1 PHY, SC7180 UFS PHY and SDM630 USB-C support
- WiFi
- Qualcomm (ath11k):
- Support 6 GHz station power modes: Low Power Indoor (LPI), Standard Power) SP and Very Low Power (VLP)
- QCA6390 & WCN6855: support 2 concurrent station interfaces
- QCA2066 support
- Qualcomm (ath12k):
- Refactoring in preparation for Multi-Link Operation (MLO) support
- 1024 Block Ack window size support
- firmware-2.bin support
- support having multiple identical PCI devices (firmware needs to have ATH12K_FW_FEATURE_MULTI_QRTR_ID)
- QCN9274: support split-PHY devices
- WCN7850: enable Power Save Mode in station mode
- WCN7850: P2P support
- Qualcomm (ath11k):
- ARM32 DTS updates
- MSM8226 – SAW and ACC nodes are introduced to enable SMP support. Watchdog definition is also added, and all nodes are sorted and cleaned
up. rmtfs memory is defined on HTC One Mini 2, vibrator support is added to LG G Watch R, touch keycodes are defined for Samsung Galaxy Tab 4. The Samsung Galaxy Tab 4 DeviceTree is refactored to allow more variants to be introduced easily. - The SAW nodes across APQ8064, IPQ8064, MSM8960 and MSM8974 are updated based on recent work on the binding and driver.
- IPQ8064 – SAW nodes are cleaned up, and unused reset-names is dropped from DWC3.
- MSM8960 – GSBI3 and the I2C bus therein is introduced, in order to introduce touchscreen support on the Samsung Galaxy Express SGH-I437. gpio-keys are introduced on the same.
- MSM8974 – The QFPROM register size is corrected. The order of the clocks in the SDX65 DWC3 node is corrected to match the binding.
- The mach-qcom Kconfig options are cleaned up, to avoid unnecessary per-platform options.
- MSM8226 – SAW and ACC nodes are introduced to enable SMP support. Watchdog definition is also added, and all nodes are sorted and cleaned
- Arm64 DTS updates for Linux 6.9
- Snapdragon X Elite – Audio and compute remoteprocs, IPCC, PCIe, AOSS QMP, SMP2P, TCSR, USB, display, audio, and soundwire support is introduced, and enabled across the CRD and QCP devices.
- SM8650 – PCIe controllers are moved to GIC-ITS and msi-map-mask is defined. Missing qlink-logging reserved-memory region is added for the modem remoteproc. FastRPC compute contexts are marked dma-coherent. Audio, USB Type-C and PM8010 support is introduced across MTP and QRD devices.
- GPU cooling devices are hooked up across MSM8916, MSM8939, SC8180X, SDM630, SDM845, SM6115, SM8150, SM8250, SM8350, and SM8550.
- UFS PHY clocks are corrected across MSM8996, MSM8998, SC8180X, SC8280XP, SDM845, SM6115, SM6125, SM8150, SM8250, SM8350, SM8550, and SM8650.
- PCI MSI interrupts are wired up across SM8150, SM8250, SM8350, SM8450, SM8550, SM8650, SC7280, and SC8180X
- IPQ6018 – QUP5 I2C, tsens sand thermal zones are defined.
- The Inline Crypto Engine (ICE) is enabled for IPQ9574.
- MSM8953 – The GPU and its IOMMU is introduced, the reset for the display subsystem is also wired up.
- VLS CLAMP registers are specified for USB3 PHYs on MSM8998, QCM2290, and SM6115.
- QRB4210 RB2 – USB Type-C port management is enabled.
- SA8295P ADP – The MAX20411 regulator powering the GPU rails is introduced and the GPU is enabled. The first PCI instance on SA8540P Ride is disabled for now, as a fix for the interrupt storm produced here has not been presented.
- SA8775P – The firmware memory map has changed and is updated. Safety IRQ is added to the Ethernet controller.
- SC7180 – UFS support is introduced and the cros-ec-spi is marked as wakeup source.
- SC7280 – Capacity and DPC properties are added, cryptobam definition is improved to work in more firmware environments, more Chrome-specific properties are moved out from main dtsi, and cros-ec-spi is maked as a wakeup source. Slimbus definition is added to the platform.
- A missing reserved-memory range is added to Fairphone FP5, PMIC GLINK and Venus are enabled. LEDs are introduced and voltage settings corrected on the QCM6490 IDP, and RB3gen2 sees the same voltage changes and GCC protected clocks are introduced to make the board boot properly.
- RPMh sleep stats and a variety of cleanups and fixes are introduced for SC8180X.
- SC8280XP – The additional tsens instances are introduced. Camera Subsystem and Camera Control Interface (CCI) are added. PMIC die-temp vadc channels are introduced on the CRD, to allow ADC channels to be tied to the shared PMIC temp-alarms, to actually report temperature.
- SDM630 – USB QMP PHY support is introduced and enabled on the Inforce IFC6560 board. On the various Sony Xperia XA2 variants WLED is enabled and configured.
- SM6350 – Display subsystem interconnects and tsens-based thermal zones are added.
- SM7125 – UFS support is added.
- Fairphone FP4 (SM7225) – Display and GPU are enabled, and firmware paths are corrected.
- SM8150 – PCIe controller definitions are corrected.
- SM8550 – As with SM8650, the SM8550 the fastrpc compute contexts are marked dm-coherent, and PCIe controllers are moved to use GIC-ITS. The UFS controller frequency definition is moved to the generic opp-table. Touchscreen is enabled on the QRD device.
- Variety of smaller cleanups and corrections to match DeviceTree bindings and style guidelines are introduced across the various files.
-
- Arm64 defconfig updates
- Enable the Qualcomm PBS driver to resolve the dependency from the Light Pulse Generator (LED-driver) on modern Qualcomm platforms. Enable the X1E multimedia clock controllers, to provide clocks for the various multimedia blocks. Enable Global clock controller and interconnect drivers for the QDU1000/QRU1000 platforms.
- Enable the audio drivers and the Goodi Berlin touchscreen driver, used on SM8650 QRD.
- Enable the MAX20411 regulator driver drive the GPU rail on SA8295P.
- Mark the Qualcomm interconnect providers that feeds UART instances as builtin, to ensure the console exists when userspace is launched.
- Arm64 defconfig updates
- MediaTek
- Added support for Mediatek MT7981B (Filogic 820) and MT7988A (Filogic 880) networking SoCs designed to be used in wireless routers, and similar to the already supported MT7986A (Filogic 830).
- PHY driver – Mediatek MT8365 CSI phy driver
- DMA engine – Yaml conversion for MediaTek High-Speed controller binding
- Add support for Sound to MediaTek MT6357 CODEC
- mt76 wifi driver:
- mt7915: newer ADIE version support
- mt7925: radio temperature sensor support
- Defconfig updates
- Arm Devicetree updates for Linux 6.9
- Adds more support for the MediaTek MT8186 SoC’s Video and JPEG encoders
- Adds MT7988 clocks
- Enables wakeup support for the CrOS EC on SPI in all MediaTek Chromebooks
- Performs some cleanups and includes some spare fixes.
- Other new Arm hardware platforms and SoCs
- NVIDIA – Two Android phones based on the old Tegra30 chip
- NXP
- Added support for i.MX8DXP is a variant of i.MX8QXP, with two CPU cores less.
- Eight embedded board using NXP i.MX6/8/9
- Renesas
- Added support for R8A779G2 (R-Car V4H ES2.0) and R8A779H0 (R-Car V4M) automotive SoCs.
- Three variants of the “White Hawk” board for Renesas automotive SoCs
- Texas Instruments
- J722S is another automotive variant of its K3 family, related to the AM62 series.
- Added PowerVR SGX GPU nodes
- Three evaluation boards for TI K3-based SoCs
- Raspberry Pi-related changes – Wifi – Fix boot crash on Raspberry Pi 4 introduced with “allow per-vendor event handling” commit last January.
RISC-V updates in Linux 6.9
RISC-V had its fair share of changes in Linux 6.9 :
- Support for various vector-accelerated crypto routines
- Hibernation is now enabled for portable kernel builds
- mmap_rnd_bits_max is larger on systems with larger VAs
- Support for fast GUP
- Support for membarrier-based instruction cache synchronization
- Support for the Andes hart-level interrupt controller and PMU
- Some cleanups around unaligned access speed probing and Kconfig settings
- Support for ACPI LPI and CPPC
- Various cleanups related to barriers
- A handful of fixes
- Microchip
- Missing bus clocks for the CAN controllers spotted during the creation of a driver for the controllers
- Specific compatible for the SiFive PDMA block on PolarFire SoC.
- SiFive – Rework the SiFive PLIC driver to prepare for MSI support
- Sophgo
- SG2042 – Add reset controller, reset generator support
- CV1800B and SG2002 – MMC and SD controllers
- StarFive
- Added StarFive StarLink PMU (Performance Monitoring Unit) with support for monitoring L3 memory system PMU events
- JH8100 SoC – IRQ driver, Watchdog support, StartLink PMU, (OpenCores) PWM,
- JH7110 SoC – Add camera subsystem nodes (dphy-rx, csi2rx, camss nodes), DWMAC, PWM
- VisionFive V1 SBC – Setup Ethernet PHY
- Alibaba T-head
- TH1520
- Increase tuning loop count to 128 for SD card driver
- Enable mmc and dma drivers; needed to boot boards like the LicheePi 4A and BeagleV-Ahead from eMMC flash
- TH1520
MIPS changes
The summary of changes to the MIPS architecture was one of the shortest ever:
- Added support for Mobileye SoCs
- Unified GPR/CP0 regs handling for uasm
- Cleanups and fixes
Here’s the longer form:
- mips: cm: Convert __mips_cm_phys_base() to weak function
- mips: cm: Convert __mips_cm_l2sync_phys_base() to weak function
- mips: dts: ralink: mt7621: add cell count properties to usb
- mips: dts: ralink: mt7621: add serial1 and serial2 nodes
- mips: dts: ralink: mt7621: reorder serial0 properties
- mips: dts: ralink: mt7621: associate uart1_pins with serial0
- MIPS: ralink: Don’t use “proxy” headers
- mips: sibyte: make tb_class constant
- mips: mt: make mt_class constant
- MIPS: ralink: Remove unused of_gpio.h
- bus: bt1-apb: Remove duplicate include
- MAINTAINERS: remove entry to non-existing file in MOBILEYE MIPS SOCS
- MIPS: mipsregs: Parse fp and sp register by name in parse_r
- tty: mips_ejtag_fdc: Fix passing incompatible pointer type warning
- mips: zboot: Fix “no previous prototype” build warning
- MIPS: mipsregs: Set proper ISA level for virt extensions
- MIPS: Implement microMIPS MT ASE helpers
- MIPS: Limit MIPS_MT_SMP support by ISA reversion
- MIPS: Loongson64: test for -march=loongson3a cflag
- MIPS: BMIPS: Drop unnecessary assembler flag
更多详细信息请点击 Linux 6.9 changelog