[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49f0642d-7078-8fba-c851-6e33658180ff@suse.de>
Date: Mon, 21 Feb 2022 10:51:35 +0100
From: Thomas Zimmermann <tzimmermann@...e.de>
To: Michal Suchanek <msuchanek@...e.de>,
dri-devel@...ts.freedesktop.org, linux-fbdev@...r.kernel.org
Cc: David Herrmann <dh.herrmann@...il.com>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Daniel Vetter <daniel.vetter@...ll.ch>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
"H. Peter Anvin" <hpa@...or.com>,
Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>,
Helge Deller <deller@....de>, x86@...nel.org,
Javier Martinez Canillas <javierm@...hat.com>,
Ingo Molnar <mingo@...hat.com>, Arnd Bergmann <arnd@...db.de>,
Simon Trimmer <simont@...nsource.cirrus.com>,
Borislav Petkov <bp@...en8.de>,
Thomas Gleixner <tglx@...utronix.de>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Cristian Marussi <cristian.marussi@....com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-kernel@...r.kernel.org, Martin Mares <mj@....cz>,
Sudeep Holla <sudeep.holla@....com>,
linux-video@...ey.karlin.mff.cuni.cz
Subject: Re: [PATCH v3] simplefb: Enable boot time VESA graphic mode
selection.
Hi
Am 18.02.22 um 17:04 schrieb Michal Suchanek:
> Since switch to simplefb/simpledrm VESA graphic modes are no longer
> available with legacy BIOS.
>
> The x86 realmode boot code enables the VESA graphic modes when option
> FB_BOOT_VESA_SUPPORT is enabled.
>
> To enable use of VESA modes with simplefb in legacy BIOS boot mode drop
> dependency of BOOT_VESA_SUPPORT on FB, also drop the FB_ prefix, and
> select the option when simplefb enabled on x86.
>
> The BOOT_VESA_SUPPORT is not specific to framebuffer but rather to x86
> platform, move it from fbdev to x86 Kconfig.
>
> Fixes: e3263ab389a7 ("x86: provide platform-devices for boot-framebuffers")
> Signed-off-by: Michal Suchanek <msuchanek@...e.de>
Acked-by: Thomas Zimmermann <tzimmermann@...e.de>
Thanks for the patch. I'll wait a bit for additional reviews before
merging it.
Best regards
Thomas
> ---
> v2: Select BOOT_VESA_SUPPORT from simplefb rather than simpledrm. The
> simpledrm driver uses the firmware provided video modes only indirectly
> through simplefb, and both can be enabled independently.
> v3: Move BOOT_VESA_SUPPORT from fbdev to x86
> ---
> arch/x86/Kconfig | 6 ++++++
> arch/x86/boot/video-vesa.c | 4 ++--
> drivers/firmware/Kconfig | 1 +
> drivers/video/fbdev/Kconfig | 13 +++----------
> 4 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index 9f5bd41bf660..cceb1aab0486 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -942,6 +942,12 @@ config GART_IOMMU
>
> If unsure, say Y.
>
> +config BOOT_VESA_SUPPORT
> + bool
> + help
> + If true, at least one selected framebuffer driver can take advantage
> + of VESA video modes set at an early boot stage via the vga= parameter.
> +
> config MAXSMP
> bool "Enable Maximum number of SMP Processors and NUMA Nodes"
> depends on X86_64 && SMP && DEBUG_KERNEL
> diff --git a/arch/x86/boot/video-vesa.c b/arch/x86/boot/video-vesa.c
> index 7e185977a984..c2c6d35e3a43 100644
> --- a/arch/x86/boot/video-vesa.c
> +++ b/arch/x86/boot/video-vesa.c
> @@ -83,7 +83,7 @@ static int vesa_probe(void)
> (vminfo.memory_layout == 4 ||
> vminfo.memory_layout == 6) &&
> vminfo.memory_planes == 1) {
> -#ifdef CONFIG_FB_BOOT_VESA_SUPPORT
> +#ifdef CONFIG_BOOT_VESA_SUPPORT
> /* Graphics mode, color, linear frame buffer
> supported. Only register the mode if
> if framebuffer is configured, however,
> @@ -121,7 +121,7 @@ static int vesa_set_mode(struct mode_info *mode)
> if ((vminfo.mode_attr & 0x15) == 0x05) {
> /* It's a supported text mode */
> is_graphic = 0;
> -#ifdef CONFIG_FB_BOOT_VESA_SUPPORT
> +#ifdef CONFIG_BOOT_VESA_SUPPORT
> } else if ((vminfo.mode_attr & 0x99) == 0x99) {
> /* It's a graphics mode with linear frame buffer */
> is_graphic = 1;
> diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
> index 75cb91055c17..ad64f3a6f54f 100644
> --- a/drivers/firmware/Kconfig
> +++ b/drivers/firmware/Kconfig
> @@ -224,6 +224,7 @@ config SYSFB
> config SYSFB_SIMPLEFB
> bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
> depends on SYSFB
> + select BOOT_VESA_SUPPORT
> help
> Firmwares often provide initial graphics framebuffers so the BIOS,
> bootloader or kernel can show basic video-output during boot for
> diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> index 6ed5e608dd04..5bdd303b5268 100644
> --- a/drivers/video/fbdev/Kconfig
> +++ b/drivers/video/fbdev/Kconfig
> @@ -66,13 +66,6 @@ config FB_DDC
> select I2C_ALGOBIT
> select I2C
>
> -config FB_BOOT_VESA_SUPPORT
> - bool
> - depends on FB
> - help
> - If true, at least one selected framebuffer driver can take advantage
> - of VESA video modes set at an early boot stage via the vga= parameter.
> -
> config FB_CFB_FILLRECT
> tristate
> depends on FB
> @@ -627,7 +620,7 @@ config FB_VESA
> select FB_CFB_FILLRECT
> select FB_CFB_COPYAREA
> select FB_CFB_IMAGEBLIT
> - select FB_BOOT_VESA_SUPPORT
> + select BOOT_VESA_SUPPORT
> help
> This is the frame buffer device driver for generic VESA 2.0
> compliant graphic cards. The older VESA 1.2 cards are not supported.
> @@ -1051,7 +1044,7 @@ config FB_INTEL
> select FB_CFB_FILLRECT
> select FB_CFB_COPYAREA
> select FB_CFB_IMAGEBLIT
> - select FB_BOOT_VESA_SUPPORT if FB_INTEL = y
> + select BOOT_VESA_SUPPORT if FB_INTEL = y
> depends on !DRM_I915
> help
> This driver supports the on-board graphics built in to the Intel
> @@ -1378,7 +1371,7 @@ config FB_SIS
> select FB_CFB_FILLRECT
> select FB_CFB_COPYAREA
> select FB_CFB_IMAGEBLIT
> - select FB_BOOT_VESA_SUPPORT if FB_SIS = y
> + select BOOT_VESA_SUPPORT if FB_SIS = y
> select FB_SIS_300 if !FB_SIS_315
> help
> This is the frame buffer device driver for the SiS 300, 315, 330
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
Download attachment "OpenPGP_signature" of type "application/pgp-signature" (841 bytes)
Powered by blists - more mailing lists