summaryrefslogtreecommitdiff
path: root/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
diff options
context:
space:
mode:
authorLong Ling <longling@google.com>2022-06-21 10:19:00 -0700
committerLong Ling <longling@google.com>2022-06-21 11:08:36 -0700
commit2a4885d63a59cfc0582fbcf1a9a4d26f9c28f356 (patch)
tree0d23ad708b0cca261178c5ed83e542efedc59f5a /libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
parent7ae595591d74ef2bcb5240f3dafa570a0de32a1f (diff)
libhwc2.1: skip mipi sync in DOZE mode
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
Diffstat (limited to 'libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp')
-rw-r--r--libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
index 51dddd7..64d2602 100644
--- a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
+++ b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
@@ -1813,11 +1813,15 @@ int32_t ExynosDisplayDrmInterface::deliverWinConfigData()
}
if (mDrmConnector->mipi_sync().id() && (mipi_sync_type != 0)) {
- ATRACE_NAME("mipi_sync"); // mark this commit
- if ((ret = drmReq.atomicAddProperty(mDrmConnector->id(),
- mDrmConnector->mipi_sync(),
- mipi_sync_type)) < 0) {
- HWC_LOGE(mExynosDisplay, "%s: Fail to set mipi_sync property (%d)", __func__, ret);
+ // skip mipi sync in Doze mode
+ bool inDoze = isDozeModeAvailable() && mDozeDrmMode.id() == mActiveModeState.mode.id();
+ if (!inDoze) {
+ ATRACE_NAME("mipi_sync"); // mark this commit
+ if ((ret = drmReq.atomicAddProperty(mDrmConnector->id(),
+ mDrmConnector->mipi_sync(),
+ mipi_sync_type)) < 0) {
+ HWC_LOGE(mExynosDisplay, "%s: Fail to set mipi_sync property (%d)", __func__, ret);
+ }
}
}