summaryrefslogtreecommitdiff
path: root/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp')
-rw-r--r--libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
index 7ebd1a0..15a0287 100644
--- a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
+++ b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp
@@ -630,6 +630,7 @@ int32_t ExynosDisplayDrmInterface::setPowerMode(int32_t mode)
mBrightnessState.reset();
mBrightnessCtrl.reset();
mExynosDisplay->requestLhbm(false);
+ mExynosDisplay->notifyLhbmState(mBrightnessCtrl.LhbmOn.get());
}
return ret;
}
@@ -1424,7 +1425,6 @@ int32_t ExynosDisplayDrmInterface::deliverWinConfigData()
mBrightnessCtrl.LhbmOn.get())) < 0) {
HWC_LOGE(mExynosDisplay, "%s: Fail to set lhbm_on property", __func__);
}
- mBrightnessCtrl.LhbmOn.clear_dirty();
// sync mipi command and frame when lhbm on/off
mipi_sync = true;
@@ -1519,6 +1519,10 @@ int32_t ExynosDisplayDrmInterface::deliverWinConfigData()
" in deliverWinConfigData()\n", __func__, ret);
return ret;
}
+ if (mipi_sync_action == brightnessState_t::MIPI_SYNC_LHBM_ON ||
+ mipi_sync_action == brightnessState_t::MIPI_SYNC_LHBM_OFF) {
+ mExynosDisplay->notifyLhbmState(mBrightnessCtrl.LhbmOn.get());
+ }
}
mExynosDisplay->mDpuData.retire_fence = (int)out_fences[mDrmCrtc->pipe()];