diff options
author | =?utf-8?q?Michel_D=C3=A4nzer?= <michel@tungstengraphics.com> | 2006-10-24 08:24:38 -0400 |
---|---|---|
committer | airlied <airlied@linux.ie> | 2006-12-06 23:53:28 -0500 |
commit | 776c9443e28dddbde9b513db6cb8221c45b3a269 (patch) | |
tree | 41b753829e949371ee01d2930f5be1185f29b737 /drivers/char/drm/drmP.h | |
parent | 620034c84d1d939717bdfbe02c51a3fee43541c3 (diff) |
drm: add support for secondary vertical blank interrupt to DRM core
Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/char/drm/drmP.h')
-rw-r--r-- | drivers/char/drm/drmP.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/char/drm/drmP.h b/drivers/char/drm/drmP.h index 7690a59ace04..d7135d41a42a 100644 --- a/drivers/char/drm/drmP.h +++ b/drivers/char/drm/drmP.h | |||
@@ -97,6 +97,7 @@ | |||
97 | #define DRIVER_IRQ_VBL 0x100 | 97 | #define DRIVER_IRQ_VBL 0x100 |
98 | #define DRIVER_DMA_QUEUE 0x200 | 98 | #define DRIVER_DMA_QUEUE 0x200 |
99 | #define DRIVER_FB_DMA 0x400 | 99 | #define DRIVER_FB_DMA 0x400 |
100 | #define DRIVER_IRQ_VBL2 0x800 | ||
100 | 101 | ||
101 | /***********************************************************************/ | 102 | /***********************************************************************/ |
102 | /** \name Begin the DRM... */ | 103 | /** \name Begin the DRM... */ |
@@ -562,6 +563,7 @@ struct drm_driver { | |||
562 | void (*kernel_context_switch_unlock) (struct drm_device * dev, | 563 | void (*kernel_context_switch_unlock) (struct drm_device * dev, |
563 | drm_lock_t *lock); | 564 | drm_lock_t *lock); |
564 | int (*vblank_wait) (struct drm_device * dev, unsigned int *sequence); | 565 | int (*vblank_wait) (struct drm_device * dev, unsigned int *sequence); |
566 | int (*vblank_wait2) (struct drm_device * dev, unsigned int *sequence); | ||
565 | int (*dri_library_name) (struct drm_device *dev, char *buf); | 567 | int (*dri_library_name) (struct drm_device *dev, char *buf); |
566 | 568 | ||
567 | /** | 569 | /** |
@@ -708,8 +710,10 @@ typedef struct drm_device { | |||
708 | 710 | ||
709 | wait_queue_head_t vbl_queue; /**< VBLANK wait queue */ | 711 | wait_queue_head_t vbl_queue; /**< VBLANK wait queue */ |
710 | atomic_t vbl_received; | 712 | atomic_t vbl_received; |
713 | atomic_t vbl_received2; /**< number of secondary VBLANK interrupts */ | ||
711 | spinlock_t vbl_lock; | 714 | spinlock_t vbl_lock; |
712 | drm_vbl_sig_t vbl_sigs; /**< signal list to send on VBLANK */ | 715 | drm_vbl_sig_t vbl_sigs; /**< signal list to send on VBLANK */ |
716 | drm_vbl_sig_t vbl_sigs2; /**< signals to send on secondary VBLANK */ | ||
713 | unsigned int vbl_pending; | 717 | unsigned int vbl_pending; |
714 | 718 | ||
715 | /*@} */ | 719 | /*@} */ |