The problem is that every time after bootloader finishes and before user program starts in some unknown for me way flash data in the sector 1 (address=0x1000) become corrupted.
It is known that rBoot uses two flash sector for its work - 0th sector store the bootloader and 1st stores bootloader settings.
Thus, while rBoot is running it check for settings and decide which ROM to start. If rBoot see that settings are corrupted it manages to fix them. However, as soon as user_init() function runs the data which rBoot have fixed is already corrupted (I compared it to check).
So, I guess there in the new RTOS SDK1.5 there is some write operation to the flash's 1st sector during boot time which is not documented. Am I right or I'm mistaken?
here is log:
Code: Select all
400002e9 401009ec 40100000 00000a04... //data read at 0x1000
Booting rom 0.
//here rBoot finished and start user program
OS SDK ver: 1.5.0-dev(caff253) compiled @ Oct 23 2017 17:42:20
00ff0000 302d2f27 33343231 00000000... //data read at 0x1000 after booting