diff options
author | qctecmdr <qctecmdr@localhost> | 2020-11-11 06:49:54 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2020-11-11 06:49:54 -0800 |
commit | 24cebbf2725152b6a8228b9a241e0bd9c6e83610 (patch) | |
tree | 0c62e034671cdbb5f210125889cb5a114078a6ef | |
parent | 4253dee7c25713d5e92990e89111dce541da8967 (diff) | |
parent | 472b05f0cd273e287c3ddddf00e4ae209e8d4540 (diff) |
Merge "sdm: do not skip validate"
-rwxr-xr-x | sdm/libs/core/display_base.cpp | 2 | ||||
-rw-r--r-- | sdm/libs/core/display_base.h | 2 | ||||
-rw-r--r-- | sdm/libs/core/display_builtin.cpp | 6 |
3 files changed, 8 insertions, 2 deletions
diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp index cc2855e1..ba2733d9 100755 --- a/sdm/libs/core/display_base.cpp +++ b/sdm/libs/core/display_base.cpp @@ -1980,7 +1980,7 @@ bool DisplayBase::IsHdrMode(const AttrVal &attr) { } bool DisplayBase::CanSkipValidate() { - return comp_manager_->CanSkipValidate(display_comp_ctx_) && !lut_swap_; + return (!is_idle_timeout_) && comp_manager_->CanSkipValidate(display_comp_ctx_) && !lut_swap_; } void DisplayBase::SetLutSwapFlag() { diff --git a/sdm/libs/core/display_base.h b/sdm/libs/core/display_base.h index 95072483..5b13bcc4 100644 --- a/sdm/libs/core/display_base.h +++ b/sdm/libs/core/display_base.h @@ -185,7 +185,7 @@ class DisplayBase : public DisplayInterface { void InsertBT2020PqHlgModes(); DisplayError HandlePendingVSyncEnable(int32_t retire_fence); DisplayError HandlePendingPowerState(int32_t retire_fence); - + bool is_idle_timeout_ = false; recursive_mutex recursive_mutex_; int32_t display_id_ = -1; DisplayType display_type_; diff --git a/sdm/libs/core/display_builtin.cpp b/sdm/libs/core/display_builtin.cpp index 4cdf9d83..2e76a574 100644 --- a/sdm/libs/core/display_builtin.cpp +++ b/sdm/libs/core/display_builtin.cpp @@ -466,6 +466,12 @@ DisplayError DisplayBuiltIn::SetRefreshRate(uint32_t refresh_rate, bool final_ra return error; } + if (handle_idle_timeout_) { + is_idle_timeout_ = true; + } else { + is_idle_timeout_ = false; + } + error = comp_manager_->CheckEnforceSplit(display_comp_ctx_, refresh_rate); if (error != kErrorNone) { return error; |