Linux 4.19 Adds Deferred Console Takeover Support For FBDEV - Cleaner Boot Process

Written by Michael Larabel in Linux Kernel on 23 August 2018 at 09:45 AM EDT. 9 Comments
LINUX KERNEL
While FBDEV has been on its last leg for years with some calling for its deprecation and encouraging instead DRM/KMS drivers rather than (mostly embedded vendors) focusing on FBDEV frame-buffer drivers, with Linux 4.19 the FBDEV subsystem is bringing a useful addition to the kernel.

Hans de Goede, who has done a range of useful kernel contributions over the years at Red Hat from working out better Linux laptop power management to a cleaner boot process, has been working this summer on deferred console takeover support.

Right now the frame-buffer console "fbcon" takes over as soon as FBDEV drivers are registered, but this can lead to an unpleasant boot experience -- having a black screen, etc -- so the deferred console takeover looks to improve upon this process. This is for systems where FBCON is enabled and just not outright disabled as is the case right now for many embedded Linux systems.

With the deferred console takeover, FBCON doesn't overwrite the frame-buffer contents until it actually has some text to display. In other words, the vendor logo or whatever was programmed at boot-time into the frame-buffer will remain in place until having something else to actually display.

With the "quiet" kernel option to minimize the amount of kernel spew at boot-time, Red Hat developers have delivered on a smooth graphical boot process while keeping FBCON enabled and thus can still display any errors if necessary.

FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is part of the FBDEV changes for Linux 4.19. The Red Hat developers are also back-porting this deferred console takeover behavior to their kernel for the upcoming Fedora 28 release.

Other FBDEV work for Linux 4.19 includes improving the DisplayLink "UDLFB" frame-buffer driver for better dealing with un-plugs of these USB display adapters as well as general performance optimizations, ACPI-based enumeration for the Google Goldfish frame-buffer driver, and various other fixes and code cleaning throughout the subsystem and its many drivers.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week