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.

XDC Configuration - Set location of Entry function _c_int00

Other Parts Discussed in Thread: OMAP3530

I am trying to set the location of the _c_int00 entry point using CCS5 (Version: 5.1.1.00031) and SYS/BIOS (6.33.02.31) and XDC (3.23.01.43). This is for an OMAP3530 and using only the ARM CortexA. I found a post here that discussed this same issue:

http://e2e.ti.com/support/embedded/bios/f/355/t/73571.aspx

and I tried the suggestion of a supplemental linker command file with the following in it:

SECTIONS
{
   boot > 0x80000000
   {
      -l ti\targets\arm\rtsarm\lib\boot.aea8f<boot.oea8f>(.text)
   }
}

Unfortunately, that did not change the location of _c_int00. I tried the same approach with a non SYS/BIOS project and loading the boot.obj from the compiler library in the supplemental linker command file, but that did not work either.

I do get a "../Linker.cmd", line 5: warning #10068-D: no matching section" warning in all cases, but the linker completes, just doesn't move _c_int00 to the desired location.

Any ideas? Alternately, what I'm ultimately trying to do is get an image of my application (using hex470) in a form that I can write to NAND (on a Beagle Board for now) that X-Loader will load and jump to. So if there are any references on that, I could use them. Thanks.

  • Are you building for the same target used in that other thread (ti.targets.arm.elf.A8F)? There is a thumb2 version of that same target, and the name of the object file is different for that target. Do you have boot.oea8f in your map file generated after a successful build?

  • Turns out that no, I was not using the same target as in the other thread (i.e. ti.targets.arm.elf.A8F). I was using SYS/BIOS and the VFPv3 floating point option and looks like that makes the target ti.targets.arm.elf.A8Fnv (I guess SYS/BIOS only supports no fp h/w or neon and VFP together, so no ti.targets.arm.elf.A8Fv target).

    Anyway, your questions helped me sort it out. I changed the linker.cmd file to:

    SECTIONS
    {
       boot > 0x80000000
       {
          -l boot.aea8fnv<boot.oea8fnv>(.text)
       }
    }

    and all works correctly now. _c_int00 is at 0x80000000. Thanks for your help.