Lets you bypass initramfs to boot to a device-mapper device

May 13, 2019 18:04 GMT  ·  By

Collabora and Google engineers have been working on a new, exciting new feature that would benefit users of Chrome OS and Android devices, which recently landed in the latest Linux 5.1 kernel series.

According to Collabora's latest report on their contributions to the Linux 5.1 kernel, which arrived last week, it is now possible to mount and boot a mapped device by adding a kernel parameter via command-line at boot time, thus bypassing initramfs image. For Linux kernel 5.1, twelve Collabora's developers also contributed 64 commits and 111 sign-offs, along with lots of bug reports and testing.

"Helen Koike contributed a major change, providing a mechanism to mount a mapped device at boot time through a kernel command line parameter, removing the current initramfs requirement," said Collabora's André Almeida. "This change is the result of the combined effort of both Google and Collabora engineers to push upstream a feature that is shipped on Chrome OS devices and Android devices using AVB 2.0."

All previous kernel versions required the presence of an initramfs image to boot the system to a file system locate in a device-mapper device, but there were many cases where users couldn't use an initramfs image, so this new feature comes in handy when you want to boot to a device-mapper device without the need of an initramfs image, just by using a simple kernel boot parameter.

Highlights from Collabora's contributions to Linux kernel 5.1

Besides adding support for booting to a device-mapper device without using initramfs, Collabora's engineers added several goodies to the Linux 5.1 kernel, including support for the NanoPC-T4 single-board computer, support for the AM335x-based Bosch Guardian and i.MX6 Phytec phyBOARD Segin ARM boards, and pinmuxing support for Raspberry Pi 3 model B board.

They also enabled HDMI audio on RK3399 Rock960 platforms, improved support for the RK3399 RockPI board, fixed handling of USB descriptors in FunctionFS, improved DRM subsystem's DRM_AUTH implementation, added support for mirroring and plane rotation on RK3288 and RK3399 SoCs, fixed a bug in the vivid driver, and updated ISP1704 USB Charger Detection to use the new GPIO API.