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.

More RTFS Building Problems

Other Parts Discussed in Thread: SYSBIOS

I've tried to follow some of the threads here on building RTFS, but I'm still stuck.  I've even used the mmcsd project posted for CCS 5.  I'm still down to this error (if I comment out loadPackage("ti.psp.mmcsd") due to a bug in the psp which was revealed in another thread about RTFS):

Description Resource Path Location Type
can't find imported unit: ti.sysbios.ipc.Semaphore (ti.sysbios.ipc.Semaphore) .xdchelp /mmcsd2 20 C/C++ Problem

I've also attached my cfg file 6136.mmcsdSample.cfg

This is getting very frustrating.  Can anyone help???

Thanks.

  • One of the components in your application is referencing the Semaphore module when it was part of the "ti.sysbios.ipc" package.

    The Semaphore module was moved from the "ti.sysbios.ipc" package to the "ti.sysbios.knl" package several years ago.

    I recommend updating your components products to newer revisions.

    Alan

  • When you mean update components, are you referring to the EDMA3 drivers and the psp drivers that are required for the mmcsd example?  The example needs a specific psp driver version.  It complains loudly if I upgrade that.  

  • Jason,

    To be honest, I don't know which product is referencing the "ti.sysbios.ipc.Semaphore" module.

    I hoped that having you upgrade as many of the component products used by the project as possible would resolve the problem without having to track down the problematic component.

    Is it possible that the mmcsd example itself is using the obsolete Semaphore module?

    Take a look at the .c and .cfg files associated with the example. If they are referencing "ti.sysbios.ipc.Semaphore" in the .cfg file and "ti/sysbios/ipc/Semaphore..h" in the .c files, you might be able to fix the problem by simply replacing 'ipc' with 'knl' in each occurrence.

    Otherwise, if the problem exists in a component that you can not upgrade, I'm not sure how to advise you.

    Alan

  • Ok.  I've narrowed the problem down to references to ipc.Semaphore in ti.rtfs.osal

    How do I go about fixing this?  I've found the offending xml files in the package directory which point to ipc.Semaphore instead of knl.Semaphore.And I can see the offending reference in the binary lib file (ti.rtfs.soal.bios6.a674)

    Thanks for your help.

  • Jason,

    I'm sorry to be so late in getting back to this thread. Have you been able to resolve this?

    I'm not very familiar with the rtfs package. I'll ask around today and find out if anything can be done to correct the problem.

    Alan

  • Jason,

    After a little research, I learned that the RTFS product, while still supported, is no longer being maintained and consequently is not compatible with the latest SYS/BIOS releases.

    The most recent version of SYS/BIOS that works with RTFS is 6.32.05.54, available here:

        http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios/index.html

    The file system currently being maintained and shipped with SYS/BIOS is FATFS (ti.sysbios.fatfs) described here:

        http://processors.wiki.ti.com/index.php/FatFS_for_SYS/BIOS

    If the 'fatfs' product meets your file system requirements, I urge you to switch to using it so that your project can benefit from using the latest SYS/BIOS releases.

    Alan

  • Thank you for your help.  I finally came to the same conclusion:  RTFSwill never work with bios 6 due to the reference to ipc.Semaphore.

    Thanks for the link to FATFS.  It looks very interesting.  For now, I was forced to downgrade to bios 5 and everything worked great.

    Thanks again.