]> git.baikalelectronics.ru Git - kernel.git/commit
drm: omapdrm: Rework page flip handling
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Sun, 25 Jan 2015 20:42:30 +0000 (22:42 +0200)
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Fri, 12 Jun 2015 19:52:45 +0000 (22:52 +0300)
commit9923a7bf7d1a8a7fa0d24f947dc91f20540d2c9f
tree7ab7b126df8681a3136c25ae15eb410bff8afa74
parent03c359da3b4d6f6e8a75442cca5c874af3df15a4
drm: omapdrm: Rework page flip handling

To implement proper vblank control the driver will need to wait for page
flip completion before disabling the vblank interrupt. This is made
complex by the page flip implementation which queues and submits page
flips to the hardware in two separate steps between which DRM locks are
released. We thus need to avoid waiting on a page flip that has been
queued but not submitted as submission and wait are covered by the same
lock.

Rework page flip handling as a first step by splitting the flip_pending
boolean variable into an enumerated state and moving between states
based on flip queue, submission and completion. The CANCELLED state will
be used in a second step.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/gpu/drm/omapdrm/omap_crtc.c