summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/msm/sde/sde_crtc.c26
1 files changed, 19 insertions, 7 deletions
diff --git a/drivers/gpu/drm/msm/sde/sde_crtc.c b/drivers/gpu/drm/msm/sde/sde_crtc.c
index 535a033435d2..be83ca095de4 100644
--- a/drivers/gpu/drm/msm/sde/sde_crtc.c
+++ b/drivers/gpu/drm/msm/sde/sde_crtc.c
@@ -550,13 +550,19 @@ static void sde_crtc_atomic_begin(struct drm_crtc *crtc,
unsigned long flags;
u32 i;
- SDE_DEBUG("\n");
-
if (!crtc) {
SDE_ERROR("invalid crtc\n");
return;
}
+ if (!crtc->state->enable) {
+ SDE_DEBUG("crtc%d -> enable %d, skip atomic_begin\n",
+ crtc->base.id, crtc->state->enable);
+ return;
+ }
+
+ SDE_DEBUG("crtc%d\n", crtc->base.id);
+
sde_crtc = to_sde_crtc(crtc);
dev = crtc->dev;
@@ -612,7 +618,13 @@ static void sde_crtc_atomic_flush(struct drm_crtc *crtc,
return;
}
- SDE_DEBUG("\n");
+ if (!crtc->state->enable) {
+ SDE_DEBUG("crtc%d -> enable %d, skip atomic_flush\n",
+ crtc->base.id, crtc->state->enable);
+ return;
+ }
+
+ SDE_DEBUG("crtc%d\n", crtc->base.id);
sde_crtc = to_sde_crtc(crtc);
@@ -667,7 +679,7 @@ static void sde_crtc_destroy_state(struct drm_crtc *crtc,
sde_crtc = to_sde_crtc(crtc);
cstate = to_sde_crtc_state(state);
- SDE_DEBUG("\n");
+ SDE_DEBUG("crtc%d\n", crtc->base.id);
__drm_atomic_helper_crtc_destroy_state(crtc, state);
@@ -783,7 +795,7 @@ static void sde_crtc_disable(struct drm_crtc *crtc)
}
sde_crtc = to_sde_crtc(crtc);
- SDE_DEBUG("\n");
+ SDE_DEBUG("crtc%d\n", crtc->base.id);
mutex_lock(&sde_crtc->crtc_lock);
if (atomic_read(&sde_crtc->vblank_refcount)) {
@@ -818,7 +830,7 @@ static void sde_crtc_enable(struct drm_crtc *crtc)
return;
}
- SDE_DEBUG("\n");
+ SDE_DEBUG("crtc%d\n", crtc->base.id);
sde_crtc = to_sde_crtc(crtc);
mixer = sde_crtc->mixers;
@@ -1017,7 +1029,7 @@ void sde_crtc_cancel_pending_flip(struct drm_crtc *crtc, struct drm_file *file)
{
struct sde_crtc *sde_crtc = to_sde_crtc(crtc);
- SDE_DEBUG("%s: cancel: %p", sde_crtc->name, file);
+ SDE_DEBUG("%s: cancel: %p\n", sde_crtc->name, file);
_sde_crtc_complete_flip(crtc, file);
}