Issue while creating multiple task with rpmsg task in M core - IMX8ULPEVK9

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Issue while creating multiple task with rpmsg task in M core - IMX8ULPEVK9

173 次查看
dhruvinrajpura
Contributor II

I am using imx8ulp-evk9 and in the M core I had taken rpmsg sample code as a base code and on that I am building my app

But when I create more than 3 task rpmsg is giving me error at below place

result = rpmsg_queue_recv_nocopy(rpmsgConfig->my_rpmsg, my_queue, (uint32_t *)&rpmsgConfig->remote_addr, (char **)&rx_buf, &len, RL_BLOCK);
        PRINTF("result : %d, len : %d\r\n", result, len);
        if (result != 0)
        {
            assert(false);
        }

 

I am getting assert error and garbage value in result, but when I am not starting rpmsg task I can create more than 10 task,

Can anyone explain what I can do to resolve this assert error when creating multiple tasks?

0 项奖励
回复
2 回复数

139 次查看
dhruvinrajpura
Contributor II

I am attching logs of M core I am getting with value of result,

0 项奖励
回复

150 次查看
Alejandro_Salas
NXP TechSupport
NXP TechSupport

Hello @dhruvinrajpura 

I hope you are doing very well.

 

Are you able to identify the value of "result" variable when it happens?

depends on the obtained value we can know more about the issue.

You can take a look to the rpmsg_queue_recv_nocopy function and try to debug why is not returning 0.

Also, you can try to increase the buffer size, please refer to this post to change the buffer size for RPMSG on Linux and the SDK.

 

I hope this can helps to you.

 

Best regards,

Salas.

0 项奖励
回复