pmaports/temp/weston/0001-compositor-fbdev-add-support-for-ABGR.patch
Oliver Smith a9570538e2
weston: update to 5.0.0
pmaport recreated on top of Alpine's current aport. The --pixman-type
patches were removed, it would have needed to be rewritten to work with
newer Weston source code. It is a Weston specific workaround for a
problem with the downstream kernels, so this is better fixed in the
kernel source code:
https://wiki.postmarketos.org/wiki/Troubleshooting:display#My_screen_is_red.21

The ABGR patch was rebased and submitted for upstreaming here:
https://gitlab.freedesktop.org/wayland/weston/merge_requests/61

Fixes #136.
2018-11-29 07:52:48 +01:00

39 lines
1.4 KiB
Diff

From 7c21c1974c11ce6bf5901e7267104bde0ff00c15 Mon Sep 17 00:00:00 2001
From: Oliver Smith <ollieparanoid@bitmessage.ch>
Date: Wed, 28 Nov 2018 08:19:16 +0100
Subject: [PATCH] compositor-fbdev: add support for ABGR
Thanks to Pablo Castellano for the original patch.
---
libweston/compositor-fbdev.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/libweston/compositor-fbdev.c b/libweston/compositor-fbdev.c
index a71b7bdc..44d15077 100644
--- a/libweston/compositor-fbdev.c
+++ b/libweston/compositor-fbdev.c
@@ -234,8 +234,8 @@ calculate_pixman_format(struct fb_var_screeninfo *vinfo,
vinfo->blue.msb_right != 0)
return 0;
- /* Work out the format type from the offsets. We only support RGBA and
- * ARGB at the moment. */
+ /* Work out the format type from the offsets. We only support RGBA, ARGB
+ * and ABGR at the moment. */
type = PIXMAN_TYPE_OTHER;
if ((vinfo->transp.offset >= vinfo->red.offset ||
@@ -247,6 +247,10 @@ calculate_pixman_format(struct fb_var_screeninfo *vinfo,
vinfo->green.offset >= vinfo->blue.offset &&
vinfo->blue.offset >= vinfo->transp.offset)
type = PIXMAN_TYPE_RGBA;
+ else if (vinfo->transp.offset >= vinfo->blue.offset &&
+ vinfo->blue.offset >= vinfo->green.offset &&
+ vinfo->green.offset >= vinfo->red.offset)
+ type = PIXMAN_TYPE_ABGR;
if (type == PIXMAN_TYPE_OTHER)
return 0;
--
2.17.2