Messages in this thread Patch in this message | | | Date | Mon, 21 Feb 2022 10:51:35 +0100 | Subject | Re: [PATCH v3] simplefb: Enable boot time VESA graphic mode selection. | From | Thomas Zimmermann <> |
| |
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@suse.de>
Acked-by: Thomas Zimmermann <tzimmermann@suse.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 [unhandled content-type:application/pgp-signature] | |