summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nvfx/nvfx_miptree.c
diff options
context:
space:
mode:
authorLuca Barbieri <luca@luca-barbieri.com>2010-08-03 22:49:19 +0200
committerLuca Barbieri <luca@luca-barbieri.com>2010-08-21 20:42:14 +0200
commit4e2080a86e0cbb93c72bbf4acace53867fac8276 (patch)
tree86acc1f76c4a552af7bcd0d3f1d93d88bfffbfb4 /src/gallium/drivers/nvfx/nvfx_miptree.c
parent0481ed25c9c35178bf5151c80f4c36ad42b75648 (diff)
nvfx: new 2D: unify textures and buffers
Stop using the vtbl, and use real transfers for buffers too.
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_miptree.c')
-rw-r--r--src/gallium/drivers/nvfx/nvfx_miptree.c35
1 files changed, 1 insertions, 34 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_miptree.c b/src/gallium/drivers/nvfx/nvfx_miptree.c
index 530d705e13..559e832109 100644
--- a/src/gallium/drivers/nvfx/nvfx_miptree.c
+++ b/src/gallium/drivers/nvfx/nvfx_miptree.c
@@ -98,23 +98,6 @@ nvfx_miptree_layout(struct nvfx_miptree *mt)
return offset;
}
-static boolean
-nvfx_miptree_get_handle(struct pipe_screen *pscreen,
- struct pipe_resource *ptexture,
- struct winsys_handle *whandle)
-{
- struct nvfx_miptree* mt = (struct nvfx_miptree*)ptexture;
-
- if (!mt || !mt->base.bo)
- return FALSE;
-
- return nouveau_screen_bo_get_handle(pscreen,
- mt->base.bo,
- mt->linear_pitch,
- whandle);
-}
-
-
static void
nvfx_miptree_surface_final_destroy(struct pipe_surface* ps)
{
@@ -124,7 +107,7 @@ nvfx_miptree_surface_final_destroy(struct pipe_surface* ps)
FREE(ps);
}
-static void
+void
nvfx_miptree_destroy(struct pipe_screen *screen, struct pipe_resource *pt)
{
struct nvfx_miptree *mt = (struct nvfx_miptree *)pt;
@@ -133,19 +116,6 @@ nvfx_miptree_destroy(struct pipe_screen *screen, struct pipe_resource *pt)
FREE(mt);
}
-struct u_resource_vtbl nvfx_miptree_vtbl =
-{
- nvfx_miptree_get_handle, /* get_handle */
- nvfx_miptree_destroy, /* resource_destroy */
- NULL, /* is_resource_referenced */
- nvfx_transfer_new, /* get_transfer */
- util_staging_transfer_destroy, /* transfer_destroy */
- nvfx_transfer_map, /* transfer_map */
- u_default_transfer_flush_region, /* transfer_flush_region */
- nvfx_transfer_unmap, /* transfer_unmap */
- u_default_transfer_inline_write /* transfer_inline_write */
-};
-
static struct nvfx_miptree*
nvfx_miptree_create_skeleton(struct pipe_screen *pscreen, const struct pipe_resource *pt)
{
@@ -159,7 +129,6 @@ nvfx_miptree_create_skeleton(struct pipe_screen *pscreen, const struct pipe_reso
return NULL;
mt->base.base = *pt;
- mt->base.vtbl = &nvfx_miptree_vtbl;
util_dirty_surfaces_init(&mt->dirty_surfaces);
pipe_reference_init(&mt->base.base.reference, 1);
@@ -221,8 +190,6 @@ nvfx_miptree_from_handle(struct pipe_screen *pscreen, const struct pipe_resource
return &mt->base.base;
}
-/* Surface helpers, not strictly required to implement the resource vtbl:
- */
struct pipe_surface *
nvfx_miptree_surface_new(struct pipe_screen *pscreen, struct pipe_resource *pt,
unsigned face, unsigned level, unsigned zslice,