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.

Symbols generated in SYS/BIOS gui config are not available to the C modules

I've worked with Martin over in the CCS group to see what was the cause of a CCS freeze I was having, but my main issue now is that I have mailboxes and semaphores defined through the GUI configurator, but during compile time, my C code  cannot find the mailbox or semaphore symbols. I'm stymied, as I've followed the tutorial resources on configuration that are available, and nothing appeared incorrect to either myself or Martin. My management is about ready to have my head on a pike as it is taking painfully long to get this resolved. There is probably something very simple that is wrong, but I don't see it and the dearth of troubleshooting and tutorial resources is making this worse. 4721.build log.zip

Incidentally, you can't attach build log files directly as their lack of extension prohibits their upload to TI's system. I had to zip the file because of this

  • David,

    Are you including the file <xdc/cfg/global.h> in the C file where you are trying to reference the objects created in the GUI?  

    There is a brief description of accessing the global namespace in the SYS/BIOS user’s guide:

     
    If you are already including this header, can you please post the configuration file for your application (with the .cfg extension), and also a snippet of your C code that is trying to reference the globals?

    Thanks,
    Scott

  • That indeed was my problem. I was using a TI example that did dynamic allocation, and I did not include global.h for the statically-defined resources. Now, I need to figure out how the newer CCS and SYS/BIOS defines symbols for standard processor registers. It must've been a built-in for DSP/BIOS and/or the earlier CCS compiler, as all I needed to do was use the include file DSP2833x_Device.h, and this parsed the registers into symbols, declaring the overall register as an external defined elsewhere, either in a built-in file, library, or linker file. All I know is that the code fails to find the base register on build, and I've been on the hunt for a day or two... If you've got any suggestions on that, great, otherwise I'll open another thread. Thanks.

  • David,

    OK, good.

    Sorry, I’m not familiar with the register mappings.  It seems best to open a separate thread.

    Scott