Mesa (gallium-0.2): nouveau: support getting "native" bo from winsys
Ben Skeggs
darktama at kemper.freedesktop.org
Thu Feb 5 08:46:18 UTC 2009
Module: Mesa
Branch: gallium-0.2
Commit: ae8a7544d1ab96240f646ea91fb149227067a2db
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ae8a7544d1ab96240f646ea91fb149227067a2db
Author: Ben Skeggs <skeggsb at gmail.com>
Date: Thu Feb 5 13:17:12 2009 +1000
nouveau: support getting "native" bo from winsys
---
src/gallium/drivers/nouveau/nouveau_winsys.h | 2 ++
.../winsys/drm/nouveau/common/nouveau_winsys.c | 8 ++++++++
2 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/src/gallium/drivers/nouveau/nouveau_winsys.h b/src/gallium/drivers/nouveau/nouveau_winsys.h
index e935fff..99f8e08 100644
--- a/src/gallium/drivers/nouveau/nouveau_winsys.h
+++ b/src/gallium/drivers/nouveau/nouveau_winsys.h
@@ -57,6 +57,8 @@ struct nouveau_winsys {
unsigned, unsigned, unsigned, unsigned);
int (*surface_fill)(struct nouveau_winsys *, struct pipe_surface *,
unsigned, unsigned, unsigned, unsigned, unsigned);
+
+ struct nouveau_bo *(*get_bo)(struct pipe_buffer *);
};
extern struct pipe_screen *
diff --git a/src/gallium/winsys/drm/nouveau/common/nouveau_winsys.c b/src/gallium/winsys/drm/nouveau/common/nouveau_winsys.c
index 527c09c..ef7e8aa 100644
--- a/src/gallium/winsys/drm/nouveau/common/nouveau_winsys.c
+++ b/src/gallium/winsys/drm/nouveau/common/nouveau_winsys.c
@@ -81,6 +81,12 @@ nouveau_pipe_push_flush(struct nouveau_winsys *nvws, unsigned size,
return nouveau_pushbuf_flush(nvws->channel, size);
}
+static struct nouveau_bo *
+nouveau_pipe_get_bo(struct pipe_buffer *pb)
+{
+ return ((struct nouveau_pipe_buffer *)pb)->bo;
+}
+
struct pipe_context *
nouveau_pipe_create(struct nouveau_context *nv)
{
@@ -151,6 +157,8 @@ nouveau_pipe_create(struct nouveau_context *nv)
nvws->surface_copy = nouveau_pipe_surface_copy;
nvws->surface_fill = nouveau_pipe_surface_fill;
+ nvws->get_bo = nouveau_pipe_get_bo;
+
ws = nouveau_create_pipe_winsys(nv);
if (!nvc->pscreen)
More information about the mesa-commit
mailing list