diff --git a/device/linux-samsung-i9505/03-fix-video-argb-setting.patch b/device/linux-samsung-i9505/03-fix-video-argb-setting.patch new file mode 100644 index 000000000..a89148c21 --- /dev/null +++ b/device/linux-samsung-i9505/03-fix-video-argb-setting.patch @@ -0,0 +1,91 @@ +From 79f928baf4e7b0fa8f36276b2f877da2d46a50d0 Mon Sep 17 00:00:00 2001 +From: Thadeu Lima de Souza Cascardo +Date: Mon, 11 Dec 2017 11:00:24 -0200 +Subject: [PATCH] fix video argb setting + +--- + drivers/video/msm/msm_fb.c | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +diff --git a/drivers/video/msm/msm_fb.c b/drivers/video/msm/msm_fb.c +index 251a5cbb753d..dcd9262a88f4 100644 +--- a/drivers/video/msm/msm_fb.c ++++ b/drivers/video/msm/msm_fb.c +@@ -1342,16 +1342,16 @@ static int msm_fb_register(struct msm_fb_data_type *mfd) + fix->xpanstep = 1; + fix->ypanstep = 1; + var->vmode = FB_VMODE_NONINTERLACED; +- var->blue.offset = 0; +- var->green.offset = 8; +- var->red.offset = 16; ++ var->blue.offset = 24; ++ var->green.offset = 16; ++ var->red.offset = 8; + var->blue.length = 8; + var->green.length = 8; + var->red.length = 8; + var->blue.msb_right = 0; + var->green.msb_right = 0; + var->red.msb_right = 0; +- var->transp.offset = 24; ++ var->transp.offset = 0; + var->transp.length = 8; + bpp = 4; + break; +@@ -1361,16 +1361,16 @@ static int msm_fb_register(struct msm_fb_data_type *mfd) + fix->xpanstep = 1; + fix->ypanstep = 1; + var->vmode = FB_VMODE_NONINTERLACED; +- var->blue.offset = 8; +- var->green.offset = 16; +- var->red.offset = 24; ++ var->blue.offset = 16; ++ var->green.offset = 8; ++ var->red.offset = 0; + var->blue.length = 8; + var->green.length = 8; + var->red.length = 8; + var->blue.msb_right = 0; + var->green.msb_right = 0; + var->red.msb_right = 0; +- var->transp.offset = 0; ++ var->transp.offset = 24; + var->transp.length = 8; + bpp = 4; + break; +@@ -2260,15 +2260,15 @@ static int msm_fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) + /* Figure out if the user meant RGBA or ARGB + and verify the position of the RGB components */ + +- if (var->transp.offset == 24) { +- if ((var->blue.offset != 0) || +- (var->green.offset != 8) || +- (var->red.offset != 16)) +- return -EINVAL; +- } else if (var->transp.offset == 0) { +- if ((var->blue.offset != 8) || ++ if (var->transp.offset == 0) { ++ if ((var->blue.offset != 24) || + (var->green.offset != 16) || +- (var->red.offset != 24)) ++ (var->red.offset != 8)) ++ return -EINVAL; ++ } else if (var->transp.offset == 24) { ++ if ((var->blue.offset != 16) || ++ (var->green.offset != 8) || ++ (var->red.offset != 0)) + return -EINVAL; + } else + return -EINVAL; +@@ -2365,7 +2365,7 @@ static int msm_fb_set_par(struct fb_info *info) + break; + + case 32: +- if (var->transp.offset == 24) ++ if (var->transp.offset == 0) + mfd->fb_imgType = MDP_ARGB_8888; + else + mfd->fb_imgType = MDP_RGBA_8888; +-- +2.14.1 + diff --git a/device/linux-samsung-i9505/APKBUILD b/device/linux-samsung-i9505/APKBUILD index 8526504f8..d21d04c34 100644 --- a/device/linux-samsung-i9505/APKBUILD +++ b/device/linux-samsung-i9505/APKBUILD @@ -2,7 +2,7 @@ pkgname="linux-samsung-i9505" pkgver=3.4.112 -pkgrel=1 +pkgrel=2 pkgdesc="Samsung Galaxy S4 International kernel fork" arch="armhf" _carch="arm" @@ -26,6 +26,7 @@ source=" patch_lifebook_detect.patch patch_fsp_detect.patch 02_gpu-msm-fix-gcc5-compile.patch + 03-fix-video-argb-setting.patch gpu_msm2_fix_compile.patch " builddir="$srcdir/${_repository}-${_commit}" @@ -86,4 +87,5 @@ ea1d3b5a234fa565e3c1a792de48f4fc4e6023d281d303c8e319c7ef28edc5739ab0e4dea0139a41 36418ec3d31d1d6d9915afcf3d38d4549aeeb49c3825414b51b67db7a1ab6482f22d2723da3b258b671956809949278a51f6507df9b0052aec0bd0c59f56919a patch_lifebook_detect.patch 9da951bb0391564f33bdb0a97c339997eda7b15ec2f160da8af237cc87c233b8c3dcdc1a12759e04d69d075ae9b0afaf726101ef356e788d7f4606a03db2e248 patch_fsp_detect.patch 7be03a9e78b7ac330a54b1f00509caa0621a95c0c55901878ad757f9dd69cc05ba2c8b5ea987063ae1224f92c4d090d515fa5d369e7755181a4871b0d0f82881 02_gpu-msm-fix-gcc5-compile.patch +e3083c260ed9c4fc0d83f43106700b6173876dbfae072f6e6696ac6785a4dc17771fbcb3e21601e04ed29a11bf0f7a2a09ad549375e0c34cea245c7f2e2bcbbd 03-fix-video-argb-setting.patch 8ab0ed40315a22b046e6250df7ad0f7834ed011598c85d34500b6fc047f1c830b998f9fa3b1d5150d98ba34f3924cd62576e0e7d3d62fcc9832319eafc533c96 gpu_msm2_fix_compile.patch"