Age | Commit message (Collapse) | Author |
|
|
|
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
|
|
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
|
|
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
|
|
|
|
Bug: 271818029
Test: display on/off
Change-Id: Id1de11148e988fc3c6a831c40c6fc0de42aa04b8
|
|
- 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
|
|
|
|
Allow the EDID monitor descriptor to be modified so that different
panel revisions can have unique display ID's calculated.
Bug: 217472351
Change-Id: I162778e6e30b2aac872d8070ce94b90c44e0619b
Signed-off-by: Jeremy DeHaan <jdehaan@google.com>
|
|
This will add support in HWC to expose the refresh rate in panel to SF
using HWC3 callback API so that SF can update the refresh rate overlay
indicator to the actual refresh rate in the panel. HWC will monitor the
panel refresh rate based on some sysfs nodes.
Bug: 267825022
Test: enable refresh rate indicator, wait for idle, AOD
Change-Id: Ibc80d66eae6b21c3cf84d35fa819e97ccc509ede
|
|
- block refresh rate switching before enabling LHBM and unblock after
disabling.
- set 1 second timeout to unblock in case disabling action is not
called on time somehow.
Bug: 268991972
Test: lock/unlock screen by fingerprint
Change-Id: I5703d89ca8482a3ff7b70795705ac01fd3c2b8d2
Signed-off-by: Shiyong Li <shiyongli@google.com>
|
|
This reverts commit 334e1fee2f8204c8b30714291d60c19077e6df9f.
Bug: 268991972
Change-Id: Ie0d344821b407ca0c3896dc5dc2a4f6afdf68eaf
Signed-off-by: Shiyong Li <shiyongli@google.com>
|
|
|
|
Secure buffer size is limited, we should release FBIds of secure buffer
once ther are finished. Limit max cached buffer size for g2d to handle
secure buffer temporarily to avoid OOM. In future we should release it
once G2D has release secure buffer.
Bug: 261675967
Test: play secure video and switch composited between G2D and DEVICE
Change-Id: I303f908599cb274228bc43516945b2a712f5d093
|
|
Revert submission 21117545-rr_sysfs
Reason for revert: b/267569180
Reverted changes: /q/submissionid:21117545-rr_sysfs
Change-Id: Ifaaee60913ffc32e8ae9ab7acec327a968468ac7
|
|
Refresh_rate sysfs node will signal after the mipi commands for refresh
rate have been sent out, which means the next frame scanned out by next
TE will be displayed at the new refresh rate. Note there are cases panel
needs more time to reach the new refresh rate. Not a concern at this
time (neither lhbm nor compensation).
Bug: 263821118
Change-Id: I706fce33ce0eb9412b196cb63089cbc03044be30
|
|
|
|
HWC should close unused RCD plane based on the respective display
Bug: 227584297
Test: check log
Change-Id: Idf4a6744a8a75977abbc48fd45ae34405483ab3d
|
|
Bug: 202181466
Signed-off-by: Shiyong Li <shiyongli@google.com>
Change-Id: I3362c868bdee34369513b2a6ccbc9abe5b8beb59
|
|
update" into tm-qpr-dev am: 584bce05da am: beca899491
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/20641143
Change-Id: Id560be0b1489c6526bc112b983d1fb7c02b606cd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Some panels requires the resolution change(pps) commit and the frame
commit are in the same VSync, so HWC skips changing resolution commits
before 1st frame update.
Test: boot to home screen
Bug: 261354714
Change-Id: Ic7eac3eca480c11337f1a2bd4aaa0d830ee24d25
|
|
All counter traces in HWC will be updated to include display name and ID
with format "<old_trace_name> for <display_name>(<display_id>)".
Some function traces will also updated to include display name and ID
with the same format, e.g. for validateDisplay and presentDisplay.
Bug: 245533789
Test: Perfetto trace
Change-Id: Id8f7d74241431ebdc2ca5578e150df7b210d47be
|
|
8b1e213b80
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/20337006
Change-Id: I6aa488214f538cd8ac36f373bb31cc876d3699fe
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
It can avoid resolution switching during bootanimation in the most cases
when the default resolution is FHD.
Test: boot to home screen
Bug: 256745308
Change-Id: Iec6b30c671666471eae21174224bf6094c77bf35
|
|
cda5609834
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/20206687
Change-Id: I608c9d86060dc083705674f80a94a3c8fe898ee9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
There is an issue to set crtc MODE_ID property to 0 when desired mode
doesn't change. Add check to only replace desired mode if it has
changed.
Bug: 251697081
Test: fps switch, AOD in/out, screen on/off, rrs
Change-Id: I8a062e5d4396bbeb33ba0f2ff4b97d49627a4936
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/19442449
Change-Id: I36aaee82669a2ae64aec7c1f13dd4ae91c928c42
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Support display-off asynchronously to improve the latency.
Bug: 204324493
Test: fold/unfold and perfetto-traces
Change-Id: I0b078cfd686ca1c4f966f2251fbaa89f0730e9ad
|
|
Bug: 228647959
Signed-off-by: Shiyong Li <shiyongli@google.com>
Change-Id: I2442cbf1ae2e589795630ce9f5279f0dc640c29c
|
|
Get refresh rate switch transition duration from driver to calculate
refresh time and config applied time.
Bug: 237631661
Test: VtsHalGraphicsComposer3_TargetTest
Change-Id: I7fedf86701c660189c269b29ad6862afa317e2b5
|
|
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/18906146
Change-Id: I871c9f18ebda6d3a1e559195336bdd8ae0825fb7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
To ensure lhbm have enough time to reach peak brightness.
Bug: 233976672
Test: check function call sequences in trace file
Change-Id: I702f2c684d8625d8d23488d13b217be08c1bb61b
|
|
panel driver does not support mipi sync in DOZE mode.
mipi sync requires to batch all mipi commands to send to panel.
But for DOZE to ON transition, we need to insert sleep between mipi
commands.
Bug: 236388323
Change-Id: I628cff0f877ba22dc10734d9f9da202849401071
|
|
For mixed composition, if brightness mipi commands and frame are not
synchronized, there will be a dark or white flash when there is a
brightness jump. It happens when HDR become visible or gone and the
brightness animation is disabled.
Bug: 220962789
Change-Id: I2993562a2c69351f561f932305f88bfb4a2b3cf1
|
|
7324e6459d
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/18753590
Change-Id: Icceb462c818166158f27e36a342aaccc67aa2783
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
LHBM""" into tm-dev am: 89d435a5f5
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/18756416
Change-Id: I60396e098fb5df0c6121684ee4268fcd1556177c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
|
|
|
|
This reverts commit 558f1a38e3a97629761fe013bf87151f66b356f4.
Reason for revert: reduce the FR by ag/18753590
Change-Id: I0865940dc2a1284669c2f1d82a0d5c6bd5fad6cc
|
|
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
|
|
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
|
|
If there is a pending config in AOD mode or change to same config
rapidly, the config state will be REQUESTED. It should reset to NONE
in those cases. Besides, vsync callback may get incorrect mVsyncPeriod
if it refers to mActiveConfig while quickly switching fps. To avoid it,
refer to mActiveModeState to update mVsyncPeriod.
Bug: 232044740
Test: Suspend/resume, AoD, quickly fps switch
Change-Id: Ifc8989256a9b6f6633abc2d4d74124874493c6c0
|
|
into tm-dev am: 0876d4aae6
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/18715146
Change-Id: I216275595bfa65173b901447d3e0df1cc4952301
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This reverts commit b9f0ab612686bb322f978da70486f6f3ce1d62f2.
Reason for revert: sometimes fail to check the peak
Change-Id: I37c7760c68bf1da8c5e13a4fd07c8bebf4729571
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/google/graphics/common/+/18655759
Change-Id: Ied0bda8f0f8969878e30036e83043b60cc726fcc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
We have to switch to the peak refersh rate (e.g. 90/120Hz) before
enabling LHBM due to panel constraints. The peak refresh rate is
set by the fingerprint but it doesn't make sure we are running at
the peak. Wait for the peak according to mConfigRequestState and
mVsyncPeriod to guarantee we can enable LHBM.
Bug: 233145265
Test: use fingerprint to unlock the device, auto test by QMC team
Change-Id: I794ca743101f3463596a25bde0127ec9920a3658
|
|
tm-d1-dev
|
|
Composer starts before persistent property ready. Therefore composer
doesn't know user selected boot mode during composer initialization. If
default boot mode and user selected boot mode is different, resolution
will be switched twice at composer booting and DMS starts. To avoid this
problem, get boot mode from driver for the first composer booting. Also
remove vendor prop to only use persist prop to control config.
Bug: 232721840
Test: boot w/ and w/o user selected configs and check the resolution
Test: boot w/ and w/o default mode and check the resolution
Change-Id: I6940a49354d2851d23656d2ee67bce802e7b9bd8
|