Skip to content

Commit bb6c450

Browse files
arndbmartinezjavier
authored andcommitted
drm: fix up fbdev Kconfig defaults
As a result of the recent Kconfig reworks, the default settings for the framebuffer interfaces changed in unexpected ways: Configurations that leave CONFIG_FB disabled but use DRM now get DRM_FBDEV_EMULATION by default. This also turns on the deprecated /dev/fb device nodes for machines that don't actually want it. In turn, configurations that previously had DRM_FBDEV_EMULATION enabled now only get the /dev/fb front-end but not the more useful framebuffer console, which is not selected any more. We had previously decided that any combination of the three frontends (FB_DEVICE, FRAMEBUFFER_CONSOLE and LOGO) should be selectable, but the new default settings mean that a lot of defconfig files would have to get adapted. Change the defaults back to what they were in Linux 6.5: - Leave DRM_FBDEV_EMULATION turned off unless CONFIG_FB is enabled. Previously this was a hard dependency but now the two are independent. However, configurations that enable CONFIG_FB probably also want to keep the emulation for DRM, while those without FB presumably did that intentionally in the past. - Leave FB_DEVICE turned off for FB=n. Following the same logic, the deprecated option should not automatically get enabled here, most users that had FB turned off in the past do not want it, even if they want the console - Turn the FRAMEBUFFER_CONSOLE option on if DRM_FBDEV_EMULATION is set to avoid having to change defconfig files that relied on it being selected unconditionally in the past. This also makes sense since both LOGO and FB_DEVICE are now disabled by default for builds without CONFIG_FB, but DRM_FBDEV_EMULATION would make no sense if all three are disabled. Fixes: a5ae331 ("drm: Drop select FRAMEBUFFER_CONSOLE for DRM_FBDEV_EMULATION") Fixes: 701d205 ("fbdev: Make support for userspace interfaces configurable") Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230911205338.2385278-1-arnd@kernel.org
1 parent 2ba1579 commit bb6c450

File tree

3 files changed

+3
-2
lines changed

3 files changed

+3
-2
lines changed

drivers/gpu/drm/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ config DRM_FBDEV_EMULATION
136136
bool "Enable legacy fbdev support for your modesetting driver"
137137
depends on DRM
138138
select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
139-
default y
139+
default FB
140140
help
141141
Choose this option if you have a need for the legacy fbdev
142142
support. Note that this support also provides the linux console

drivers/video/console/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ config DUMMY_CONSOLE_ROWS
7373
config FRAMEBUFFER_CONSOLE
7474
bool "Framebuffer Console support"
7575
depends on FB_CORE && !UML
76+
default DRM_FBDEV_EMULATION
7677
select VT_HW_CONSOLE_BINDING
7778
select CRC32
7879
select FONT_SUPPORT

drivers/video/fbdev/core/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ config FIRMWARE_EDID
2828
config FB_DEVICE
2929
bool "Provide legacy /dev/fb* device"
3030
depends on FB_CORE
31-
default y
31+
default FB
3232
help
3333
Say Y here if you want the legacy /dev/fb* device file and
3434
interfaces within sysfs anc procfs. It is only required if you

0 commit comments

Comments
 (0)