We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello !
I am working on bootloader application using RTX on mdk 5.
The bootloader load the user application using Ethernet communication and proceed to the jump after a reset.
When i use an simple blinky example and modify the BCA, the jump WORKS WELL !
BUT If I use an RTX application, the jump don't works.
I used the bootloader's vendor (without RTX) the jump to my RTX application works..
I suspect that RTX application erased some thing at initialization
Some one already seen that before
Board used : FRDM K64F
IDE : mdk 5
Thank you for your answer
I understand this is needed if i am in a thread. But the processor is reseted before jumping to the application, so i am not in a thread.
In the debug viewer the processor is running from the msp.
What should verify before the jump?
Are you using OS2? If so, I think the main loop is a special thread. I had the same issue. My older bootloader ran fine with the older OS but as soon as I transitioned to OS2 it stopped working. That is why the __set_CONTROL(0x00000000); was key to fixing the issue. I was stuck in the mud until Jim got me out. Try the change.
I use os2
I will try again with __set_CONTROL(0x00000000);
My question is why the jump works with a simple blind LED firmware but not with a rtx firmware,
I will keep you informed
I try __set_CONTROL(0x00000000); but this is the same issue
In attachment, the screen shot of the debug bootloader after jump.
also, i show:
I am lost..
You seem to be in Handler Mode. You need to be in Thread Mode.
MSP, Prividged, Thread Mode.
__set_control(0x00000000); est the privileged mode, i dis but drill in handler mode
Sorry. You are in a Hard Fault so obviously you are in Handler Mode. Maybe see what state you are in just before the jump to the application.