[PATCH v8 2/3] drm: writeback: Add out-fences for writeback connectors
Eric Anholt
eric at anholt.net
Mon May 21 19:02:25 UTC 2018
Liviu Dudau <Liviu.Dudau at arm.com> writes:
> From: Brian Starkey <brian.starkey at arm.com>
>
> Add the WRITEBACK_OUT_FENCE_PTR property to writeback connectors, to
> enable userspace to get a fence which will signal once the writeback is
> complete. It is not allowed to request an out-fence without a
> framebuffer attached to the connector.
>
> A timeline is added to drm_writeback_connector for use by the writeback
> out-fences.
> diff --git a/include/drm/drm_writeback.h b/include/drm/drm_writeback.h
> index cf3a28676006a..6a7462c1821ad 100644
> --- a/include/drm/drm_writeback.h
> +++ b/include/drm/drm_writeback.h
> @@ -49,6 +49,32 @@ struct drm_writeback_connector {
> * drm_writeback_signal_completion()
> */
> struct list_head job_queue;
> +
> + /**
> + * @fence_context:
> + *
> + * timeline context used for fence operations.
> + */
> + unsigned int fence_context;
> + /**
> + * @fence_lock:
> + *
> + * spinlock to protect the fences in the fence_context.
> + */
> + spinlock_t fence_lock;
> + /**
> + * @fence_seqno:
> + *
> + * Seqno variable used as monotonic counter for the fences
> + * created on the connector's timeline.
> + */
> + unsigned long fence_seqno;
> + /**
> + * @timeline_name:
> + *
> + * The name of the connector's fence timeline.
> + */
> + char timeline_name[32];
> };
>
> struct drm_writeback_job {
> @@ -59,12 +85,14 @@ struct drm_writeback_job {
> * framebuffer reference to a workqueue.
> */
> struct work_struct cleanup_work;
> +
> /**
> * @list_entry:
> *
> * List item for the connector's @job_queue
> */
> struct list_head list_entry;
> +
> /**
> * @fb:
> *
Move this hunk into patch 1?
Other than that, the series is:
Reviewed-by: Eric Anholt <eric at anholt.net>
It's pretty clean and makes sense to me. I only had some questions
about the job_queue, which seems superfluous if we aren't supporting
firing off a new writeback while an old one is outstanding (and maybe we
should throw an error in that case). Still, I think this is ready to land.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180521/5fb444f3/attachment-0001.sig>
More information about the dri-devel
mailing list