Age | Commit message (Collapse) | Author |
|
As written, this loop only runs once, which makes clang's new warning
unhappy:
hardware/qcom/sm8150/display/sdm/libs/hwc2/hwc_session.cpp:934:51:
error: loop will run at most once (loop increment never executed)
[-Werror,-Wunreachable-code-loop-increment]
Chatting with qcom, this appears to be a bug, and the best fix is to
move the `break` into the `if`.
Bug: 150166387
Test: TreeHugger
Change-Id: Icb64eed5b894b9188f5265094587dd802207ba66
|
|
LOCAL_COPY_HEADERS is deprecated, so remove all its usages
to avoid build warnings.
Change-Id: I964a11f036e03fb9fa2dec05a1698c118b06b421
|
|
Change-Id: Ie1503da41766c31c9ec31bbb4282ae9ed62defce
|
|
|
|
Change-Id: I25f45d1583fbf79146dd5d6323a2ca51b42c65ab
|
|
Change-Id: I82cec38edde04836057b42bb04b7717d20488033
|
|
Assign null pointer when object is deleted, this will help others to check
whether the object is released or not.
Change-Id: Ieca455980426ab8fc0fe0bdf93d2d4dc69ae8d10
|
|
Change-Id: Icfeca2e0dac5d22e2273ea1197298907a5c7240f
Crs-fixed: 2737678
|
|
Add scaling rgb layer flag to layer stack. This flag is
used to avoid idle fallback which causes flicker due
to mdp vs gpu output difference
Change-Id: I9318e407fd1b56359c2f98de0d62784ee9803ed1
|
|
If all client layers have invalid coordinates, FB target may
not get cleared and stale FB content may get composed along
with other SDE layers. So skip all layers for such scenario
to avoid any artifacts.
Change-Id: I806cca9dfac424c6849069406ec4b62387cc2c44
|
|
Check for RegisterVsync return value before settting
registered_vsync_ to true. Don't set if error.
Change-Id: I147cde07f302c7abc7bf178352c75e797cf2a711
CRs-Fixed: 2599786
|
|
|
|
|
|
|
|
-Previously checking for setting active_ and state_ were done
withou check of pending_doze_. Latest fix changed checks state
instead of state_. If leaving doze to power on state while
pending_doze_ is true, we fall in situation where pending_doze_
does not reset until after it is checked. Reset pending_doze_
state if leaving doze before check should be done.
-Allow display mode changes as long as panel is not active
nor pending doze nor pending power on
Change-Id: I8cfb933c6d7403c41394f1cb7b295db7dcb0b73e
|
|
In some variable frame rate Apps, idle timeout which caused by
low frame rate can't be cancelled if skip validate call in certain
cases. eg, system won't get chance to resume from idle timeout if no
any gemotry changes, and Apps only change refresh rate from 48 to 60 fps.
Change-Id: I28b941f0a48eb8adf54a46b596d4952e7fa223cc
|
|
Handle a case where fd could be invalid.
Change-Id: I127b295e4bbe31b37e09b356386af4cecaeaba02
|
|
Set vsync_registered_ to false in SetEventState. In the chance
that HandleVsync does not get called by driver, we may fall in
state where vsync_registered_ never updates to false.
CRs-Fixed: 2615875
Change-Id: I033e46d9b79e0ffc320ff89c7847fb6d9ba12421
|
|
Change-Id: Ibc098be42d162dc7c1a77f829ee7efbb167f2a1e
|
|
There is no functional failure but test scripts are
expecting no SDM errors.
Change-Id: Ice1467e1f2a0b03c5dc621d258785c4f78236b04
|
|
|
|
Primary panel don't have average luminance value. Hence, display
driver don't populate the same. Average luminance is initialized
to default value of zero in HAL. Add average luminance calculation
for primary display. This aligns with the external displays.
CRs-fixed: 2716028
Change-Id: I962adef4c8298e7247cc320cc5813f1060dad4c1
|
|
Since Off->Doze transition is now asynchronous, avoid
the delay of commit cycle for video->cmd switch request.
Change-Id: I8ba84c425a913b0050d6049c08e8f383deab3fe0
|
|
Client keeps track of GPU composition requests and sends -1 fd
if there is no need to re draw.
CRs-Fixed: 2695433
Change-Id: I310d848a32afecdaf52aa23c513565920fe21de2
|
|
Added Composer_V2.4 APIs to handle VTS failures,
SetAutoLowLatencyMode
GetSupportedContentTypes
SetContentType
Change-Id: Ic0ca966aef2e44657312c55bc6156f86eceeb033
|
|
Add mutex lock in register API and callback event
so that it could wait for the callback event to finish.
Change-Id: Id28e8b0a5b2200e76e0c6c5bb6a4245b4d3871e5
CRs-Fixed: 2714760
|
|
Change-Id: I271b3c7ae3020a0f1178a75d80b28d3f2bbe8c64
|
|
Add support to enable the POMS during Doze switch based on the
property vendor.display.enable_poms_during_doze=1.
Change-Id: Ia90ae0b38aed9e45d0729a38cab89a58c3baf66b
|
|
Change-Id: I09956d011674410ce03cfeba31ca58e727ac12ea
|
|
Change-Id: I24c518df4ed38c246c938dea3f064a851c665483
|
|
Defer the first power on to first commit and enable the pending vsync
after the cirst commit.
Change-Id: Ic45951d1983a088e71e4eb82db86032f94df137d
|
|
Change-Id: I3a3fda820d25758b0dabf1cc1b621ff1d336a4d1
|
|
Setting doze mode is deferred to next commit, so wait for doze mode
to be set before enabling the vsync.
Change-Id: Ief1b422a68fd574950d38fca4cec9a6b182c7eed
|
|
Doze mode is deferred to draw cycle, so brightness application during
Doze must also be deferred till after the fences signal for that commit
Change-Id: I046b18069014c0198f3d929b04fa460c305b28ee
CRs-Fixed: 2472116
|
|
Doze is being deferred to next commit, Handling of pending vsync
enable also deferred after next commit.
Change-Id: I18feaeacd85acb4c8a699aef1555c2f4a44edd65
|
|
Disable vsync when display state is poweroff/dozesuspend and restore
vsync state to its previous state when the display is powered on.
Change-Id: I83569873aa0d082a9ec6d33b7ce5dc8815bd4953
|
|
-- In case doze is not supported, doze functionality will be
applied in ON state.
-- Disable async power mode.
CRs-Fixed: 2593633
Change-Id: I9b48e7a4767a5ad421970ad97aada49f79e03911
|
|
Add support to query Smart Panel attribute of given Display Config,
with the Display Config HIDL API call from SurfaceFlinger to HWC.
SF requires this attribute to populate the list of allowed Refresh
Rate configs to switch Refresh rate among the published Command and
Video mode display configs.
CRs-Fixed: 2535403
Change-Id: I09609ce9aa1987047f9cbe1c3db6392508c59967
|
|
Set the idle pc state to IDLE_PC_NONE after the atomic commit to avoid
overriding of idle pc state set using debug node.
Change-Id: Ib86cd5dd703921a434cb82dfb5eec2b573ab1c69
CRs-Fixed: 2437994
|
|
|
|
Change-Id: I3a1d38fa367b0f45058ed6cf79dafcc4c7d0eb70
|
|
Change-Id: Ib7bceaefff1f12b5b79c71b15b7521cc58a1149b
|
|
The resolution and frame rate might be the same between
video mode and command mode.
This change adds panel mode check to avoid selecting
wrong mode.
Change-Id: I35d5a39f08a89b2cec78ecb894871ceb6f0948b9
|
|
MDP clocks are different between video mode and command mode,
and MDP clocks are calculated and validated in display prepare
stage.
So the panel info needs to be updated immediately for calculation
MDP clocks correctly.
Add IDLE_NOTIFY event in cmd mode for panel operating mode
switch feature.
Change-Id: If9be98078504d66757c32f6159d82799a2e39565
|
|
|
|
|
|
|
|
This change add support for dynamic panel operating mode
switch in DRM.
Change-Id: I40d61fb81963a7f82303003825051764b93b1b94
|
|
For Auto guest VM, power off external displays at the same time
as built-in displays to achieve low power mode.
Change-Id: Idc872f94065ccbcbee699cf3c6a816dfc289399b
|
|
CRs-Fixed: 2565350
Change-Id: I62dc1c35d6f580f2d0e4dfb26ec9326a4bd56ccd
|