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.

AM2432: MCU-PLUS-SDK-AM243X Sciclient_rmIrqSet() fails after reloading application in CCS

Part Number: AM2432
Other Parts Discussed in Thread: SYSCONFIG, , MCU-PLUS-SDK-AM243X, AM2434

Hello,

I have an application that configures a GPIO pin as an interrupt source where the GPIO is part of the MCU domain and the ISR runs in the M4 core. The SYSFW has this interrupt router mux configured and the 

Sciclient_boardCfgRm() function call in the SBL is successful when the device is power cycled.
In the application, the SysConfig generated code configures the GPIO pin for external interrupt and makes a call to the Sciclient_rmIrqSet(). This call is successful, however if the application is reloaded and the CPU is reset in CCS, a subsequent call to that function will fail with error -1, and it fails from the underlying Sciclient_rmIrqFindRoute() function. It will only be successful on the first invocation after the SoC is powered cycled - I am assuming because the SBL/SYSFW must run first?
A few questions:
1. Is there a way to successfully configure the GPIO interrupt after reloading the application from CCS?
2. Can I run the SBL/SYSFW from CCS?
3. Is there a way to see if the IRQ is already set prior to calling Sciclient_rmIrqSet()?

Tool Versions:

SoC: AM2432

CCS: 12.30

MCU-PLUS-SDK-AM243X: 9.0.0.35

SysConfig: 1.17.0

  • Hi,

    I have the same issue.

    Tool Versions:

    SoC: AM2434

    CCS: 12.50

    MCU-PLUS-SDK-AM243X: 9.1.0.41

    SysConfig: 1.18.0

  • Hello Joshua and Matthias,

    Sorry to hear that you're facing such issues.

    You have to power cycle the board for the Gpio interrupt to work and reloading won't help here.

    You can follow either of the path:

    Flash SBL_NULL in UART boot mode (this loads the SYSFW) --> switch to OSPI and power cycle --> Load the .out  to the target core from CCS

    OR

    Load the dmsc script in DEV Boot mode to load the SYSFW --> Load the .out  to the target core from CCS

    (The steps have been mentioned here: "SOC Initialization Using CCS Scripting")