Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

S132 V6.0.0 memory regions and linker files in SDK 15 - wasted flash space?

Hello,

I just finished migrating my project from SDK13.1 to 15.0. It caught my attention that when I flash the Softdevice, it uses memory from pages 0x00000 - 0x24000. I also noticed that the linker files in the examples for S132 set the FLASH origin at 0x26000 and not 0x25000. I thought I could use this extra 4 kB but if I change the linker file to 0x25000, the program doesn't run.

Why is this? Thanks for your help!

Parents
  • It doesn't matter how many pages are actually used by SoftDevice. What matter is where the SoftDevice will forward interrupts to. For the new SDK and SoftDevice, it will forward interrupts to the address at 0x26000. So you have to put the interrupt vector of your appellation there. And in the linker description file, the vector section is allocated at the beginning of your application.

    If you really want to use the 4K area (0x25000 ~ 0x25FFF) then you need to modify the linker description file by assigning the ".vectors" section at the fixed address 0x26000. This will definitely cause trouble when future SoftDevice uses different flash size since you have to maintain them by yourself. 

  • Then why did Nordic decide to forward to 0x26000 instead of 0x25000? You almost always need to update the linker file on each SDK update anyway, so I don't really see the reason why those 4 KB are skipped.

  • Hi,

    To avoid forcing all our users to port their applications to a new SoftDevice API we will normally plan so that a family of SoftDevices can have the same major number and be forwards compatible. In SoftDevice API version 6 there is extra space so that upcoming features can fit, making a new SoftDevice with extended feature set API compatible with the existing SoftDevice. There are also some changes made to the API between version 5 and 6 which are there to accommodate planned features.

    Best regards,
    Rune Holmgren

Reply Children
No Data
Related