Tool/software:
Hello, i have enabled crc32 check in bootloader and after that i have noticed my problems.
I have added the 16 byte header and added the marker word,computed the crc32 value binpack executable.
The first problem i noticed was this
pui32App = (uint32_t *)APP_START_ADDRESS; if((pui32App[0] == 0xffffffff) || ((pui32App[0] & 0xfff00000) != 0x20000000) || (pui32App[1] == 0xffffffff) || ((pui32App[1] & 0xfff00001) != 0x00000001)) { return(1); }
because the header was on top of the binary this code will always return 1 (marker words : 0xFF01FF02 and 0xFF03FF04 ).
after i changed this code
pui32App = (uint32_t *)APP_START_ADDRESS; if((pui32App[4] == 0xffffffff) || ((pui32App[4] & 0xfff00000) != 0x20000000) || (pui32App[5] == 0xffffffff) || ((pui32App[5] & 0xfff00001) != 0x00000001)) { return(1); }
it has passed crc32 check but my code did not start.
Are there more modifications i need to do ?