From 981b9fa6a1a47b5ea93d899dc467be3649b0c253 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 5 Dec 2023 14:55:45 +0800 Subject: kernel-config: Drop FB In Linux 6.6 DRM_FBDEV_EMULATION no longer depends on FB, so we no longer need to select FB (tested in a QEMU VM). But if DRM is selected, we must select both DRM_FBDEV_EMULATION and FRAMEBUFFER_CONSOLE or we'll see only blank screen. And now FRAMEBUFFER_CONSOLE is not selected by default, be warned!! --- chapter10/kernel.xml | 20 +++++++++++--------- chapter10/kernel/systemd.toml | 12 +++++++++--- chapter10/kernel/systemd.xml | 10 +++++++--- chapter10/kernel/sysv.toml | 11 +++++++++-- chapter10/kernel/sysv.xml | 10 +++++++--- 5 files changed, 43 insertions(+), 20 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 5c7a9d703..5bbfff11a 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -273,16 +273,18 @@ - Framebuffer Console support + + + Enable legacy fbdev support for your modesetting driver + and + Framebuffer Console support + - This is needed to display the Linux console on a frame - buffer device. To allow the kernel to print debug messages at an - early boot stage, it shouldn't be built as a kernel module - unless an initramfs will be used. And, if - (Direct Rendering Manager) is enabled, - it's likely (Enable - legacy fbdev support for your modesetting driver) should be - enabled as well. + These are needed to display the Linux console on a + GPU driven by a DRI (Direct Rendering Infrastructure) driver. + If (Direct Rendering Manager) is + enabled, you should enable these two options as well or you'll see + a blank screen once the DRI driver is loaded. diff --git a/chapter10/kernel/systemd.toml b/chapter10/kernel/systemd.toml index 26ac61c46..dae4a4049 100644 --- a/chapter10/kernel/systemd.toml +++ b/chapter10/kernel/systemd.toml @@ -13,9 +13,7 @@ STACKPROTECTOR_STRONG='*' UEVENT_HELPER=' ' DEVTMPFS='*' DEVTMPFS_MOUNT='*' -FB='*' -FRAMEBUFFER_CONSOLE='*' - +DRM=' *M' AUDIT=' ' NET='*' INET='*' @@ -28,3 +26,11 @@ TMPFS='*' TMPFS_POSIX_ACL='*' revision='systemd' + +[DRM_FBDEV_EMULATION] +value = ' *' +comment = 'If [DRM] is selected as * or M, this must be selected' + +[FRAMEBUFFER_CONSOLE] +value = ' *' +comment = 'If [DRM] is selected as * or M, this must be selected' diff --git a/chapter10/kernel/systemd.xml b/chapter10/kernel/systemd.xml index bfe3df275..c41b26673 100644 --- a/chapter10/kernel/systemd.xml +++ b/chapter10/kernel/systemd.xml @@ -41,10 +41,14 @@ Firmware Drivers ---> [*] Export DMI identification via sysfs to userspace [DMIID] Graphics support ---> - Frame buffer Devices ---> - <*> Support for frame buffer device drivers ---> [FB] + < /*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> + ... [DRM] + # If [DRM] is selected as * or M, this must be selected: + [ /*] Enable legacy fbdev support for your modesetting driver + ... [DRM_FBDEV_EMULATION] Console display driver support ---> - [*] Framebuffer Console support [FRAMEBUFFER_CONSOLE] + # If [DRM] is selected as * or M, this must be selected: + [ /*] Framebuffer Console support [FRAMEBUFFER_CONSOLE] File systems ---> [*] Inotify support for userspace [INOTIFY_USER] diff --git a/chapter10/kernel/sysv.toml b/chapter10/kernel/sysv.toml index 5c8b2df6e..3f8d2e93c 100644 --- a/chapter10/kernel/sysv.toml +++ b/chapter10/kernel/sysv.toml @@ -12,7 +12,14 @@ STACKPROTECTOR_STRONG='*' UEVENT_HELPER=' ' DEVTMPFS='*' DEVTMPFS_MOUNT='*' -FB='*' -FRAMEBUFFER_CONSOLE='*' +DRM=' *M' revision='sysv' + +[DRM_FBDEV_EMULATION] +value = ' *' +comment = 'If [DRM] is selected as * or M, this must be selected' + +[FRAMEBUFFER_CONSOLE] +value = ' *' +comment = 'If [DRM] is selected as * or M, this must be selected' diff --git a/chapter10/kernel/sysv.xml b/chapter10/kernel/sysv.xml index 405dfad0e..c61208c67 100644 --- a/chapter10/kernel/sysv.xml +++ b/chapter10/kernel/sysv.xml @@ -29,7 +29,11 @@ [*] Automount devtmpfs at /dev, after the kernel mounted the rootfs ... [DEVTMPFS_MOUNT] Graphics support ---> - Frame buffer Devices ---> - <*> Support for frame buffer device drivers ---> [FB] + < /*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> + ... [DRM] + # If [DRM] is selected as * or M, this must be selected: + [ /*] Enable legacy fbdev support for your modesetting driver + ... [DRM_FBDEV_EMULATION] Console display driver support ---> - [*] Framebuffer Console support [FRAMEBUFFER_CONSOLE] + # If [DRM] is selected as * or M, this must be selected: + [ /*] Framebuffer Console support [FRAMEBUFFER_CONSOLE] -- cgit v1.2.3-54-g00ecf