I want porting a FreeRTOS in mips, and try it.
I using a FreeRTOS demo(MIPS32/GCC ver) but it was not work.
The source file downloaded in Sram, it work.
But when it downloaded in Flash memory, it dosn’t work…
I check the flow of source code using Codescape debugger, i find that core check the "__first_boot " data.
If __first_boot data is valid (0x00000001), it work normaly (in sram)
else, __first_boot data is clear(0x00000000), it dosn’t work, according that “_exception_save” -> “_exception_handle_verbose” (or _exception_handle_quiet) -> mips_excpt_handler .c ->
uhi_indirect (sdbbp instruction) flows.
If sram, download using RTOSDemo.elf file, the __first_boot data was set.
But this address is over the source code range, binary file for download to Flash memory is not contain this value.
What is a problem in this project?
If not set the __first_boot data, the FreeRTOS is work?
That case, why stop my FreeRTOS source?
Or, FreeRTOS needed the valid __first_boot data, why my project has 0 data in __first_boot address??