summaryrefslogtreecommitdiff
path: root/src/gx_driver.c
diff options
context:
space:
mode:
authorJordan Crouse <jordan.crouse@amd.com>2008-08-07 11:21:48 -0600
committerJordan Crouse <jordan.crouse@amd.com>2008-08-07 11:21:48 -0600
commitd681a844e448712a9a419d2a4dca81930d39a80a (patch)
tree09079ad5f93174e991a1da09a38d2aad53515cf9 /src/gx_driver.c
parente98927f2c60acd9262cfb6fca2491fe0decc7aa5 (diff)
[LX] - Add RandR 1.2 support
A wholesale update to Randr 1.2 for LX accompanied by massive cleanup.
Diffstat (limited to 'src/gx_driver.c')
-rw-r--r--src/gx_driver.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/gx_driver.c b/src/gx_driver.c
index 928a59a..46b04f5 100644
--- a/src/gx_driver.c
+++ b/src/gx_driver.c
@@ -68,6 +68,9 @@
#define GX_GP_REG_SIZE 0x4000
#define GX_VID_REG_SIZE 0x4000
+#define DEFAULT_IMG_LINE_BUFS 20
+#define DEFAULT_CLR_LINE_BUFS 20
+
extern OptionInfoRec GX_GeodeOptions[];
extern const char *amdVgahwSymbols[];
@@ -200,12 +203,11 @@ GXAllocateMemory(ScreenPtr pScrn, ScrnInfoPtr pScrni, int rotate)
}
if (pGeode->tryHWCursor) {
- pGeode->CursorSize = 1024;
- if (pGeode->CursorSize <= fbavail) {
+ if (fbavail >= 1024) {
pGeode->CursorStartOffset = fboffset;
- fboffset += pGeode->CursorSize;
- fbavail -= pGeode->CursorSize;
+ fboffset += 1024;
+ fbavail -= 1024;
pGeode->HWCursor = TRUE;
} else {
xf86DrvMsg(pScrni->scrnIndex, X_ERROR,
@@ -652,9 +654,6 @@ GXPreInit(ScrnInfoPtr pScrni, int flags)
else
pScrni->videoRam = pGeode->pEnt->device->videoRam;
- pGeode->maxWidth = GX_MAX_WIDTH;
- pGeode->maxHeight = GX_MAX_HEIGHT;
-
GeodeClockRange = (ClockRangePtr) xnfcalloc(sizeof(ClockRange), 1);
GeodeClockRange->next = NULL;
GeodeClockRange->minClock = 25175;
@@ -789,9 +788,7 @@ GXAdjustFrame(int scrnIndex, int x, int y, int flags)
GeodeRec *pGeode = GEODEPTR(pScrni);
unsigned long offset;
- offset =
- pGeode->FBOffset + y * pGeode->Pitch +
- x * (pScrni->bitsPerPixel >> 3);
+ offset = y * pGeode->Pitch + x * (pScrni->bitsPerPixel >> 3);
gfx_set_display_offset(offset);
}
@@ -1269,8 +1266,8 @@ GXScreenInit(int scrnIndex, ScreenPtr pScrn, int argc, char **argv)
pExa->pixmapOffsetAlign = 32;
pExa->pixmapPitchAlign = 32;
pExa->flags = EXA_OFFSCREEN_PIXMAPS;
- pExa->maxX = pGeode->maxWidth - 1;
- pExa->maxY = pGeode->maxHeight - 1;
+ pExa->maxX = GX_MAX_WIDTH - 1;
+ pExa->maxY = GX_MAX_HEIGHT - 1;
}
} else {
pGeode->AccelImageWriteBuffers =