summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-12-20 01:38:12 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-12-20 01:38:12 +0000
commitfa56eb2e2123afa5eb80369e6bb08c28909db637 (patch)
tree6a678203912c585e703e046e9ce7ce9226ed8d2b
parentbf14cd787628241acb437efb4a2630b85c52bd34 (diff)
parent545857ad2b24f4bf693a5cc4337122672b5670ad (diff)
downloadcommon-android14-d2-s3-release.tar.gz
Change-Id: I189eb5ed18a79f717dae26fabf3ed50af470cc4d
-rw-r--r--libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
index 6cc6da8..622f0f2 100644
--- a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
+++ b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplay.cpp
@@ -233,11 +233,20 @@ int32_t ExynosPrimaryDisplay::setActiveConfigInternal(hwc2_config_t config, bool
return ExynosDisplay::setActiveConfigInternal(config, force);
}
+// If a display is Off, applyPendingConfig() calls to setActiveConfig() that also
+// power on the display by a blocking commit.
int32_t ExynosPrimaryDisplay::applyPendingConfig() {
- if (!isConfigSettingEnabled()) return HWC2_ERROR_NONE;
+ if (!isConfigSettingEnabled()) {
+ ALOGI("%s:: config setting is disabled", __func__);
+ if (mPowerModeState.has_value() && (*mPowerModeState == HWC2_POWER_MODE_ON)) {
+ ALOGI("%s:: skip apply pending config", __func__);
+ return HWC2_ERROR_NONE;
+ }
+ }
hwc2_config_t config;
if (mPendingConfig != UINT_MAX) {
+ ALOGI("%s:: mPendingConfig: %d", __func__, mPendingConfig);
config = mPendingConfig;
mPendingConfig = UINT_MAX;
} else {
@@ -578,7 +587,7 @@ bool ExynosPrimaryDisplay::isConfigSettingEnabled() {
void ExynosPrimaryDisplay::enableConfigSetting(bool en) {
DISPLAY_ATRACE_INT("ConfigSettingDisabled", !en);
-
+ ALOGI("%s:: mConfigSettingDisabled: %d", __func__, !en);
if (!en) {
mConfigSettingDisabled = true;
mConfigSettingDisabledTimestamp = systemTime(SYSTEM_TIME_MONOTONIC);