pkg/nordic_softdevice_ble: reset memory in the .hex file#11620
pkg/nordic_softdevice_ble: reset memory in the .hex file#11620aabadie merged 1 commit intoRIOT-OS:masterfrom
Conversation
5ef3001 to
895a012
Compare
|
Rebased on #11995 |
895a012 to
9dfd59b
Compare
softdevice needs the memory at 0x2000 to be initialized to 0xffffffff according to RIOT-OS#5893 and testing. However, the addresses [0x8bc, 0x3000[ are not set in softdevice.hex. So use a modified hex file with all the memory set to 0xff as it is the rom reset value anyway. This change updates the `.hex` file instead on relying on erasing the memory.
9dfd59b to
f3e7200
Compare
|
Rebased again now that #11995 is merged. |
|
@aabadie I updated the documentation now that |
|
@cladmi, I tried this PR and I can't reproduce the initial problem by following the testing procedure: the flashed firmware always works, even if not gap filling the softdevice. This is weird. Are you sure this is only required when flashing using OpenOCD ? |
|
No it is not required only for You can find the reference why the In long term fixes, I would even try to generate the Elf file with the |
|
Thank you for testing again. I found the reason. As I did not added These automated steps reproduce the issue for me: And I get no interaction. Then I reset my repository and clean: |
|
This is funny, because I strictly followed your commands above and I can't reproduce the issue... It always works for me. |
|
I have a newer one indeed: And I use this |
|
I also just retried by setting |
|
I installed a newer version of JLink and could reproduce the issue, yeah! |
|
Thank you for the review! :) I will rebase the other PRs. |
Contribution description
softdevice needs the memory at 0x2000 to be initialized to 0xffffffff
according to #5893 and testing. However, the addresses [0x8bc, 0x3000[ are not
set in softdevice.hex.
So use a modified hex file with all the memory set to 0xff as it is the rom
reset value anyway.
This change updates the
.hexfile instead on relying on erasing thememory.
Testing procedure
Testing procedure adapted from #11470
Hack not needed anymore
Without only removing the
eraseit would fail.On my board it worked without the fix… but was not working alone in #11470
Issues/PRs references
Alternative fix done in #5893
Was required to not duplicate the
eraseinopenocdas here the issue is the flashed file, not that erasing memory should be done.Split out of #11470