pmaports/device/testing/linux-xiaomi-rolex/99_framebuffer.patch
Denis Tolstov e30bcfc5ff
xiaomi-rolex: new device (MR 1911)
Based on !1158 by @nrdnandan (5 files)
new file: device/testing/device-xiaomi-rolex/APKBUILD
new file: device/testing/device-xiaomi-rolex/deviceinfo
new file: device/testing/linux-xiaomi-rolex/APKBUILD
new file: device/testing/linux-xiaomi-rolex/config-xiaomi-rolex.aarch64
new file: firmware/firmware-xiaomi-rolex/APKBUILD

Changed deviceinfo : Width x Height was 800x600 to correct dimension -> 720x1280

modified: device/testing/device-xiaomi-rolex/APKBUILD
modified: device/testing/device-xiaomi-rolex/deviceinfo

Added directfbrc and fb.modes file. Also added SWAP file support swap_size=1024

Added Audio files and rules removed uneccessary lines in deviceinfo.

device/xiaomi-rolex: Fix linting issues

xiaomi-rolex: Linting fixes; is a handset

xiaomi-rolex: Moved firmware/ to device/testing/

xiaomi-rolex: Enable pmb:cross-native for kernel compilation
because it is the default for recent apkbuilds

xiaomi-rolex: Apply YYLOC patch to build 3.18.140 with gcc-10 (-fno-common)

xiaomi-rolex: update patch checksums in kernel APKBUILD

xiaomi-rolex: update deviceinfo checksum; replace common patch with a symlink

xiaomi-rolex: use mdss patch

xiaomi-rolex: use BGRA mdss framebuffer patch

xiaomi-rolex: mark myself as maintainer, drop contributor from apkbuilds
Refer to git commit history instead to determine contributors

xiaomi-rolex: update kernel config for multiple devpts

xiaomi-rolex: allow firmware cross-native builds, disable tracedeps per linter

[ci:skip-build]: already built successfully in CI
2021-12-08 22:22:03 +01:00

40 lines
1.1 KiB
Diff

diff --git a/drivers/video/msm/mdss/mdss_fb.c b/drivers/video/msm/mdss/mdss_fb.c
index 075ee8a3880..b4531f66a06 100644
--- a/drivers/video/msm/mdss/mdss_fb.c
+++ b/drivers/video/msm/mdss/mdss_fb.c
@@ -868,7 +868,8 @@ static int mdss_fb_probe(struct platform_device *pdev)
mfd->bl_scale = 1024;
mfd->bl_min_lvl = 30;
mfd->ad_bl_level = 0;
- mfd->fb_imgType = MDP_RGBA_8888;
+ // Default framebuffer format.
+ mfd->fb_imgType = MDP_BGRA_8888;
mfd->calib_mode_bl = 0;
if (mfd->panel.type == MIPI_VIDEO_PANEL ||
@@ -2143,6 +2144,25 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd)
bpp = 4;
break;
+ case MDP_BGRA_8888:
+ fix->type = FB_TYPE_PACKED_PIXELS;
+ 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.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.length = 8;
+ bpp = 4;
+ break;
+
case MDP_YCRYCB_H2V1:
fix->type = FB_TYPE_INTERLEAVED_PLANES;
fix->xpanstep = 2;