[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-gcc-list] Can't Use Avrobj with EEPROM (can't find source file,

From: Chris Down
Subject: Re: [avr-gcc-list] Can't Use Avrobj with EEPROM (can't find source file, nordic file error)
Date: Wed Jan 31 09:34:05 2001

Peter Fleury wrote-
>have you an examle program with eeprom section.
>I could successfully debug it with AVR-Studio, although I still use
>AVR Studio 3.0.
>The EE-section support has changed or is broken a little.
>A had to add
>  --change-section-lma
>to *.elf *.eep target.
>Without this flag I got an offset in the EE section.

I have  been using Volker Oth's distribution and I have recently re-built 
(using Cygwin) binutils, gcc ( both from the Cygnus CVS tree) and 
avr-libc-20001125 with the Atmel AVR Studio patch. I have also found it 
necessary to add the --change-section-lma to the .eep target. However I 
have also found it necessary to add

 -R .eeprom

to the .rom target.

Without this I get the eeprom code at the end of the rom image.

I am not an expert on binutils but it looks like the offset can be 
expalined by looking at the ld scrips template , elf32avr.sc, as follows:-
  text      ( rx)    : ORIGIN = 0,    LENGTH = $TEXT_LENGTH
  data      (rw!x) : ORIGIN = 0x800060, LENGTH = $DATA_LENGTH
  eeprom (rw!x)  : ORIGIN = 0x810000, LENGTH = $EEPROM_LENGTH
In the latest version the eeprom origin is 0x810000 wheres in Volkers 
distribution it was 0, Similarly the origin for data was 0x60 in Volkers 
distribution as opposed to 0x800060 in the latest.

I have left the ld scripts intact and used the qualifiers in avr-objcopy, 
but can anyone explain why the origins have been set as above?


Chris Down

reply via email to

[Prev in Thread] Current Thread [Next in Thread]