| From foo@baz Wed Aug 22 09:42:09 CEST 2018 |
| From: Marek Szyprowski <m.szyprowski@samsung.com> |
| Date: Thu, 7 Jun 2018 13:07:40 +0200 |
| Subject: drm/exynos: decon5433: Fix per-plane global alpha for XRGB modes |
| |
| From: Marek Szyprowski <m.szyprowski@samsung.com> |
| |
| [ Upstream commit ab337fc274a1957ff0771f19e826c736253f7c39 ] |
| |
| Set per-plane global alpha to maximum value to get proper blending of |
| XRGB and ARGB planes. This fixes the strange order of overlapping planes. |
| |
| Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> |
| Signed-off-by: Inki Dae <inki.dae@samsung.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c |
| +++ b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c |
| @@ -291,8 +291,8 @@ static void decon_update_plane(struct ex |
| COORDINATE_Y(state->crtc.y + state->crtc.h - 1); |
| writel(val, ctx->addr + DECON_VIDOSDxB(win)); |
| |
| - val = VIDOSD_Wx_ALPHA_R_F(0x0) | VIDOSD_Wx_ALPHA_G_F(0x0) | |
| - VIDOSD_Wx_ALPHA_B_F(0x0); |
| + val = VIDOSD_Wx_ALPHA_R_F(0xff) | VIDOSD_Wx_ALPHA_G_F(0xff) | |
| + VIDOSD_Wx_ALPHA_B_F(0xff); |
| writel(val, ctx->addr + DECON_VIDOSDxC(win)); |
| |
| val = VIDOSD_Wx_ALPHA_R_F(0x0) | VIDOSD_Wx_ALPHA_G_F(0x0) | |