[vpu_mem_legacy]: buffer group create

1.limit buffer count for create vpu_mem_pool case
2.remove limit buffer print in mpp_buffer_impl

Change-Id: I88daa0204d8858e882ac3255ef3a95e0853ae2f2
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
This commit is contained in:
sayon.chen
2016-08-23 19:57:12 +08:00
parent 4f8f63d16f
commit f18f2f45a6
2 changed files with 10 additions and 4 deletions

View File

@@ -246,7 +246,8 @@ MPP_RET mpp_buffer_create(const char *tag, const char *caller,
} }
if (group->limit_count && group->buffer_count >= group->limit_count) { if (group->limit_count && group->buffer_count >= group->limit_count) {
mpp_err_f("group %d reach count limit %d\n", group->group_id, group->limit_count); if (group->log_runtime_en)
mpp_log_f("group %d reach count limit %d\n", group->group_id, group->limit_count);
ret = MPP_NOK; ret = MPP_NOK;
goto RET; goto RET;
} }

View File

@@ -134,11 +134,12 @@ void close_vpu_memory_pool(vpu_display_mem_pool *p)
int create_vpu_memory_pool_allocator(vpu_display_mem_pool **ipool, int num, int size) int create_vpu_memory_pool_allocator(vpu_display_mem_pool **ipool, int num, int size)
{ {
vpu_display_mem_pool_impl *p_mempool = mpp_calloc(vpu_display_mem_pool_impl, 1); vpu_display_mem_pool_impl *p_mempool = mpp_calloc(vpu_display_mem_pool_impl, 1);
if (NULL == p_mempool) { if (NULL == p_mempool) {
return -1; return -1;
} }
mpp_buffer_group_get_internal(&p_mempool->group, MPP_BUFFER_TYPE_ION);
mpp_buffer_group_limit_config(p_mempool->group, size, num + 4);
p_mempool->commit_hdl = commit_memory_handle; p_mempool->commit_hdl = commit_memory_handle;
p_mempool->get_free = get_free_memory_vpumem; p_mempool->get_free = get_free_memory_vpumem;
p_mempool->put_used = put_used_memory_handle; p_mempool->put_used = put_used_memory_handle;
@@ -149,8 +150,6 @@ int create_vpu_memory_pool_allocator(vpu_display_mem_pool **ipool, int num, int
p_mempool->buff_size = size; p_mempool->buff_size = size;
p_mempool->size = size; p_mempool->size = size;
*ipool = (vpu_display_mem_pool*)p_mempool; *ipool = (vpu_display_mem_pool*)p_mempool;
(void)num;
return 0; return 0;
} }
@@ -160,7 +159,13 @@ void release_vpu_memory_pool_allocator(vpu_display_mem_pool *ipool)
if (p_mempool == NULL) { if (p_mempool == NULL) {
return; return;
} }
if (p_mempool->group) {
mpp_buffer_group_put(p_mempool->group);
p_mempool->group = NULL;
}
mpp_free(p_mempool); mpp_free(p_mempool);
p_mempool = NULL;
return; return;
} }