Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a702d631 authored by Ujwal Patel's avatar Ujwal Patel
Browse files

msm: mdss: Fix clk warnings for esc clk with dual-dsi panels



In current implementation if dual-dsi panel's continuous splash screen
feature is enabled then feature flag is disabled only for master and
not for secondary panel. This leads to clk prepare without clk set rate.
For esc clk this leads to clk warning back-trace in the logs. For other
clocks, if clk rate changes between suspend/resume then it will lead to
rate incorrect programming and unknown behaviour. Fix this by disabling
secondary panel's feature flag.

Change-Id: I09fd3968c4eecc97a9f07e2c731e6ccce8036119
Signed-off-by: default avatarUjwal Patel <ujwalp@codeaurora.org>
parent 312d2603
Loading
Loading
Loading
Loading
+13 −9
Original line number Diff line number Diff line
@@ -627,8 +627,21 @@ int mdss_mdp_wb_mixer_destroy(struct mdss_mdp_mixer *mixer)
	return 0;
}

static inline struct mdss_mdp_ctl *mdss_mdp_get_split_ctl(
		struct mdss_mdp_ctl *ctl)
{
	if (ctl && ctl->mixer_right && (ctl->mixer_right->ctl != ctl))
		return ctl->mixer_right->ctl;

	return NULL;
}

int mdss_mdp_ctl_splash_finish(struct mdss_mdp_ctl *ctl, bool handoff)
{
	struct mdss_mdp_ctl *sctl = mdss_mdp_get_split_ctl(ctl);
	if (sctl)
		sctl->panel_data->panel_info.cont_splash_enabled = 0;

	switch (ctl->panel_data->panel_info.type) {
	case MIPI_VIDEO_PANEL:
	case EDP_PANEL:
@@ -653,15 +666,6 @@ static inline int mdss_mdp_set_split_ctl(struct mdss_mdp_ctl *ctl,
	return 0;
}

static inline struct mdss_mdp_ctl *mdss_mdp_get_split_ctl(
		struct mdss_mdp_ctl *ctl)
{
	if (ctl && ctl->mixer_right && (ctl->mixer_right->ctl != ctl))
		return ctl->mixer_right->ctl;

	return NULL;
}

static int mdss_mdp_ctl_fbc_enable(int enable,
		struct mdss_mdp_mixer *mixer, struct mdss_panel_info *pdata)
{