present: Add flip_idler vblank property

Introduce vblank property for flip modes, that demand explicite
allowance by the driver for vblanks to become idle.

Signed-off-by: Roman Gilg <subdiff@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
Roman Gilg 2018-03-13 16:00:45 +01:00 committed by Adam Jackson
parent 84e47f3fe6
commit 92b91b8cf3
2 changed files with 2 additions and 0 deletions

View File

@ -79,6 +79,7 @@ struct present_vblank {
Bool requeue; /* on queue, but target_msc has changed */
Bool flip; /* planning on using flip */
Bool flip_ready; /* wants to flip, but waiting for previous flip or unflip */
Bool flip_idler; /* driver explicitly permitted idling */
Bool sync_flip; /* do flip synchronous to vblank */
Bool abort_flip; /* aborting this flip */
PresentFlipReason reason; /* reason for which flip is not possible */

View File

@ -106,6 +106,7 @@ present_vblank_create(WindowPtr window,
vblank->notifies = notifies;
vblank->num_notifies = num_notifies;
vblank->has_suboptimal = (options & PresentOptionSuboptimal);
vblank->flip_idler = FALSE;
if (pixmap != NULL &&
!(options & PresentOptionCopy) &&