Just to let you know, binutils-2.18/ld/scripttempl/avr.sc reads
[ http://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2 ]

MEMORY
{
  text   (rx)   : ORIGIN = 0, LENGTH = $TEXT_LENGTH
  data   (rw!x) : ORIGIN = 0x800060, LENGTH = $DATA_LENGTH
  eeprom (rw!x) : ORIGIN = 0x810000, LENGTH = 64K
}

So the patch-newsections from Joerg Wunsch cannot be applied
[ 
http://www.freebsd.org/cgi/cvsweb.cgi/~checkout~/ports/devel/avr-binutils/files/patch-newsections
 ]

 MEMORY
 {
-  text   (rx)   : ORIGIN = 0, LENGTH = $TEXT_LENGTH
-  data   (rw!x) : ORIGIN = $DATA_ORIGIN, LENGTH = $DATA_LENGTH
-  eeprom (rw!x) : ORIGIN = 0x810000, LENGTH = 64K
+  text      (rx)   : ORIGIN = 0, LENGTH = $TEXT_LENGTH
+  data      (rw!x) : ORIGIN = $DATA_ORIGIN, LENGTH = $DATA_LENGTH
+  eeprom    (rw!x) : ORIGIN = 0x810000, LENGTH = 64K
+  fuse      (rw!x) : ORIGIN = 0x820000, LENGTH = 1K
+  lock      (rw!x) : ORIGIN = 0x830000, LENGTH = 1K
+  signature (rw!x) : ORIGIN = 0x840000, LENGTH = 1K
 }

Now it seems to me that the data line in avr.sc is incorrect
for there are a number of devices that have the whole first
page devoted to i/o. So it would be best i guess to change
the patch to match the line
  data   (rw!x) : ORIGIN = 0x800060, LENGTH = $DATA_LENGTH


Ruud.



_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to