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.

c6x linux SYSLINK + ProcMgr

Other Parts Discussed in Thread: SYSBIOS

Hi there,

Im trying to make my own syslink program using the examples of the c6x-linux.org samples.

Im trying to let my linux program connect to my sys/bios program.

I've executed the following on my linux target:

insmod syslink.ko

mcoreloader 1 client.out

./syslink_test

the output that syslink_test generates is as follows:

Hello world!
Starting notify...
Entered SysLinkSamples_startup
SysLinkSamples_setToRunProcIds

and then:
Entered ProcMgrApp_startup
ProcMgr_attach failed [0x86a85001]
ProcMgr_close status: [0x0]
Leaving ProcMgrApp_startup
ProcMgrApp_startup status [0]

Sometimes the output is also different:

skb_over_panic: text:8021f018 len:3022 put:1518 head:9e76f000 data:9e76f030 tail:0x9e76fbfe end:0x9e76f680 dev:eth0
Kernel panic - not syncing: BUG!

I have no idea what I'm doing wrong, but maybe a clue on what the ProcMgr_attach failed fail code [0x86a85001] means?

If you want i can include code, but it's still very much under development so kind'a messy ;)

  • Hi, Jonathan,

    Have you tried with the syslink demo program to run on your evm? You can refer to the sample code and see how it is done.

    Rex

  • that is exactly what I've done. However, the examples provided are kinda of hard to understand, they are too large. That's why I'm trying to make my won, based on the examples. At the moment I am having difficulty to fully understand the examples, but I will work on it and let you know how far I've come. Is it okay to provide some code when I'm really stuck?

  • Hereby my notify server and client.

    I have no idea why it doesn't work, I've created this with help of the example, but it seems not to work.

    What I've done is instead of having 7 cores running the notify events, I just use one.
    The server sends a message to the client.
    The client waits until he receives a message from the server and sends a message back to confirm.


    I've attached the code of both my server and client.
    Please have a look at this and maybe tell me what I'm doing wrong..5621.server.tar.gz2100.client.tar.gz

  • Rex Chang said:

    Hi, Jonathan,

    Have you tried with the syslink demo program to run on your evm? You can refer to the sample code and see how it is done.

    Rex

    Pleaseprovide some more help with this? The examples itself are not self-explanatory.. 

  • problem solved. I forgot a few things:

    On the sysbios side, my configuration file said:

    Ipc.procSync = Ipc.ProcSync_ALL;

    changing this to :

    Ipc.procSync = Ipc.ProcSync_PAIR;

    did the trick.

    After that had some struggles at rmmod syslink.ko. Solved this problem by :

    - on both sides unregistering all events that are registered

    - on the linux side after unregistering, calling ProcMgrApp_shutdown and SysLinkSamples_shutdown.

    Now my example is running fine and we can use notify ;)