summaryrefslogtreecommitdiff
path: root/src/nv_driver.c
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2010-10-21 22:57:08 +0200
committerFrancisco Jerez <currojerez@riseup.net>2010-10-22 15:33:07 +0200
commiteb83c830c87bce345748edef3b50660246143db7 (patch)
tree3638e9958c2384b93018ddb659b9c1543be4ea3f /src/nv_driver.c
parentc88f13e25b0040c1dd0f93e0ac40f62a6005ce59 (diff)
dri2: Add pageflip/exchange support.
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Diffstat (limited to 'src/nv_driver.c')
-rw-r--r--src/nv_driver.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 5ef7984..fad7d6a 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -28,6 +28,7 @@
#include "xf86int10.h"
#include "xf86drm.h"
#include "xf86drmMode.h"
+#include "nouveau_drm.h"
/*
* Forward definitions for the functions that make up the driver.
@@ -586,6 +587,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
struct nouveau_device *dev;
NVPtr pNv;
MessageType from;
+ uint64_t v;
int ret, i;
if (flags & PROBE_DETECT) {
@@ -792,6 +794,15 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
pNv->glx_vblank ? "enabled" : "disabled");
}
+#ifdef NOUVEAU_GETPARAM_HAS_PAGEFLIP
+ ret = nouveau_device_get_param(pNv->dev,
+ NOUVEAU_GETPARAM_HAS_PAGEFLIP, &v);
+ if (!ret)
+ pNv->has_pageflip = v;
+#else
+ (void)v;
+#endif
+
if(xf86GetOptValInteger(pNv->Options, OPTION_VIDEO_KEY, &(pNv->videoKey))) {
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n",
pNv->videoKey);