Revert "drm: crc: Wait for a frame before returning from open()"
This reverts commit e8fa5671183c80342d520ad81d14fa79a9d4a680. Don't wait for first CRC during crtc_crc_open. It avoids one frame wait during open. If application want to wait after read call, it can use poll/read blocking read() call. Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Mahesh Kumar <mahesh1.kumar@intel.com> Cc: dri-devel@lists.freedesktop.org Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20180821083858.26275-4-mahesh1.kumar@intel.com
This commit is contained in:
parent
c0811a7d5b
commit
ad1a56f1bf
@ -228,24 +228,8 @@ static int crtc_crc_open(struct inode *inode, struct file *filep)
|
|||||||
if (ret)
|
if (ret)
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
spin_lock_irq(&crc->lock);
|
|
||||||
/*
|
|
||||||
* Only return once we got a first frame, so userspace doesn't have to
|
|
||||||
* guess when this particular piece of HW will be ready to start
|
|
||||||
* generating CRCs.
|
|
||||||
*/
|
|
||||||
ret = wait_event_interruptible_lock_irq(crc->wq,
|
|
||||||
crtc_crc_data_count(crc),
|
|
||||||
crc->lock);
|
|
||||||
spin_unlock_irq(&crc->lock);
|
|
||||||
|
|
||||||
if (ret)
|
|
||||||
goto err_disable;
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_disable:
|
|
||||||
crtc->funcs->set_crc_source(crtc, NULL);
|
|
||||||
err:
|
err:
|
||||||
spin_lock_irq(&crc->lock);
|
spin_lock_irq(&crc->lock);
|
||||||
crtc_crc_cleanup(crc);
|
crtc_crc_cleanup(crc);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user