summaryrefslogtreecommitdiff
path: root/libhwc2.1/histogram_mediator.cpp
AgeCommit message (Collapse)Author
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-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>
2022-09-29libhw2.1: change mIDLHistogram to shared_ptrsusi_su
change mIDLHistogram to shared_ptr to avoid memory error when destructing ExynosDisplayDrmInterfaceModule bug: b/240292495 test: tested by a histogram client program locally Change-Id: I4f093ac78faa49cdb34d4dd07ae6634d5d82f3f8
2022-09-13libhwc2.1: allow the first power modelinpeter
The first state from SF can be ON or OFF. Changing mPowerModeState as optional allows the first power mode. Bug: 237745199 test: check display power state during booting Change-Id: I7c60a8a0b13fca643dec0877d4263067043c2353
2022-07-06libhwc2.1: resolving histogram_request_ioctl error logsusi_su
When screen in idle, DRM driver would not respond and the DRM request would not be satisfied. Later on, when another histogram client calls, DRM driver will complain histogram already registered error log. Skip the request call if the previous one is there. Bug: 236907095 Test: local test and verified without error log Change-Id: I285204a499077e56ff929aac8f56eaeefaaa8588
2022-06-24libhwc2.1: fix crash caused by secure layer checksusi_su
1. add lock when executing secure layer check 2. check NULL before layer->isDrm() call Bug: 236678977 Test: create a reproducible scenario(loop 5M times isSecureContentPresenting()) and verify it Change-Id: I836e39b0b75e3c7c94dd8ffe03686e976d3d0f91
2022-06-08libhwc2.1: add roi calculation for display RRSsusi_su
This patch calculates roi for histogram sampling accoring to display RRS mode setups Bug: 233136164 Test: local test with a hist_client code by setting different display resolution switch Change-Id: I35aab6b776b1687c8ae1d37ca439a9409205932c
2022-06-07libhwc2.1: histogram screen refresh controlsusi_su
Use simple frame counter, and record the histogram sampled frame counter value to control screen When the 2 values differ, issue invalidate() Bug: 229578705 Test: local test with a histogram aidl client, sampling histogram continuously every 50ms, select Setting , clicking power on/off, also keep the screen on for a while Change-Id: Ie23387d8f2d3271867f2f5dd6b44cee359c1282d
2022-05-24libhwc2.1: histogram aidl backendsusi_su
This patch contains 1. stogram_mediator aidl backend code (synchronous call) 2. return power-off error code when screen is off 3. return secure-playing error code when there is any secure layer on screen 4. histogramSample timeout at 50ms 5. support histogram sample position at : PRE-DQE and POST-DQE 6. simple client test code for histogram_mediator aidl 7. cherry pick histogram HWC DRM patches The histogram_mediator aidl code is tested by a simple client program aidl_hist_client Bug: 176922790, 225171544 test: local test with a histogram client program Change-Id: I923d66e45cca03901277bb9fc6d829dd026f455b