[PATCH 1/3] drm/vkms: Set preferred depth correctly

Daniel Vetter daniel.vetter at ffwll.ch
Fri Oct 16 11:35:54 UTC 2020


On Fri, Oct 16, 2020 at 12:38 PM Simon Ser <contact at emersion.fr> wrote:
>
> > The only thing we support is xrgb8888.
> >
> > Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> > Cc: Rodrigo Siqueira <rodrigosiqueiramelo at gmail.com>
> > Cc: Melissa Wen <melissa.srw at gmail.com>
> > Cc: Haneen Mohammed <hamohammed.sa at gmail.com>
> > Cc: Daniel Vetter <daniel at ffwll.ch>
> > ---
> >  drivers/gpu/drm/vkms/vkms_drv.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/vkms/vkms_drv.c b/drivers/gpu/drm/vkms/vkms_drv.c
> > index 726801ab44d4..eb4007443706 100644
> > --- a/drivers/gpu/drm/vkms/vkms_drv.c
> > +++ b/drivers/gpu/drm/vkms/vkms_drv.c
> > @@ -124,7 +124,7 @@ static int vkms_modeset_init(struct vkms_device *vkmsdev)
> >       dev->mode_config.max_height = YRES_MAX;
> >       dev->mode_config.cursor_width = 512;
> >       dev->mode_config.cursor_height = 512;
> > -     dev->mode_config.preferred_depth = 24;
> > +     dev->mode_config.preferred_depth = 32;
>
> Are you sure xrgb8888's depth is 32 and not 24? Looking at drmdb [1], *all*
> drivers set it to 24.

Uh there's a problem I think. Depth should indeed stay at 24, the
problem is that fb helpers directly take that to be the bpp parameter,
which is a different thing. And if you look at how most drivers set up
that, they pick 32.

I guess I need to revert this here, and unconfuse the fb helpers about
depth vs bpp.

Maybe best would be to just switch over to preferred drm_fourcc format
code, or maybe just pick this up from the first format the primary
plane supports.

This is all getting slightly tricky and a lot more work :-/
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list