Shilin Victor
2ebf93df9d
exynos: libEGL_mali: don't force BGRA8888 format when it's unneeded
...
Change-Id: I9cc318b7bb00c2efaf386bb2e75e99c275aaca7e
2019-03-06 00:07:41 +03:00
Shilin Victor
f54ba67557
exynos4: only build libEGL_mali if board flag is set
...
Change-Id: I04ec85e24be6af5497d49844626a2651e22084be
2019-03-02 22:31:56 +03:00
Shilin Victor
fb016d5b6e
exynos4: EGL_mali: allow to skip EGL context detach
...
This should prevent Mali blob freaking on context detach.
Not sure if this is a good idea just skipping context detach,
but let's see how it goes...
Change-Id: I62121b17b74276a687818531187ba444fedc32bf
2019-03-02 21:52:38 +03:00
Shilin Victor
c1b4b30ccc
exynos4: build libEGL_mali from sources
...
* used a handcrafted assembly to replicate original functions
* fix invalid window format passed to libMali (RGBA vs BGRA fix)
Change-Id: Idc88c255e3280e11a35e552c40098ae967947108
2019-03-02 18:45:07 +03:00
Shilin Victor
8b1d6eb487
exynos4: gralloc: actually disable ION allocations
...
This reverts commit 6cec77e050
.
Change-Id: I87ea925c33ecfe7f2728b84cc5a316530d7d8765
2019-03-02 00:10:19 +03:00
Shilin Victor
9c4bb20ab5
exynos4: fix inclusion of LiveDisplay
...
Change-Id: I6d0884f741066cbdef441d59b6b7b1cff023eb62
2019-03-01 21:45:49 +03:00
Dominggoes Isakh
07865c0821
gralloc: Update freed buffermask at alloc
...
This fixes screen tearing because of the change of HIDL behavior.
The buffer is freed before the next allocation causing the
bufferslots always be unused at allocation. Only the first buffer
in the framebuffer /dev/graphics/fb0 was used.
Thanks to @Chronomonochrome for pointing out the issue in gralloc.
Change-Id: If1f6eb667506743cca828fbf87a45e7c2ee849a9
2019-02-26 20:59:03 +03:00
Shilin Victor
ca4cd7f5c3
Revert "exynos4: gralloc: allow skipping bufferMask change on free"
...
This reverts commit 9e1e7fe726
.
Change-Id: I839928cdaf79486b74b87d999d3b0508520799c0
2019-02-26 20:58:54 +03:00
Dominggoes Isakh
8af7c99f0d
gralloc: Disable ION allocation for HWC
...
We got screen tearing issues because only one buffer was used
in /dev/graphics/fb0.
Credits goes to @Chronomonochome for his original commit.
Change-Id: I321bb19ce586a74319941046800f0db07ce7bf98
2019-02-26 20:58:46 +03:00
Shilin Victor
6cec77e050
Revert "gralloc: switch to UMP-only allocations"
...
This reverts commit 33b21658f3
.
Change-Id: I17953c198b97404df00a285c053d5713e9fe022f
2019-02-26 20:58:38 +03:00
Shilin Victor
727b2b1a82
exynos4: gralloc: remove some methods implementation
...
Change-Id: I57c571fb3c0226e979a6b74c7fef05ac8cf85d8d
2019-02-21 15:21:09 +03:00
Shilin Victor
e7eab5f906
exynos4: gralloc: allow skipping bufferMask change on free
...
an addition of Gralloc HIDL caused Exynos4 gralloc
to use only one framebuffer slot of the available two.
This happens because the buffer is freed by HIDL immediately
after it's allocated, thus making gralloc HAL think that
first buffer is free and allocate a second one at the
same vaddr (effectively using just one buffer).
By skipping bufferMask change on the buffer free,
we will make use of two framebuffer slots and fix Vsync issue.
Change-Id: I0c3e7f517a67ad9d554111f91ef2f5190c6522c8
2019-02-12 20:31:12 +03:00
Shilin Victor
f0a77e61e0
exynos4: Set native color format for the Native window
...
based on and avoids need of commit 19ab8af47c
Change-Id: I2048689459359c54f98223b762f3fea803c81a8b
2019-02-08 21:25:58 +03:00
Dominggoes Isakh
48e12ec57f
Exynos4: Initial implementation of LiveDisplay 1.0
...
Change-Id: Ic42ac877b5bbd437b07616c0bcaedd7d846d07c2
2019-02-06 16:48:04 +03:00
Shilin Victor
39922dd5bc
gralloc: switch to UMP-only allocations
...
Change-Id: I824855ce742f44669472f6d6176beea674137f64
2019-02-06 16:16:18 +03:00
Dominggoes Isakh
19a7c12ce1
gralloc: Clone handle when unregistering buffer in separate thread
...
Change-Id: I113158592e29867246cdfd1daa96a3960d6851d6
2019-02-06 16:14:01 +03:00
Dominggoes Isakh
e19a67af25
gralloc: Implement FIFO in partial flush's rect_list
...
Change-Id: I275f41de4b55065b1644e7dfc11def81bf86eff6
2019-02-06 16:14:01 +03:00
Dominggoes Isakh
af9f15adb6
gralloc: Unregister graphicbuffer in separate thread
...
Change-Id: Iea08c633f6e0adffacb03b05ee041ff99f776787
2019-02-06 16:14:01 +03:00
Dominggoes Isakh
3c913bf8c8
gralloc: Move unregister_buffer to seperate method
...
Change-Id: I4b53996be77c874cb7475104c58e428118a133a6
2019-02-06 16:14:01 +03:00
Dominggoes Isakh
41bfeb9370
gralloc: Fix GraphicBuffer screenshot issues in Pie
...
Buffer allocation for GraphicBuffer fails because it is released
to early. Use ION buffer and add an ump-reference to stall.
Change-Id: I077bd7176fff4aa08a46362d80e64ad9b740773a
2019-02-06 16:14:01 +03:00
Dominggoes Isakh
3c86d5e6eb
hwcomposer: smdk4120: Add composition-decision of our old hwc
...
Change-Id: I2e1919e7abeb78310358ac315f7de2a9223f6fe2
2019-02-06 16:13:27 +03:00
Dominggoes Isakh
3cacced179
exynos4: android.hardware.graphics.allocator@2.0 for Exynos4
...
* Buffer got corrupt because of the mNumFlexPlanes member.
Use fixed value of 4 instead and exclude the member.
* Usage bits were not filtered properly
Change-Id: I7ee9fa73f896c505403447ae118a76d9f53e00a8
2019-02-06 16:12:44 +03:00
Dominggoes Isakh
79932c733a
hwcomposer: Don't set state to S3C_FB_WIN_STATE_DISABLED
...
This fixes rendering statusbar icons in Pie when high resolution
display setting is set. The height of the statusbar is less than
32 pixels and was therefore not rendered.
Change-Id: Ie6283de2cb429f0c0d3ca66bf5d3638639a66f79
2019-02-06 16:12:40 +03:00
Shilin Victor
a416ce3378
Revert "hwc: verbose layer debugging"
...
This reverts commit e0674a62cd6d817b15920d7df9ef6a05dd6ffa7b.
Change-Id: I9bb6ab964f2dba3d68a34c9737a7a56401e79b1f
2019-02-06 16:12:36 +03:00
Shilin Victor
aa2cfeb6f6
hwc: release fence in perform_fimc
...
Change-Id: I2039939c42a76567874ec0e1100ab1cbff95ed39
2019-02-06 16:12:36 +03:00
Shilin Victor
e24564745e
hwc: disable FIMG
...
Change-Id: I61f764973d4b3bb350a99a69804b96995addee70
2019-02-06 16:12:36 +03:00
Shilin Victor
f3b1c86f77
hwc: verbose layer debugging
...
Change-Id: I5f21254c0a3965b2d1629b6f1a3ccbd7aed285a1
2019-02-06 16:12:36 +03:00
Shilin Victor
2aa170fa95
exynos4: HWC: move as vendor module
...
Change-Id: Ic746a4170a60f3c79a0df5b1e0a5bed8a5838e24
2019-02-06 16:12:23 +03:00
Shilin Victor
00b6ad969c
hwc: Set ioprio for vsync thread
...
This reverts commit e334ed34ddf504921195161d2230a3b4156d9a43.
Change-Id: Iceba230b667c0a4c480301bf5d662a9cf82b6df3
2019-02-06 16:12:23 +03:00
Shilin Victor
c85f6a008e
hwc: RGB_565 pixel format is not supported
...
thanks @acroreiser
Change-Id: I114fae3f6ebce32bbf0c07296a54b4fb4a599c08
2019-02-06 16:12:23 +03:00
Dominggoes Isakh
426683a8eb
Fix build errors
...
Change-Id: I4d4997e25d15b42180a1f41a01daf127bf27ca3c
2019-02-06 16:12:23 +03:00
Dominggoes Isakh
6cd6fedd47
exynos4: gralloc: Ignore PRIV_FLAGS_FRAMEBUFFER
2019-02-06 16:12:23 +03:00
Dominggoes Isakh
48d3ff42e8
Fix build errors
2019-02-06 16:12:23 +03:00
Dominggoes Isakh
db01d7418e
Revert "hwc: Set ioprio for vsync thread"
...
Depends on libcutils support, which was removed in
https://review.lineageos.org/#/c/189293/ .
2019-02-06 16:12:23 +03:00
Simon Shields
2dc726f442
exynos4: hwc: add missing checks in is_overlay_supported
...
make sure that if something is transformed/scaled we don't try drawing
directly to FIMD
Change-Id: I69be0d296c11496c5b380b7135dad10cb6c66fc8
2019-02-06 16:12:23 +03:00
Simon Shields
dfa35134f6
exynos4: hwc: disable FIMG for now
...
adds significant amounts of touch latency, and also causes the LCD to
die :(
Change-Id: Ie777d249d02def3863049528ab8437dcacc3faa1
2019-02-06 16:12:23 +03:00
Simon Shields
60d6c48cca
exynos4: hwc: remove GRALLOC_USAGE_HW_ION usage
...
HW_COMPOSER means the same thing and doesn't require modifying AOSP
headers
Change-Id: I29d9f6348a19b5cf778a4819a3dfd511ae789e0d
2019-02-06 16:12:23 +03:00
Simon Shields
6c9141f69d
exynos4: hwc: disable FIMC scaled layers for now
...
seems to cause the panel to die
Change-Id: I9005a1ee1fba6ef13e15572ffe5094e8fc5c6687
2019-02-06 16:12:23 +03:00
Simon Shields
70f13df35c
exynos4: gralloc: improve allocation logic
...
A buffer that needs to be allocated in ION will either have
GRALLOC_USAGE_HW_COMPOSER, or GRALLOC_USAGE_HW_ION. See
https://android.googlesource.com/platform/hardware/libhardware/+/android-7.1.2_r33/include/hardware/hwcomposer.h#136
for more information.
Change-Id: Ie75d369e40ce1758920d194dd1f0dafcaeb4d140
2019-02-06 16:12:23 +03:00
Simon Shields
1535f0a3dc
exynos4: libhwc: HWC 1.4
...
Change-Id: Ib446df60d59ddc304125d4887ac5adea8d72f9e6
2019-02-06 16:12:23 +03:00
Simon Shields
1e5c745f10
exynos4: hwc: include plane_alpha in output
...
Change-Id: Ic7cae63f4fe8ef48c7e16838c2dbdbcbf88da7b3
2019-02-06 16:12:23 +03:00
Simon Shields
d3e5b2f802
exynos4: hwc: fix FIMC colour format selection
...
Change-Id: I67bc79f57cc85f428dea7d16ffccb70a1ae646ac
2019-02-06 16:12:23 +03:00
Simon Shields
5a7136339c
exynos4: hwc: debug improvements
...
Change-Id: If19d10308dfe2578018a5f5cdf6c14d40561d777
2019-02-06 16:12:23 +03:00
Simon Shields
188028e3ca
exynos4: hwc: fix stride when using G2D
...
Change-Id: I52677b41d1753fad405124c90477fa71c9dd255b
2019-02-06 16:12:23 +03:00
Simon Shields
a2b4252873
exynos4: hwc: fix FIMC transform with cropped buffer
...
s_fmt_pix_out wants the width/height of the original buffer, not the
width/height of the cropped area.
Change-Id: Iff2b4b2b89af6a68aac23b5766cf76cdf822af99
2019-02-06 16:12:23 +03:00
Simon Shields
3a77385a70
exynos4: hwc: try FIMG if FIMC composition is already used
...
Change-Id: I08f6241388e9a8e7436b2bf68869f523eb969c48
2019-02-06 16:12:23 +03:00
Simon Shields
418331950b
exynos4: hwc: fix typo
...
Change-Id: I7dcbccfa1d5911e3935b6525d277efc831655d79
2019-02-06 16:12:23 +03:00
Simon Shields
20802225e8
exynos4: hwc: prefer FIMC in transformed contiguous cases
...
FIMC seems to be more reliable than FIMG.
TODO: use all four FIMCs
Change-Id: I1d34f8b3daae6dac609d141e78d3629433097cdb
2019-02-06 16:12:23 +03:00
Simon Shields
5edee1cbfc
exynos4: hwc: refill fimg_cmd struct on each perform_fimg
...
Change-Id: Ic47bf13dabab841149d3fe9566687b30ec3be2af
2019-02-06 16:12:23 +03:00
Simon Shields
e86377015e
exynos4: hwc: ignore alpha on window 0
...
Change-Id: I9bbeb8b2ec06f08b070a8eda02c0322ede1c62f7
2019-02-06 16:12:23 +03:00