Linux 5.11 contributions

New Linux kernel 5.11 released with Sartura's eight-patch contribution, extending the existing ecosystem of ARM and ARM64-based devices.


Expanding Board Support

The Linux kernel version 5.11, officially released on February 14, 2021, brought numerous new features such as faster wine with Syscall User Dispatch, Intel SGX support, unprivileged Overlayfs mounts, support of new AMD and Intel graphics hardware, a new epoll_wait(2) variant in epoll_pwait2(2), faster memory leak debugging in ARM, and many others. With 5.12-rc2 already out, this post takes a look at Sartura's contributions to the 5.11 version.

Sartura contributed eight patches to this kernel release, the majority of which expanded the existing ecosystem of ARM and ARM64-based devices.

Sartura’s contributions to the 5.11 version extend the existing support of Marvell-based chipsets with powerful new devices. This effort is a continuation of previous collaborations between Sartura and Marvell aimed at building extensive ecosystems around Marvell's high-performance and cost-efficient system-on-chips (SoCs).



Our largest contribution to 5.11 was a patch series adding support for several switches based on the Marvell Prestera 98DX3236 chip. These include the following devices:

MikroTik CRS305-1G-4S, a five-port desktop switch with one Gigabit Ethernet port and four SFP+ 10Gbps ports.

MikroTik CRS326-24G-2S, a 24 Gigabit port switch with two SFP+ cages.

MikroTik CRS328-4C-20S-4S, a 28 independent port switch with 20xSFP cages, 4xSFP+ cages, 4xCombo ports (Gigabit Ethernet or SFP), 800MHz CPU, 512MB RAM, 1U rackmount case, and dual power supplies.


Sartura added initial support for the IEI Puzzle-M801, a rackmount network appliance based on Marvell Armada 8040. This 4xGbE, 2xSFP+ board supports up to 16GB of DDR4 2400MHz ECC RAM, provides a PCIe x16 slot and an M.2 type B slot.

Our last addition to the 5.11 kernel is the support for Globalscale's popular ESPRESSObin-Ultra board, a new variant of the popular ESPRESSObin board based on the ARMADA 3720 chipset. The device builds on the existing foundation of ARMADA 3720 SoC and Topaz 6341 switch by offering 1GB of DDR4, 8GB eMMC, 1xWAN with 30W PoE, 4xGb LAN, optional M.2 memory slots, dual-band AC Wi-Fi, cellular capability, and many more.

See the relevant commits below:

ARM: dts: mvebu: Add CRS305-1G-4S board

ARM: dts: mvebu: Add CRS326-24G-2S board

ARM: dts: mvebu: Add CRS328-4C-20S-4S board

MAINTAINERS: Add an entry for MikroTik CRS3xx 98DX3236 boards

arm64: dts: marvell: Add a device tree for the IEI Puzzle-M801 board

arm64: dts: marvell: add DT for ESPRESSObin-Ultra

MAINTAINERS: Add entry for Qualcomm IPQ4019 USB PHY

Other Contributions

In addition to adding basic Linux support, Sartura also contributed to the watchdog driver. The fix uses the WDOG_HW_RUNNING flag to notify the watchdog framework that the watchdog hardware is enabled or runs during the boot process. The framework can then ping the watchdog until user-space opens the device and takes control over it. The commit itself can be found here.