AnsweredAssumed Answered

In MCUXpresso I cannot set up the BCA anymore

Question asked by László Monda on May 19, 2017
Latest reply on Apr 12, 2018 by DAVE REA

Hi there,

 

I've migrated my project from KDS to MCUXpersso, and I cannot setup the BCA anymore.

 

Previously, I've added the following code to the linker file:

MEMORY
{
m_bootloader_config(RX) : ORIGIN = 0x000003C0, LENGTH = 0x00000040
}

SECTIONS
{
.bootloader_config :
{
. = ALIGN(4);
KEEP(*(.BootloaderConfig)) /* Bootloader Configuration Area (BCA) */
. = ALIGN(4);
} > m_bootloader_config
}

 

Now, MCUXpresso has the "Manage linker script" feature that generates a different linker script. I disabled this feature, so that the already generated script doesn't get overwritten, and added the the above to the end of the generated linker script. This resulted in the following error message:

/usr/local/mcuxpressoide-10.0.0_344/ide/tools/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld: section .bootloader_config loaded at [000003c0,000003df] overlaps section .text loaded at [00000000,00001797]

 

I understand the nature of the issue that the memory sections overlap but I don't have deep knowledge regarding the memory sections of the MCU or linker scripts, so I could really use some help.

 

Ideally, I'd like to use a solution that keeps using the "manage linker script" feature and adds a new file for this purpose, but it's not a requirement.

 

You can see my linker script, and my whole MCUXpresso project.

 

Thanks in advance!

- Laci

Outcomes