I'm using a TIVA C series, CCS v6. What I'd like to do is have a CRC value at the end of FLASH that is not part of the CRC calculation, and set a symbol in the linker command file that points to the last address to be included in the calculation. It appears that the linker reorders the sections. This is my linker file
MEMORY { FLASH (RX) : origin = 0x00000000, length = 0x00100000 SRAM (RWX) : origin = 0x20000000, length = 0x00040000 } /* Section allocation in memory */ SECTIONS { .intvecs: > 0x00000000 .text : > FLASH .const : > FLASH .cinit : > FLASH .pinit : > FLASH .init_array : END(__flash_end) > FLASH .myCRCSect : > FLASH }
However, myCRCsect does not end up last, and __flash_end does not seem to contain the correct address. Is there a recommended way to do this?
And incidentally, is the correct way in c to reference __flash_end as a pointer? E.g. *__flash_end ? I haven't found examples of this, and I'm not sure I'm doing it right.
Thanks for any help.
Mike