summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2009-02-19 16:40:19 -0500
committerKristian Høgsberg <krh@redhat.com>2009-02-20 11:25:16 -0500
commit96da26b6813a8c1da8a43036c375aa0d2bb70f16 (patch)
tree01b814d6e44cb5db145a543193ade0c67d5f70c3
parent872aadc7102bd5131e1582ede081e22672911ba2 (diff)
Dont allocate overlay registers in KMS mode.
-rw-r--r--src/i830_driver.c6
-rw-r--r--src/i830_memory.c2
-rw-r--r--src/i830_video.c7
3 files changed, 7 insertions, 8 deletions
diff --git a/src/i830_driver.c b/src/i830_driver.c
index adb9544f..e7ca6b04 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -3249,12 +3249,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
"needs 2D acceleration.\n");
pI830->XvEnabled = FALSE;
}
- if (!OVERLAY_NOEXIST(pI830) && pI830->overlay_regs == NULL) {
- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
- "Disabling Xv because the overlay register buffer "
- "allocation failed.\n");
- pI830->XvEnabled = FALSE;
- }
}
#endif
diff --git a/src/i830_memory.c b/src/i830_memory.c
index 23cc4c78..62765d6a 100644
--- a/src/i830_memory.c
+++ b/src/i830_memory.c
@@ -1473,7 +1473,7 @@ i830_allocate_2d_memory(ScrnInfoPtr pScrn)
/* Allocate overlay register space and optional XAA linear allocator
* space. The second head in zaphod mode will share the space.
*/
- if (I830IsPrimary(pScrn))
+ if (I830IsPrimary(pScrn) && !pI830->use_drm_mode)
i830_allocate_overlay(pScrn);
#endif
diff --git a/src/i830_video.c b/src/i830_video.c
index be2d28e3..e5428971 100644
--- a/src/i830_video.c
+++ b/src/i830_video.c
@@ -648,8 +648,13 @@ I830InitVideo(ScreenPtr pScreen)
}
#endif
- if (num_adaptors)
+ if (num_adaptors) {
xf86XVScreenInit(pScreen, adaptors, num_adaptors);
+ } else {
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "Disabling Xv because no adaptors could be initialized.\n");
+ pI830->XvEnabled = FALSE;
+ }
#ifdef INTEL_XVMC
if (xvmc_status)