Tue 16 Dec 2014 07:14:21 PM UTC, original submission:
device: xmega16d4
programmer: jtagice mkII or avrisp mkII
host: CentOS 6.6 x86_64
avrdude version: 6.1 (locally built)
I am unable to verify the device signature and write the boot section of an xmega16d4 with an ELF file.
galens@lion:~$ avr-objdump -v
GNU objdump (GNU Binutils) 2.19
Copyright 2007 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) any later version.
This program has absolutely no warranty.
galens@lion:~$ avr-objdump -h boot.elf
boot.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00004d14 00000000 00000000 000000b4 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .fuse 00000006 00820000 00820000 00004dc8 2**0
CONTENTS, ALLOC, LOAD, DATA
2 .lock 00000001 00830000 00830000 00004dce 2**0
CONTENTS, ALLOC, LOAD, DATA
3 .signature 00000003 00840000 00840000 00004dcf 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
galens@lion:~$ sudo avrdude -p x16d4 -c jtag2pdi -P usb -U signature:v:boot.elf:e
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9442
avrdude: NOTE: Programmer supports page erase for Xmega devices.
Each page will be erased before programming it, but no chip erase is performed.
To disable page erases, specify the -D option; for a chip-erase, use the -e option.
avrdude: verifying signature memory against boot.elf:
avrdude: load data signature data from input file boot.elf:
avrdude: ERROR: Cannot handle "signature" memory region from ELF file
avrdude: read from file 'boot.elf' failed
avrdude done. Thank you.
galens@lion:~$ sudo avrdude -p x16d4 -c jtag2pdi -P usb -U boot:w:boot.elf:e
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9442
avrdude: NOTE: Programmer supports page erase for Xmega devices.
Each page will be erased before programming it, but no chip erase is performed.
To disable page erases, specify the -D option; for a chip-erase, use the -e option.
avrdude: reading input file "boot.elf"
avrdude: read from file 'boot.elf' failed
avrdude done. Thank you.
I can successfully write and verify fuse1, fuse2, fuse4, fuse5, and lock using this same file.
Note that this same file works when used to program the bootloader and fuses of an xmega16d4 using AVR Studio version 4.19 using the ELF Production File feature.
|