summaryrefslogtreecommitdiff
path: root/src/glamo-kms-exa.c
diff options
context:
space:
mode:
authorThomas White <taw@bitwiz.org.uk>2009-07-28 01:28:36 +0100
committerThomas White <taw@bitwiz.org.uk>2009-07-28 01:28:36 +0100
commit839e7e06a1e24c66233b77b50e454b286caadf93 (patch)
treede24a67c80b4cbd6a65a1d5994b6db09ac0bf8d1 /src/glamo-kms-exa.c
parentcbbb356da7f4384c812c9db230657097992da1e7 (diff)
De-crashify a few things
Diffstat (limited to 'src/glamo-kms-exa.c')
-rw-r--r--src/glamo-kms-exa.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/glamo-kms-exa.c b/src/glamo-kms-exa.c
index 8e31a22..f46a0b1 100644
--- a/src/glamo-kms-exa.c
+++ b/src/glamo-kms-exa.c
@@ -518,12 +518,15 @@ void GlamoKMSExaInit(ScrnInfoPtr pScrn)
if ( !exa ) return;
pGlamo->exa = exa;
+ exa->exa_major = EXA_VERSION_MAJOR;
+ exa->exa_minor = EXA_VERSION_MINOR;
exa->memoryBase = 0;
exa->memorySize = 0;
exa->offScreenBase = 0;
-
- exa->exa_major = EXA_VERSION_MAJOR;
- exa->exa_minor = EXA_VERSION_MINOR;
+ exa->pixmapOffsetAlign = 2;
+ exa->pixmapPitchAlign = 2;
+ exa->maxX = 640;
+ exa->maxY = 640;
/* Solid fills */
exa->PrepareSolid = GlamoKMSExaPrepareSolid;
@@ -548,11 +551,6 @@ void GlamoKMSExaInit(ScrnInfoPtr pScrn)
// exa->MarkSync = GlamoKMSExaMarkSync;
exa->WaitMarker = GlamoKMSExaWaitMarker;
- exa->pixmapOffsetAlign = 2;
- exa->pixmapPitchAlign = 2;
-
- exa->maxX = 640;
- exa->maxY = 640;
pGlamo->cmdq_objs = malloc(1024);
pGlamo->cmdq_obj_pos = malloc(1024);
@@ -568,7 +566,10 @@ void GlamoKMSExaInit(ScrnInfoPtr pScrn)
exa->PixmapIsOffscreen = GlamoKMSExaPixmapIsOffscreen;
exa->ModifyPixmapHeader = GlamoKMSExaModifyPixmapHeader;
- success = exaDriverInit(pGlamo->pScreen, exa);
+ /* Hook up with libdrm */
+ pGlamo->bufmgr = glamo_bo_manager_gem_ctor(pGlamo->drm_fd);
+
+ success = exaDriverInit(pScrn->pScreen, exa);
if (success) {
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Initialized EXA acceleration\n");