This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SDK6.1 device_firmware_update\bootloader example. - Compile Error using IAR

  • SoftDevice : S110 7.1

  • SDK 6.1

  • Using IAR 7.1

  • Example : device_firmware_update\bootloader

  • Board : PCA10001

/**********************/

Hi, I was trying this example.

I tried with Keil uVision 5. Thanks to the prebuild project file, it worked on Keil.

However, I mainly use IAR. While migrating the example, it had compile errors.

error

msg

The "bootloader_util_arm.c" had problem.

I tried to search about this "__asm" and the difference between the Keil project settings.

However, I couldn't find it. (Maybe it is due to lack of knowledge about assembler or linker.)

So, the questions are,

  1. what other settings are needed?

The current setting follows like these.

C setting

Preprocessors : ICCARM NRF51 BOARD_PCA10001 BLE_STACK_SUPPORT_REQD BOOTLOADER_BANKED

(I erased the "DEBUG_NRF_USER" on purpose.)

  1. Are there similar examples like this in the SDK 7.2?

What are the name of the examples?

-Regards, Mango922

Parents
  • The assembly syntax is only compatible with Keil. However, IAR (and GCC) support was added in SDK 8.1.0. I think the alternatives are to either backport the assembly routines to your existing bootloader or migrate to the latest version, I would suggest the latter if possible.

    That said, as you may know, SDK v.7 and later are configured for the new DK kits which targets the 32K ram variant (overview of chip variants). Thus, minimum change required to run on on PCA10001 (assuming 2nd rev IC) is to change the RAM allocation in the linker script.

Reply
  • The assembly syntax is only compatible with Keil. However, IAR (and GCC) support was added in SDK 8.1.0. I think the alternatives are to either backport the assembly routines to your existing bootloader or migrate to the latest version, I would suggest the latter if possible.

    That said, as you may know, SDK v.7 and later are configured for the new DK kits which targets the 32K ram variant (overview of chip variants). Thus, minimum change required to run on on PCA10001 (assuming 2nd rev IC) is to change the RAM allocation in the linker script.

Children
No Data
Related