summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Fonseca <jrfonseca@tungstengraphics.com>2007-11-06 14:43:20 +0000
committerJosé Fonseca <jrfonseca@tungstengraphics.com>2007-11-06 14:52:39 +0000
commita06dcfd75b1591bc1db568798f82be721dcc807e (patch)
treea45bfc6d03e2d281797838e196148b414b01fa9c
parentfa1a66d7fc4fd7854de7958a48e4992edd154489 (diff)
Allow custom pipe driver buffer usage flags.
-rw-r--r--src/mesa/pipe/i915simple/i915_prim_vbuf.c2
-rw-r--r--src/mesa/pipe/i915simple/i915_winsys.h5
-rw-r--r--src/mesa/pipe/p_defines.h11
3 files changed, 12 insertions, 6 deletions
diff --git a/src/mesa/pipe/i915simple/i915_prim_vbuf.c b/src/mesa/pipe/i915simple/i915_prim_vbuf.c
index 75ca6d6e5e..086ad04d1e 100644
--- a/src/mesa/pipe/i915simple/i915_prim_vbuf.c
+++ b/src/mesa/pipe/i915simple/i915_prim_vbuf.c
@@ -378,7 +378,7 @@ static void vbuf_flush_elements( struct draw_stage *stage )
vbuf->buf = winsys->buffer_create(winsys, 64);
winsys->buffer_data( winsys, vbuf->buf,
VBUF_SIZE, NULL,
- PIPE_BUFFER_USAGE_VERTEX );
+ I915_BUFFER_USAGE_LIT_VERTEX );
vbuf->vertex_map = winsys->buffer_map(winsys,
vbuf->buf,
PIPE_BUFFER_FLAG_WRITE );
diff --git a/src/mesa/pipe/i915simple/i915_winsys.h b/src/mesa/pipe/i915simple/i915_winsys.h
index 947c5a334d..cbb851a932 100644
--- a/src/mesa/pipe/i915simple/i915_winsys.h
+++ b/src/mesa/pipe/i915simple/i915_winsys.h
@@ -37,6 +37,9 @@
#define I915_WINSYS_H
+#include "pipe/p_defines.h"
+
+
/* Pipe drivers are (meant to be!) independent of both GL and the
* window system. The window system provides a buffer manager and a
* set of additional hooks for things like command buffer submission,
@@ -100,6 +103,8 @@ struct i915_winsys {
#define I915_BUFFER_ACCESS_WRITE 0x1
#define I915_BUFFER_ACCESS_READ 0x2
+#define I915_BUFFER_USAGE_LIT_VERTEX (PIPE_BUFFER_USAGE_CUSTOM << 0)
+
struct pipe_context *i915_create( struct pipe_winsys *,
struct i915_winsys *,
diff --git a/src/mesa/pipe/p_defines.h b/src/mesa/pipe/p_defines.h
index 119ea1bd77..cc0232cdcd 100644
--- a/src/mesa/pipe/p_defines.h
+++ b/src/mesa/pipe/p_defines.h
@@ -177,11 +177,12 @@
/**
* Buffer usage flags
*/
-#define PIPE_BUFFER_USAGE_PIXEL 0x1
-#define PIPE_BUFFER_USAGE_VERTEX 0x2
-#define PIPE_BUFFER_USAGE_INDEX 0x4
-#define PIPE_BUFFER_USAGE_CONSTANT 0x8
-
+#define PIPE_BUFFER_USAGE_PIXEL (1 << 0)
+#define PIPE_BUFFER_USAGE_VERTEX (1 << 1)
+#define PIPE_BUFFER_USAGE_INDEX (1 << 2)
+#define PIPE_BUFFER_USAGE_CONSTANT (1 << 3)
+/** Pipe driver custam usage flags should be greater or equal to this value */
+#define PIPE_BUFFER_USAGE_CUSTOM (1 << 16)
/**
* Flush types: