diff options
author | Russell King <rmk+kernel@armlinux.org.uk> | 2018-07-30 11:52:34 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@armlinux.org.uk> | 2018-07-30 11:52:34 +0100 |
commit | dbb4ca8acae100b21946a9c6439af51bd606595e (patch) | |
tree | f322521a1249f92981dce25f23ad8f651dc4ed9e /drivers/gpu/drm/armada/armada_crtc.h | |
parent | 4e4b3563ac006e47761341682de80528e2cf30ab (diff) | |
download | linux-dbb4ca8acae100b21946a9c6439af51bd606595e.tar.gz linux-dbb4ca8acae100b21946a9c6439af51bd606595e.tar.bz2 linux-dbb4ca8acae100b21946a9c6439af51bd606595e.zip |
drm/armada: handle atomic modeset crtc events
Prepare handling for atomic modeset CRTC events. Currently, using the
transition helpers, CRTC events do not exist, but once we switch to
proper atomic modeset, they have to be handled.
We queue an event for the next vblank in two places:
- armada_drm_crtc_atomic_flush() provided we aren't doing an
atomic modeset.
- armada_drm_crtc_commit() if we are committing a modeset.
This ensures that the event is sent at the correct time (after all
updates have been written to the hardware and after the following
vblank.)
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Diffstat (limited to 'drivers/gpu/drm/armada/armada_crtc.h')
-rw-r--r-- | drivers/gpu/drm/armada/armada_crtc.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/armada/armada_crtc.h b/drivers/gpu/drm/armada/armada_crtc.h index 775c01c52982..8b1de877cb02 100644 --- a/drivers/gpu/drm/armada/armada_crtc.h +++ b/drivers/gpu/drm/armada/armada_crtc.h @@ -90,6 +90,7 @@ struct armada_crtc { spinlock_t irq_lock; uint32_t irq_ena; + struct drm_pending_vblank_event *event; struct armada_regs atomic_regs[32]; struct armada_regs *regs; unsigned int regs_idx; |