Signed-off-by: Xiang, Haihao <haihao.xi...@intel.com>
---
 src/i965_gpe_utils.c | 18 +++++++++++++++++-
 src/i965_gpe_utils.h |  3 ++-
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/src/i965_gpe_utils.c b/src/i965_gpe_utils.c
index 4c0384e..d1b1941 100644
--- a/src/i965_gpe_utils.c
+++ b/src/i965_gpe_utils.c
@@ -2143,7 +2143,6 @@ gen8_gpe_media_object_walker(VADriverContextP ctx,
     ADVANCE_BATCH(batch);
 }
 
-
 void
 intel_vpp_init_media_object_walker_parameter(struct 
intel_vpp_kernel_walker_parameter *kernel_walker_param,
                                         struct 
gpe_media_object_walker_parameter *walker_param)
@@ -2190,3 +2189,20 @@ intel_vpp_init_media_object_walker_parameter(struct 
intel_vpp_kernel_walker_para
         walker_param->local_inner_loop_unit.y = 1;
     }
 }
+
+void
+gen8_gpe_reset_binding_table(VADriverContextP ctx, struct i965_gpe_context 
*gpe_context)
+{
+    unsigned int *binding_table;
+    unsigned int binding_table_offset = 
gpe_context->surface_state_binding_table.binding_table_offset;
+    int i;
+
+    dri_bo_map(gpe_context->surface_state_binding_table.bo, 1);
+    binding_table = (unsigned int*)((char 
*)gpe_context->surface_state_binding_table.bo->virtual + binding_table_offset);
+
+    for (i = 0; i < gpe_context->surface_state_binding_table.max_entries; i++) 
{
+        *(binding_table + i) = 
gpe_context->surface_state_binding_table.surface_state_offset + i * 
SURFACE_STATE_PADDED_SIZE_GEN8;
+    }
+
+    dri_bo_unmap(gpe_context->surface_state_binding_table.bo);
+}
diff --git a/src/i965_gpe_utils.h b/src/i965_gpe_utils.h
index 1a3210b..076f584 100644
--- a/src/i965_gpe_utils.h
+++ b/src/i965_gpe_utils.h
@@ -511,7 +511,6 @@ gen8_gpe_media_object_walker(VADriverContextP ctx,
                              struct intel_batchbuffer *batch,
                              struct gpe_media_object_walker_parameter *param);
 
-
 struct intel_vpp_kernel_walker_parameter
 {
     unsigned int                use_scoreboard;
@@ -524,5 +523,7 @@ struct intel_vpp_kernel_walker_parameter
 extern void
 intel_vpp_init_media_object_walker_parameter(struct 
intel_vpp_kernel_walker_parameter *kernel_walker_param,
                                              struct 
gpe_media_object_walker_parameter *walker_param);
+extern void
+gen8_gpe_reset_binding_table(VADriverContextP ctx, struct i965_gpe_context 
*gpe_context);
 
 #endif /* _I965_GPE_UTILS_H_ */
-- 
1.9.1

_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to