Re: [PATCH] simpldrm: Enable boot time VESA graphic mode selection.

From: Michal Suchánek
Date: Wed Mar 02 2022 - 14:38:54 EST


Hello,

On Wed, Mar 02, 2022 at 08:31:25PM +0100, Thomas Zimmermann wrote:
> Hi,
>
> is this ready to be merged?

The objections raised so far have been addressed in v4.

I think this is good to merge.

Thanks

Michal

>
> Best regards
> Thomas
>
> Am 18.02.22 um 10:33 schrieb Michal Suchanek:
> > Since switch to 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 simpledrm in legacy BIOS boot mode drop
> > dependency of BOOT_VESA_SUPPORT on FB, also drop the FB_ prefix, and
> > select the option when simpledrm is built-in on x86.
> >
> > Fixes: 11e8f5fd223b ("drm: Add simpledrm driver")
> > Signed-off-by: Michal Suchanek <msuchanek@xxxxxxx>
> > ---
> > arch/x86/boot/video-vesa.c | 4 ++--
> > drivers/gpu/drm/tiny/Kconfig | 1 +
> > drivers/video/fbdev/Kconfig | 9 ++++-----
> > 3 files changed, 7 insertions(+), 7 deletions(-)
> >
> > 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/gpu/drm/tiny/Kconfig b/drivers/gpu/drm/tiny/Kconfig
> > index 712e0004e96e..1bc30c64ed15 100644
> > --- a/drivers/gpu/drm/tiny/Kconfig
> > +++ b/drivers/gpu/drm/tiny/Kconfig
> > @@ -54,6 +54,7 @@ config DRM_GM12U320
> > config DRM_SIMPLEDRM
> > tristate "Simple framebuffer driver"
> > depends on DRM && MMU
> > + select BOOT_VESA_SUPPORT if X86 && DRM_SIMPLEDRM = y
> > select DRM_GEM_SHMEM_HELPER
> > select DRM_KMS_HELPER
> > help
> > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> > index 6ed5e608dd04..4f3be9b7a520 100644
> > --- a/drivers/video/fbdev/Kconfig
> > +++ b/drivers/video/fbdev/Kconfig
> > @@ -66,9 +66,8 @@ config FB_DDC
> > select I2C_ALGOBIT
> > select I2C
> > -config FB_BOOT_VESA_SUPPORT
> > +config 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.
> > @@ -627,7 +626,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 +1050,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 +1377,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