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

R/O Base address

Hello,
I am developing an application with a bootloader area between 0x0-0x2fff and the application starts at 0x3000. When I check the option "Use Memory Layout from Target Dialog" on "Options for Target/Linker" the linker creates a correct applicatin image starting at 0x3000. As I have a third RAM area I had to use a scatter file. With this option the linker does not consider the bootloader area and place the code starting at 0x0. I have also used the Misc Controls as "--ro-base=0x00003000" and R/O Base: as 0x3000 but it did not work.

Which setting is missing?
Thanks,

Andre

Parents
  • in the scatter file, you can specify the begin address of the load image in internal flash, like this:

    LR_IROM1 0x00004000 0x0000C000  {    ; load region size_region
      ER_IROM1 0x00004000 0x000C0000  {
       *.o (RESET, +First)
       *(InRoot$$Sections)
       .ANY (+RO)
      }
    

    your binary will be placed starting at 0x4000.

Reply
  • in the scatter file, you can specify the begin address of the load image in internal flash, like this:

    LR_IROM1 0x00004000 0x0000C000  {    ; load region size_region
      ER_IROM1 0x00004000 0x000C0000  {
       *.o (RESET, +First)
       *(InRoot$$Sections)
       .ANY (+RO)
      }
    

    your binary will be placed starting at 0x4000.

Children