summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorWang Zhenyu <zhenyu.z.wang@intel.com>2007-04-29 14:43:19 +0800
committerWang Zhenyu <zhenyu.z.wang@intel.com>2007-04-29 14:43:19 +0800
commit138ac8f36cb4e4b3776f313955372522646acbb2 (patch)
treed1b22c15b5aa7d2c20f00df15ae9423088478d8b /src
parent0cd524e5411e35c8483c02ecc5062625809e6fc6 (diff)
Alloc state mem buffer on 965G for xaa rotation
965G needs state mem buffer to setup render pipeline. Thanks Barry Scrott for report this.
Diffstat (limited to 'src')
-rw-r--r--src/i830_memory.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/src/i830_memory.c b/src/i830_memory.c
index 15d241b2..268d6c52 100644
--- a/src/i830_memory.c
+++ b/src/i830_memory.c
@@ -957,20 +957,18 @@ i830_allocate_2d_memory(ScrnInfoPtr pScrn)
"Failed to allocate logical context space.\n");
return FALSE;
}
-#ifdef I830_USE_EXA
- if (pI830->useEXA) {
- if (IS_I965G(pI830) && pI830->exa_965_state == NULL) {
- pI830->exa_965_state =
- i830_allocate_memory(pScrn, "exa G965 state buffer",
- EXA_LINEAR_EXTRA, GTT_PAGE_SIZE, 0);
- if (pI830->exa_965_state == NULL) {
- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
- "Failed to allocate exa state buffer for 965.\n");
- return FALSE;
- }
+
+ /* even in XAA, 965G needs state mem buffer for rendering */
+ if (IS_I965G(pI830) && !pI830->noAccel && pI830->exa_965_state == NULL) {
+ pI830->exa_965_state =
+ i830_allocate_memory(pScrn, "exa G965 state buffer",
+ EXA_LINEAR_EXTRA, GTT_PAGE_SIZE, 0);
+ if (pI830->exa_965_state == NULL) {
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "Failed to allocate exa state buffer for 965.\n");
+ return FALSE;
}
}
-#endif
#ifdef I830_XV
/* Allocate overlay register space and optional XAA linear allocator