AnsweredAssumed Answered

MPC5554, Placing variables in external RAM

Question asked by Olivier Pasutto on Dec 15, 2010
Latest reply on May 10, 2012 by CrasyCat


During my experiments with the MPC5554EVB development board, I successfully initialized the external RAM (starting a 0x20000000).


But now I would like to force the linker to place some  variables in this external memory and to keep the other ones in the SRAM.


I tried to create new sections in my lcf file:



MEMORY{    pseudo_rom:         org = 0x40000000,   len = 0x00009000    init:               org = 0x40009000,   len = 0x00001000    exception_handlers: org = 0x4000A000,   len = 0x00001000    internal_ram:       org = 0x4000B000,   len = 0x00002000    heap  :             org = 0x4000D000,   len = 0x00001000    stack :             org = 0x4000E000,   len = 0x00001000     external_ram:       org = 0x20000000,   len = 0x00080000}SECTIONS{...GROUP : {       .ext_ram_text (TEXT) : {}       .ext_ram_data (DATA) : {}    } > external_ram}


and in my code I declare the variable that I want to place in external RAM like this:




#pragma section data_type ".ext_ram_data" __declspec(section ".ext_ram_data") uint8_t buffer[512];


 But I'm getting compilation errors...



Error   : sections used for data must have an uninitialized data sectionError   : unknown section name '.ext_ram_data'


Thanks in advance for your help,