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.

CSL_intcGlobalNmiEnable

Other Parts Discussed in Thread: SYSBIOS

When I add the CSL_intcGlobalNmiEnable call to my project, I get two errors

1.  "../mutex.c", line 47: warning #225-D: function declared implicitly

2.  error #10234-D: unresolved symbols remain

        symbol in file
        --------- ----------------
        CSL_intcGlobalNmiEnable ./mutex.obj

I know I should add something like the following to my cfg file to make it work:

        var cslSettings = xdc.useModule('ti.sysbios.csl.Settings');

        cslSettings.useCSLIntcLib = true;

However, I have not found what the secret code is.  Anybody have any ideas?

Thanks

  • David,

    Which version of SYS/BIOS are you using, and on which device?  

    I don’t think there has ever been a ti.sysbios.csl.Settings module shipped with SYS/BIOS.  I’m wondering where that came from.

    Also the “function declared implicitly” warning typically indicates that the proper header file was not included in the C file that is calling the function.  Have you included the appropriate header file?

    The linker error indicates that the function object was not found in any libraries the linker is searching.  Is the CSL library in your linker search path?

    Scott

  • ok.  So, I copied code from this forum and it does not work....sorry.

    What I am trying to do is add a handler to catch NMI interrupts and I cannot seem to figure out how to do this with the documentation.  Can you help me by pointing to some examples somewhere or some documentation that describes all the steps?

    Thanks.

  • Which version of SYS/BIOS and which device?

    I’m guessing this is for a C6000 DSP.  If so, there is some support for catching exceptions via the NMI [see the Exception module (open Bios_APIs.html in the “docs” subdirectory of the SYS/BIOS installation, and navigate to the description for the “ti.sysbios.family.c64p.Exception” module)].  But using NMI for routine “interrupts” is *not* supported - because an NMI can corrupt the program flow such that the program is not recoverable.  There is some description of the potential issues with NMIs in the CPU reference documentation, and depending upon the device, there may be some status bits that can be checked within the NMI service routine to see if the program is recoverable or not.

  • Yes, this is for a 6678.  SysBIOS is 6.34.4.22.  As far as using the NMI vs a regular interrupt, I am not sure I have a choice but I will ask the H/W guys about it.

    Thanks.