diff options
author | Shawn Xiao <b49994@freescale.com> | 2015-05-14 20:15:09 +0800 |
---|---|---|
committer | Neena Busireddy <neenareddy.busireddy@nxp.com> | 2017-09-28 16:09:24 -0500 |
commit | db7d95859f89174e94b474826933834d58be430e (patch) | |
tree | c03fe057b09b91c67b3c45313befc8e89f82c608 | |
parent | 09a80e6b17e455610dd4ff4bb060422605bb03af (diff) |
MA-4701 ENGR00278179-3 [#ccc] query openvg video memory databaserel_imx_3.10.17_1.0.3_ga_caf
query openvg video memory database with gpu memory tool
Date: Aug 11, 2014
Signed-off-by: Xianzhong <b07117@freescale.com>
Acked-by: Jason Liu
-rw-r--r-- | drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_vg.c | 58 |
1 files changed, 58 insertions, 0 deletions
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 |