sdm: Allow active mode change even qsync is enabled
-- Driver end support is added to handle mode change even qsync is enabled.
Change-Id: I4ad65ea5741207b28654020aba33fa024e62916c
diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp
index 6cc9c55..38d5d28 100644
--- a/sdm/libs/core/display_base.cpp
+++ b/sdm/libs/core/display_base.cpp
@@ -1959,12 +1959,6 @@
return kErrorNone;
}
- // Reject active config changes if qsync is in use.
- if (needs_avr_update_ || qsync_mode_ != kQSyncModeNone) {
- DLOGE("Failed: needs_avr_update_: %d, qsync_mode_: %d", needs_avr_update_, qsync_mode_);
- return kErrorNotSupported;
- }
-
error = hw_intf_->SetDisplayAttributes(index);
if (error != kErrorNone) {
return error;
diff --git a/sdm/libs/core/display_builtin.cpp b/sdm/libs/core/display_builtin.cpp
index 8f02046..70e121a 100644
--- a/sdm/libs/core/display_builtin.cpp
+++ b/sdm/libs/core/display_builtin.cpp
@@ -1903,7 +1903,7 @@
}
// force clear qsync mode if set by idle timeout.
- if (qsync_mode_ != kQSyncModeNone && qsync_mode_ == qsync_mode) {
+ if (qsync_mode_ == active_qsync_mode_ && qsync_mode_ == qsync_mode) {
DLOGW("Qsync mode already set as requested mode: qsync_mode_=%d", qsync_mode_);
return kErrorNone;
}