Hello,
we are running dsp-code on an OMAP L138 under linux.
A linux host program is loading and unloading the dsp-code and the dsp is working
good, so far.
syslink version is: 2_21_02_10
The host program is loading the dsp-code like the "App loader" described
on the SysLink Boot Modes WIKI, expect the ProcMgr_map and ProcMgr_unmap steps.
Before loading the dsp-code, the host program loads the linux syslink kernel module.
This is done with the system function: system("insmod syslink.ko");
After that lsmod on linux gives: syslink used by 0
Then the dsp-code is loaded and working fine.
lsmod on linux gives: syslink used by 17 !
Then the host-code unloads the dsp-code,
lsmod on linux gives: syslink used by 2
And system("rmmod syslink"); gives ERROR: Module syslink is in use
After killing the host-program, lsmod on linux gives: syslink used by 0.
Then it is possible to remove the syslink kernel driver via bash.
So, it seems: Unloading the dsp-code in the ARM host-program is leaving something
in the syslink.ko driver.
Where is the "lsmod used by" (proc fs) information changed in the syslink driver?
Is this problem related to the "missing" ProcMgr_map and ProcMgr_unmap?
I don´t know what to map in at the moment.
Thank you for your effort,
regards,
Bastian.