Let’s face it, last week wasn’t quite as quiet as I would have hoped for, but there really doesn’t seem to be any point to delay 4.20 because everybody is already taking a break.
And it’s not like there are any known issues, it’s just that the shortlog below is a bit longer than I would have wished for. Nothing screams “oh, that’s scary”, though.
And as part of the “everybody is already taking a break”, I can happily report that I already have quite a few early pull requests in my inbox. I encouraged people to get it over and done with, so that people can just relax over the year-end holidays. In fact, I probably won’t start pulling for a couple of days, but otherwise let’s just try to keep to the normal merge window schedule, even if most people hopefully won’t even be back until over the merge window is over.
As to the details of this last week of 4.20 – most of it is networking (drivers, core networking fixes, bpf). There’s a few other non-network driver updates too, and a revert series of some of the x86 inline asm changes that were obviated by upcoming compiler support.
Have a Merry Christmas or other holiday of your choice.
Linux 4.19 gave us preliminary support for WiFi 6 aka 802.11ax, a new experimental EROFS (Enhanced Read-Only File System) designed for firmware and live CDs, more fixes for L1TF “Foreshadow” security flaw, and more.
Some interesting changes in Linux 4.20 include:
- Added support for Chinese CPUs – C-SKY architecture and Hygon Dhyana x86 CPUs
- Pressure stall information – Under /proc/pressure/, several files expose the percentage of time the system is stalled on CPU, memory, or IO, respectively
- Support for Raven2 APU and Picasso APUs; Vega20 support is no longer considered experimental.
- Lazy TLB flushed optimization – Save 1 to 2% CPU usage for a memcache workload on two socket systems
Notable changes specific to Arm architecture:
- Allwinner A13 / A20 / A33 / H3 – Cedrus video driver
- Allwinner A83T – IR receiver
- Allwinner A64 – Cleanup for device tree files, HDMI support, audio codec support (DTS changes will be merged in 4.21)
- Allwinner H3 & H5 – SID (sunxi security ID)
- Allwinner R40 – SATA
- New Devices – Pine64 LTS, Orange Pi Zero Plus 2 (H3), Orange Pi One Plus, Banana Pi M2+ (H5)
- Support for PX30 (aka RK3326) Cortex-A35 processor + evaluation board
- Clock driver – Fixes for RK3328
- Media – Add device tree binding documentation for Rockchip Video Processing Unit IP
- Add new PHY driver for Rockchip HDMI PHY
- Add support for bringing the uart2 out through the usb dm+dp pin in
- Add support for Rockchip Soc RGB output interface
- New boards – ROC-RK3399-PC, Rock960, RockPro64
- Initial support for Meson-G12A (S905D2) and evaluation board
- Pinctrl – add driver for Amlogic Meson SoCs
- Clock drivers
- clk-pll driver improvements and updates
- axg audio controller system clocks
- Register Amlogic meson8b clock controller early
- “canvas” driver used for video processing and shared between different high-level drivers
- firmware – Add serial number (SoC ID) sysfs entry
- ARM64 DT updates
- New SoC support: basic support for G12A family
- New board: Amlogic U200 board, using G12A SoC
- Fix SPI bus warnings from new dtc updates
- AXG – cleanup/reorder nodes; add audio PDM support for s400 board
- GX – increase CMA memory size; new canvas driver
- New board – Endless Mini computer based on Amlogic S805 (Meson8b)
- DRM for Exynos
- Out-bridge support for LVDS bridge driver
- Samsung 16×16 tiled format support
- Plane alpha and pixel blend mode support
- Clock driver
- Consolidation of system suspend related code in Exynos, S5P, S3C SoC clk drivers
- Fixes of system suspend support on Exynos542x (Odroid boards) and Exynos5433 SoC
- Removal of obsoleted Exynos4212 ISP clock definitions
- Correction of Exynos CPU clock implementation
- Addition of SPDX license identifiers
- 32-bit ARM Device Tree changes
- Bring up DSI and HDMI on Exynos5250 Arndale.
- Use the new way of setting external wake-up interrupts on S5Pv210.
- Use proper cpufreq suspend OPP to fix suspend/wake-up from RAM on Snow Chromebook (Exynos5250).
- Fully describe regulators on Odroid XU3-family boards.
- Fix sound in Snow-rev5 Chromebook.
- Fix regulators configuration on Peach Pi/Pit Chromebooks (Exynos5420) which should be always on.
- Fix pull control on PMIC interrupt lines on multiple boards which
essentially fixes waking up by RTC.
- Add PMIC interrupts on Exynos4210 UniversalC210 board.
- Add external SD card support for Trats board (Exynos4210).
- Correct audio subsystem parent clock on Peach Chromebooks.
- Minor cleanups
- Add proper configuration for Odroid XU SD write-protect pin
- ARM64 Device Tree changes
- Use graph between USB-PHY and MUIC.
- Cleanup of SD card detect pin level
- DRM for Exynos
- Support for MSM8998 (Snapdragon 835) processor and evaluation platform
- New Clock drivers – Qualcomm Krait CPU clk , Qualcomm QCS404 GCC, Qualcomm SDM660 GCC, Qualcomm SDM845 camera clock controller
- The reset controller subsystem adds a driver for the Qualcomm Snapdragon 845 Power Domain Controller
- New Pinctrl drivers – Qualcomm QCS404 pin control and GPIO subdriver; Qualcomm SDM660 pin control and GPIO subdriver
- PHY – UFS PHY in Qualcomm’s SDM845 SoC
- ARM64 DT changes:
- Update Coresight for MSM8916
- Switch to use mailbox for smp2p and smd on MSM8996
- Add dispcc, dsp, USB, regulator, and other nodes for SDM845
- Drop model/compatible from MSM8916 and MSM8996
- Add compat for db820c
- Add MSM8998 SoC and board support along with associated nodes
- Add RESIN/PON for Qualcomm PM8916 and PM8994
- Fix reserved gpio ranges for SDM845 and MSM8998
- DT changes
- Fix IRQ constants usage on MSM8974
- Add led, gpio-button, sdcc, and pcie nodes for IPQ8064
- Move/cleanup common nodes for IPQ8064
- Add i2c sensor nodes for MSM8974 Hammerhead
- Fixes for SAW, kpss, opp, pci range, and space/tab on IPQ4019
- Update coresight bindings
- Defconfig changes – Enable MAILBOX
- ARM64 Deconfig changes – Enable Qualcomm QRTR driver
- Power management chip support for Mediatek MT8183 and MT6765 SoC’s
- Pinctrl – MT8183, MT6765 and MT7623 sub-drivers
- SPI driver for MT2712
- New board – Banana Pi R64
- Other new ARM hardware platforms and SoCs:
- Broadcom – Raspberry Pi CM3 compute module based on BCM2837
- Hisilicon – Hi3670 and Hikey 970 development board with NPU
- Marvell – SolidRun Clearfog ARMADA 8040 board
- NVIDIA – Toradex Colibri T20 (Tegra 2)
- NXP Semiconductors – ConnectCore 6UL SBC Pro; support for i.MX6ULZ a smaller cost-down version of i.MX6ULL and corresponding i.MX6ULZ 14×14 EVK reference board
- Renesas – Basic support for r8a774a1 (RZ/G2M) processor; M3NULCB Kingfisher and M3NULCB Starter Kit Pro boards based on r8a77965 (R-Car M3-N)
- Synaptics – AS370 set-top box chip
- Texas Instruments – OMAP Boards: Moxa UC-2101 industrial computer and GTA04A5, a variant of the motherboard for GTA04 phone
Summary of MIPS updates for Linux 4.20:
- kexec support for the generic MIPS platform when running on a CPU
including the MIPS Coherence Manager & related hardware.
- Improvements to the definition of memory barriers used around MMIO
accesses, and fixes in their use.
- Switch to CONFIG_NO_BOOTMEM from Mike Rapoport, finally dropping
reliance on the old bootmem code.
- A number of fixes & improvements for Loongson 3 systems.
- DT & config updates for the Microsemi Ocelot platform.
- Workaround to enable USB power on the Netgear WNDR3400v3.
- Various cleanups & fixes.