[PATCH] Fix EXA mem binding

We should check if EXA is really enabled.

Signed-off-by: Keith Packard <keithp@neko.keithp.com>
This commit is contained in:
Wang Zhenyu 2007-01-04 11:25:31 +08:00 committed by Keith Packard
parent fa54a3c083
commit 33e912aca0
1 changed files with 12 additions and 8 deletions

View File

@ -841,7 +841,7 @@ I830Allocate2DMemory(ScrnInfoPtr pScrn, const int flags)
pI830->Offscreen.Start, pI830->Offscreen.Size/1024);
}
}
if (IS_I965G(pI830)) {
if (pI830->useEXA && IS_I965G(pI830)) {
memset(&(pI830->EXAStateMem), 0, sizeof(I830MemRange));
pI830->EXAStateMem.Key = -1;
size = ROUND_TO_PAGE(EXA_LINEAR_EXTRA);
@ -1513,9 +1513,11 @@ I830FixupOffsets(ScrnInfoPtr pScrn)
}
#endif
#ifdef I830_USE_EXA
I830FixOffset(pScrn, &(pI830->Offscreen));
if (IS_I965G(pI830))
I830FixOffset(pScrn, &(pI830->EXAStateMem));
if (pI830->useEXA) {
I830FixOffset(pScrn, &(pI830->Offscreen));
if (IS_I965G(pI830))
I830FixOffset(pScrn, &(pI830->EXAStateMem));
}
#endif
return TRUE;
}
@ -1919,10 +1921,12 @@ I830BindAGPMemory(ScrnInfoPtr pScrn)
}
#endif
#ifdef I830_USE_EXA
if (!BindMemRange(pScrn, &(pI830->Offscreen)))
return FALSE;
if (IS_I965G(pI830) && !BindMemRange(pScrn, &(pI830->EXAStateMem)))
return FALSE;
if (pI830->useEXA) {
if (!BindMemRange(pScrn, &(pI830->Offscreen)))
return FALSE;
if (IS_I965G(pI830) && !BindMemRange(pScrn, &(pI830->EXAStateMem)))
return FALSE;
}
#endif
pI830->GttBound = 1;
}