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

Commit 76262482 authored by Veera Sundaram Sankaran's avatar Veera Sundaram Sankaran
Browse files

disp: msm: sde: allow fence signalling during crtc disable



With the new ASYNC power-mode changes, user-mode can
request for retire/release fences during power-mode
changes. This is used as a signal for power-mode
completion by user-mode. Allow preparing/signalling
these fences during crtc enable/disable to support it.

Change-Id: I7709cd4762c8d77776ba6ba2d07aa6b76b5262d0
Signed-off-by: default avatarVeera Sundaram Sankaran <veeras@codeaurora.org>
parent a6bfb7fc
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -370,13 +370,13 @@ void sde_fence_signal(struct sde_fence_context *ctx, ktime_t ts,
	spin_lock_irqsave(&ctx->lock, flags);
	if (fence_event == SDE_FENCE_RESET_TIMELINE) {
		if ((int)(ctx->done_count - ctx->commit_count) < 0) {
			SDE_ERROR(
			SDE_DEBUG(
			  "timeline reset attempt! done count:%d commit:%d\n",
				ctx->done_count, ctx->commit_count);
			ctx->done_count = ctx->commit_count;
			SDE_EVT32(ctx->drm_id, ctx->done_count,
				ctx->commit_count, ktime_to_us(ts),
				fence_event, SDE_EVTLOG_FATAL);
				fence_event, SDE_EVTLOG_FUNC_CASE1);
		} else {
			spin_unlock_irqrestore(&ctx->lock, flags);
			return;
+1 −1
Original line number Diff line number Diff line
@@ -1060,7 +1060,7 @@ static void sde_kms_prepare_fence(struct msm_kms *kms,

	/* old_state actually contains updated crtc pointers */
	for_each_old_crtc_in_state(old_state, crtc, old_crtc_state, i) {
		if (crtc->state->active)
		if (crtc->state->active || crtc->state->active_changed)
			sde_crtc_prepare_commit(crtc, old_crtc_state);
	}