Hi all
I'm using dsplink 1.63 on a OMAP L137.
My application implements a MSGQ located on the DSP side which is used to send messages from the GPP to the DSP. When I do a MSGQ_put on the GPP side it returns with status 0x80008008 (EFAIL) which doesn't tell me _anything_ ... (since it only states that it's a general failure...)
Here's the sequence of dsplink APIs that I'm calling:
GPP side | DSP side |
PROC_setup | |
PROC_attach | |
POOL_open | |
PROC_load | |
PROC_start | |
SEM_new | |
MSGQ_open | |
MSGQ_setErrorHandler | |
MSGQ_transportOpen | |
MSGQ_locate | |
MSGQ_alloc | |
MSGQ_put |
Everything seems to run fine (all commands return DSP_OK / SYS_OK) except for the MSGQ_put. I've read that a put() can fail if the MSGQ is already closed but I'm pretty sure that's not the case, since the DSP ends up in a while(1) loop (inside the task function) which does MSGQ_get / TSK_sleep. I'd guess that something (i.e the MSGQ handlers) is not properly setup. But since all the APIs return "OK" I got no clue what could be wrong...
Any tips what could make the MSGQ_put failing are appreciated!
Thx,
Dominique