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.

AWR2E44PEVM: Interrupts are not triggered after jumping from SBL.

Part Number: AWR2E44PEVM
Other Parts Discussed in Thread: AWR2E44

Tool/software:

Hello TI Community,

I am developing SBL for AWR2E44 and facing an issue after jumping from SBL to application. Interrupts on application are not triggered despite the program flow executes normally (if loaded from debugger, interrupts of application work). Are there any required steps before jumping from SBL to application? In my code I just simply disable all interrupts and set program counter to application start address. 

Thank you!

  • Hello Nguyen,

    Once you reenter your applications, are you reenabling the interrupts?

    Regards,
    Saswat Kumar

  • Hi Saswat Kumar, 

    I use a unique application and interrupt works if I load the application using debugger. When I flash it using SBL, the initialization sequence is performed in the same way (I mean interrupt is enabled). 

    Do you mean there are other steps to re-enable the interrupts when using SBL?

    Best regards, 

    Thanh Nguyen

  • Hello Nguyen,

    Help me understand this:
    1) Is the SBL from TI or custom?
    2) Is the application the demo application or custom?
    3) Where are you disabling the interrupts exactly?
    4) When you say application loads on debugger, what is the application which is functional that time
    5) How are you sure that interrupts are not being raised?
    6) Have you changed the bootup code which we provide?

    Regards,
    Saswat Kumar

  • Hi Saswat Kumar, 

    About point 1, 2, Both Application and SBL are custom.

    3) I disable interrupt before referencing to application start address.

    4) If I load the application using Trace32, Can and Gpt interrupt are triggered normally.

    5) After programming the application using SBL, Trace32 supports loading the application .elf file so that I can debug the application after jumping from SBL. I see all initialization is performed, but the OS tasks cannot run because the Gpt interrupt drives the OS counter is not triggered. 

    6) The application is provided by third party. I have no idea about their implementation.

    Thank you!

  • Hello Thanh Nguyen,

    As I can see in the code you are disabling the interrupt and then jumping to PC =0.
    When you do this, the interrupts are bound to be disabled as this is not the right way to do it.
    In your SBL code how you have disabled all interrupts, you need to reenable the interrupts in the beginning for it to function.

    Can you reach out to the global Bosch team for this? They already will have the right implementation and working code as we know their application is functional.

    Regards,
    Saswat Kumar

  • Hi Saswat Kumar, 

    Thank you for your support, let me investigate further.