This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

3137 bootloader bl_link.icf file Requested

Hello All,

I was wondering if anyone had an IAR compatible bl_link.icf file made from the bl_link.cmd file that is in the bootloader example code.   The

initialize by copy { readonly, readwrite };

doesn't quite yield something that works by itself.

Thanks,

johnw

  • I do not has the example for Hercules.  I am attaching the link command file and icf file for the blinky project for TM4C123. YOu may be able to creat icf file for Hercules by comparing those two files. The startup file will be different for the IAR tools.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/5466.blinky.icfhttps://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/3005.blinky_5F00_ccs.cmd

    Thanks and regards,

    Zhaohong

  • This is helpful in only showing a very simplistic example.

    What the OP requests is the equivalent IAR *.icf of the attached.  

    1033.bl_link_cmd.txt

  • I found the following from a bootloader project.  See if they serve your need.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/6518.bl_5F00_link.icf  https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/8510.bl_5F00_link_5F00_ccs.cmd

  • That is more helpful - but it isn't doing what is needed.

    One of the 'tests' is to see if the Fapi functions are relocated to RAM; and then the linker fix up must be done properly:
    Here is ONE example:

    Fapi_setActiveFlashBank
    0x0000241d Code Gb FlashStateMachine.SetActiveBank.obj [3]

    Note that is still located in ROM or FLASH.

    I would have thought by now that TI has done this with the IAR tools in addition to CCS.

    The object modules that need to be relocated are:

    F021_API_CortexR4_BE_v3D16.lib: [3]
    Async.WithAddress.obj 48
    FlashStateMachine.EnableMainSectors.obj 112
    FlashStateMachine.InitializeFlashBanks.obj 636
    FlashStateMachine.IssueFsmCommand.obj 60
    FlashStateMachine.ScaleFclk.obj 32 8 8
    FlashStateMachine.SetActiveBank.obj 380 1 1
    Program.obj 376
    Utilities.CalculateEcc.obj 20
    Utilities.CalculateFletcher.obj 54
    Utilities.GetNumberOfSectors.obj 16
    ---------------------------------------------------------------------
    Total: 1 734 9 9

    There may be a few others that need it - like bl_flash.o as well.

    Regards,
    John W.
  • The following two forum threads have the information about how to place code into designated memory sections using the IAR tool.

    e2e.ti.com/.../72692
    e2e.ti.com/.../784258

    Thanks and regards,

    Zhaohong