When the boot loader calls the sd_mbr_command it does not get updated.
The MBR writes the instruction to the special page in my case 0xf6000. It reads the instruction and actually performs a erase flash page and write page of the boot loader. However for some reason these commands have no effect on the actual flash itself. Neither gets it erased nor does it get flashed. However the 0xf6000 page is nicely cleaned afterwards.
It looks like that the flash page protection mechanism (the alternative one) is blocking the system from writing the pages. How can I solve this problem?
The boot loader address = 0xf7000
The bank address was = 0x48000
size was 14128
I am using soft device 7.0.0
The chip on my test board id of type: N52840Q1AAD01851AA.
The content of my 0xf6000 at the moment of the soft reset is
0xf6000: 0x6a 0x77 0x78 0x97 0xaa 0xff 0xff 0xff
0xf6008: 0x88 0xfb 0x03 0x20 0xe9 0xfe 0x03 0x20
0xf6010: 0x00 0x80 0x04 0x00 0x8b 0x03 0x00 0x00
0xf6018: 0x8c 0xf0 0x0f 0x00 0xf9 0xff 0xff 0xff
0xf6020: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6028: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6030: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6038: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6040: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6048: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6050: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6058: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6060: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6068: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6070: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6078: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6080: 0x00 0x00 0x00 0x00 0x00 0x80 0x04 0x00
0xf6088: 0xcc 0x0d 0x00 0x00 0x43 0xbb 0x56 0x2e
0xf6090: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6098: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60a0: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60a8: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60b0: 0x43 0xbb 0x56 0x2e 0xcc 0x0d 0x00 0x00
0xf60b8: 0x00 0x80 0x04 0x00 0x00 0x00 0x00 0x00
0xf60c0: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60c8: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60d0: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60d8: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60e0: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60e8: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60f0: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf60f8: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
0xf6100: 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
the rest is empty