Tool/software: Linux
Hello, I am creating an application that will use the IVA-HD decoder on the AM57x EVM, and I am having an issue with the Engine_open() API call (from the libdce library). When called with the arguments:
engine = Engine_open("ivahd_vidsvr", NULL, &ec) I am receiving segmentation faults.
I have tracked this issue to when omap_bo_new() is called within memplugin_alloc() within Engine_open, however the source file that holds omap_bo_new() is a precompiled binary and I cannot get my debugger to reveal any more before the segfault occurs.
My guess is that I am trying to allocate memory in a space that I am not allowed to, rather than memory not being generally available. Perhaps I am not allocating memory properly because my program cannot look in the IVA-HD's IPU controller's memory? I am compiling with the arm-linux-gnueabihf-gcc toolchain on the EVM itself. Is that incorrect?
Essentially, my question boils down to 'Is there a correct way to compile a program that uses the IVA-HD in such a way that Engine_open() can see the IVA-HD subsystem?'