xf86-video-intel: src/i830_driver.c src/i830.h

Zhenyu Wang zhen at kemper.freedesktop.org
Tue Nov 13 22:53:59 PST 2007


 src/i830.h        |    5 +++++
 src/i830_driver.c |    8 +++++---
 2 files changed, 10 insertions(+), 3 deletions(-)

New commits:
commit ad3bc0158d37e98fcbbe6a8e31413c142a260424
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Wed Nov 14 22:46:46 2007 +0800

    Don't enable fbc with XAA or tiling is off.
    
    This slightly reworks my last fbc patch. We don't
    support tiled front buffer with XAA now, so also
    disable fbc on it. If tiled alloc failed, disable
    fbc too.

diff --git a/src/i830.h b/src/i830.h
index 17d2fe2..3abc800 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -805,6 +805,11 @@ static inline int i830_fb_compression_supported(I830Ptr pI830)
 	return FALSE;
     if (IS_I810(pI830) || IS_I815(pI830) || IS_I830(pI830))
 	return FALSE;
+    /* fbc depends on tiled surface. And we don't support tiled
+     * front buffer with XAA now.
+     */
+    if (!pI830->tiling || (IS_I965G(pI830) && !pI830->useEXA))
+	return FALSE;
     return TRUE;
 }
 
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 8d58a08..e000d92 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2554,15 +2554,17 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
 			  "Couldn't allocate tiled memory, page flipping "
 			  "disabled\n");
 	    pI830->allowPageFlip = FALSE;
+	    if (pI830->fb_compression)
+	       xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+			  "Couldn't allocate tiled memory, fb compression "
+			  "disabled\n");
+	    pI830->fb_compression = FALSE;
 	 }
 
 	 xf86DrvMsg(pScrn->scrnIndex, X_INFO,
 		    "Attempting memory allocation with %s buffers.\n",
 		    (i & 1) ? "untiled" : "tiled");
 
-	 if (!pI830->tiling && pI830->fb_compression)
-	     pI830->fb_compression = FALSE;
-
 	 if (i830_allocate_2d_memory(pScrn) &&
 	     i830_allocate_3d_memory(pScrn))
 	 {


More information about the xorg-commit mailing list