I am attempting to place a section at the first address in ram. However, the linker always puts the section second in ram. Here is my scatter file:
LR_IROM1 0x00000000 0x00004000 { ; load region size_region ER_IROM1 0x00000000 0x00004000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) } RW_IRAM1 0x10000000 0x00001FE0 { ; RW data *(ram_start, +FIRST) fromram.o (+RO) .ANY (+RW +ZI) } }
ram_start ends up immediately after the code in fromram.o. Why is that, and how do I get ram_start to begin at 0x10000000?