Other Parts Discussed in Thread: C2000WARE
Tool/software: TI C/C++ Compiler
Can anyone help me to understand this linker file section?
progRAM : origin = 0x008000, length = 0x001400 /* on-chip RAM (L0-L2)*/
OTP : origin = 0x3D7800, length = 0x000400 /* on-chip OTP */
FLASHH : origin = 0x3E8000, length = 0x008000 /* on-chip FLASH */
/* Allocate program areas: */
/* Initalized sections go in Flash */
/* For SDFlash to program these, they must be allocated to page 0 */
.econst : > FLASHH PAGE = 0
.switch : > FLASHH PAGE = 0
/* Allocate IQ math areas: */
IQmath : > FLASHH PAGE = 0 /* Math Code */
.cinit : > FLASHH, PAGE = 0
.pinit : > FLASHH, PAGE = 0
//.text : > FLASHH, PAGE = 0
/*For CRC tables */
.TI.crctab : > APPCRC, PAGE=0
.text : > FLASHH, PAGE=0, crc_table(_linkerCRC,algorithm=CRC32_PRIME )
codestart : > BEGIN PAGE = 0
ramfuncs : LOAD = FLASHH,
RUN = progRAM,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
PAGE = 0
Here my entire code is in FLASHH. I defined .cinit., .init as part of the FLASHH.
I have some functions which need to be run from RAM. So I defined those as ramfuncs.
Is there anything wrong with this?
"ramfuncs : LOAD = FLASHH" what does this mean? Does it place entire FLASHH on ram?