[PATCH] drm: fix up fbdev Kconfig defaults

Geert Uytterhoeven geert at linux-m68k.org
Tue Sep 12 08:18:23 UTC 2023


Hi Thomas,

On Tue, Sep 12, 2023 at 10:11 AM Thomas Zimmermann <tzimmermann at suse.de> wrote:
> Am 12.09.23 um 09:14 schrieb Geert Uytterhoeven:
> [...]
> >> --- a/drivers/gpu/drm/Kconfig
> >> +++ b/drivers/gpu/drm/Kconfig
> >> @@ -135,7 +135,7 @@ config DRM_FBDEV_EMULATION
> >>          bool "Enable legacy fbdev support for your modesetting driver"
> >>          depends on DRM
> >>          select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
> >> -       default y
> >> +       default FB
> >
> > While this is true for existing configs, it is no longer true in general,
> > as DRM_FBDEV_EMULATION is no longer related to FB.
>
> Would it make sense to make FRAMEBUFFER_CONSOLE an independent option
> and have FBDEV_EMULATION depend on it? Something like this:
>
> FRAMEBUFFER_CONSOLE
>         depends on DRM || FB
>         select FB_CORE
>
> FBDEV_EMULATION
>         depends on DRM
>         depends on FRAMEBUFFER_CONSOLE
>         default y

Oops, now you can no longer have FBDEV_EMULATION without
FRAMEBUFFER_CONSOLE, which is useful to be able to enable
FB_DEVICE...

And what's the point (if DRM is enabled) of having FB_CORE with
FBDEV_EMULATION disabled?

> So if any graphics subsystems are enabled, FRAMEBUFFER_CONSOLE is
> select-able. But for DRM, FBDEV_EMULATION disables the console. That

Huh?

/me looks at his morning coffee, and confirms the cup is empty...

> option remains more for historical reasons than actual usefulness.

> >> --- a/drivers/video/console/Kconfig
> >> +++ b/drivers/video/console/Kconfig
> >> @@ -74,6 +74,7 @@ config DUMMY_CONSOLE_ROWS
> >>   config FRAMEBUFFER_CONSOLE
> >>          bool "Framebuffer Console support"
> >>          depends on FB_CORE && !UML
> >> +       default DRM_FBDEV_EMULATION
> >
> > Sounds good to me, although it looks a bit strange at first sight
> > (FRAMEBUFFER_CONSOLE defaults to n on a system with real fbdev, but
> > y on emulated fbdev?).
> > So this is the fix for commit a5ae331edb02b ("drm: Drop select
> > FRAMEBUFFER_CONSOLE for DRM_FBDEV_EMULATION").
> >
> >>          select VT_HW_CONSOLE_BINDING
> >>          select CRC32
> >>          select FONT_SUPPORT
> >> diff --git a/drivers/video/fbdev/core/Kconfig b/drivers/video/fbdev/core/Kconfig
> >> index 114cb8aa6c8fd..804c2bec9b43c 100644
> >> --- a/drivers/video/fbdev/core/Kconfig
> >> +++ b/drivers/video/fbdev/core/Kconfig
> >> @@ -28,7 +28,7 @@ config FIRMWARE_EDID
> >>   config FB_DEVICE
> >>          bool "Provide legacy /dev/fb* device"
> >>          depends on FB_CORE
> >> -       default y
> >> +       default FB
> >
> > Changing this means possibly causing regressions on systems running
> > an fbdev userspace.
> >
> >>          help
> >>            Say Y here if you want the legacy /dev/fb* device file and
> >>            interfaces within sysfs anc procfs. It is only required if you

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds


More information about the dri-devel mailing list