Set DSPATILEOFF/DSPBTILEOFF to handle 965 tiled frame buffers.

DSPATILEOFF and DSPBTILEOFF replace DSPASURF and DSPBSURF when the frame
buffer is in tiled mode.
This commit is contained in:
Keith Packard 2007-08-10 17:54:32 -07:00
parent 64b943c79c
commit 5bc194d3d3
1 changed files with 2 additions and 0 deletions

View File

@ -375,6 +375,7 @@ i830PipeSetBase(xf86CrtcPtr crtc, int x, int y)
unsigned long Start, Offset;
int dspbase = (pipe == 0 ? DSPABASE : DSPBBASE);
int dspsurf = (pipe == 0 ? DSPASURF : DSPBSURF);
int dsptileoff = (pipe == 0 ? DSPATILEOFF : DSPBTILEOFF);
Offset = ((y * pScrn->displayWidth + x) * pI830->cpp);
if (pI830->front_buffer == NULL) {
@ -399,6 +400,7 @@ i830PipeSetBase(xf86CrtcPtr crtc, int x, int y)
POSTING_READ(dspbase);
OUTREG(dspsurf, Start);
POSTING_READ(dspsurf);
OUTREG(dsptileoff, (y << 16) | x);
} else {
OUTREG(dspbase, Start + Offset);
POSTING_READ(dspbase);