drm/tegra: plane: Fix RGB565 format on older Tegra
authorThierry Reding <treding@nvidia.com>
Thu, 15 Mar 2018 10:09:35 +0000 (11:09 +0100)
committerThierry Reding <treding@nvidia.com>
Thu, 15 Mar 2018 10:33:47 +0000 (11:33 +0100)
The opaque/alpha format conversion code is currently only looking at
XRGB formats because they have an equivalent ARGB format. The opaque
format for RGB565 is RGB565 itself, much like the YUV formats map to
themselves.

Reported-by: Dmitry Osipenko <digetx@gmail.com>
Fixes: ebae8d07435a ("drm/tegra: dc: Implement legacy blending")
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/plane.c

index 36a06a99369821aed88bbf9701550848b420493e..eddaa2f05ed6057f5def8ed826d06647e19674c5 100644 (file)
@@ -297,6 +297,10 @@ int tegra_plane_format_get_alpha(unsigned int opaque, unsigned int *alpha)
        case WIN_COLOR_DEPTH_B8G8R8X8:
                *alpha = WIN_COLOR_DEPTH_B8G8R8A8;
                return 0;
+
+       case WIN_COLOR_DEPTH_B5G6R5:
+               *alpha = opaque;
+               return 0;
        }
 
        return -EINVAL;