summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-12-10 08:50:16 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2009-12-10 08:54:46 +0000
commit37f631d669c165c4fb56ccd7a6fc0a432f453b52 (patch)
tree607384ec0b932dfd970a237bf130c470da9cd537
parent093bb9ebe69760975a3fcf2322db950312e6c2d7 (diff)
Revert "uxa-glyphs: Enable TILING_X on glyph caches."
This reverts commit 3f11bbec420080151406c203af292e55177e77d1. For unknown reasons, enabling tiling for the glyph cache is causing glyph corruption both across suspend and resume and VT switching, on a wide range of chipsets (reports include both i8xx and gm45) This strongly suggests that we are handling tiling, or updates to tiled buffers, incorrectly across i915_gem_idle(). However, until we can find the root cause, we want to fix this regression before the next stable release, so simply revert this patch. :( Fixes: [Bug 25406] fonts garbled after resuming from suspend since 6729b508 http://bugs.freedesktop.org/show_bug.cgi?id=25406 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/common.h11
-rw-r--r--src/i830.h11
-rw-r--r--uxa/uxa-glyphs.c4
3 files changed, 12 insertions, 14 deletions
diff --git a/src/common.h b/src/common.h
index 3169cdfa..b9269b5a 100644
--- a/src/common.h
+++ b/src/common.h
@@ -389,15 +389,4 @@ extern int I810_DEBUG;
struct pci_device *
intel_host_bridge (void);
-/**
- * Hints to CreatePixmap to tell the driver how the pixmap is going to be
- * used.
- *
- * Compare to CREATE_PIXMAP_USAGE_* in the server.
- */
-enum {
- INTEL_CREATE_PIXMAP_TILING_X = 0x10000000,
- INTEL_CREATE_PIXMAP_TILING_Y,
-};
-
#endif /* _INTEL_COMMON_H_ */
diff --git a/src/i830.h b/src/i830.h
index 21a50259..a66038a7 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -600,6 +600,17 @@ extern const int I830CopyROP[16];
#define ALLOW_SHARING 0x00000010
#define DISABLE_REUSE 0x00000020
+/**
+ * Hints to CreatePixmap to tell the driver how the pixmap is going to be
+ * used.
+ *
+ * Compare to CREATE_PIXMAP_USAGE_* in the server.
+ */
+enum {
+ INTEL_CREATE_PIXMAP_TILING_X = 0x10000000,
+ INTEL_CREATE_PIXMAP_TILING_Y,
+};
+
void i830_debug_flush(ScrnInfoPtr scrn);
static inline PixmapPtr get_drawable_pixmap(DrawablePtr drawable)
diff --git a/uxa/uxa-glyphs.c b/uxa/uxa-glyphs.c
index 5c233216..ff167812 100644
--- a/uxa/uxa-glyphs.c
+++ b/uxa/uxa-glyphs.c
@@ -47,7 +47,6 @@
#include <stdlib.h>
#include "uxa-priv.h"
-#include "../src/common.h"
#include "mipict.h"
@@ -190,8 +189,7 @@ static Bool uxa_realize_glyph_caches(ScreenPtr pScreen, unsigned int format)
pPixmap = (*pScreen->CreatePixmap) (pScreen,
CACHE_PICTURE_WIDTH,
- height, depth,
- INTEL_CREATE_PIXMAP_TILING_X);
+ height, depth, 0);
if (!pPixmap)
return FALSE;