[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <f4d77a67-3069-4e25-9b41-8bb06f6d51f9@app.fastmail.com>
Date: Tue, 12 Sep 2023 09:58:41 +0200
From: "Arnd Bergmann" <arnd@...db.de>
To: "Javier Martinez Canillas" <javierm@...hat.com>,
"Geert Uytterhoeven" <geert@...ux-m68k.org>,
"Arnd Bergmann" <arnd@...nel.org>
Cc: "Maarten Lankhorst" <maarten.lankhorst@...ux.intel.com>,
"Maxime Ripard" <mripard@...nel.org>,
"Thomas Zimmermann" <tzimmermann@...e.de>,
"Dave Airlie" <airlied@...il.com>,
"Daniel Vetter" <daniel@...ll.ch>,
"Greg Kroah-Hartman" <gregkh@...uxfoundation.org>,
"Helge Deller" <deller@....de>,
Christian König <christian.koenig@....com>,
"Dave Airlie" <airlied@...hat.com>,
"Jim Cromie" <jim.cromie@...il.com>,
"Sam Ravnborg" <sam@...nborg.org>,
"Arthur Grillo" <arthurgrillo@...eup.net>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
linux-fbdev@...r.kernel.org
Subject: Re: [PATCH] drm: fix up fbdev Kconfig defaults
On Tue, Sep 12, 2023, at 09:48, Javier Martinez Canillas wrote:
> Geert Uytterhoeven <geert@...ux-m68k.org> writes:
>> On Mon, Sep 11, 2023 at 10:53 PM Arnd Bergmann <arnd@...nel.org> wrote:
>>> --- 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.
>>
>
> Maybe default y if (FB_DEVICE || FRAMEBUFFER_CONSOLE) ?
That wouldn't work unless we swap around the 'select DRM_CORE',
which currently gets selected when DRM_FBDEV_EMULATION is
turned on.
>>> help
>>> Choose this option if you have a need for the legacy fbdev
>>> support. Note that this support also provides the linux console
>>> diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig
>>> index b575cf54174af..83c2d7329ca58 100644
>>> --- 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?).
>
> And there Maybe default y if (FB || DRM_FBDEV_EMULATION) ?
That would be the same as a plain 'default y' based on the
dependencies. We can definitely do that, but it does change
the behavior for FB-only users.
At the moment, we have 21 defconfig files in the kernel
that enable CONFIG_FB but not CONFIG_FRAMEBUFFER_CONSOLE:
$ git grep -l CONFIG_FB=y arch/*configs/ | xargs grep -L "FRAMEBUFFER_CONSOLE=\|DRM="
arch/arm/configs/am200epdkit_defconfig
arch/arm/configs/assabet_defconfig
arch/arm/configs/clps711x_defconfig
arch/arm/configs/ep93xx_defconfig
arch/arm/configs/footbridge_defconfig
arch/arm/configs/h3600_defconfig
arch/arm/configs/multi_v4t_defconfig
arch/arm/configs/mvebu_v5_defconfig
arch/arm/configs/pxa910_defconfig
arch/arm/configs/s3c6400_defconfig
arch/arm/configs/wpcm450_defconfig
arch/microblaze/configs/mmu_defconfig
arch/mips/configs/cobalt_defconfig
arch/mips/configs/generic/board-ranchu.config
arch/mips/configs/malta_qemu_32r6_defconfig
arch/mips/configs/maltaaprp_defconfig
arch/mips/configs/maltasmvp_defconfig
arch/mips/configs/maltasmvp_eva_defconfig
arch/mips/configs/maltaup_defconfig
arch/sh/configs/r7785rp_defconfig
arch/sh/configs/se7343_defconfig
>> 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.
>>
>
> Right, specially if using DRM fbdev emulation since then the default will
> be different between v6.5 and v6.6 (that's what this patch tries to avoid).
>
> So probably we could keept that default as 'y'.
I really don't want to start enabling this for configs that
didn't have it in the past.
Arnd
Powered by blists - more mailing lists