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

Commit 8e84a9f1 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "drm/msm/dsi-staging: avoid ctl soft reset when cont-splash is enabled"

parents 7e27e63e c101961b
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -5841,18 +5841,19 @@ int dsi_display_prepare(struct dsi_display *display)
		goto error_host_engine_off;
	}

	if (!display->is_cont_splash_enabled) {
		/*
		 * For continuous splash usecase, skip panel prepare and
		 * ctl reset since the pnael and ctrl is already in active
		 * state and panel on commands are not needed
		 */
		rc = dsi_display_soft_reset(display);
		if (rc) {
		pr_err("[%s] failed soft reset, rc=%d\n", display->name, rc);
			pr_err("[%s] failed soft reset, rc=%d\n",
					display->name, rc);
			goto error_ctrl_link_off;
		}

	if (!display->is_cont_splash_enabled) {
		/*
		 * For continuous splash usecase we skip panel
		 * prepare since the pnael is already in
		 * active state and panel on commands are not needed
		 */
		rc = dsi_panel_prepare(display->panel);
		if (rc) {
			pr_err("[%s] panel prepare failed, rc=%d\n",
+10 −1
Original line number Diff line number Diff line
@@ -4080,6 +4080,7 @@ static void sde_crtc_handle_power_event(u32 event_type, void *arg)

static void sde_crtc_disable(struct drm_crtc *crtc)
{
	struct sde_kms *sde_kms;
	struct sde_crtc *sde_crtc;
	struct sde_crtc_state *cstate;
	struct drm_encoder *encoder;
@@ -4095,6 +4096,12 @@ static void sde_crtc_disable(struct drm_crtc *crtc)
		return;
	}

	sde_kms = _sde_crtc_get_kms(crtc);
	if (!sde_kms) {
		SDE_ERROR("invalid kms\n");
		return;
	}

	if (!sde_kms_power_resource_is_enabled(crtc->dev)) {
		SDE_ERROR("power resource is not enabled\n");
		return;
@@ -4160,6 +4167,8 @@ static void sde_crtc_disable(struct drm_crtc *crtc)
	}
	spin_unlock_irqrestore(&sde_crtc->spin_lock, flags);

	/* avoid clk/bw downvote if cont-splash is enabled */
	if (!sde_kms->splash_data.cont_splash_en)
		sde_core_perf_crtc_update(crtc, 0, true);

	drm_for_each_encoder(encoder, crtc->dev) {