Tool/software: Linux
Hi. we need various continuous memory of vivante(gc320) for GUI. total size is 80MB.
- 1280x720, 1920x1080, 1280x300, and so on. total size is 80MB.
As we trace gc320 drvier, we often notice allocating non-continuous memory for short continuous-memory as below it.
#define gcdDEFAULT_CONTIGUOUS_SIZE (4 << 20) at extra-drivers\ti-gc320-driver-5.0.11.p7\hal\os\linux\kernel\gc_hal_kernel_probe.c
If we increase gcdDEFAULT_CONTIGUOUS_SIZE -> 16MB or 32MB, we find decoding error(VPE memory). How do increase it ?
As other solution, we can consider TI OMAP or CMEM.
but, we have short memory for limiting TI OMAP memory(128MB), and then we don't use TI OMAP memory(it already three display, 3D GPU and IVA-HD).
If we CMEM ( we use CMEM_alloc2 API( internaly it return mmapd address(at cmem-mod-4.14.00.00+gitAUTOINC+b514a99ac4\src\cmem\api\cmem.c ) ) , this API is used VPE for deinterlace , it works very good ), vivante gc320 have error as below it.
status = gcoSURF_SetWindow(lpSurface->Surface, 0, 0, width, height); -> gckKERNEL_Dispatch ( gc_hal_kernel.c ) -> case gcvHAL_MAP_USER_MEMORY -> gckOS_MapUserMemory have error.
In order words, vivante gc320 driver don't support importing cmem when i use CMEM_alloc2 API .
I want to allocate continuous memory but non-continus memory at vivante gc320 . How can i work it ?
