aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuanjun Huang <yuanjun.huang@intel.com>2015-06-19 07:49:36 +0800
committerPatrick Tjin <pattjin@google.com>2015-06-30 22:42:59 -0700
commit48f5fb14daab6b742ab405821b6ec28b04a135b2 (patch)
tree1f2709fc838445c90b6442241ec6d60b73cb3640
parent96fcbcb36c67aff2f6a723c468d500c1e2c98504 (diff)
downloadpsb_video-48f5fb14daab6b742ab405821b6ec28b04a135b2.tar.gz
Add flush cache operation for VP8 encode in user point type surface
Bug: 21156664 Change-Id: I790b7f39cea94cababf50b09876f7c68ed742518
-rw-r--r--src/psb_surface_attrib.c4
-rw-r--r--src/vsp_cmdbuf.c1
2 files changed, 4 insertions, 1 deletions
diff --git a/src/psb_surface_attrib.c b/src/psb_surface_attrib.c
index 9f7c316..f892c70 100644
--- a/src/psb_surface_attrib.c
+++ b/src/psb_surface_attrib.c
@@ -608,9 +608,11 @@ VAStatus psb_CreateSurfaceFromUserspace(
if (attribute_tpi->type == VAExternalMemoryNoneCacheUserPointer)
vaStatus = psb_surface_create_from_ub(driver_data, width, height, fourcc,
attribute_tpi, psb_surface, vaddr, -1, PSB_USER_BUFFER_UNCACHED);
- else
+ else {
vaStatus = psb_surface_create_from_ub(driver_data, width, height, fourcc,
attribute_tpi, psb_surface, vaddr, -1, 0);
+ psb_surface->buf.unfence_flag = 2;
+ }
obj_surface->psb_surface = psb_surface;
if (VA_STATUS_SUCCESS != vaStatus) {
diff --git a/src/vsp_cmdbuf.c b/src/vsp_cmdbuf.c
index d74261c..dbce52a 100644
--- a/src/vsp_cmdbuf.c
+++ b/src/vsp_cmdbuf.c
@@ -317,6 +317,7 @@ vspDRMCmdBuf(int fd, int ioctl_offset, psb_buffer_p *buffer_list, int buffer_cou
#if 1
req->presumed_gpu_offset = (uint64_t)wsbmBOOffsetHint(buffer_list[i]->drm_buf);
req->presumed_flags = PSB_USE_PRESUMED;
+ req->unfence_flag = buffer_list[i]->unfence_flag;
#else
req->presumed_flags = 0;
#endif