mirror of
https://github.com/mariusgreuel/avrdude.git
synced 2025-12-19 03:35:28 +00:00
First implementation of ATxmega support. By now, only the
PDI mode of the STK600 is supported. Single-byte EEPROM (and flash) updates do not work yet. * avr.c: "boot" memory is a candidate memory region for paged operations, besides "flash" and "eeprom". * avrdude.conf.in: add ATxmega128A1 and ATxmega128A1revD * avrpart.h: add the AVRPART_HAS_PDI flag (used to distinguish ATxmega parts from classic AVRs), the nvm_base part field, and the offset field for a memory region. * config_gram.y: add "has_pdi", "nvm_base", and "offset" * lexer.l: (Ditto.) * main.c: disable auto_erase for ATxmega parts * stk500v2.c: implement the XPROG functionality, and divert to this for ATxmega parts * avrdude.1: Document the changes. git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk@777 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
@@ -12512,3 +12512,151 @@ part
|
||||
"0 0 0 0 0 0 0 0 o o o o o o o o";
|
||||
;
|
||||
;
|
||||
|
||||
#------------------------------------------------------------
|
||||
# ATxmega128A1 rev. D (engineering samples)
|
||||
#------------------------------------------------------------
|
||||
|
||||
part
|
||||
id = "x128a1d";
|
||||
desc = "ATXMEGA128A1REVD";
|
||||
signature = 0x1E 0x97 0x41;
|
||||
has_jtag = yes;
|
||||
has_pdi = yes;
|
||||
nvm_base = 0x01C0;
|
||||
|
||||
memory "eeprom"
|
||||
page_size = 32;
|
||||
size = 2048;
|
||||
;
|
||||
|
||||
memory "flash"
|
||||
size = 0x20000;
|
||||
page_size = 512;
|
||||
;
|
||||
|
||||
memory "boot"
|
||||
size = 0x2000;
|
||||
page_size = 512;
|
||||
;
|
||||
|
||||
# signature is actually in IO address space
|
||||
memory "signature"
|
||||
size = 3;
|
||||
offset = 0x90;
|
||||
;
|
||||
|
||||
memory "fuse0"
|
||||
size = 1;
|
||||
offset = 0x20;
|
||||
;
|
||||
|
||||
memory "fuse1"
|
||||
size = 1;
|
||||
offset = 0x21;
|
||||
;
|
||||
|
||||
memory "fuse2"
|
||||
size = 1;
|
||||
offset = 0x22;
|
||||
;
|
||||
|
||||
memory "fuse4"
|
||||
size = 1;
|
||||
offset = 0x24;
|
||||
;
|
||||
|
||||
memory "fuse5"
|
||||
size = 1;
|
||||
offset = 0x25;
|
||||
;
|
||||
|
||||
memory "lockbits"
|
||||
size = 1;
|
||||
offset = 0x27;
|
||||
;
|
||||
|
||||
memory "calibration"
|
||||
size = 512;
|
||||
offset = 0x200;
|
||||
;
|
||||
|
||||
memory "usersig"
|
||||
size = 512;
|
||||
;
|
||||
|
||||
;
|
||||
|
||||
#------------------------------------------------------------
|
||||
# ATxmega128A1
|
||||
#------------------------------------------------------------
|
||||
|
||||
part
|
||||
id = "x128a1";
|
||||
desc = "ATXMEGA128A1";
|
||||
signature = 0x1E 0x97 0x4C;
|
||||
has_jtag = yes;
|
||||
has_pdi = yes;
|
||||
nvm_base = 0x01C0;
|
||||
|
||||
memory "eeprom"
|
||||
page_size = 32;
|
||||
size = 2048;
|
||||
;
|
||||
|
||||
memory "flash"
|
||||
size = 0x20000;
|
||||
page_size = 512;
|
||||
;
|
||||
|
||||
memory "boot"
|
||||
size = 0x2000;
|
||||
page_size = 512;
|
||||
;
|
||||
|
||||
# signature is actually in IO address space
|
||||
memory "signature"
|
||||
size = 3;
|
||||
offset = 0x90;
|
||||
;
|
||||
|
||||
memory "fuse0"
|
||||
size = 1;
|
||||
offset = 0x20;
|
||||
;
|
||||
|
||||
memory "fuse1"
|
||||
size = 1;
|
||||
offset = 0x21;
|
||||
;
|
||||
|
||||
memory "fuse2"
|
||||
size = 1;
|
||||
offset = 0x22;
|
||||
;
|
||||
|
||||
memory "fuse4"
|
||||
size = 1;
|
||||
offset = 0x24;
|
||||
;
|
||||
|
||||
memory "fuse5"
|
||||
size = 1;
|
||||
offset = 0x25;
|
||||
;
|
||||
|
||||
memory "lockbits"
|
||||
size = 1;
|
||||
offset = 0x27;
|
||||
;
|
||||
|
||||
memory "calibration"
|
||||
size = 512;
|
||||
;
|
||||
|
||||
memory "usersig"
|
||||
size = 512;
|
||||
offset = 0x200;
|
||||
;
|
||||
|
||||
;
|
||||
|
||||
Reference in New Issue
Block a user