drm/simpledrm: Compute framebuffer stride if not set

Compute the framebuffer's scanline stride length if not given by
the simplefb data.

v3:
	* get pixel size from drm_format_info_bpp() (Geert, Javier)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220801135028.30647-5-tzimmermann@suse.de
This commit is contained in:
Thomas Zimmermann 2022-08-01 15:50:27 +02:00
parent 802fd5750f
commit fd9e3169e4
1 changed files with 3 additions and 0 deletions

View File

@ -743,6 +743,9 @@ static struct simpledrm_device *simpledrm_device_create(struct drm_driver *drv,
drm_err(dev, "no simplefb configuration found\n");
return ERR_PTR(-ENODEV);
}
if (!stride)
stride = DIV_ROUND_UP(drm_format_info_bpp(format, 0) * width, 8);
sdev->mode = simpledrm_mode(width, height);
sdev->format = format;
sdev->pitch = stride;