diff -ruw ld/scripttempl/avr.sc ld/scripttempl/avr.sc --- ld/scripttempl/avr.sc 2009-10-09 18:42:35.000000000 +0530 +++ ld/scripttempl/avr.sc 2010-02-12 20:09:24.070812400 +0530 @@ -7,6 +7,9 @@ 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 } SECTIONS @@ -196,6 +199,24 @@ ${RELOCATING+ __eeprom_end = . ; } } ${RELOCATING+ > eeprom} + .fuse ${RELOCATING-0}: + { + KEEP(*(.fuse)) + KEEP(*(.lfuse)) + KEEP(*(.hfuse)) + KEEP(*(.efuse)) + } ${RELOCATING+ > fuse} + + .lock ${RELOCATING-0}: + { + KEEP(*(.lock*)) + } ${RELOCATING+ > lock} + + .signature ${RELOCATING-0}: + { + KEEP(*(.signature*)) + } ${RELOCATING+ > signature} + /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) }