summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/fb
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/fb')
-rw-r--r--src/mesa/drivers/dri/fb/Makefile3
-rw-r--r--src/mesa/drivers/dri/fb/fb_dri.c12
-rw-r--r--src/mesa/drivers/dri/fb/fb_egl.c9
3 files changed, 18 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/fb/Makefile b/src/mesa/drivers/dri/fb/Makefile
index 12465c9f43..bebacf8b27 100644
--- a/src/mesa/drivers/dri/fb/Makefile
+++ b/src/mesa/drivers/dri/fb/Makefile
@@ -15,6 +15,9 @@ C_SOURCES = \
ASM_SOURCES =
+# XXX not 100% sure this is right
+WINDOW_SYSTEM = solo
+
include ../Makefile.template
symlinks:
diff --git a/src/mesa/drivers/dri/fb/fb_dri.c b/src/mesa/drivers/dri/fb/fb_dri.c
index ee25096526..6bbe49021b 100644
--- a/src/mesa/drivers/dri/fb/fb_dri.c
+++ b/src/mesa/drivers/dri/fb/fb_dri.c
@@ -41,7 +41,7 @@
* that may not be valid everywhere.
*/
-/*#include "driver.h"*/
+#include "driver.h"
#include "drm.h"
#include "utils.h"
#include "drirenderbuffer.h"
@@ -468,7 +468,7 @@ fbCreateBuffer( __DRIscreenPrivate *driScrnPriv,
swDepth,
swStencil,
swAccum,
- 0,
+ swAlpha, /* or always zero? */
GL_FALSE /* aux */);
driDrawPriv->driverPrivate = mesa_framebuffer;
@@ -610,7 +610,8 @@ __driInitFBDev( struct DRIDriverContextRec *ctx )
return 0;
}
fprintf(stderr, "[drm] added %d byte SAREA at 0x%08lx\n",
- ctx->shared.SAREASize, ctx->shared.hSAREA);
+ ctx->shared.SAREASize,
+ (unsigned long) ctx->shared.hSAREA);
if (drmMap( ctx->drmFD,
ctx->shared.hSAREA,
@@ -622,7 +623,8 @@ __driInitFBDev( struct DRIDriverContextRec *ctx )
}
memset(ctx->pSAREA, 0, ctx->shared.SAREASize);
fprintf(stderr, "[drm] mapped SAREA 0x%08lx to %p, size %d\n",
- ctx->shared.hSAREA, ctx->pSAREA, ctx->shared.SAREASize);
+ (unsigned long) ctx->shared.hSAREA, ctx->pSAREA,
+ ctx->shared.SAREASize);
/* Need to AddMap the framebuffer and mmio regions here:
*/
@@ -642,7 +644,7 @@ __driInitFBDev( struct DRIDriverContextRec *ctx )
}
fprintf(stderr, "[drm] framebuffer handle = 0x%08lx\n",
- ctx->shared.hFrameBuffer);
+ (unsigned long) ctx->shared.hFrameBuffer);
return 1;
}
diff --git a/src/mesa/drivers/dri/fb/fb_egl.c b/src/mesa/drivers/dri/fb/fb_egl.c
index 05148b445c..1b38b26c42 100644
--- a/src/mesa/drivers/dri/fb/fb_egl.c
+++ b/src/mesa/drivers/dri/fb/fb_egl.c
@@ -83,7 +83,14 @@ typedef struct fb_context
{
_EGLContext Base; /* base class/object */
GLcontext *glCtx;
-} fbContext;
+ struct {
+ __DRIcontextPrivate *context;
+ __DRIscreenPrivate *screen;
+ __DRIdrawablePrivate *drawable; /* drawable bound to this ctx */
+ } dri;
+} fbContext, *fbContextPtr;
+
+#define FB_CONTEXT(ctx) ((fbContextPtr)(ctx->DriverCtx))
static EGLBoolean