From 6d5f951e94237c818576f4bcc6577d833f151804 Mon Sep 17 00:00:00 2001 From: Shawn Xiao Date: Thu, 14 May 2015 20:15:09 +0800 Subject: MA-4701 ENGR00278179-3 [#ccc] query openvg video memory database query openvg video memory database with gpu memory tool Date: Aug 11, 2014 Signed-off-by: Xianzhong Acked-by: Jason Liu --- drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c | 58 +++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c index c1f37172d069..bd42f6d1ad07 100644 --- a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c +++ b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c @@ -573,6 +573,42 @@ gceSTATUS gckVGKERNEL_Dispatch( &node )); + if (node->VidMem.memory->object.type == gcvOBJ_VIDMEM) + { + bytes = node->VidMem.bytes; + + gcmkONERROR( + gckKERNEL_AddProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_RESERVED, + node, + gcvNULL, + bytes)); + } + else + { + bytes = node->Virtual.bytes; + + if(node->Virtual.contiguous) + { + gcmkONERROR( + gckKERNEL_AddProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_CONTIGUOUS, + node, + gcvNULL, + bytes)); + } + else + { + gcmkONERROR( + gckKERNEL_AddProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_VIRTUAL, + node, + gcvNULL, + bytes)); + } + + } + gcmkERR_BREAK(gckKERNEL_AddProcessDB(Kernel, processID, gcvDB_VIDEO_MEMORY, node, @@ -599,6 +635,28 @@ gceSTATUS gckVGKERNEL_Dispatch( } #endif /* __QNXNTO__ */ + if (node->VidMem.memory->object.type == gcvOBJ_VIDMEM) + { + gcmkONERROR( + gckKERNEL_RemoveProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_RESERVED, + node)); + } + else if(node->Virtual.contiguous) + { + gcmkONERROR( + gckKERNEL_RemoveProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_CONTIGUOUS, + node)); + } + else + { + gcmkONERROR( + gckKERNEL_RemoveProcessDB(Kernel, + processID, gcvDB_VIDEO_MEMORY_VIRTUAL, + node)); + } + /* Free video memory. */ gcmkERR_BREAK(gckVIDMEM_Free(Kernel, node -- cgit v1.2.3