mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-25 12:04:46 +08:00
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>
This commit is contained in:
parent
7bfab1ec45
commit
c93dfdcd05
@ -254,10 +254,8 @@ int armada_drm_plane_work_queue(struct armada_crtc *dcrtc,
|
||||
int ret;
|
||||
|
||||
ret = drm_crtc_vblank_get(&dcrtc->crtc);
|
||||
if (ret) {
|
||||
DRM_ERROR("failed to acquire vblank counter\n");
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = cmpxchg(&plane->work, NULL, work) ? -EBUSY : 0;
|
||||
if (ret)
|
||||
|
@ -245,7 +245,9 @@ armada_ovl_plane_update(struct drm_plane *plane, struct drm_crtc *crtc,
|
||||
if (idx) {
|
||||
armada_reg_queue_end(work->regs, idx);
|
||||
/* Queue it for update on the next interrupt if we are enabled */
|
||||
armada_drm_plane_work_queue(dcrtc, work);
|
||||
ret = armada_drm_plane_work_queue(dcrtc, work);
|
||||
if (ret)
|
||||
DRM_ERROR("failed to queue plane work: %d\n", ret);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user