Browse Source

Merge "disp: msm: dsi: defer clk setting when doing const_fps RFI"

qctecmdr 4 years ago
parent
commit
ee2a505703
2 changed files with 4 additions and 2 deletions
  1. 1 2
      msm/dsi/dsi_display.c
  2. 3 0
      msm/dsi/dsi_drm.c

+ 1 - 2
msm/dsi/dsi_display.c

@@ -4529,7 +4529,7 @@ static int _dsi_display_dyn_update_clks(struct dsi_display *display,
 	 */
 	 */
 	if ((ctrl_version >= DSI_CTRL_VERSION_2_5) &&
 	if ((ctrl_version >= DSI_CTRL_VERSION_2_5) &&
 			(dyn_clk_caps->maintain_const_fps))
 			(dyn_clk_caps->maintain_const_fps))
-		goto defer_dfps_wait;
+		return 0;
 
 
 	/* wait for dynamic refresh done */
 	/* wait for dynamic refresh done */
 	display_for_each_ctrl(i, display) {
 	display_for_each_ctrl(i, display) {
@@ -4549,7 +4549,6 @@ static int _dsi_display_dyn_update_clks(struct dsi_display *display,
 		dsi_phy_dynamic_refresh_clear(ctrl->phy);
 		dsi_phy_dynamic_refresh_clear(ctrl->phy);
 	}
 	}
 
 
-defer_dfps_wait:
 	if (rc)
 	if (rc)
 		DSI_ERR("could not switch back to src clks %d\n", rc);
 		DSI_ERR("could not switch back to src clks %d\n", rc);
 
 

+ 3 - 0
msm/dsi/dsi_drm.c

@@ -1138,6 +1138,9 @@ int dsi_conn_post_kickoff(struct drm_connector *connector,
 						ctrl->ctrl);
 						ctrl->ctrl);
 				if (rc)
 				if (rc)
 					DSI_ERR("wait4dfps refresh failed\n");
 					DSI_ERR("wait4dfps refresh failed\n");
+
+				dsi_phy_dynamic_refresh_clear(ctrl->phy);
+				dsi_clk_disable_unprepare(&display->clock_info.pll_clks);
 			}
 			}
 		}
 		}