diff --git a/sdm/libs/hwc2/hwc_display.cpp b/sdm/libs/hwc2/hwc_display.cpp
index 467cc1b..3eb900d 100644
--- a/sdm/libs/hwc2/hwc_display.cpp
+++ b/sdm/libs/hwc2/hwc_display.cpp
@@ -2569,7 +2569,7 @@
 }
 
 void HWCDisplay::SubmitActiveConfigChange(hwc2_vsync_period_t current_vsync_period) {
-  HWC2::Error error = SetActiveConfig(pending_refresh_rate_config_);
+  HWC2::Error error = SubmitDisplayConfig(pending_refresh_rate_config_);
   if (error != HWC2::Error::None) {
     return;
   }
@@ -2626,4 +2626,25 @@
   return IsSameGroup(active_config, config);
 }
 
+HWC2::Error HWCDisplay::SubmitDisplayConfig(hwc2_config_t config) {
+  DTRACE_SCOPED();
+
+  hwc2_config_t current_config = 0;
+  GetActiveConfig(&current_config);
+  if (current_config == config) {
+    return HWC2::Error::None;
+  }
+
+  DisplayError error = display_intf_->SetActiveConfig(config);
+  if (error != kErrorNone) {
+    DLOGE("Failed to set %d config! Error: %d", config, error);
+    return HWC2::Error::BadConfig;
+  }
+
+  validated_ = false;
+  DLOGI("Active configuration changed to: %d", config);
+
+  return HWC2::Error::None;
+}
+
 }  // namespace sdm
diff --git a/sdm/libs/hwc2/hwc_display.h b/sdm/libs/hwc2/hwc_display.h
index 96b3f65..d89deec 100644
--- a/sdm/libs/hwc2/hwc_display.h
+++ b/sdm/libs/hwc2/hwc_display.h
@@ -400,6 +400,7 @@
   bool IsSameGroup(hwc2_config_t config_id1, hwc2_config_t config_id2);
   bool AllowSeamless(hwc2_config_t request_config);
   void SetVsyncsApplyRateChange(uint32_t vsyncs) { vsyncs_to_apply_rate_change_ = vsyncs; }
+  HWC2::Error SubmitDisplayConfig(hwc2_config_t config);
 
   enum {
     INPUT_LAYER_DUMP,
