Mesa (master): svga: add SVGA_3D_CMD_INVALIDATE_GB_SURFACE support
Brian Paul
brianp at kemper.freedesktop.org
Thu Nov 3 20:31:02 UTC 2016
Module: Mesa
Branch: master
Commit: 76f5f76468225a540c31877bf11fa11d0dcf3225
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=76f5f76468225a540c31877bf11fa11d0dcf3225
Author: Charmaine Lee <charmainel at vmware.com>
Date: Wed Mar 2 09:31:58 2016 -0800
svga: add SVGA_3D_CMD_INVALIDATE_GB_SURFACE support
This command will be used in a subsequent patch to invalidate a surface.
Reviewed-by: Brian Paul <brianp at vmware.com>
---
src/gallium/drivers/svga/svga_cmd.c | 18 ++++++++++++++++++
src/gallium/drivers/svga/svga_cmd.h | 4 ++++
2 files changed, 22 insertions(+)
diff --git a/src/gallium/drivers/svga/svga_cmd.c b/src/gallium/drivers/svga/svga_cmd.c
index ecf2e9d..7b78cb7 100644
--- a/src/gallium/drivers/svga/svga_cmd.c
+++ b/src/gallium/drivers/svga/svga_cmd.c
@@ -1870,6 +1870,24 @@ SVGA3D_InvalidateGBImagePartial(struct svga_winsys_context *swc,
return PIPE_OK;
}
+enum pipe_error
+SVGA3D_InvalidateGBSurface(struct svga_winsys_context *swc,
+ struct svga_winsys_surface *surface)
+{
+ SVGA3dCmdInvalidateGBSurface *cmd =
+ SVGA3D_FIFOReserve(swc,
+ SVGA_3D_CMD_INVALIDATE_GB_SURFACE,
+ sizeof *cmd,
+ 1); /* one relocation */
+ if (!cmd)
+ return PIPE_ERROR_OUT_OF_MEMORY;
+
+ swc->surface_relocation(swc, &cmd->sid, NULL, surface,
+ SVGA_RELOC_READ | SVGA_RELOC_INTERNAL);
+ swc->commit(swc);
+
+ return PIPE_OK;
+}
enum pipe_error
SVGA3D_SetGBShaderConstsInline(struct svga_winsys_context *swc,
diff --git a/src/gallium/drivers/svga/svga_cmd.h b/src/gallium/drivers/svga/svga_cmd.h
index db0f890..cd2cb65 100644
--- a/src/gallium/drivers/svga/svga_cmd.h
+++ b/src/gallium/drivers/svga/svga_cmd.h
@@ -299,6 +299,10 @@ SVGA3D_InvalidateGBImagePartial(struct svga_winsys_context *swc,
const SVGA3dBox *box,
bool invertBox);
+enum pipe_error
+SVGA3D_InvalidateGBSurface(struct svga_winsys_context *swc,
+ struct svga_winsys_surface *surface);
+
enum pipe_error
SVGA3D_SetGBShaderConstsInline(struct svga_winsys_context *swc,
More information about the mesa-commit
mailing list