sdm: set QSYNC_MODE DRM property whenever update is needed
Set the QSYNC_MODE DRM property as part of commit when the
update bit is set to true as part of avr_info.
Change-Id: I9a136b3c209a747dde6aaaabdffa85df9f23e17c
CRs-Fixed: 2548415
diff --git a/sdm/libs/core/drm/hw_device_drm.cpp b/sdm/libs/core/drm/hw_device_drm.cpp
index 8929fc9..08909f4 100644
--- a/sdm/libs/core/drm/hw_device_drm.cpp
+++ b/sdm/libs/core/drm/hw_device_drm.cpp
@@ -1218,15 +1218,16 @@
SetSolidfillStages();
SetQOSData(qos_data);
drm_atomic_intf_->Perform(DRMOps::CRTC_SET_SECURITY_LEVEL, token_.crtc_id, crtc_security_level);
- if (hw_layers->hw_avr_info.update) {
- sde_drm::DRMQsyncMode mode = sde_drm::DRMQsyncMode::NONE;
- if (hw_layers->hw_avr_info.mode == kContinuousMode) {
- mode = sde_drm::DRMQsyncMode::CONTINUOUS;
- } else if (hw_layers->hw_avr_info.mode == kOneShotMode) {
- mode = sde_drm::DRMQsyncMode::ONESHOT;
- }
- drm_atomic_intf_->Perform(DRMOps::CONNECTOR_SET_QSYNC_MODE, token_.conn_id, mode);
+ }
+
+ if (hw_layers->hw_avr_info.update) {
+ sde_drm::DRMQsyncMode mode = sde_drm::DRMQsyncMode::NONE;
+ if (hw_layers->hw_avr_info.mode == kContinuousMode) {
+ mode = sde_drm::DRMQsyncMode::CONTINUOUS;
+ } else if (hw_layers->hw_avr_info.mode == kOneShotMode) {
+ mode = sde_drm::DRMQsyncMode::ONESHOT;
}
+ drm_atomic_intf_->Perform(DRMOps::CONNECTOR_SET_QSYNC_MODE, token_.conn_id, mode);
}
drm_atomic_intf_->Perform(DRMOps::DPPS_COMMIT_FEATURE, 0 /* argument is not used */);