Linux 6.17 has just been released on LKML:
No huge surprises this past week, so here we are, with kernel 6.17 pushed out and ready to go.
Below is the shortlog for just the last week – not the full 6.17 release – as usual. It’s not exciting, which is all good. I think the biggest patch in there is some locking fixes for some bluetooth races that could cause use-after-free situations. Whee – that’s about as exciting as it gets.
Other than that, there’ the usual driver fixlets (GPU and networking dominate as usual, but “dominate” is still pretty small), there’s some minor random other driver updates, some filesystem noise, and core kernel and mm.
And some selftest updates.
This obviously means that the merge window for 6.18 will open tomorrow, and I already have four dozen pull requests pending. Thanks to the proactive people – you know who you are. But before the merge window opens, there’s still time for some final kicking of the tires of the newest release.
Thanks,
Linus
Released two months ago, Linux 6.16 added USB audio offload support for power savings on embedded devices, implemented initial support for Intel Trusted Domain Extensions (TDX), brought zero-copy send TCP payloads from DMABUF memory, useful to copy data directly from a GPU/NPU to a network device, various Intel CPU performance improvements, and much more. Let’s now check some of the notable changes from Linux 6.17, before delving into more details about the Arm, RISC-V, and MIPS architectures.
Notable changes in Linux 6.17
Here are some of the highlights of the Linux 6.17 release:
- Specific support for single-core processors has been removed, and Linux 6.17 and greater will ship with SMP support, even on single-core machines.
- Attack-vector controls implementation has been merged for the x86 architecture; it gives better control over which mitigations for hardware vulnerabilities should be enabled in the kernel. Check out the documentation for additional information.
- The new DAMON_STAT kernel module provides simplified monitoring of memory-management activity in the system; see changelog and documentation for details.
Arm changelog in Linux 6.17
- Arm systems can now make use of the Arm v9.2 branch record buffer extension in the perf events subsystem.
- Live patching is now supported on 64-bit Arm systems.
- Allwinner
- Power management – Add support for Allwinner A523’s PCK600 power controller
- Clock driver
- Add Allwinner A523’s missing PPU0 reset (both DT binding and driver) The binding change is shared with the soc tree.
- Fix Allwinner V3s DE clock mux field width
- Stop passing rate change requests to parent for Allwinner V3s DE clock
- Force and lock Allwinner V3s DE and TCON clocks to the same parent, the video PLL
- Display – Add Display Engine 3.3 (DE33) support. The DE33 is a newer version of the Allwinner Display Engine IP block, found in the H616, H618, H700, and T507 SoCs.
- Device tree changes for Linux 6.17
- RGB666 LCD pin definitions for the V3s PE pins and V3 PD pins
- Allwinner board DT binding cleanup
- EMAC support on A100/A133
- Enabled on the Liontron H-A133L board
- Allwinner A523
- UART1 pin definitions
- SID efuse, power controllers, and GPU added
- Mali-G57 MC1 GPU enabled on all existing boards
- Node order fixes
- New Device – Orange Pi 4A with the Allwinner T527 SoC
- Rockchip
- Rockchip PCIe controller driver
- Drop unused PCIe Message routing and code definitions
- Remove several unused header includes
- Use standard PCIe config register definitions instead of rockchip-specific redefinitions
- Set Target Link Speed to 5.0 GT/s before retraining so we have a chance to train at a higher speed
- Rockchip DesignWare PCIe controller driver
- Prevent race between link training and register update via DBI by inhibiting link training after hot reset and link down
- Add required PCIE_RESET_CONFIG_WAIT_MS delay after Link up IRQ
- Media – Rockchip video decoder driver got promoted from staging
- DRM – Rockchip RK3528 GPU support (Lima, Mali-450 MP2)
- Thermal – Implement and document One-Time Programmable fuse support for the Rockchip driver in order to increase the precision of the
measurements - Device Tree updates for Linux 6.17:
- Camera support for the PinePhone Pro.
- A bunch of cleanups to make DTC happier, fix ordering of DMA uart channels on rk3528 and some video output enablement as well as some button definitions.
- An interesting tidbit is the reset behaviour addition, in that some boards have specific requirements as to how the PMIC needs to do the
restart. DT-maintainers did not consider the header with helper-constants as part of the binding, so that header ended up in the Rockchip directory
- Defconfig – Enable Rockchip DFI + PM_DEVFREQ_EVENT and RGA modules.
- New devices
- FriendlyElec NanoPi M5
- Firefly ROC-RK3588S-PC
- Luckfox Omni3576 (RK3576)
- Sakura Pi RK3308B
- Rockchip PCIe controller driver
- Amlogic
- Pinctrl – Add support for – Amlogic S7, S7D, and S6 pin control
- SPI – Added support for Amlogic SPISG controller
- Clock driver
- Use the auxiliary reset controller implementation in the Amlogic axg-audio, instead of implementing the reset controller in drivers/clk
- Drop unnecessary clock controller headers for Amlogic drivers
- Drop clock controller big regmap tables in the Amlogic drivers
- Device tree for Linux 6.17:
- Align wifi node name with bindings
- Enable the NPU nodes on Alta & VIM3
- New device – Ugoos AM3 TV box based on Amlogic meson-gxm (S912)
- Samsung
- Add support for the Exynos 2200 high-end mobile phone chip used in the Galaxy S22 and other Samsung phones; basic nodes, pin controllers,
clock controllers and initial USB support - Input – Samsung keypad driver got a facelift
- PHY – Support for Samsung Exynos990 usbdrd phy, Exynos7870 MIPI phy
- IOMMU – – Add support for reserved memory regions specified by the bootloader (Exynos)
- Pinctrl – Add support for programming wake-up for Google GS101 SoC pin controllers, so the SoC can be properly woken up from low power states.
- SoC Drivers
- Google GS101: Minor improvement PMU binding.
- ExynosAutov920: Add HSI2 system registers binding.
- DTS ARM changes – Just few cleanups based on dtbs_check.
- Samsung DTS ARM64 changes for Linux 6.17
- ExynosAutov920: Add CMU_HSI2 clock controller, remaining SPI nodes
- Google GS101:
- Prepare to switching to architected timer, instead of Exynos MCT as the primary one.
- Add secondary Maxim MAX77759 PMIC to Pixel boards, managing USB Type-C and charger.
- Add incomplete description of the primary Samsung S2MPG10 PMIC. Several bits, like regulators, are still missing, though.
- Add also secondary reboot-mode, via MAX77759 NVMEM.
- Switch the primary (SoC) reboot handler to Google-specific google,gs101-reboot which gives additional GS101 features (cold and
warm reboots). This change will affect other users of this DTS, but to our knowledge, there is only Android, from which this change originates.
- Exynos7870
- Fix speed problems in USB gadget mode.
- Correct memory map to avoid crashes due to secure world.
- Tesla FSD and Google GS101 DTS are handled via Samsung SoC tree, so the clean dtbs_check rule applies there as well – mention this in their maintainer entries.
- Include Tesla FSD DTS patterns in Samsung SoC tree to document how the patches actually travel.
- Defconfig changes
- Multiple SoCs (including Samsung, Apple): switch sound to module from a built-in, because it is not necessary for booting. Also drop
redundant sound codec options. - Enable PMIC drivers for Google GS101 Pixel 6 phones: MAX77759 and Samsung PMIC over ACPM protocol.
- Multiple SoCs (including Samsung, Apple): switch sound to module from a built-in, because it is not necessary for booting. Also drop
- New Device – Samsung Galaxy S22+ (SM-S906B), called G0S.
- Add support for the Exynos 2200 high-end mobile phone chip used in the Galaxy S22 and other Samsung phones; basic nodes, pin controllers,
- Qualcomm
- PHY
- Added Qualcomm Milos Synopsys eUSB2 PHY, SM8750 QMP phy, M31 eUSB2 PHY driver
- Qualcomm refactoring of UFS PHY reset and UFS driver support for phy calibrate API
- Qualcomm repeater override properties, qmp pcie bindings fix for clocks and initialization sequence for firmware power down case
- Pinctrl
- Added Qualcomm PMIV0104, PM7550 and Milos pin control support; Because of unhelpful numbering schemes, the Qualcomm driver now needs to start to rely on SoC codenames
- Handle multiple TLMM regions in the Qualcomm driver
- DMA Engine – Add Qualcomm Milos GPI, sc8280xp GPI support
- PCIe controller driver
- Add DT binding and driver support for SA8255p, which supports ECAM for Configuration Space access
- Update DT binding and driver to describe PHYs and per-Root Port resets in a Root Port stanza and deprecate describing them in the
host bridge; this makes it possible to support multiple Root Ports in the future - Add Qualcomm QCS615 to SM8150 DT binding
- Add Qualcomm QCS8300 to SA8775p DT binding
- Drop TBU and ref clocks from Qualcomm SM8150 and SC8180x DT bindings
- Document ‘link_down’ reset in Qualcomm SA8775P DT binding
- Add required PCIE_RESET_CONFIG_WAIT_MS delay after Link up IRQ
- Soundwire – Qualcomm updating driver debug spew
- Clock driver
- Global, display, gpu, video, camera, tcsr, and rpmh clock controller for the Qualcomm Milos SoC
- Camera, display, GPU, and video clock controllers for Qualcomm QCS615
- Video clock controller driver for Qualcomm SM6350
- Camera clock controller driver for Qualcomm SC8180X
- Move Qualcomm PLL configuration to really probe across a variety of platforms, in order to handle the clock controllers powered by multiple power domains.
- Replace round_rate() with determine_rate() across the Qualcomm clock implementations
- Enable GDSC hardware control for video clock controller GDSCs in a few platforms.
- Fix GE PHY reset on Qualcomm IPQ5018, broken NSS port6 frequency table on Qualcomm IPQ8074, add missing video resets on Qualcomm X1E80100 and keep the XO clock always on Qualcomm IPQ5018.
- IOMMU – Arm SMMU:
- Devicetree bindings update for the Qualcomm SMMU in the “Milos” SoC
- Support for Qualcomm SM6115 MDSS parts
- Disable PRR on Qualcomm SM8250 as using these bits causes the hypervisor to explode
- WiFi – Qualcomm/Atheros (ath12k):
- Fix scan on multi-radio devices
- More EHT/Wi-Fi 7 features
- Encapsulation/decapsulation offload
- Bluetooth – Add one more ID 0x28de:0x1401 for Qualcomm WCN6855 (btusb)
- Regulator – Added Qualcomm PM7550 and PMR735B
- Sound – Support for ASoC in Qualcomm QCS8275
- Driver updates
- Perform input validation in the MDT loader, as this was not properly done in the non-remoteproc cases.
- Fix endian issues in the QMI encoder/decoder.
- Support reading DDR statistic using the Qualcomm stats driver.
- Add support for reading TME firmware details to the socinfo driver.
- Document the Kryo 470 CPU, and add SM7150 to the DCC to DeviceTree bindings.
- Make the rpmh RSC driver support version 4 of the IP block.
- Add SM7635 family and related PMICs to the socinfo driver. Also add support for retrieving the bootloader build details.
- Arm64 device tree updates
- DB410c – D3 camera mezzanine is converted to an overlay.
- MSM8976 – SDC2 pinctrl definitions are introduced and BLSP DMA controller is marked to be managed by another entity.
- QCM2290 – Add camera subsystem
- QCS615 – Add and enable remoteproc and related devices.
- Add and enable Video encoder/decoder on QCS8300 and SA8775P.
- SA8775P – Add CPU OPP tables for scaling DDR/L3 bandwidth based on CPU frequency, add L3 interconnect definitions, DSI, and video
encoder/decoder support. - SDM850 – Enable the SLPI remoteproc on Lenovo Yoga C630.
- SM6350 – Add the video clock controller, APR and some audio-related services.
- Describe the camera subsystem on SM8550 and add Iris video encoder/decoder node for SM8650.
- SM8750 – Introduce UFS and Soundwire support, enable these and describe the sound hardware on MTP and QRD.
- SC8180X – Add camera clock controller.
- X Elite
- Dell XPS13 – Add WiFi and Bluetooth pwrseq and enable the fingerprint sensor.
- HP Omnibook X14 – Add USB1 SS1 SBU mux and do some misc cleanup.
- Replace the thermal zones inherited from X Elite with X Plus-specific ones.
- Add missing interrupts and clean up unrelated clocks for PCIe controllers across a variety of platforms.
- Arm32 device tree updates
- Add aliases for MMC controllers on MSM8974, enable USB charging on the Sony Xperia Rhine platform, and add new DeviceTree for the Sony Xperia Z Ultra device.
- Tidy up interrupts specifiers on MSM8960 by using macro constants.
- Arm64 defconfig updates for Linux 6.17 – Enable camera and video clock controllers for SM8450, SM8550, and SM8650 platforms.
- New Device – Asus Zenbook A14 Qualcomm Snapdragon X1 laptop
- PHY
- MediaTek
- Add support for MT6572, an older mobile phone chip that was extremely popular a decade ago, but never got upstreamed until now
- Watchdog – Adjust keepalive timeout to avoid MediaTek WS0 race condition
- WiFi – mt76
- Firmware recovery improvements
- More MLO work
- Bluetooth – Add new VID/PID 0489/e14e + 2c7c/7009 for MT7925 (btusb)
- Pinctrl – Add pinctrl driver for MT8189
- Driver updates for Linux 6.17 – cleanup commit for the mtk-mutex driver, clarifying the usage of the MUTEX_MOD1, MUTEX_MOD2 registers
for applying display controller sub-component mute settings on all MediaTek SoCs. - ARM64 DTS updates
- Added reserved memory for AFE DMA for MT8173/83/86/92, aligning audio-related memory allocation between all of the Chromebook SoCs
- Added second source components for Steelix, and marked the multiple trackpads for Asurada as such
- MediaTek Genio 1200: Enabled support for the Audio DSP and sound
- MediaTek Genio 510/700/1200: Added support for the PMIC Keys
- MediaTek MT7988: Added Cache Coherent Interconnect for CPU DVFS
- MT7988A-BananaPi-R4: Enabled CCI, added GPIO LEDs
- Airoha EN7581: Added Ethernet nodes to the Evaluation Board
- Arm64 defconfig – N/A
- New device – Steelix Squirtle Chromebook (Mediatek MT8186)
- Other new Arm hardware platforms and SoCs
- ASPEED – Two new ASPEED BMC-based motherboards
- Axiado – Axiado AX3000 embedded chip with Cortex-A53 CPU cores described as a “Trusted Control/Compute Unit” that can be used as a BMC in servers. It supports 10Gbps Ethernet and comes with a 4TOPS NPU.
- CIX – P1 12-core Cortex-A720/A520 processor added. One of the first to make use of ARMv9.2 instructions.
- Marvell – Marvell PXA1908 64-bit mobile phone chip (rather old chip)
- NVIDIA – Added Tegra264 support. That’s the new Thor chip found in Jetson T5000 module. Minimal support for now, and not much information is public about it
- NXP – Industrial boards based on i.MX6, i.MX 8, and i.MX 95 SoCs
- Renesas – Renesas R-Car V4M-7 (R8A779H2) is an updated version of R-Car V4M (R8A779H0) used in automotive applications
- Sophgo – SG2000 is a dual architecture SoC (ARM + RISC-V). RISC-V was already supported, but Linux 6.17 adds Arm support.
- STMicro – Industrial board based on STM32
- Texas Instruments – AM62D2 support; industrial boards based on AM33 and AM62D2
- Raspberry Pi-specific changes
- DRM – Raspberry Pi 7″ 720×1280 support (ilitek-ili9881c)
- Driver for Raspberry Pi RP1 multifunction I/O chip, found in the Raspberry Pi 5, along with hooking it up to the pinctrl and clk frameworks.
- DRM/FourCC – Add RGB161616 and BGR161616 formats – Not for Pi only, but it will be used by the Raspberry Pi PiSP Back End, supported by a V4L2 driver in kernel space and by libcamera in userspace, which uses the DRM FourCC identifiers
RISC-V updates in Linux 6.17
- KVM
- Enabled ring-based dirty memory tracking
- Improved perf kvm stat to report interrupt events
- Delegate illegal instruction trap to VS-mode
- MMU-related improvements for KVM RISC-V for upcoming nested virtualization
- Defconfig
- Spacemit – Enable sdhci and pwm drivers for the k1 soc in defconfig, the former as a builtin and the latter a module.
- Starfive – Remove a no-longer-required config for the Starfive sound driver.
- AMD – Add 64-bit Microblaze V CPU compatible.
- Andes Technologies – QiLai quad-core AX45MP SoC found in Voyager Micro-ATX board.
- Sophgo
- CV18xx
- Add the RTCSYS MFD node, which provides rich control registers for soc power management and other rich control functions;
- Add the reset controller node and add related reset properties for other peripherals
- Add Ethernet controller-related nodes to the soc and enable Ethernet device control for HuashanPi.
- SG2042
- Add ISA extensions such as xtheadvector/ziccrse/zfh for cpu cores
- Add Ethernet controller support
- Add EVB_V1 & EVB_V2 boards
- SG2044
- Add PMU configuration
- Add ISA extensions ziccrse and add missing riscv,cbop-block-size property for cpu cores
- Add more peripheral nodes for SoC after the clock controller is ready, such as MSI/PCIe/pwm/SPI-NOR, etc. This PR also add HWMON MCU device for the sophgo-srd3-10 board and reserve uart0 node for sophgo-srd3-10 board because uart0 is already occupied by the firmware.
- Moves sophgo.yaml from the riscv directory to soc/sophgo for sharing between riscv and arm. CV18xx SoC contains a RISC-V big core and an ARM64 big core. Moving sophgo.yaml to a shared location will help us add support for ARM cores to the CV18xx chip in the future.
- CV18xx
- SpacemiT
- Devcie tree changes
- Add DMA translation buses
- Add PWM support
- Add Reset support
- Add eMMC node
- Devcie tree changes
- StarFive – Sort properties on the MilkV Mars and add the power status LED to all JH7110 boards.
Note there’s been some drama with RISC-V Linux this around, and some changes did not make it due to “garbage pull requests“. That will be for Linux 6.18.
MIPS changelog
As usual, MIPS only add minimal changes:
- DT updates for ralink, mobileye and atheros/qualcomm
- Clean up of mc146818 usage
- Speed up delay calibration for CPS
- Other cleanups and fixes
For even more details, you can check the Linux 6.17 changelog (commit messages only) generated with the command git log v6.16..v6.17-rc7 --statlisting commit messages only. Kernelnewbies also has its own list of Linux 6.17 changes.

Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.






Typo in “RISC-V updates in Linux 6.7”
… Linux 6.17
I liked the garbage mail and especially the lame answer 😁
How does this maintainer want to start a real flamewar with such a tame and polite answer aka excuse
Well done guys, loving it
P.S. text sanitizing ate my sarcasm tags 😽