[PATCH v2] drm/tiny: panel-mipi-dbi: Use drm_client_setup_with_fourcc()
Javier Martinez Canillas
javierm at redhat.com
Tue Apr 22 21:53:19 UTC 2025
Fabio Estevam <festevam at gmail.com> writes:
Hello Fabio,
> From: Fabio Estevam <festevam at denx.de>
>
> Since commit 559358282e5b ("drm/fb-helper: Don't use the preferred depth
> for the BPP default"), RGB565 displays such as the CFAF240320X no longer
> render correctly: colors are distorted and the content is shown twice
> horizontally.
>
> This regression is due to the fbdev emulation layer defaulting to 32 bits
> per pixel, whereas the display expects 16 bpp (RGB565). As a result, the
> framebuffer data is incorrectly interpreted by the panel.
>
> Fix the issue by calling drm_client_setup_with_fourcc() with a format
> explicitly selected based on the display's bits-per-pixel value. For 16
> bpp, use DRM_FORMAT_RGB565; for other values, fall back to the previous
> behavior. This ensures that the allocated framebuffer format matches the
> hardware expectations, avoiding color and layout corruption.
>
> Tested on a CFAF240320X display with an RGB565 configuration, confirming
> correct colors and layout after applying this patch.
>
> Cc: stable at vger.kernel.org
> Fixes: 559358282e5b ("drm/fb-helper: Don't use the preferred depth for the BPP default")
> Signed-off-by: Fabio Estevam <festevam at denx.de>
> Reviewed-by: Thomas Zimmermann <tzimmermann at suse.de>
> ---
Reviewed-by: Javier Martinez Canillas <javierm at redhat.com>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
More information about the dri-devel
mailing list