This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/TDA2EVM5777: How to use the "cmem" buffer to do encoder ?

Part Number: TDA2EVM5777

Tool/software: Linux

Hello ,

     I want alloc continuous physical address to do encoder in PSDK 3.03, And to use cmem as  input buffer for encode, i add the below code in videnc2test.c :

enc->buf.ybuff = CMEM_alloc2(CMEM_CMABLOCKID, enc->buf.sizey, &params);
enc->buf.fdy = CMEM_export_dmabuf(enc->buf.ybuff);

    When i rebuild and run videnc2test, get some error trace form kernel:

"

../git/libdce.c:965: process ERROR: Failed eError == DCE_EOK error val -5videnc2test.c:1467: main error: Non-fatal err=0, h264enc_outArgs->videnc2OutArgs.extendedError=00000000
[ 39.528607] rpmsg_rpc rpmsg-dce: error from rproc_pa_to_da, rproc = f68d8c00, pa = 0x00000000bc200000 ret = -22
[ 39.556534] rpmsg_rpc rpmsg-dce: unwinding UVA to RDA translations! translation = 0
[ 39.564269] rpmsg_rpc rpmsg-dce: failed to translate all pointers for remote core!
MmRpc_call: Error: write failed

"

  Does the encoder(IPU) support  continuous physical mem which allocated from MPU side?

  Regards,

  Sid