summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-02-04libdrmresource: Add missing epoll_event.h includeHEADuminekorazorloves
Fixes "error: variable has incomplete type 'struct epoll_event'" Change-Id: I7e21e5aa176e01142d580fac85d956c333b0c52d
2024-02-04hwc: Depend on qti kernel headersMichael Bestas
Change-Id: If1b72ad7b36d658bc85587bbea6caf85e520519d
2023-07-19Merge cherrypicks of ['googleplex-android-review.googlesource.com/24004824'] ↵Android Build Coastguard Worker
into udc-release. Change-Id: I23979937d6f2e3831a2e27ccc2e2da2b3a899ea0
2023-07-19libhwc2.1: revert behavior of setLayerCompositionType()Wiwit Rifa'i
This is partial revert of ag/23598344. This will fix power regression & disappearing cursor issues caused by that patch. In ag/23598344, we didn't set mGeometryChanged if the composition is changed back to the original composition (initially set by setLayerCompositionType()) after falling back to client composition in the previous frame. But, it causes some regressions, e.g. power jump and disappearing cursor issues. Thus, this will revert to the previous behavior i.e. to always set mGeometryChanged as dirty whenever we change mCompositionType. Bug: 289010449 Test: v2/android-power-te/functional_media_test_suite/* Test: Use mouse and the cursor shouldn't disappear unexpectedly (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f6f0318b90c6e41d3d7bd456ca32a23b16399aaf) Merged-In: If73dc0353c9e3ede93ff02e675aa879bc54287e4 Change-Id: If73dc0353c9e3ede93ff02e675aa879bc54287e4
2023-06-17Snap for 10338099 from f1de980659b0ad327efef954a98cfc616c805d77 to udc-releaseAndroid Build Coastguard Worker
Change-Id: I9dc7f953edaf953681b8a72f0bc21d0f9f5f4069
2023-06-16Merge "libhwc2.1: Skip redundant onRefresh in histogramSample" into udc-devTreehugger Robot
2023-06-15Snap for 10331563 from 8c34de5710be7e0cc2b4a2d919ae546d176f9776 to udc-releaseAndroid Build Coastguard Worker
Change-Id: Id567326bd5e42fbd624d2a19ed1a9f24f599ccc2
2023-06-07libhwc2.1: use mRequestedCompositionType to check indicator layerWiwit Rifa'i
Instead of checking (mCompositionType == REFRESH_RATE_INDICATOR), we should check mRequestedCompositionType to check whether a layer is for refresh rate indicator or not. This is because mCompositionType can be changed to CLIENT when acceptDisplayChanges() is called. Thus, we should use mRequestedCompositionType that will only be changed by setLayerCompositionType(). Bug: 283352279 Test: refresh rate indicator can enter idle after play HDR video on YT Change-Id: I5381157107550ed380c9671fe712285b1b53f814
2023-06-06libhwc2.1: mark as non-frame update for reverting composition to originalWiwit Rifa'i
When some layers fallback to CLIENT composition, mCompositionType will be set to CLIENT during acceptDisplayChanges() since SF will update its state according to the validated type. But, SF may revert the requested composition back to the original composition (e.g. DEVICE), so HWC should not consider it as a frame update if there's no other update. This will prevent refresh rate indicator to increase unexpectedly when updating the refresh rate indicator but there are some layers fallback to client composition. Bug: 277999360 Bug: 283352279 Test: refresh rate indicator can enter idle on wallpaper & style Change-Id: Iaa33fbad555d7a0de65d77edc2a287c8e8940dc3 Merged-In: Iaa33fbad555d7a0de65d77edc2a287c8e8940dc3
2023-06-06libhwc2.1: Skip redundant onRefresh in histogramSampleLeo Chen
DPU driver maintains always-on histogram engine state with up to date histogram data. Therefore we don't have explicitly to trigger onRefresh in case histogram configuration does not change. Test: aidl_hist_client 500 500 1000 1999 340 340 344 POST 1000000 Bug: 261376040 Change-Id: I44824ee836adb66aeb214c371a11ed350d13b069 Signed-off-by: Leo Chen <yinchiuan@google.com>
2023-05-27Snap for 10214038 from a5f01d4ae93a775f1eb60f41884c826715bc2bb1 to udc-releaseAndroid Build Coastguard Worker
Change-Id: I6ef00e1909e670192ba65b274fbfb90fe80b204e
2023-05-26Merge "libhwc2.1: correct refresh rate reference at toggling lhbm" into udc-devShiyong Li
2023-05-26libhwc2.1: histogram: fix race conditionOleg Matcovschi
Fix potential race condition when data is received before setHistrogramControl() returns and mHistReq_pending is set to true. TODO: Implement timeout for requestHist(). Bug: 261376040 Bug: 277948998 Change-Id: Idd8b191508af19f1ce9bdd63d7fdf6a39fe0bd6e Merged-In: Idd8b191508af19f1ce9bdd63d7fdf6a39fe0bd6e Signed-off-by: Oleg Matcovschi <omatcovschi@google.com>
2023-05-26libhwc2.1: histogram: pass parameters as referencesOleg Matcovschi
Bug: 277948998 Bug: 261376040 Change-Id: I7021e0445e4b938b98eaa7dab54d5622ada2957b Merged-In: I7021e0445e4b938b98eaa7dab54d5622ada2957b Signed-off-by: Oleg Matcovschi <omatcovschi@google.com>
2023-05-26libhwc2.1: correct refresh rate reference at toggling lhbmShiyong Li
The refresh rate associated with mActiveConfig takes one or more frames to actually becomre effective on hardware, and can't be used as reference to decide if it's needed to set new refresh rate while toggling lhbm. Use drm value instead, which can't be blocked by enableConfigSetting() and takes 1 frame at most to reflect on hardware. Bug: 280727927 Test: check udfps enrollment failure rate Signed-off-by: Shiyong Li <shiyongli@google.com> Change-Id: Ie2f39f73761cc6f9fe51637aa3ebf8e5d85026e5
2023-05-20Snap for 10171451 from 2a4e22ebcc9afeabdd953b5eb3f9b12e33433838 to udc-releaseAndroid Build Coastguard Worker
Change-Id: Ibe24945550d0ce22edf982abcf08faa26d9da7f2
2023-05-19Merge "libhwc2.1 : reset assigned resource when a layer is destroyed" into ↵Long Ling
udc-dev
2023-05-19Merge "libhwc2.1: add trace for setActiveConfigWithConstraints()" into udc-devJoen Chen
2023-05-19libhwc2.1: add trace for setActiveConfigWithConstraints()Joen Chen
HWC adds trace for setActiveConfigWithConstraints() to show the desire time and isConfigEnabled() Bug: 280460655 Test: run vts VtsHalGraphicsComposerV2_4TargetTest -t Per Instance/GraphicsComposerHidlTest#setActiveConfigWith Constraints_Delayed/0_default Change-Id: I6796d054f463982050b48a70b9e4300d1ddc9ac4
2023-05-19Snap for 10162339 from fcbbd30ad103297adf4814f03abc9310da9be4b9 to udc-releaseAndroid Build Coastguard Worker
Change-Id: I25083a3305b7d6665b75a093401ac8c932688784
2023-05-17libhwc2.1: each display should have respective boot propertyJoen Chen
HWC should provide each display with a respective boot property. Considering OTA, we keep the property string for display with id 0, and give another property string for other displays. Bug: 282126684 Test: VTS “run vts -m VtsHalGraphicsComposer3_TargetTest -t PerInstance/GraphicsComposerAidlTest#GetPreferredBootDisplay Config/0_android_hardware_graphics_composer3_IComposer_default” Change-Id: Ieb00906bdf4ad949710e3469476cab0df734b9b4
2023-05-16Snap for 10147226 from 90179609edfcd74b801c966d6c960ebef3354a5a to udc-releaseAndroid Build Coastguard Worker
Change-Id: Iab8c882c8089e179347474ec422ce08c8dc8e975
2023-05-16libhwc2.1 : reset assigned resource when a layer is destroyedMuncheol Park
HWC service is crashed due to accessing memory which is already freed. In destroyLayer, it only delete layer object and pointer in ExynosDisplay. But ExynosMPP still have pointer of deleted layer object in mAssignedSource. So when validateDisplay called, it refers the freed memory in resetAssignedState() layer->resetAssignedResource() is added before delete layer object so that remove layer info in ExynosMPP. Bug: 264510390 Test: stop surfaceflinger by command "setprop ctl.stop surfaceflinger" Change-Id: I5191ae334c7566c8fe503c06784aae0e6be1ea81 (cherry picked from commit 261c8ec1328812c2e99e9cac86c635ba875990bb)
2023-05-16Merge "FBManager: use dedicated map for caching M2M secure layers" into udc-devMidas Chien
2023-05-15Snap for 10136934 from 61e9eb75ca40078f44c18bfaf21061eaef8b0a7b to udc-releaseAndroid Build Coastguard Worker
Change-Id: I69c13efd5bae660c689e02ca6694dba03e9f96af
2023-05-15Merge "libhwc2.1: update IDisplay version to 8" into udc-devWeizhung Ding
2023-05-15FBManager: use dedicated map for caching M2M secure layersMidas Chien
The quota of secure memory is rare and limited. HWC should release it once it is inused quickly. Itʼs easier to use a dedicated map to control the life cycle of cached M2M secure buffers. Bug: 278836996 Test: play secure video with various resolutions and rotate screen Test: play video with various resolutions and rotate screen Test: camera, record, chrome, AOD Change-Id: Ic7a83773b43fcd27737ff514cf67754fdb1750d0
2023-05-12libhwc2.1: disconnect link between plane and crtc after power onjoenchen
HWC cannot just assign a plane’s crtc from crtc-0 to crtc-1 directly, and it must turn off the plane first Bug: 277874775 Test: enable/disable DDC in translation app Change-Id: I7771821fc618528f63610449c506ed93ec8a8ddc
2023-05-12libhwc2.1: update IDisplay version to 8Weizhung Ding
Bug: 281630752 Test: build Change-Id: I2366eeb95fdf5767d75944d65061af25d39c78a4
2023-05-10Snap for 10106040 from 25001f3ea723c503414ba6cb8dcc8461a04fb6c2 to udc-releaseAndroid Build Coastguard Worker
Change-Id: Icd009adfbe60576d07427037c723ed8209fe1bfa
2023-05-10libhwc2.1: skip to disable unsupported planeYongWook Shin
When disable unused planes, the planes which are unsupported by CRTC should be skipped to avoid abnormal configurations. Bug: 238373481 Bug: 263989425 Test: power on/off display Change-Id: Ib14f03446b855d87c5f660775c6e803abb596339 Signed-off-by: YongWook Shin <yongwook.shin@samsung.com> Signed-off-by: Petri Gynther <pgynther@google.com> Merged-In: I627afe439e0a744532ff3aa4cf094dc4fd9d4b1d
2023-05-10Merge "libhwc2.1: skip async_off if multiple displays are enabled" into udc-devWeizhung Ding
2023-05-10libhwc2.1: skip async_off if multiple displays are enabledWeizhung Ding
Bug: 271818029 Test: display on/off Change-Id: Id1de11148e988fc3c6a831c40c6fc0de42aa04b8
2023-05-08Snap for 10086753 from d6bd3d5d55881536c66766546ab8a98a37c790ca to udc-releaseAndroid Build Coastguard Worker
Change-Id: I68e87a2e0b877e19de63dcce62d4df0b02d79198
2023-05-05libhwc2.1: add lock protection in checkBtsReassignResourceMidas Chien
Add mutex lock when accessing mLayers to avoid race condition. Bug: 271198385 Test: rr switch, AOD, video, camera Change-Id: I50985f896883e4001ffc08a582800ebde625fe97
2023-04-26Snap for 10017950 from 88780476976e4194bbaa581a5713b69d8d963a1e to udc-releaseAndroid Build Coastguard Worker
Change-Id: I31619b02e69c27ab8e8ee6489514540046251e6d
2023-04-25libhwc2.1: actively set lhbm desired refresh rate during lhbm periodShiyong Li
- set lhbm desired refresh rate at enabling lhbm and restore SF desired one at disabling if needed. - always notify SF with it's desired Vsync if SF's refresh rate != lhbm's Bug: 250979028 Test: udfps auth with SmoothDisplay=on/off, check perfetto trace Signed-off-by: Shiyong Li <shiyongli@google.com> Change-Id: If011dbf12c1f979a50988cc375e74c7f53617d68
2023-04-25libhwc2.1: add getRefreshRate() and getVsyncPeriod() functionsShiyong Li
Bug: 250979028 Change-Id: I66c9fbc05b42c6376ec852ee1555b2655ea9635b Signed-off-by: Shiyong Li <shiyongli@google.com>
2023-04-11Snap for 9914775 from 1d1544b52c5c156b82dc31ae4be6ae62efb2d661 to udc-releaseAndroid Build Coastguard Worker
Change-Id: I940653007d43ea16cf063bd45e39548075937d92
2023-04-10Fix formatting when _FILE_OFFSET_BITS=64Colin Cross
_FILE_OFFSET_BITS=64 can change off_t to be larger than a long. Cast to intmax_t and print with %jd or switch to ptrdiff_t and print with %td. Bug: 275601166 Test: builds Change-Id: I011cc53f108aaa7f773b0d09511728864f602429
2023-04-01Snap for 9867821 from 775f35376eb847cb4ccb12fa9880885a18ab0171 to udc-releaseAndroid Build Coastguard Worker
Change-Id: I686bf061e56893a1be0c5bf4b81be2fd99af7238
2023-03-31Merge "Remove references to MULTI_THREADED_PRESENT" into udc-devBrian Johnson
2023-03-23Remove references to MULTI_THREADED_PRESENTLeon Scroggins III
This feature isn't yet used, so remove it until we actually use it in the next release. Bug: 274954820 Test: make Change-Id: I960b3cce292e07b3b7e601e2bdd5019acf34dafc
2023-03-23Snap for 9794275 from c76aa68a615afcaca98d341488725e2ae1988316 to udc-releaseAndroid Build Coastguard Worker
Change-Id: Ia7673260728e5e58208dcbf905b5fb942870b623
2023-03-22Merge "libacryl: Check color fill layer if present" into udc-devKaruna Ramkumar
2023-03-22Snap for 9786938 from 7fb13c587d7e0d449c6a9cf313b2e239d26ce0d3 to udc-releaseAndroid Build Coastguard Worker
Change-Id: Ia7f47a9bee3d0bdeb7d27457f1327d414ab309a4
2023-03-22Merge "libhwc2.1: RGB HDR layer requires DTM" into udc-devLong Ling
2023-03-21libhwc2.1: RGB HDR layer requires DTMLong Ling
In current code DTM is not required by HDR layer. It works for HDR video because the HW layer processes video layer has the DTM stage. This change will ensure RGB HDR layer gets tone mapped. Bug: 266757412 Test: show and check HDR10, HDR10+ video and RGB HDR layer Change-Id: Id1101b9b59fe267c9904c5309c36f75c1cbdddce
2023-03-21libacryl: Check color fill layer if presentKaran Bhagoji
Bug: 225772892 Change-Id: I5656e580d13f04cd85882fc3f404a3ede83f4153 Signed-off-by: Karan Bhagoji <karan.rb@samsung.com>
2023-03-21Merge "libhwc2.1: clear brightness dirty flag if go sysfs path" into udc-devTreeHugger Robot