Linux 6.7 release – Main changes, Arm, RISC-V, and MIPS architectures

Linus Torvalds has just announced the release of Linux 6.7, following Linux 6.6 LTS a little over two months ago:

So we had a little bit more going on last week compared to the holiday week before that, but certainly not enough to make me think we’d want to delay this any further.

End result: 6.7 is (in number of commits: over 17k non-merge commits, with 1k+ merges) one of the largest kernel releases we’ve ever had, but the extra rc8 week was purely due to timing with the holidays, not about any difficulties with the larger release.

The main changes this last week were a few DRM updates (mainly fixes for new hw enablement in this version – both amd and nouveau), some more bcachefs fixes (and bcachefs is obviously new to 6.7 and one of the reasons for the large number of commits), and then a few random driver updates. And a smattering of minor noise elsewhere.

The shortlog is appended – there really isn’t much there, you can scroll through it quickly if you care about the details – and this obviously means that tomorrow the merge window for 6.8 opens. I already have two dozen+ early pull requests pending – thank you.

But please do kick the tires of this before the fun of the next development series starts. Ok?


The earlier Linux 6.6 release brought us Intel’s shadow stack hardware support to prevent exploits, the EEVDF (“Earliest Eligible Virtual Deadline First”) task scheduler for lower latency, and faster asynchronous Direct I/O using io_uring, among many other changes.

Linux 6.7 release

Notable changes in Linux 6.7

  • The bcachefs filesystem has been merged to Linux 6.7 with close to 2,800 commits, although it is currently marked as “experimental”. The file system’s website describes bcachefs as a “COW filesystem for Linux that won’t eat your data” or “an advanced new filesystem for Linux, with an emphasis on reliability and robustness and the complete set of features one would expect from a modern filesystem”.
  • Performance improvement to the fair queuing packet scheduler for faster networking with the commit claiming “This series brings a 5% throughput increase in intensive tcp_rr workload, and 13% increase for (unpaced) UDP packets.”
  • Many new features and enhancements to the perf profile tool in Linux 6.7, all listed in the merge message.
  • LoongArch architecture has gained support for virtualization with KVM. See the documentation commit for a few more details.
  • Removal of support for Intel’s Itanium (ia64) architecture, although the door is open for a comeback…

Arm changes in Linux 6.7

There were many updates and changes to the Arm architecture in Linux 6.7:

  • Enable or disable 32-bit emulation on x86-64 kernels with the ia32_emulation= command-line parameter for improved security when 32-bit emulation is not needed. The IA32_EMULATION_DEFAULT_DISABLED configuration option controls whether 32-bit emulation is enabled by default
  • Allwinner
    • Pinctrl – Extra GPIO banks for the Sunxi H616
    • Device tree
      • Added V3s nodes for PWM pinctrl, EHCI and OHCI
      • Added interconnect to R40 video codec node
    • New devices and boards
  • Rockchip
    • Power management – Add perf support to the Rockchip DFI (DDR Monitor Module) devfreq-event driver
    • DRM – Add support for displaying 10-bit 4:2:0 and 4:2:2 formats produced by the Rockchip Video Decoder on RK322X, RK3288, RK3328 and RK3399. Also add support for 10-bit 4:4:4 format.
    • ASoC – Convert RK3288 HDMI to GPIO descriptors, convert Rockchip ASoC drivers to GPIO descriptor
    • USB – On Rockchip RK3588, one of the DWC3 cores is integrated weirdly and requires two extra clocks to be enabled. Without these extra clocks hot-plugging USB devices is broken.
    • Display – Document the MIPI DSI and VOP for Rockchip RV1126, both of which are different from other SoC variants
    • Arm64 device tree
      • Add ADC buttons to rk3588-evb1
      • Add NanoPC-T6 PCIe e-key support
    • Arm32 device tree
      • Switch to operating-points-v2 for RK3128’s CPU
      • Add CPU resets for RK3128
      • Add pwm2 and pwm11 nodes for Rockchip RV1126
    • New device – Powkiddy RGB30 portable game console (Rockchip RK3566)
  • Amlogic
    • Watchdog – Add support for Amlogic C3 and S4 SoCs
    • Pinctrl – Add Amlogic T7 pin control driver
    • Clock – Add Amlogic s4 main clock controller support
    • Drivers
      • Correct meson_sm_* API retval handling
      • Use device_get_match_data() in meson SM
    • ARM64 DT changes for Linux 6.7
      • Add audio DT nodes for p200/p201/u200
      • Add a bunch of peripherals for Amlogic-T7 (watchdog, power domain, pinctrl)
      • Add a bunch of peripherals for Amlogic-A1 (clk, usb, efuse, spi, uarts, emmc, ADC, rng, i2c)
      • Add NAND node on Amlogic AXG
      • Again a bunch of DT fixups for DT bindings check
    • Defconfig add various drivers for Amlogic-based boards such as Khadas VIM3 and Hardkernel ODROID-N2:
      • KEYBOARD_GPIO_POLLED=m used to support buttons on pre-G12A boards
        KHADAS_MCU_FAN_THERMAL=m & MFD_KHADAS_MCU=m to control FAN over the MCU on Khadas VIM boards
      • MEDIA_CEC_SUPPORT=y & CEC_MESON_G12A_AO=m to enable the CEC bus
      • RTC_DRV_PCF8563=m to enable support for RTC on most SBC boards
      • VIDEO_MESON_VDEC=m to enable HW Video Decoder
      • MESON_DDR_PMU=m to enable DDR PMU perf driver on G12A & SM1 SoCs
    • New boards
  • Samsung
    • Pinctrl – Few cleanups, improvements (use __counted_by annotation) and finally switch to dynamic allocation of GPIO numberspace.
    • DTS ARM changes for Linux 6.7
      • Switch all sound cards to generic audio-routing property, supported since previous release for Samsung drivers. The old samsung,audio-routing property is deprecated.
      • Correct Exynos4210 thermal by using polling. Apparently interrupts in Thermal Monitoring Unit are broken.
      • Changes for Midas boards (Exynos4412, e.g. Samsung Galaxy S3)
        • Correct the middle hardware key to emit KEY_OK instead of KEY_MENU, because there is already separate touchkey providing KEY_MENU and both label and node name suggests this should be KEY_OK.
        • Use defines for other key input constants.
    • Samsung DTS ARM64 changes
      • Exynos850: Add support for USB 2.0 (host and device) and enable it on E850-96 board, add ramoops reserved memory region to E850-96 board for debugging purposes.
      • Exynos5433: Switch sound card to generic audio-routing property, supported since previous release for Samsung drivers. The old samsung,audio-routing property is deprecated
      • Few cleanups.
    • Defconfig changes
      • Enable several drivers for boards with Samsung Exynos ARM SoCs in exynos_defconfig and multi_v7_defconfig: display PHYs, AHCI DWC, TM2 touchkey (used on ARM and ARM64 Exynos-based boards), Samsung camera sensors and Intersil 29018 light sensor.
      • Enable also IIO in s5pv210_defconfig used by MAX17040 fuel gauge driver.
    • New Devices – N/A
  • Qualcomm
    • IOMMU
      • Device-tree binding update:  Add qcom,sm7150-smmu-v2 for Adreno on SM7150 SoC
      • SMMUv2 – Support for Qualcomm SDM670 (MDSS) and SM7150 SoCs
    • Power management – Add support for several Qualcomm SoC versions to the Qualcomm cpufreq driver
    • Remoteproc – Support for audio, compute and modem DSPs on Qualcomm SM6375, and the audio DSP in SC7180 are introduced. The peripheral NoC clock is dropped from MSM8996 modem DSP, as this is handled through the interconnect provider.
    • Pinctrl
      • MPM pin maps added for Qualcomm MSM8996, SM6115, SM6125 and SDM660
      • MLSP I2C6 function support in Qualcomm MSM8226
    • PHY
      • New support for Qualcomm sa8775p qmp-pcie, IPQ5018, and SC7280 qmp-ufs
      • Qualcomm qmp usb and combo phy updates for v6 register layout
      • Qualcomm eusb2-repeater updates for tuning overrides, regmap fields
    • ASoC – Added ASoC drivers for Qualcomm SM6115 and SC7180 platforms
    • PCIe controller driver:
      • Use PCIE_SPEED2MBS_ENC() to simplify encoding of link speed
      • Add a .write_dbi2() callback so DBI2 register writes, e.g., for setting the BAR size, work correctly
      • Enable ASPM for platforms that use 1.9.0 ops, because the PCI core doesn’t enable ASPM states that haven’t been enabled by the firmware
    • SoC Driver – Support for the Qualcomm Secure Execution Environment firmware interface to access EFI variables on certain devices, and new features for multiple platform and firmware
    • Clock
      • Initial support for the Qualcomm SM4450 Global Clock Controller and SM4450 RPMh clock controllers
      • Add Camera Clock Controller on Qualcomm SM8550
    • WiFi Qualcomm (ath12k)
      • WCN7850:
        • enable 320 MHz channels in 6 GHz band
        • hardware rfkill support
        • enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS to make scan faster
        • read board data variant name from SMBIOS
      • QCN9274: mesh support
    • New SoC – Qualcomm Snapdragon 720G (SM7125) is a close relative of Snapdragon 7c
    • ARM32 DTS updates
      • RPM master stats is introduced for MSM8226 and MSM8974
      • The PCIe PHY of SDX55 is transitioned to the new binding
      • The hall sensor on the Samsung Galaxy Tab 4 is inverted.
      • A number of fixes reported from DeviceTree validation are fixed.
    • Arm64 DTS updates for Linux 6.7
      • With the various QMP PHY bindings having been refactored, SC7180, SC7280, SDM845, SM8150, and SM8250 are transitioned to the new USB/DP combo PHY binding. IPQ6018, IPQ8074 MSM8998, SC7280, SC8180X, SDM845, SM8150, SM8250, and SM8450 are transitioned to the new PCIe PHY binding, and SC8180X is transitioned to the new UFS phy binding.
      • The UFS power supply situation is clarified, and a range of boards across MSM8996, MSM8998, SM4250, SM6115, SM6125, SM8350, SM8450, and SM8550 receives corrections for this.
      • IPQ5018 – Watchdog support is introduced, and the SCM driver has SDI (debug image) enabled – so that it can be disabled.
      • IPQ5332 – USB is enabled.
      • The hwspinlock identifier is corrected across IPQ5332, IPQ6018, IPQ8074 and IPQ9574.
      • The reserved-memory ranges for the remoteprocs on MSM8916 boards are refactored, to reduce the amount of duplicated boilerplate definitions. A number of nodes are transitioned to be disabled by default, to facilitate new boards.
      • Samsung Galaxy Tab A 8.0 and Samsung Galaxy Tab A 9.7 gains display support, and the latter capacitive keys. Samsung Galaxy J5 gains accelerometer support.
      • The Dragonboard 410c gains missing ADC7533 regulator definition, and an overlay forcing the board to operate in host mode, for automation purposes.
      • MSM8976 – The outgoing IPC bits for modem and wcss are corrected, and reserved-memory regions are updated.
      • MSM8992 and MSM8994 – Incorrect reserved-memory regions are corrected
      • The QRB2210 RB1 board gets debug UART moved per hardware update. regulator voltage ranges are corrected, remoteprocs are enabled, USB SuperSpeed PHY is enabled, and GPIO LEDs are introduced for Bluetooth, WiFi and a user LED.
      • SA8775P Ride platform – Interrupts are described for the SGMII PHYs on and the inline crypto engine is introduced for UFS.
      • SC7180  – The audio DSP remoteproc is introduced. Additional SKUs of the Lazor boards are added. The RT5682 audio codec part is reorganized to be
        easier to maintain. On Trogdor devices, the touchscreen and display panels are linked to improve the power cycling behavior across the two.
      • SC7280 – The cpuidle states are rewritten to support OS-initiated PCSI mode. LMH interrupts are added, to receive feedback when throttling occurs. The embedded USB debugger (EUD) description and the dummy usb-c-connector node is removed, as this is not correctly described. The USB3 pipe clock input of the global clock controller is properly described.
      • Modem remoteproc is introduced on SDM630, and the SDM670 PDC mapping is corrected.
      • SDM845 – MTP PCIe support is introduced. The volume down and reset buttons are defined. Remoteproc firmware names and the WiFI configuration is corrected. On Sony Xperia XZ2, XZ2 Compact, and XZ3 GPIO lines names are provided for TLMM and PMICs. The camera regulators are also added.
      • SM6125 – Display hardware blocks are added and enabled on Sony Xperia 10 II.
      • SM8150 – The ref clock is wired up to PCIe PHY
      • On SM8250/QRB5165, and the RB5 board, the DisplayPort controller and the TCPM is introduced, with all the plumbing to get USB role and orientation switching, as well as DisplayPort altmode to work. Interconnects and power-domains are also described for the QUPs on this platform.
      • Previously ignored PMICs are described for the SM8350 Hardware Development Kit (HDK), and PMR735a regulators are introduced. The pinctrl state for uart18 is corrected.
      • On SM8450 HDK audio routes are corrected, to enable the analog microphones on the board. The addition of the PRNG is reverted, in favor of an upcoming additon of a true RNG.
      • Constants are replaced with QCOM_SCM_VMID_* defines on a variety of boards.
      • The SM8550 QRD board gets Bluetooth support, and the camera clock controller is described.
      • A number of fixes are introduced in a variety of platforms and boards, to align with Devicetree bindings.
    • Arm defconfig updates – N/A
    • Arm64 defconfig updates
      • Enable the DisplayPort altmode required to get DisplayPort output to work on devices like Qualcomm Robotics RB5 platform.
      • Enable the NB7VPQ904M SuperSpeed redriver driver, used in SM8550
      • Enable LPASS pinctrl driver for SM6115 and SM8350
      • Enable M31 USB phy driver found in IPQ5332.
    • New devices and boards
      • Xiaomi Redmi Note 9 phones based on the Snapdragon 720G
      • Fairphone 5 based on QCM6490
      • BQ Aquaris M5 based on MSM8939
  • MediaTek
    • Remoteproc – Support for controlling the second core in Mediatek’s SCP dual-core setup is introduced
    • Pinctrl –  Number of additional UART groups added to the Mediatek MT7981 driver
    • PHY – New support for Mediatek MT8188
    • ASoC – Added support for many Mediatek platforms
    • Regulator
      • Cleanups and additional features for the Mediatek MT6358 driver
      • Added Mediatek MT6366
    • Thermal control
      • Add support for Mediatek LVTS MT8192 driver along with the suspend/resume routines
      • Fix probe for THERMAL_V2 for the Mediatek LVTS driver
      • Add mt7988 (Filogic 880) support for the Mediatek LVTS driver
    • DRM
      • Add support MT8188 dsi function
      • Fix coverity issue with unintentional integer overflow
      • Add support MT8188 dp/edp function
      • Fix memory leak on ->get_edid callback audio detection and error path.
      • Add connector dynamic selection capability
      • MediaTek DDP GAMMA – 12-bit LUT support
      • mtk_dsi: Fix NO_EOT_PACKET settings/handling
    • WiFi MediaTek (mt76):
      • New sub-driver for mt7925 USB/PCIe devices (WiFi 7)
      • HW wireless <> Ethernet bridging in MT7988 chips
      • mt7603/mt7628 stability improvements
  • Other new Arm hardware platforms and SoCs
    • AMD – Pensando Elba is a data processing unit based on Cortex-A72 CPU cores
    • Aspeed – Facebook’s Minevra Chassis Management Controller using AST2600 chip
    • Intel – USRobotics USR8200 is a NAS/Firewall/router based on the ancient Intel IXP4xx platform
    • Microchip – SAMA5D29 Curiosity board
    • NXP – i.MX6Q based Variscite VAR-SOM-MX6 SoM
    • Renesas – R8A779F4 (R-Car S4-8) automotive SoC and the RZ/G3S (R9A08G045) embedded SoC.
    • STMicro – Octavo OSD32MP1-RED development board based on STM32MP157
  • Raspberry Pi-related changes:
    • Correct the disabling of the activity LED for the Raspberry Pi 400
    • Fix hwrng throughput regression on Raspberry Pi 0/3

RISC-V updates

RISC-V is progressing nicely with the following changelog.

  • Support for in userspace
  • Support for CBOs on ACPI-based systems
  • A handful of improvements for the T-Head cache flushing ops
  • Support for software shadow call stacks
  • Various cleanups and fixes
  •  Allwinner
    • RISC-V DT cleanups
    • Added new ISA property and PMU node to Allwinner D1
  • Microchip
    • Convert the PolarFire SoC devicetrees to use the new properties “riscv,isa-base” & “riscv,isa-extensions”. For compatibility with other projects, “riscv,isa” remains.
    • The timebase-frequency on PolarFire SoC is not set by an oscillator on the board, but rather by an internal divider, so move the property to mpfs.dtsi.
  • SiFive – IRQ – Prevent registering syscore operations multiple times in the SiFive PLIC chip driver.
  • Sophgo
  • StarFive
    • Power management – Add JH7110 AON PMU support
    • Audio-related DT nodes (PWM-DAC support)

MIPS in Linux 6.7

There will be a point when I won’t need to report on MIPS anymore, although it will still stay alive indirectly through the Loongarch architecture, as there were only minor changes this time around, including the removal of one architecture. That’s the full changelog:

  • MIPS: AR7: remove platform
  • watchdog: ar7_wdt: remove driver to prepare for platform removal
  • vlynq: remove bus driver
  • mtd: parsers: ar7: remove support
  • serial: 8250: remove AR7 support
  • arch: mips: remove ReiserFS from defconfig
  • MIPS: lantiq: Remove unnecessary include of <linux/of_irq.h>
  • MIPS: lantiq: Fix pcibios_plat_dev_init() “no previous prototype” warning
  • MIPS: KVM: Fix a build warning about variable set but not used
  • MIPS: Remove dead code in relocate_new_kernel
  • mips: dts: ralink: mt7621: rename to GnuBee GB-PC1 and GnuBee GB-PC2
  • mips: dts: ralink: mt7621: define each reset as an item
  • mips: dts: ingenic: Remove unneeded probe-type properties
  • MIPS: loongson32: Remove dma.h and nand.h

For even more details, you can check out the full Linux 6.7 changelog with commit messages only generated with the command git log v6.6..v6.7-rc8 --stat. You’ll eventually find more information on the KernelNewbies website.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

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

ROCK Pi 4C Plus

Leave a Reply

Your email address will not be published. Required fields are marked *

Khadas VIM4 SBC
Khadas VIM4 SBC