This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

s310v2 mergehex bootloader.hex bootloader_settings.hex conflict

I read the following but was not able to use it to resolve my problem. devzone.nordicsemi.com/.../

bootloader.hex bootloader_settings.hex

The bootloader address were defined in bootloader_util_arm.c dfu_types.h bootloader_s310v2.jpg

Why does mergehex have a conflict?

C:\Users\timw\nordic\src\SofM\dfu\bootloader [v6master]> mergehex -m arm\_build\
bootloader.hex .\bootloader_settings.hex -o bootloadercrc.hex
Parsing arm\_build\bootloader.hex file.
Parsing .\bootloader_settings.hex file.
Merging files.
ERROR: Merge not possible due to conflict in files.
  • I think it is because you are trying to merge two files that overlap, address wise.

  • Petter is correct, I just ran into this same problem. Your bootloader.hex file 0-fills the upper flash page (0x0003FC00-0x0003FFFF) which creates the settings conflict. You need to somehow keep the compiler/linker from auto-initializing m_boot_settings[CODE_PAGE_SIZE] defined in bootloader_settings_arm.c.

    As a workaround you can simply remove:

    :020000040003F7
    :10FC000000000000000000000000000000000000F4
    :10FC100000000000000000000000000000000000E4
    ...
    :10FFE0000000000000000000000000000000000011
    :10FFF0000000000000000000000000000000000001
    

    from your bootloader.hex file (lines 820-884) and the merge will work.

Related