Hallo Stefan,
danke fuer den Hinweis!
Hab' ich gleich umgesetzt und funktioniert auch, wenn ich folgenden
Umweg gehe und die urspruengliche section DATA in Exram_data
umbenenne:
Memory:
exram (rw!x) : ORIGIN = 0x801100, LENGTH = 0xEF00
Sections:
.exram_data 0x801100 : /* AT (ADDR (.exram) + SIZEOF (.exram)) */
{
PROVIDE (__data_start = .) ;
*(.data)
*(.gnu.linkonce.d*)
. = ALIGN(2);
_edata = . ;
PROVIDE (__data_end = .) ;
} > exram
Leider war es mir jedoch nicht moeglich, die urspruengliche section
.data auf Startadresse 0x801100 zu legen. Selbst das Erzwingen im
Linker Script ueber die Eintraege:
Memory-Bereich:
data (rw!x) : ORIGIN = 0x801100, LENGTH = 0xEF00
Section-Bereich:
.data 0x801100 :
{ usw. } > exram
bring nichts und der Linker meldet mir, dass .data nicht im Bereich
exram liegt. Selbst wenn ich die Section .data im Linker Script
loesche, so ist wird sie nach wie vor auf die Startadresse 0x800100
abgebildet.
Kann mir jemand sagen, wer oder was hier seine Haende im Spiel hat?
Gruss,
Stefan