Linux 6.11 Release – Notable changes, Arm, RISC-V and MIPS architectures

Linux 6.11 is out with Linus Torvalds’ announcement on the Linux kernel mailing list (LKML):

I’m once again on the road and not in my normal timezone, but it’s Sunday afternoon here in Vienna, and 6.11 is out.

The last week was actually pretty quiet and calm, which is nice to see. The shortlog is below for anybody who wants to look at the details, but it really isn’t very many patches, and the patches are all pretty small. Nothing in particular stands out – the biggest patch in here is for Hyper-V Confidential Computing documentation.

Anyway, with this, the merge window will obviously open tomorrow, and I already have 40+ pull requests pending. That said, exactly _because_ I’m on the road, it will probably be a fairly slow start to the merge window, since not only am I on my laptop, there’s OSS Europe starting tomorrow and then the kernel maintainer summit on Tuesday. So if I don’t get to your pull request immediately, please be patient.

But before that merge window activity, please do give the latest release a try!

Linus

The previous Linux 6.10 release brought us networking performance improvements through optimized zero-copy send operations and bundling multiple buffers for send and receive operations, introduced the mseal() system call to allow a process to forbid future changes to portions of its address space, added Bluetooth support to some MediaTek MT7922 wireless module found in mini PCs and laptops, and some file systems changes for NFS, XFS, FUSE, and overlayfs, among many other changes.

Linux 6.11 release

Some Linux 6.11 highlights

Some notable changes in Linux 6.11:

  • New implementation of the AES-GCM cipher for x86-64 systems with performance improvements of up to 162%
  • X86 kernels can now run as a guest under AMD’s SEV-SNP secure encrypted virtualization machinery using a secure VM service module. See related LWN.net article for details.
  • New power-sequencing subsystem designed to ensure that a system’s devices are brought up in the right order. This appears to be mostly useful for systems using the WCN family of BT/WLAN chips from Qualcomm. Check out the commit for additional details.
  • Linux 6.11 now implements a “sloppy logic analyzer” module that can turn a set of GPIO lines into a basic logic analyzer. As its name implies, it’s not perfect, but can be a helpful first view when remote debugging.

Arm architecture changes

  • 64-bit Arm architecture now supports CPU hotplug on ACPI systems
  • Allwinner
    • H616
      • Add IOMMU driver
      • Add LRADC (low resolution ADC for resistor network based keys)
      • Crypto engine – Add Allwinner H616 support to sun8i-ce
    • H700 – Add Allwinner H700 speed bin to the sun50i cpufreq driver
    • DTS changes
      • Add cache information for A64, H6, and H616 SoCs
      • Correct model names and descriptions for Pine64 boards
      • Add GPADC (general purpose ADC) for H616 SoC
      • Add ADC joysticks based on GPADC for anbernic-rg35xx-h board
      • Enable DVFS for rg35xx boards
    • New Devices – N/A
  • Rockchip
    • Rockchip PCIe controller driver:
      • Assert PERST# for 100ms after power is stable
      • Wait PCIE_T_RRS_READY_MS (100ms) after reset before starting configuration
      • Use GPIOD_OUT_LOW flag while requesting ep_gpio to fix a firmware crash on Qcom-based modems with Rockpro64 board
    • Rockchip DesignWare PCIe controller driver
      • Factor common parts of rockchip-dw-pcie DT binding to be shared by Root Complex and Endpoint mode
      • Add missing INTx signals to common DT binding
      • Add eDMA items to DT binding for Endpoint controller
      • Fix initial dw-rockchip PERST# GPIO value to prevent unnecessary short assert/deassert that causes issues with some WLAN controllers
      • Refactor dw-rockchip and add support for Endpoint mode
      • Call pci_epc_init_notify() and drop dw_pcie_ep_init_notify() wrapper
      • Add error messages in .probe() error paths to improve user experience
    • Clock driver
      • Export more clocks for Rockchip rk3128 peripherals
      • Convert Rockchip clk drivers to use kmemdup_array()
      • Drop CLK_NR_CLKS from Rockchip rk3128 and rk3188 binding headers
    • New devices
  • Amlogic
    • Clock driver
      • Minor Amlogic S4 clock fixes
      • DT bindings Yaml conversion of the Amlogic AXG audio controller
      • Amlogic C3 clock controllers support
      • Amlogic clk flag added to skip init of already enabled PLLs and avoid relocking
      • Amlogic A1 DT bindings updates for system PLL support
    • Amlogic drivers
      • Add S905L & A113X SoC IDs
      • Add missing MODULE_DESCRIPTION() macro for meson_sm driver
    • Amlogic ARM64 DT changes for Linux 6.11:
      • Amlogic A4 Power Domain
      • A bunch of DT fixes to almost solve all remaining check errors
      • Amlogic S4 PWM
      • Fixes for:
        • SM1 SPDIF compatibles
        • Bump G12 SPDIF driver strength
        • Add power domain to HDMI TX
        • Correct HDMI TX clocks
    • New devices
      • OSMC Vero 4K TV box (Amlogic S905X)
      • Dreambox One & Two TV boxes (Amlogic S922X)
      • GXLX/S905L p271 Reference Boards
  • Samsung
    • PHY driver
      • Added Samsung Exynos gs101 drd combo PHY
      • Updates to Exynos usbdrd driver
    • Exynos PCIe controller driver – Use bulk clock APIs to simplify clock setup
    • Samsung DTS ARM64 changes
      • Google GS101 – Minor cleanup and add fake regulators to USB phy, to satisfy dtbs_check. The PMIC providing these regulators is not yet
        implemented.
      • Exynos850: Add True Random Number Generator.
    • Defconfig changes – N/A
    • New Devices – N/A
  • Qualcomm
    • Added support for Qualcomm QCS8550, a variant of SM8550 for IoT devices
    • PHY – Qualcomm SC8180x USB uniphy, IPQ9574 QMP PCIe phy
    • Power Supply – Enable battery support for Qualcomm Snapdragon X Elite
    • Pinctrl – New drivers for Qualcomm PMC8380, SM4250, SM4250 LPI
    • PCIe controller driver
      • Make the MHI reg region mandatory for X1E80100, since all PCIe controllers have it
      • Prevent use of uninitialized data and possible error pointer dereference\Return error, not success, if dev_pm_opp_find_freq_floor() fails
      • Add Operating Performance Points (OPP) support to scale performance state based on aggregate link bandwidth to improve SoC power efficiency
      • Vote for the CPU-PCIe ICC (interconnect) path to ensure it stays active even if other drivers don’t vote for it
      • Use devm_clk_bulk_get_all() to get all the clocks from DT to avoid writing out all the clock names
      • Add DT binding and driver support for the SA8775P SoC
      • Add HDMA support for the SA8775P SoC
      • Override the SA8775P NO_SNOOP default to avoid possible memory corruption
      • Make sure resources are disabled during PERST# assertion, even if the link is already disabled
      • Use new generic dw_pcie_ep_linkdown() to handle link-down events
      • Add DT and endpoint driver support for the SA8775P SoC
      • Add Hyper DMA (HDMA) support for the SA8775P SoC and enable it in the EPF MHI driver
      • Set PCIE_PARF_NO_SNOOP_OVERIDE to override the default NO_SNOOP attribute on the SA8775P SoC (both Root Complex and Endpoint mode) to avoid possible memory corruption
    • ASoC – Add support for Qualcomm LPASS v2.5 and WCD937x
    • Clock driver
      • Added Qualcomm SM7150 camera, display and video clk drivers
      • Added Qualcomm QCM2290 GPU clk driver
      • Added Qualcomm QCS8386/QCS8084 NSS clk driver
      • Added Qualcomm SM8650 camera and video drivers
      • Various fixes
    • WiFi
      • Qualcomm (ath10k) – LED support for various chipsets
      • Qualcomm (ath12k):
        • remove unsupported Tx monitor handling
        • support channel 2 in 6 GHz band
        • support Spatial Multiplexing Power Save (SMPS) in 6 GHz band
        • support multiple BSSID (MBSSID) and Enhanced Multi-BSSID Advertisements (EMA)
        • support dynamic VLAN
        • add panic handler for resetting the firmware state
        • DebugFS support for datapath statistics
        • WCN7850: support for Wake on WLAN
    • Driver updates
      • Support for Shared Memory (shm) Bridge is added, which provides a stricter interface for handling of buffers passed to TrustZone.
      • The X1Elite platform is added to uefisecapp allow list, to instantiate the efivars implementation.
      • A new in-kernel implementation of the pd-mapper (or servreg) service is introduced, to replace the userspace dependency for USB Type-C and battery management.
      • Support for sharing interrupts across multiple bwmon instances is added, and a refcount imbalance issue is corrected.
      • The LLCC support for recent platforms is corrected, and SA8775P support is added.
      • A new interface is added to SMEM, to expose “feature codes”. One example of the use case for this is to indicate to the GPU driver which frequencies are available on the given device.
      • The interrupt consumer and provider side of SMP2P is updated to provide more useful names in interrupt stats.
      • Support for using the mailbox binding and driver for outgoing IPC interrupt in the SMSM driver is introduced.
      • socinfo driver learns about SDM670 and IPQ5321, as well as get some updates to the X1E PMICs.
      • Adds a quirk to skip using the newly introduced SHM Bridge implementation while regressions are being investigated.
      • One occurrence of return no_free_ptr() is replaced with return_ptr() to make code easier to read. llcc, mdt_loader, ocmem, pdr, socinfo and wcnss drivers gets simplified using cleanup.h.
    • ARM32 DTS updates
      • The Motorola Moto G and Motorola Moto G 4G gains accelerometer and magnetometer support, with the latter also getting framebuffer supplies and a temperature sensor wired up.
      • The SMBB (charger block) is enabled across all MSM8x26 Lumia devices, as this is used for USB state changes.
      • The operating mode for SDC regulator is set to HPM on Sony Xperia “Shinano” family to avoid brownouts on uSD-cards.
      • The panel on LGE Nexus 5 is connected to the backlight, to make this turn off on blanking.
      • MSM8974 is transitioned to use the mailbox-abstraction for invoking PC interrupts on remote processors.
    • Arm64 DTS updates for Linux 6.11
      • IPQ6018 – Added an SDHCI controller
      • IPQ9574 – MDIO bus is described.
      • Improvements to MSM8916-based devices with sound and modem support added to Acer Iconia Talk S and GPLUS FL8005A, the latter also gaining BMS support. Samsung Galaxy devices gains PMIC and charger definitions, NFC support and MUIC. Accelerometer and magnetometer support is added to the Samsung Galaxy Grand Prime devices.
      •  MSM8976 – Definitions for IOMMU, the display subsystem, wifi subsystem, and Adreno GPU are added.
      •  MSM8996 – UFS core clock frequencies are specified, FastRPC nodes are added for the audio DSP, glink-edges are described where available, the display subsystem reset is added.
      • Venus is introduced on MSM8998 and the “No MSA Ready” quirk is added to allow ath10k to come up.
      • GPU support is added to QCM2290 and enabled on the RB1 development board. The I2C controller used for communicating with the LT9611UXC HDMI
        bridge is temporarily replaced with i2c-gpio while issues with the builtin controller is diagnosed. The same is done for RB2, on the QRB4210 platform. On RB2 TCPM max current draw is corrected and the vreg_l9a regulator is marked as always on to match expectations.
      • QDU1000 platform – USB is added, secure QFPROM is introduced to allow LLCC to access OTP data. USB is enabled on the two IDP boards.
      • SA8775p – Gains PCIe endpoint definitions, LLCCC support, IMEM and PIL info regions. Nodes are marked as dma-coherent as needed, a dedicated carveout for shared memory bridge allocations is introduced. The SA8775P ride device is split into the two versions r2 and r3.
      •  SC7180 – Trogdor clamshell/detachable fragments are refactored for convenience, and pwmleds are disabled where unused.
      • SC7280 – APR nodes for interfacing with the audio services in audio DSP firmware are introduced. The Qualcomm SMMU TBUs are described, to enable improved debug support. QoS clocks are added to interconnects, as needed in order to operate the QoS settings on some buses. SuperSpeed in park is disabled for the primary DWC3 instance to address host controller issues under load.
      • The PM8008 (camera PMIC) is introduced in Fairphone 5, regulators are named for better output, and firmware name for IPA is adjusted to the preferred file format. The HDMI bridge on Rb3gen2 is described, rtc, gpi-dma and qup nodes are enabled.
      • The Type-C port manager found in PM7250b is enabled, for targets not using pmic-glink firmware for Type-C management.
      • SC8180X – A number of smaller corrections, and some cleanups related to both functional issues and DeviceTree validation.
      • The PSHOLD node is marked reserved, after reports that this causes issues during shutdown. Description of the USB signals are updated to match the signal path. The PM8008 camera PMIC is added to Lenovo ThinkPad X13s.
      • The PM660 PMIC is extended with charger and rradc definitions, and the SDM670 gains a SMEM region definition.
      • SDM845 – The Qualcomm SMMU TBU nodes are described to enable improved debug output during faults etc. The UFS PHY is associated with its GDSC, and the DisplayPort controller is wired up to the QMP PHY.
      • The Lenovo Yoga C630 Embedded Controller is introduced, adding battery and Type-C port management and altmode support. The C630 also gains WiFI calibration variant information, to cause selection of the right data. The missing IPA firmware path is corrected.
      • SDX75 platform – AOSS, IPCC, SDHCI, TCSR, modem SMP2P, I2C and SPI nodes are introduced. SD-card support is added to the IDP board.CPUfreq support is introduced for the SM4450 platform.
      • Missing reset is added to the SDHC controller of SM6115. The UFS PHY is associated with its GDSC, so is the PHY on SM6350.
      • On Fairphone 4, the camera PMIC (PM8008) is introduced, regulators are named for more informative debug output, and USB role switching is enabled.
      • On the Fairphone 3, vibrator support is added and enabled.
      • SM8250 – The USB signal paths are properly described in the OF graph, the UFS PHY gains its required power-domains description. Thanks to the introduction of PCI power sequence support, the QRB5165 RB5 WiFi chip can now be powered up, so this is added.
      • Touchscreen interrupt flags are corrected across a number of Sony Xperia devices, to remove the unexpected traces from downstream.
      • SM8450 – An OPP-table is introduced for the PCIe controllers to specify the bandwidth and performance state requirements for the different generations and link widths. For this, the PCIe controllers also gain interconnect path definitions. The LLCC register layout is corrected, and the UFS PHY is associated with its GDSC.
      • SM8550 – Development boards speaker port mapping is added. WiFi support is finally enabled on the QRD board.
      • SM8650 – Video and camera clock controller are introduced. SCM node gains details necessary to trigger USB ramdump (download mode) upon a system crash. WiFi support and speaker port mapping is added to the QRD and the newly introduced HDK. On the MTP the USB Type-C connector is described to be routed to the PHY. In addition to the base HDK, a Display Card overlay is also introduced.
      • Snapdragon X1 Elite – bwmon, fastrpc and GPU support, tsens, and the missing PCIe 6a instance are added. Thermal zones are described. Pmic-glink is introduced for both CRD and QCP devices, and remaining PMICs are described. Audio support is also added to the QCP. An explicit, larger, chunk of CMA memory is added to the various devices in order to compensate for the lack of IOMMU for PCIe.
      • Across a wide range of platforms, the thermal zone polling delays are removed as supplies are interrupt-driven anyways. Also thermal related is the introduction of GPU thermal throttling, across many SoCs.
      • The old SMSM implementation is finally transitioned to using the mailbox-based description and implementation for invoking interrupts on remote processors. As such interrupt-triggering is converted to use this mechanism on related platforms.
      • The usb-role-switch property is removed for all USB instances hard-coded to either host or peripheral across a range of boards.
    • Arm64 defconfig updates for Linux 6.11
      • Enables the newly introduced Shared Memory Bridge driver which improves the mechanism with which buffers are shared with TrustZone.
      • Turns MSM8996, SM8150 and SM8350 interconnect providers to builtin, as debug UART now depends on these. The SM8350 GPU clock controller is enabled.
      • The secure QFPROM driver is enabled, to provide access to OTP configuration for the LLCC driver on the QDU1000 platform.
    • New devices
      • Asus Vivobook S15 and Lenovo Yoga Slim7x laptops based on the Qualcomm x1e80100 (Snapdragon X1 Elite) chip
      • Motorola Moto E 2015 LTE (surnia)
      • Motorola Moto G 2015 (osprey)
      • Motorola Moto G4 Play (harpia)
      • Qualcomm AIM300 AIoT development board
      • Qualcomm SM8650 (Snapdragon 8 Gen 3) Hardware Development Kit (HDK)
      • SHIFTphone 8
      • Samsung Galaxy Z Fold5
      • Schneider HMIBSC board DTS – An IIoT Edge Box Core board based on the Qualcomm APQ8016E SoC.
      • TP-Link Archer AX55 v1 router
      • Sony Xperia Z3 Compact
      • HTC One (M8)
      • Samsung Galaxy Tab 4 8.0 Wi-Fi, Samsung Galaxy Grand 2, and Samsung Galaxy Note 3 devices.
  • MediaTek
    • Added support for Airoha EN7581 10G-PON network chip  related to the MediaTek MT7981 (Filogic 820)
    • DRM
      • Convert to platform remove callback returning void-
      • Drop chain_mode_fixup call in mode_valid()
      • Fixes the errors of the MediaTek display driver found by IGT
      • Add display support for the MT8365-EVK board
      • Fix bit depth overwritten for mtk_ovl_set bit_depth()
      • Fix possible_crtcs calculation
      • Fix spurious kfree()
    • MFD – Added AUXADCs to MediaTek MT635{7,8,9} Power Management ICs
    • Ethernet switch – mt7530: add support for bridge port isolation
    • WiFi – MediaTek (mt76):  mt7925 Multi-Link Operation (MLO) support
    • Interconnect – New driver for MediaTek MT8183/8195 platforms
    • Driver updates for Linux 6.11
      • Adds the previously missed Tone Curve Conversion (TCC) MuteX bit to enable the same in MDP3 on the MT8188 SoC, disables 9-bit Alpha for display HDR support in MT8195 and
        adds math operation support in the Global Command Engine for all MediaTek SoCs, which will be used in the near future in the ISP driver.
    • Defconfig updates – N/A
    • ARM32 DTS updates
      • adds a single commit that cleans up the drive-strength value assignment on all devicetrees using the deprecated MTK_DRIVE_(x)mA definition.
    • ARM64 Devicetree updates
      • MT7981 router SoC – pinctrl support and enablement of its watchdog, eFuse/nvmem, I2C and integrated WiFi controller.
      • MT7988 – Gains support for its I2C, PWM, and USB XHCI controllers.
      • Genio 1200-based Radxa NIO12L board gets support for USB Role Switching and proper PCI-Express controller PM suspend and resume, other than finally enabling CPU and GPU frequency
        and voltage scaling for improved efficiency.
      • MT8188 – Support for integrated power domains,Global Command Engine (GCE) mailboxes, initial basic support for the VDO0/1 blocks for multimedia, and its GPU (ARM Mali G57-MC3, Valhall-JM) with Panfrost.
      • Cleanups and improvements for all machines using the MT8183, MT8192, MT8195/MT8395 SoCs and adds generation of symbols on base devicetrees of machines using Device Tree Overlay(s) (DTBO).
      • MediaTek Smart Voltage Scaling (SVS) is now fully working on the above SoCs, bringing further power efficiency improvements;
      • Thermal zones were refactored on MT8183 for consistency with the other MediaTek SoCs and for readability
      • Sound DAI links are now consistently specified in device tree on MT8195 and MT8186 machines
    • New devices
      • MT7981 – Cudy WR3000 V1 router and the OpenWRT One.
      • MT7986 – BananaPi R3 Mini.
      • MT8390 – Genio 700 EVK board
      • MT8395 Genio 1200 – Kontron 3.5″-SBC-i1200
      • Chromebooks – MT8195-powered HP Chromebook X360 13b-ca0002sa, MT8186-powered Acer Chromebook 311.
  • Other new Arm hardware platforms and SoCs
    • Marvell – Four machines from Solidrun based on Marvell cn913x, replacing the older Armada 8000-based counterparts: SolidRun CN9132 COM-Express Type 7 module,
      SolidRun CN9130 som and Clearfog boards, and SolidRun CN9131 SolidWAN.
    • NXP
      • Added i.MX95, a variant of i.MX93 with six Cortex-A55 cores instead of just two as well as a GPU and more high-speed I/O devices.
      • Six NXP i.MX-based machines including the NXP i.MX95 19×19 EVK board
  • Raspberry Pi-related changes
    • Add BCM2712 SoC support
    • Media – Support for Raspberry Pi PiSP Backend (BE) ISP driver

RISC-V Linux 6.11 changelog

  • Support for various new ISA extensions:
    • The Zve32[xf] and Zve64[xfd] sub-extensions of the vector extension
    • Zimop and Zcmop for may-be-operations
    • The Zca, Zcf, Zcd and Zcb sub-extensions of the C extension
    • Zawrs
  • riscv,cpu-intc is now dtschema
  • A handful of performance improvements and cleanups to text patching
  • Support for memory hot{,un}plug
  • The highest user-allocatable virtual address is now visible in hwprobe
  • Allwinner
    • Add system LDOs to D1s SoC
    • New devices – ClockworkPi and DevTerm based on Allwinner D1
  • Microchip PolarFire- Added BeagleV Fire SBC
  • SOPHGO
    • SG2002 – clocksource/event driver: Add the DT bindings for the SOPHGO SG2002 clint (Core-Local Interrupt Controller) on RiscV
    • SG2042 – Added clock driver
  • Starfive
    • Mars and VisionFive 2 get their PCIe configuration added
    • New board – Pine64 Star64 (JH7110)
  • T-Head
    • Clock driver – AP sub-system clock controller in the T-Head TH1520
    • Added SBI PMU events node for the TH1520

MIPS updates

While there’s still some activity, the changelog for the MIPS architecture is getting smaller and smaller:

  • Use improved timer sync for Loongson64
  • Fix address of GCR_ACCESS register
  • Add missing MODULE_DESCRIPTION
  • Add support for Realtek RTL9302C
  • Add support for Mobileye EyeQ6H
  • Add support for Mobileye EyeQ OLB system controller
  • Improve r4k clocksource
  • Add mode for emulating ieee754 NAN2008
  • Rework for BMIPS CBR address handling
  • Fixes for Loongson 2K1000
  • Defconfig updates
  • Cleanups and fixes

A more complete Linux 6.11 changelog with all commit messages has been generated using the command git log v6.10..v6.11-rc7 --stat. Another detailed take on Linux 6.11 changes should soon be up on Kernelnewbies.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
2 Comments
oldest
newest
Saket
Saket
1 day ago

Great work to put all this together.

pete
pete
1 day ago

Still missing drivers from mediatek for their wifi card with mt7902 and the realtek ethernet adapters with 8125 and 8126 versions.

Khadas VIM4 SBC