summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/nouveau
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/pipe/nouveau')
-rw-r--r--src/mesa/pipe/nouveau/nouveau_winsys.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mesa/pipe/nouveau/nouveau_winsys.h b/src/mesa/pipe/nouveau/nouveau_winsys.h
index beee49a134..28f17cdc8f 100644
--- a/src/mesa/pipe/nouveau/nouveau_winsys.h
+++ b/src/mesa/pipe/nouveau/nouveau_winsys.h
@@ -3,6 +3,7 @@
#include <stdint.h>
#include "pipe/p_winsys.h"
+#include "pipe/p_defines.h"
#include "pipe/nouveau/nouveau_bo.h"
#include "pipe/nouveau/nouveau_channel.h"
@@ -10,11 +11,27 @@
#include "pipe/nouveau/nouveau_grobj.h"
#include "pipe/nouveau/nouveau_notifier.h"
+struct nouveau_resource {
+ struct nouveau_resource *prev;
+ struct nouveau_resource *next;
+
+ boolean in_use;
+ void *priv;
+
+ uint start;
+ uint size;
+};
+
struct nouveau_winsys {
struct nouveau_context *nv;
struct nouveau_channel *channel;
+ int (*res_init)(struct nouveau_resource **heap, int size);
+ int (*res_alloc)(struct nouveau_resource *heap, int size, void *priv,
+ struct nouveau_resource **);
+ void (*res_free)(struct nouveau_resource **);
+
/*XXX: this is crappy, and bound to be slow.. however, it's nice and
* simple, it'll do for the moment*/
uint32_t *(*begin_ring)(struct nouveau_grobj *, int mthd, int size);