aboutsummaryrefslogtreecommitdiffstats
path: root/src/wsbm_manager.c
diff options
context:
space:
mode:
authorVinil Cheeramvelil <vinil.cheeramvelil@intel.com>2014-09-09 08:17:26 +0800
committerPatrick Tjin <pattjin@google.com>2015-06-16 10:00:58 -0700
commitac747113d4f6739b1462ca7fb40f2091691e209b (patch)
tree1855d1d5187c54c64b30aec944c2844669c4ea23 /src/wsbm_manager.c
parent3406d98844b1ad6733aaa61b4cdaa4f664981bfa (diff)
downloadandroid_hardware_intel_common_libwsbm-ac747113d4f6739b1462ca7fb40f2091691e209b.tar.gz
android_hardware_intel_common_libwsbm-ac747113d4f6739b1462ca7fb40f2091691e209b.tar.bz2
android_hardware_intel_common_libwsbm-ac747113d4f6739b1462ca7fb40f2091691e209b.zip
ION support in libwsbm.cm-14.0
When creat surface from user pointer, it will also pass down buffer fd to kernel, which help to find physical pages if ION is enabled. Orig-Author: Randy Xu <randy.xu@intel.com> Bug: 18731042 BZ: 230505 Change-Id: I523cfd4542c00285957494c9a65b66b277308913 Signed-off-by: mahongpe <hongpeng.ma@intel.com>
Diffstat (limited to 'src/wsbm_manager.c')
-rw-r--r--src/wsbm_manager.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/wsbm_manager.c b/src/wsbm_manager.c
index e7c8f5d..0cbf9de 100644
--- a/src/wsbm_manager.c
+++ b/src/wsbm_manager.c
@@ -613,7 +613,7 @@ wsbmBOData(struct _WsbmBufferObject *buf,
int
wsbmBODataUB(struct _WsbmBufferObject *buf,
unsigned size, const void *data, struct _WsbmBufferPool *newPool,
- uint32_t placement, const unsigned long *user_ptr)
+ uint32_t placement, const unsigned long *user_ptr, int fd)
{
int newBuffer;
int retval = 0;
@@ -624,7 +624,7 @@ wsbmBODataUB(struct _WsbmBufferObject *buf,
extern struct _WsbmBufStorage *
ttm_pool_ub_create(struct _WsbmBufferPool *pool,
unsigned long size, uint32_t placement, unsigned alignment,
- const unsigned long *user_ptr);
+ const unsigned long *user_ptr, int fd);
if (buf->bufferType == WSBM_BUFFER_SIMPLE)
return -EINVAL;
@@ -659,7 +659,7 @@ wsbmBODataUB(struct _WsbmBufferObject *buf,
}
buf->storage =
- ttm_pool_ub_create(newPool, size, placement, buf->alignment, user_ptr);
+ ttm_pool_ub_create(newPool, size, placement, buf->alignment, user_ptr, fd);
if (!buf->storage) {
retval = -ENOMEM;
goto out;
@@ -681,7 +681,7 @@ wsbmBODataUB(struct _WsbmBufferObject *buf,
curPool = storage->pool;
tmp_storage =
- ttm_pool_ub_create(curPool, size, placement, buf->alignment, user_ptr);
+ ttm_pool_ub_create(curPool, size, placement, buf->alignment, user_ptr, fd);
if (tmp_storage) {
wsbmBufStorageUnref(&buf->storage);