Blob Blame History Raw
From: Thierry Reding <treding@nvidia.com>
Date: Thu, 15 Mar 2018 11:09:35 +0100
Subject: drm/tegra: plane: Fix RGB565 format on older Tegra
Git-commit: 8a927d648c2ee20f2fd746d733c5cd76d0fbb0c1
Patch-mainline: v4.16-rc7
References: FATE#326289 FATE#326079 FATE#326049 FATE#322398 FATE#326166

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>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
 drivers/gpu/drm/tegra/plane.c |    4 ++++
 1 file changed, 4 insertions(+)

--- a/drivers/gpu/drm/tegra/plane.c
+++ b/drivers/gpu/drm/tegra/plane.c
@@ -297,6 +297,10 @@ int tegra_plane_format_get_alpha(unsigne
 	case WIN_COLOR_DEPTH_B8G8R8X8:
 		*alpha = WIN_COLOR_DEPTH_B8G8R8A8;
 		return 0;
+
+	case WIN_COLOR_DEPTH_B5G6R5:
+		*alpha = opaque;
+		return 0;
 	}
 
 	return -EINVAL;