BLE Bootloadable example won't build - `.text' is not within region `rom'

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Panometric
Level 5
Level 5
100 sign-ins 100 replies posted 10 solutions authored

I'm just trying to port the examples to PsocCreator 4.,2 and CYBLE-224110-00.

building bootloader is fine, but bootloadable will not link.

ERROR: address 0x241a0 of ...\ARM_GCC_541\Debug\BLE_OTA_FixedStack_Bootloadable01.elf section `.text' is not within region `rom'

ERROR: ...\ARM_GCC_541\Debug\BLE_OTA_FixedStack_Bootloadable01.elf section `.eh_frame' will not fit in region `rom'

ERROR: address 0x241a0 of ..\ARM_GCC_541\Debug\BLE_OTA_FixedStack_Bootloadable01.elf section `.text' is not within region `rom'

ERROR: address 0x241a0 of ...\ARM_GCC_541\Debug\BLE_OTA_FixedStack_Bootloadable01.elf section `.text' is not within region `rom'

ERROR: section .cyloadablemeta loaded at [0001ffc0,0001ffff] overlaps section .cybootloader loaded at [00000000,0001ffff]

ERROR: region `rom' overflowed by 0 bytes

collect2.exe: error: ld returned 1 exit status

The command 'arm-none-eabi-gcc.exe' failed with exit code '1'.

Bootloader size is  (38.4%), so I don't think I've overflowed.

I can't seem to find a memory map for the device, but don't see why the linker would make this mistake.

Workspace is attached.  Thanks.

0 Likes
1 Solution
GeonaP_26
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 50 solutions authored

Hello Mike,

By default, the linker scripts include settings for a 128-KB device. Please configure the custom linker script of fixed stack OTA bootloadable project to 256 kB device. The steps are elaborated in section: A.5 Configuring Fixed Stack OTA Projects for Other Cypress BLE Devices.

Please let me know if it helps.

Best Regards,

Geona Mary

View solution in original post

0 Likes
2 Replies
GeonaP_26
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 50 solutions authored

Hello Mike,

By default, the linker scripts include settings for a 128-KB device. Please configure the custom linker script of fixed stack OTA bootloadable project to 256 kB device. The steps are elaborated in section: A.5 Configuring Fixed Stack OTA Projects for Other Cypress BLE Devices.

Please let me know if it helps.

Best Regards,

Geona Mary

0 Likes
Panometric
Level 5
Level 5
100 sign-ins 100 replies posted 10 solutions authored

Thanks I missed that nuance. Shouldn't PSoC Creator have known or let me know that I was compiling both projects with a scripts for the wrong sized device? It's also odd that error message suggested too little memory, not too much.  So I would not have even guessed this was the problem.

0 Likes