aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2017-07-08 05:22:23 -0400
committerRussell King <rmk+kernel@armlinux.org.uk>2017-12-08 07:19:58 -0500
commitc93dfdcd0521cbdfccab147c5c5a615ba9977a89 (patch)
treec7c5fbd191c422e8ffe4508c54d7b783ea529231
parent7bfab1ec45b4005d3f12bbb0cc281f0afd29fc3d (diff)
drm/armada: allow armada_drm_plane_work_queue() to silently fail
Avoid printing an error message when armada_drm_plane_work_queue() is unable to get the vblank (eg, because we're doing a modeset.) Continue to report the failure to the caller, so the caller can handle this. Move the error message into armada_ovl_plane_update(). Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
-rw-r--r--drivers/gpu/drm/armada/armada_crtc.c4
-rw-r--r--drivers/gpu/drm/armada/armada_overlay.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/armada/armada_crtc.c b/drivers/gpu/drm/armada/armada_crtc.c
index 401ad854d751..2f8e45976444 100644
--- a/drivers/gpu/drm/armada/armada_crtc.c
+++ b/drivers/gpu/drm/armada/armada_crtc.c
@@ -254,10 +254,8 @@ int armada_drm_plane_work_queue(struct armada_crtc *dcrtc,
254 int ret; 254 int ret;
255 255
256 ret = drm_crtc_vblank_get(&dcrtc->crtc); 256 ret = drm_crtc_vblank_get(&dcrtc->crtc);
257 if (ret) { 257 if (ret)
258 DRM_ERROR("failed to acquire vblank counter\n");
259 return ret; 258 return ret;
260 }
261 259
262 ret = cmpxchg(&plane->work, NULL, work) ? -EBUSY : 0; 260 ret = cmpxchg(&plane->work, NULL, work) ? -EBUSY : 0;
263 if (ret) 261 if (ret)
diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c
index 010f3e438607..53edf42c5863 100644
--- a/drivers/gpu/drm/armada/armada_overlay.c
+++ b/drivers/gpu/drm/armada/armada_overlay.c
@@ -245,7 +245,9 @@ armada_ovl_plane_update(struct drm_plane *plane, struct drm_crtc *crtc,
245 if (idx) { 245 if (idx) {
246 armada_reg_queue_end(work->regs, idx); 246 armada_reg_queue_end(work->regs, idx);
247 /* Queue it for update on the next interrupt if we are enabled */ 247 /* Queue it for update on the next interrupt if we are enabled */
248 armada_drm_plane_work_queue(dcrtc, work); 248 ret = armada_drm_plane_work_queue(dcrtc, work);
249 if (ret)
250 DRM_ERROR("failed to queue plane work: %d\n", ret);
249 } 251 }
250 return 0; 252 return 0;
251} 253}