2012-12-18 09:20:06 +00:00
|
|
|
2012-12-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #37942: Latest SVN can't program in dragon_jtag mode
|
|
|
|
* jtagmkII.c (jtagmkII_initialize): For Xmega devices, and
|
|
|
|
firmware >= 7.x, don't trigger a RESET, in order to work around a
|
|
|
|
firmware bug that appears to be present in at least firmware 7.24
|
|
|
|
for the Dragon.
|
|
|
|
|
2012-12-04 13:59:37 +00:00
|
|
|
2012-12-04 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* config_gram.y: Implement the "ocdrev" keyword
|
|
|
|
* avrpart.c: (Dito)
|
|
|
|
* avrpart.h: (Dito)
|
|
|
|
* lexer.l: (Dito)
|
|
|
|
* avrdude.conf.in: Add "ocdrev" key/value pairs, based
|
|
|
|
on the AS6 XML file information.
|
|
|
|
* jtag3.c: Use the ocdrev in the parameter block.
|
|
|
|
|
2012-12-03 21:03:06 +00:00
|
|
|
2012-12-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c: Make jtag3_command() public
|
|
|
|
* jtag3.h: (Dito.)
|
|
|
|
* jtag3_private.h: Add two new commands
|
|
|
|
* stk500v2.c: Implement the "MonCon disable" hack that
|
|
|
|
allows temporarily falling back to ISP when trying to
|
|
|
|
talk to a part that has debugWIRE enabled
|
|
|
|
|
2012-12-03 20:50:11 +00:00
|
|
|
2012-12-03 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* pickit2.c: reordered #includes for non-usb configuration
|
|
|
|
|
2012-12-03 16:52:23 +00:00
|
|
|
2012-12-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c: Enable interactive adjustment of the various
|
|
|
|
clock frequencies (JTAG Xmega, JTAG megaAVR, PDI Xmega)
|
|
|
|
through the set_sck_period() callback.
|
|
|
|
|
2012-12-03 16:09:34 +00:00
|
|
|
2012-12-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c: Remove unused code that was left over from
|
|
|
|
cloning the jtagmkII.c implementation
|
|
|
|
|
2012-12-03 15:52:38 +00:00
|
|
|
2012-12-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* pgm_type.c: Add "jtagice3_isp" programmer hook
|
|
|
|
* avrdude.conf.in: Add "jtag3isp" programmer
|
|
|
|
* jtag3.c: jtag3_setparm() is now public
|
|
|
|
* jtag3.h: (Dito)
|
|
|
|
* stk500v2_private.h: Command 0x1D is CMD_SPI_MULTI only
|
|
|
|
for STK500v2, AVRISPmkII, and JTAGICEmkII; for JTAGICE3,
|
|
|
|
it's CMD_SET_SCK now; also add CMD_GET_SCK
|
|
|
|
* avrpart.c (avr_get_output_index): New function
|
|
|
|
* avrpart.h: (Dito)
|
|
|
|
* stk500v2.c: Implement the pasthrough programmer glue logic
|
|
|
|
for JTAGICE3 in ISP mode
|
|
|
|
* stk500v2.h: (Dito)
|
|
|
|
* avrdude.1: Document the JTAGICE3 support.
|
|
|
|
|
2012-11-30 12:51:07 +00:00
|
|
|
2012-11-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c (jtag3_read_byte, jtag3_write_byte): Remove the
|
|
|
|
m->offset from addr, JTAGICE3 doesn't need it anymore (similar
|
|
|
|
to JTAGICEmkII with 7+ firmware)
|
|
|
|
* jtag3.c (jtag3_read_byte): Allow for full-page reads of
|
|
|
|
EEPROM also for Xmega and debugWIRE, allow for signature
|
|
|
|
read in debugWIRE
|
|
|
|
|
2012-11-30 12:36:00 +00:00
|
|
|
2012-11-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3_private.h: Add two more error detail codes I stumbled
|
|
|
|
across during development
|
|
|
|
* jtag3.c: (Dito.)
|
|
|
|
* usb_libusb.c: Reduce timeouts from 100 to 10 s, still long
|
|
|
|
enough, but not getting cold feet when something goes wrong.
|
|
|
|
|
2012-11-29 21:43:54 +00:00
|
|
|
2012-11-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c: Handle events returned by the ICE
|
|
|
|
* usbdevs.h: Add defines that mark an event in return
|
|
|
|
from usb_recv_frame().
|
|
|
|
* usb_libusb.c: (Dito.)
|
|
|
|
|
2012-11-29 14:23:18 +00:00
|
|
|
2012-11-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* avrdude.conf.in: Remove "has_jtag" from Xmega A4 and D4
|
|
|
|
devices, as they only have PDI.
|
2012-11-29 16:20:48 +00:00
|
|
|
* jtag3.c (jtag3_page_erase): Actually implement this.
|
2012-11-29 14:23:18 +00:00
|
|
|
|
2012-11-29 14:12:41 +00:00
|
|
|
2012-11-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #37265: wrong page sizes for XMega64xx in avrdude.conf
|
|
|
|
* avrdude.conf.in: Fix page sizes for all Xmega devices,
|
|
|
|
by cross-checking against Atmel Studio's device XML files
|
|
|
|
|
2012-11-29 13:31:11 +00:00
|
|
|
2012-11-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtag3.c: Fill in the missing pieces for Xmega support (both,
|
|
|
|
PDI and JTAG).
|
|
|
|
* jtagmkII.c (jtagmkII_set_xmega_params): Use "fuse1" rather
|
|
|
|
than "fuse0" memory space to fill in the NVM offset from, as
|
|
|
|
there is no "fuse0" on some Xmega devices.
|
|
|
|
|
2012-11-29 09:32:27 +00:00
|
|
|
2012-11-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* avrdude.conf.in (ATmega256RFR2, ATmega128RFR2, ATmega64RFR2):
|
|
|
|
New devices
|
|
|
|
|
2012-11-28 22:39:01 +00:00
|
|
|
2012-11-28 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
First support for Atmel JTAGICE3. Guessed from USB sniffer
|
|
|
|
traces made by Knut Schwichtenberg, and by similarity to
|
|
|
|
JTAGICEmkII.
|
|
|
|
Still quite incomplete, just megaAVR/JTAG is done by now.
|
|
|
|
* jtag3.c: New file.
|
|
|
|
* jtag3.h: (Dito.)
|
|
|
|
* jtag3_private.h: (Dito.)
|
|
|
|
* pgm_type.c: Add new programmers
|
|
|
|
* avrdude.conf.in: (Dito.)
|
|
|
|
* usbdevs.h: Add new parameters
|
|
|
|
* Makefile.am: Add new files
|
|
|
|
* usb_libusb.c: Handle separate event endpoint, and larger
|
|
|
|
(USB 2.0) packet sizes
|
|
|
|
|
2012-11-26 16:24:56 +00:00
|
|
|
2012-11-26 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtagmkII.c: Change all the USB details (endpoint numbers,
|
|
|
|
max transfer size etc.) to a per-programmer adjustable value.
|
|
|
|
* serial.h: (Dito.)
|
|
|
|
* stk500v2.c: (Dito.)
|
|
|
|
* usbdevs.h: (Dito.)
|
|
|
|
* usb_libusb.c: (Dito.)
|
|
|
|
|
2012-11-20 14:03:50 +00:00
|
|
|
2012-11-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* buspirate.c: Replace outdated FSF postal address by a reference to
|
|
|
|
the GPL info on their website.
|
|
|
|
* jtagmkII.c: (Dito.)
|
|
|
|
* avrftdi.c: (Dito.)
|
|
|
|
* wiring.c: (Dito.)
|
|
|
|
* linux_ppdev.h: (Dito.)
|
|
|
|
* serbb.h: (Dito.)
|
|
|
|
* usbtiny.h: (Dito.)
|
|
|
|
* confwin.c: (Dito.)
|
|
|
|
* buspirate.h: (Dito.)
|
|
|
|
* avrftdi.h: (Dito.)
|
|
|
|
* wiring.h: (Dito.)
|
|
|
|
* jtagmkII.h: (Dito.)
|
|
|
|
* pickit2.c: (Dito.)
|
|
|
|
* config.c: (Dito.)
|
|
|
|
* term.c: (Dito.)
|
|
|
|
* confwin.h: (Dito.)
|
|
|
|
* avrdude.1: (Dito.)
|
|
|
|
* windows/Makefile.am: (Dito.)
|
|
|
|
* config.h: (Dito.)
|
|
|
|
* pickit2.h: (Dito.)
|
|
|
|
* term.h: (Dito.)
|
|
|
|
* tools/get-hv-params.xsl: (Dito.)
|
|
|
|
* tools/get-stk600-cards.xsl: (Dito.)
|
|
|
|
* tools/get-stk600-devices.xsl: (Dito.)
|
|
|
|
* tools/get-dw-params.xsl: (Dito.)
|
|
|
|
* butterfly.c: (Dito.)
|
|
|
|
* configure.ac: (Dito.)
|
|
|
|
* doc/Makefile.am: (Dito.)
|
|
|
|
* pgm_type.c: (Dito.)
|
|
|
|
* butterfly.h: (Dito.)
|
|
|
|
* jtagmkI.c: (Dito.)
|
|
|
|
* ft245r.c: (Dito.)
|
|
|
|
* COPYING: (Dito.)
|
|
|
|
* pgm_type.h: (Dito.)
|
|
|
|
* jtagmkI.h: (Dito.)
|
|
|
|
* pindefs.h: (Dito.)
|
|
|
|
* config_gram.y: (Dito.)
|
|
|
|
* arduino.c: (Dito.)
|
|
|
|
* arduino.h: (Dito.)
|
|
|
|
* ser_win32.c: (Dito.)
|
|
|
|
* serbb_win32.c: (Dito.)
|
|
|
|
* avr910.c: (Dito.)
|
|
|
|
* stk500.c: (Dito.)
|
|
|
|
* freebsd_ppi.h: (Dito.)
|
|
|
|
* avr910.h: (Dito.)
|
|
|
|
* solaris_ecpp.h: (Dito.)
|
|
|
|
* stk500.h: (Dito.)
|
|
|
|
* jtagmkII_private.h: (Dito.)
|
|
|
|
* avrdude.h: (Dito.)
|
|
|
|
* bitbang.c: (Dito.)
|
|
|
|
* bitbang.h: (Dito.)
|
|
|
|
* avrpart.c: (Dito.)
|
|
|
|
* safemode.c: (Dito.)
|
|
|
|
* stk500generic.c: (Dito.)
|
|
|
|
* serial.h: (Dito.)
|
|
|
|
* avrpart.h: (Dito.)
|
|
|
|
* jtagmkI_private.h: (Dito.)
|
|
|
|
* ppi.c: (Dito.)
|
|
|
|
* avr.c: (Dito.)
|
|
|
|
* safemode.h: (Dito.)
|
|
|
|
* stk500generic.h: (Dito.)
|
|
|
|
* ser_avrdoper.c: (Dito.)
|
|
|
|
* avr.h: (Dito.)
|
|
|
|
* ppi.h: (Dito.)
|
|
|
|
* usbasp.c: (Dito.)
|
|
|
|
* lists.c: (Dito.)
|
|
|
|
* stk500v2.c: (Dito.)
|
|
|
|
* my_ddk_hidsdi.h: (Dito.)
|
|
|
|
* tpi.h: (Dito.)
|
|
|
|
* usbasp.h: (Dito.)
|
|
|
|
* lists.h: (Dito.)
|
|
|
|
* stk500v2.h: (Dito.)
|
|
|
|
* ppiwin.c: (Dito.)
|
|
|
|
* fileio.c: (Dito.)
|
|
|
|
* ser_posix.c: (Dito.)
|
|
|
|
* fileio.h: (Dito.)
|
|
|
|
* serbb_posix.c: (Dito.)
|
|
|
|
* usbdevs.h: (Dito.)
|
|
|
|
* par.c: (Dito.)
|
|
|
|
* update.c: (Dito.)
|
|
|
|
* pgm.c: (Dito.)
|
|
|
|
* main.c: (Dito.)
|
|
|
|
* par.h: (Dito.)
|
|
|
|
* update.h: (Dito.)
|
|
|
|
* lexer.l: (Dito.)
|
|
|
|
* Makefile.am: (Dito.)
|
|
|
|
* pgm.h: (Dito.)
|
|
|
|
* usb_libusb.c: (Dito.)
|
|
|
|
* usbtiny.c: (Dito.)
|
|
|
|
|
2012-11-13 21:34:02 +00:00
|
|
|
2012-11-13 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #35186 inverting pins with "~" doesn't work for pin lists (i.e. vcc)
|
|
|
|
bug #37727 Add support for LM3S811 dev board as a programmer
|
|
|
|
* lexer.l,config_gram.y: accepting inverted pins at pin lists
|
|
|
|
syntax: ~num or ~(num,num,...)
|
|
|
|
* par.c: par_set_many_bits is now usable with inverted pins
|
|
|
|
* avrftdi.c: fixed wrong index in ftdi_pin_name
|
|
|
|
* avrdude.conf.in: added programmer lm3s811
|
|
|
|
|
2012-11-04 17:18:59 +00:00
|
|
|
2012-11-04 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* lexer.l,config_gram.y,config.[hc]: changed reading of numbers to integers
|
|
|
|
except of default_bitclock which is the only real number.
|
|
|
|
No signs are allowed as negative values do not make sense for current
|
|
|
|
config values.
|
|
|
|
* buspirate.c: include own header file buspirate.h
|
|
|
|
* doc/.cvsignore: add programmers.texi to ignore list
|
|
|
|
|
2012-09-06 15:33:09 +00:00
|
|
|
2012-09-06 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* doc/Makefile.am: add EXTRA_DIST, replace $(srcdir) by
|
|
|
|
$(builddir) for generated files, so "make distcheck"
|
|
|
|
works again
|
|
|
|
|
2012-09-05 20:52:40 +00:00
|
|
|
2012-09-05 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* doc/Makefile.am: add $(srcdir) to name of generated files, so BSD make
|
|
|
|
find the files ( GNU make sees no difference if the
|
|
|
|
file is called version.texi or ./version.texi )
|
|
|
|
|
2012-08-15 18:34:53 +00:00
|
|
|
2012-08-15 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7184 Support for PICKit2 programmer
|
|
|
|
* Makefile.am: add pickit2 files
|
|
|
|
* pickit2.[ch]: new programmer implementation
|
|
|
|
* pgm_type.c: add pickit to list
|
|
|
|
* avrdude.1: documentation for pickit2
|
|
|
|
* doc/avrdude.texi: documentation for pickit2
|
|
|
|
* avrdude.conf.in: add pickit2 programmer entry
|
|
|
|
|
2012-08-15 17:31:11 +00:00
|
|
|
2012-08-15 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #30559 Ft232 bit-bang support, see comment #30
|
|
|
|
* ft245r.c: added semaphore workaround for MacOS X,
|
|
|
|
added pthread_testcancel in reader thread
|
|
|
|
|
|
|
|
* configure.ac: added check for TYPE_232H in libftdi (not in libftdi < 0.20)
|
|
|
|
* avrftdi.c: do not use TYPE_232H if not declared
|
|
|
|
|
2012-08-13 19:03:41 +00:00
|
|
|
2012-08-13 Hannes Weisbach <hannes_weisbach@gmx.net>
|
|
|
|
|
|
|
|
* avrftdi.c: fixes pin_limit for different FTDI devices (there was a mixup
|
|
|
|
between 2232C and 2232H)
|
|
|
|
|
Adds bugfixes and maintenance for avrftdi
Bugfixes:
-remove ftdi_usb_purge_buffers(), since it does not flush, but clear buffers
-fix bad polling in avrftdi_flash_write() where it was possible to poll a 0xff
value.
Maintenance:
-use #defines from libftdi for MPSSE commands where applicable
-reformat E() and E_VOID() macros
-remove TYPE_* macros
-clean up private structure (remove pin_inversion, type and ftype)
-adds ftdi_pin_name() to turn a (FTDI) pin number to a human readable string
-adds avrftdi_print to encapsulate "if(verbose > c) fprintf()"-idiom
-nicer / better understandable (I hope) output
-removes pin_limit() and adds a member in the private data structure.
TYPE_* macros can be removed; decision is made from (struct ftdi_context).type
-add_pin(s)() functions reworked. parameters are validated first, if everything
is alright, pin_value is modified. pin_inversion mask is not needed; use
PIN_INVERTED instead
-change set_pin(s)(), so that it gets the pin value used by avrdude (and not a
bit mask). This way, PIN_INVERTED is usable and pin_inversion is not needed.
Plus, the interface is consistent with the add_pin() signature. Also move
parameter validation to the start of the function. I also commented out the
warning, that a pin is not defined, because it is annoying.
-clean up avrftdi_open(): first parameter validation, then USB lookup, interface
initialization then pin setup
-avrftdi_eeprom_read/write() and avrftdi_flash_read/write(): convert to new
calling scheme, where every paged_* function is called once for every page
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1098 81a1dc3b-b13d-400b-aceb-764788c761c2
2012-07-29 12:29:39 +00:00
|
|
|
2012-07-29 Hannes Weisbach <hannes_weisbach@gmx.net>
|
|
|
|
|
|
|
|
* avrftdi.c: bugfixes (synchronisation) and maintenance (paged programming,
|
|
|
|
nicer output, separation of parameter checking and actual code)
|
|
|
|
|
2012-07-25 14:56:39 +00:00
|
|
|
2012-07-25 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtagmkII.c (jtagmkII_memtype): return MTYPE_FLASH rather than
|
|
|
|
MTYPE_SPM for non-Xmega flash regions
|
|
|
|
|
2012-07-25 16:36:17 +00:00
|
|
|
2012-07-20 Hannes Weisbach <hannes_weisbach@gmx.net>
|
|
|
|
|
|
|
|
* avrpart.c, avrpart.h: adds avr_pin_name()
|
|
|
|
|
2012-07-18 12:42:47 +00:00
|
|
|
2012-07-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* configure.ac: check for libelf.h also in libelf/
|
|
|
|
* fileio.c: include <libelf/libelf.h> if configure found this
|
|
|
|
to be the case
|
|
|
|
|
2012-06-13 20:45:22 +00:00
|
|
|
2012-06-13 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* configure.ac: Check for presence of <pthread.h>
|
|
|
|
* ft245r.c: Depend on HAVE_PTHREAD_H
|
|
|
|
* Makefile.am: Add -lpthread if needed.
|
|
|
|
|
2012-06-07 14:07:17 +00:00
|
|
|
2012-06-07 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* usbtiny.c (usbtiny_paged_load, usbtiny_paged_write):
|
|
|
|
fix breakage introduced by the recent page handling reorg;
|
|
|
|
it used to cause an infinite loop
|
|
|
|
|
2012-05-04 15:47:26 +00:00
|
|
|
2012-05-04 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Xmega page erase implementation for XPROG (AVRISPmkII, STK600)
|
|
|
|
* stk500v2.c (stk600_xprog_page_erase): New function.
|
|
|
|
|
2012-05-04 10:02:30 +00:00
|
|
|
2012-05-04 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Xmega page erase implementation for JTAGICEmkII
|
|
|
|
* jtagmkII.c: Handle flash pages sizes > 256 bytes, implement
|
|
|
|
page_erase() method
|
|
|
|
* avrdude.conf.in: Change flash pagesize for all Xmega devices
|
|
|
|
to 512 bytes
|
|
|
|
* avr.c: Implement auto_erase, using page_erase if available
|
|
|
|
* avr.h: Remove unused parameters from avr_read(), replace
|
|
|
|
unused parameter in avr_write)() by auto_erase
|
|
|
|
* stk500v2.c: Handle flash page sizes > 256 bytes
|
|
|
|
* update.c (do_op): Handle new updateflags parameter
|
|
|
|
* main.c: Implement auto_erase as page_erase if possible
|
|
|
|
* update.h (enum updateflags): New enum
|
|
|
|
* pgm.h (struct programmer_t): Add page_erase method
|
|
|
|
|
2012-04-26 10:57:09 +00:00
|
|
|
2012-04-26 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtagmkII.c (jtagmkII_paged_load, jtagmkII_paged_write): fix bug
|
|
|
|
in memory type calculation for Xmega "boot" memory region.
|
|
|
|
|
2012-04-25 16:32:23 +00:00
|
|
|
2012-04-25 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* update.c (parse_op): do not assume default memtype here
|
|
|
|
* main.c: after locating the part information, determine default
|
|
|
|
memtype for all update options that didn't have a memtype
|
|
|
|
specified; this is "application" for Xmega parts, and "flash" for
|
|
|
|
everything else.
|
|
|
|
|
2012-04-24 15:41:02 +00:00
|
|
|
2012-04-24 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* fileio.c: Rework the way ELF file sections are considered: while
|
|
|
|
scanning the program header table, the offsets from a program
|
|
|
|
header entry must never be used directly when checking the bounds
|
|
|
|
of the current AVR memory region. Instead, they must always be
|
|
|
|
checked based on the corresponding section's entry. That way,
|
|
|
|
Xmega devices now properly take into account whether the segment
|
|
|
|
fits into any of the application/apptable/boot memory region.
|
|
|
|
|
2012-04-20 12:33:15 +00:00
|
|
|
2012-04-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #30756: When setting SUT to 64ms on XMEGA, avrdude doesn't
|
|
|
|
read device signature
|
|
|
|
* main.c: When reading the signature yields 0x000000 or 0xffffff,
|
|
|
|
retry (up to twice) after some progressive delay.
|
|
|
|
|
2012-04-20 11:03:51 +00:00
|
|
|
2012-04-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* avrdude.conf.in (ATxmega16D4, ATxmega32D4, ATxmega64D4,
|
|
|
|
ATxmega128D4): New devices. As Xmega D doesn't feature a fuse0
|
|
|
|
memory cell, move that one out from the generic .xmega part into
|
|
|
|
the individual Xmega A parts.
|
|
|
|
|
2012-04-19 13:59:09 +00:00
|
|
|
2012-04-19 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #29019: pagel/bs2 warning when uploading using stk500 to xmega
|
|
|
|
* stk500.c (stk500_initialize): Insert dummy values for PAGEL and
|
|
|
|
BS2 if they are not present in the config file, in order to be able
|
|
|
|
to proceed with the stk500_set_extended_parms() anyway.
|
|
|
|
|
2012-04-19 13:32:34 +00:00
|
|
|
2012-04-19 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* stk500v2_private.h (struct pdata): add boot_start
|
|
|
|
* stk500v2.c: For the "flash" pseudo-memory of Xmega devices,
|
|
|
|
distinguish addresses between "application" and "boot" area.
|
|
|
|
|
2012-04-18 16:00:21 +00:00
|
|
|
2012-04-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* fileio.c (elf2b): When checking the bounds of the current
|
|
|
|
program header segment, subtract `low' from ph[n].p_paddr in order
|
|
|
|
to correct the magic section offsets for the AVR's non-flash
|
|
|
|
memory regions.
|
|
|
|
|
2012-04-18 15:47:57 +00:00
|
|
|
2012-04-18 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* fileio.c (elf_get_scn): Rather than trying to just match whether
|
|
|
|
any given section maps straight to a program header segment, use a
|
|
|
|
more sophisticated decision that matches any section as long as it
|
|
|
|
fits into the segment. This is needed for situations where the
|
|
|
|
program header segment spans a larger area than the section data
|
|
|
|
provided. (This can e.g. happen in an ELF file that contains no
|
|
|
|
data at address 0, like a bootloader only.)
|
|
|
|
|
2012-04-13 15:25:41 +00:00
|
|
|
2012-04-13 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #28744: Can't load bootloader to xmega128a1 (part 2, fix for
|
|
|
|
firmware >= V7.x)
|
|
|
|
* jtagmkII.c: Add firmware-version dependent handling of Xmega parameters.
|
|
|
|
V7.x firmware expects the NVM offsets being specified through the Xmega
|
|
|
|
parameters command, but left out as part of the memory address itself.
|
|
|
|
* jtagmkII_private.h: Add CMND_SET_XMEGA_PARAMS, and struct xmega_device_desc.
|
|
|
|
* config_gram.y: Add mcu_base keyword.
|
|
|
|
* avrpart.h: (Dito.)
|
|
|
|
* lexer.l: (Dito.)
|
|
|
|
* avrdude.conf.in (.xmega): add mcu_base, and data memory segment.
|
|
|
|
|
2012-03-30 16:19:13 +00:00
|
|
|
2012-03-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #28744: Can't load bootloader to xmega128a1 (part 1, fix for
|
|
|
|
firmware < V7.x)
|
|
|
|
* jtagmkII.c: When going to write to the boot section of flash,
|
|
|
|
use MTYPE_BOOT_FLASH rather than MTYPE_FLASH
|
|
|
|
* jtagmkII_private.h: add MTYPE_BOOT_FLASH constant
|
|
|
|
|
2012-03-30 14:03:38 +00:00
|
|
|
2012-03-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtagmkII_private.h: Sort commands, response codes and events
|
|
|
|
into numerical order.
|
|
|
|
|
2012-03-29 14:32:18 +00:00
|
|
|
2012-03-29 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
bug #30451: Accessing some Xmega memory sections gives not
|
|
|
|
supported error
|
|
|
|
* stk500v2.c: Handle all Xmega memory sections (except
|
|
|
|
"prodsig" which is not documented in AVR079)
|
|
|
|
* fileio.c: Treat the "boot", "application", and "apptable"
|
|
|
|
regions (which are actually subregions of "flash") all as
|
|
|
|
being flash, i.e. suppress trailing 0xFF bytes when reading
|
|
|
|
them
|
|
|
|
* avr.c: (Dito.)
|
|
|
|
|
2012-03-20 14:21:33 +00:00
|
|
|
2012-03-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* jtagmkII.c (jtagmkII_close): The GO command before signing off
|
2012-03-20 14:42:20 +00:00
|
|
|
turned out to be not required for normal megaAVR devices, and to
|
|
|
|
cause the exact opposite (i.e. the target stopping) on Xmega
|
|
|
|
devices being programmed to JTAG. However, programming Xmega
|
|
|
|
devcies through PDI *does* need the GO command.
|
2012-03-20 14:21:33 +00:00
|
|
|
|
2012-03-20 14:13:18 +00:00
|
|
|
2012-03-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* configure.ac: Print a configuration summary at the end of the
|
|
|
|
configure run
|
|
|
|
|
2012-02-11 19:55:22 +00:00
|
|
|
2012-02-11 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7718: Merge global data of avrftdi in a private data structure
|
|
|
|
* avrftdi.[ch]: moved global data into private data structure, moved
|
|
|
|
private defines from header file into source file
|
|
|
|
|
2012-02-06 19:41:36 +00:00
|
|
|
2012-02-06 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7720 Bug in EEPROM write
|
|
|
|
* avrftdi.c: fixed wrong buffer address initialization in paged_write
|
|
|
|
* fileio.c: added #include <stdint.h>
|
|
|
|
|
2012-02-05 19:58:59 +00:00
|
|
|
2012-02-05 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #30559 Ft232 bit-bang support
|
|
|
|
* ft245r.c: cancel reader thread before exiting program
|
|
|
|
|
2012-02-04 16:43:37 +00:00
|
|
|
2012-02-04 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7717 avrftdi_flash_write is broken
|
|
|
|
* avrftdi.c: fixed wrong buffer address initialization in paged_write
|
|
|
|
bug #35296 Extraneous newlines in output.
|
|
|
|
* main.c: fixed output of newlines at 100% progress
|
|
|
|
|
2012-02-03 20:33:04 +00:00
|
|
|
2012-02-03 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7715 FT4232H support
|
|
|
|
* avrdude.conf.in: added programmer 4232h
|
|
|
|
|
2012-02-03 20:23:32 +00:00
|
|
|
2012-02-03 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7687: Autogenerating programmers and parts lists for docs
|
|
|
|
(generating the programmers lists)
|
|
|
|
* doc/avrdude.texi: Add include of generated table of programmers
|
|
|
|
* doc/Makefile.am: Add generating of table of programmers in programmers.texi
|
|
|
|
|
2012-02-03 20:07:54 +00:00
|
|
|
2012-02-03 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #34768 Proposition: Change the name of the AVR32 devices
|
|
|
|
* avrdude.conf.in: renamed ucr2 to uc3a0512
|
|
|
|
* avrpart.c: added cast to avoid compiler warning
|
|
|
|
|
2012-02-03 08:34:39 +00:00
|
|
|
2012-02-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* fileio.c (fileio_elf): Fix a copy'n-paste-o.
|
|
|
|
|
2012-02-03 07:21:39 +00:00
|
|
|
2012-02-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* par.c (par_desc): Move to end of file, outside the #if
|
|
|
|
HAVE_PARPORT
|
|
|
|
|
2012-02-02 16:52:45 +00:00
|
|
|
2012-02-02 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Implement ELF file reading (finally). Requires libelf(3) to be
|
|
|
|
present on the host system.
|
|
|
|
* configure.ac (HAVE_LIBELF): Add logic to detect presence of
|
|
|
|
libelf(3)
|
|
|
|
* Makefile.am (avrdude_LDADD): Add @LIBELF@
|
|
|
|
* fileio.h (FILEFMT): add FMT_ELF
|
|
|
|
* fileio.c: Implement ELF file reader.
|
|
|
|
* update.c (parse_op): add 'e' format specifier
|
|
|
|
* avrdude.1: Document the ELF file reading capability
|
|
|
|
* doc/avrdude.texi: (Dito.)
|
|
|
|
|
2012-02-01 22:26:58 +00:00
|
|
|
2012-02-01 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #30559 Ft232 bit-bang support
|
|
|
|
* ft245r.[ch]: new programmer type implementation
|
|
|
|
* configure.ac: add pthread as link library
|
|
|
|
* avrdude.conf.in: added some new programmers
|
|
|
|
* Makefile.am: added new source files to compile
|
|
|
|
* pindefs.h: change PIN_MASK, PIN_INVERSE to highest bit of unsigned int
|
|
|
|
* pgm.[ch]: added generic function to print pin assignments (taken from par.c)
|
|
|
|
* par.c: moved pin assigment print function to pgm.c
|
|
|
|
|
2012-02-01 09:12:55 +00:00
|
|
|
2012-02-01 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* lexer.l: Sort keyword tokens into alphabetic order.
|
|
|
|
|
2012-01-31 19:28:01 +00:00
|
|
|
2012-01-31 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* config_gram.y, lexer.l: removed unused ID/TKN_ID definitions
|
|
|
|
* config.[hc]: removed unused function id(), use value.type to select
|
|
|
|
values
|
|
|
|
|
2012-01-31 19:01:00 +00:00
|
|
|
2012-01-31 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7437 modifications to Bus Pirate module
|
|
|
|
patch #7686 Updating buspirate ascii mode to current firmware, use AUX
|
|
|
|
as clock generator, and setting of serial receive timeout
|
|
|
|
* buspirate.c: added paged_write, changed binary mode setup/detection,
|
|
|
|
added clock output on AUX pin
|
|
|
|
* avrdude.1: updated documentation
|
|
|
|
* doc/avrdude.texi: updated documentation
|
|
|
|
|
2012-01-31 17:03:43 +00:00
|
|
|
2012-01-31 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
Parser does not need to know all programmer types now, new programmers
|
|
|
|
will update only the table in pgm_type.c.
|
|
|
|
* config_gram.y, lexer.l: removed programmer type keywords,
|
|
|
|
use now locate_programmer_type() function
|
|
|
|
* pgm_type.[ch]: added new files for table of programmer types
|
|
|
|
* main.c: allow list of programmer types by -c ?type
|
|
|
|
* avrdude.conf.in: changed all type keywords to quoted strings
|
|
|
|
* doc/avrdude.texi: changed description of type definition, list
|
|
|
|
of valid types is now included from generated file
|
|
|
|
* doc/Makefile.am: generate list of programmer types for doc
|
|
|
|
* all programmers [hc]: add xxx_desc string for description of programmer
|
|
|
|
|
2012-01-30 20:47:26 +00:00
|
|
|
2012-01-30 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* configure.ac: fixed detection of yylex_destroy availability
|
2012-01-31 09:52:41 +00:00
|
|
|
by checking the version number of flex; bump required autoconf
|
|
|
|
version to 2.60 (for AC_PROG_SED)
|
2012-01-30 20:47:26 +00:00
|
|
|
|
2012-01-30 20:31:29 +00:00
|
|
|
2012-01-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* lexer.l: Replace the old, now-defunct #define YY_NO_UNPUT by
|
|
|
|
the new %option nounput. This gets rid of a compiler warning.
|
|
|
|
|
2012-01-30 17:08:48 +00:00
|
|
|
2012-01-30 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Add a connection_type attribute to each programmer, rather than
|
|
|
|
trying to hard-code the default port name in main.c.
|
|
|
|
* pgm.h: Add conntype to struct pgm.
|
|
|
|
* lexer.l: Extend grammar for connection_type.
|
|
|
|
* config_gram.y: (Dito.)
|
|
|
|
* config.h: Add DEFAULT_USB, for symmetry with default_parallel
|
|
|
|
and default_serial.
|
|
|
|
* main.c: Replace old default portname hack by avrdude.conf-based
|
|
|
|
knowledge.
|
|
|
|
* usbtiny.c: Drop an old hack that's no longer necessary.
|
|
|
|
* avrdude.conf.in: Add connection_type to each programmer
|
|
|
|
definition.
|
|
|
|
|
2012-01-27 21:14:34 +00:00
|
|
|
2012-01-27 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* avrdude.conf.in: used parent parts for some other parts, added
|
|
|
|
abstract .xmega part as parent for xmegas
|
|
|
|
* main.c: hide parts starting with '.' from parts list
|
|
|
|
|
2012-01-22 12:31:54 +00:00
|
|
|
2012-01-22 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7688: Implement parent programmers feature
|
|
|
|
* avrdude.conf.in: updated documentation comment and some programmers
|
|
|
|
have now parents
|
|
|
|
* config_gram.y: initpgm will now called at first use of programmer
|
|
|
|
in main. parser sets only the function pointer in the pgm structure.
|
|
|
|
Pin and pin lists definitions can now be empty to remove the parents
|
|
|
|
setting.
|
|
|
|
* doc/avrdude.texi: updated documentation
|
|
|
|
* main.c: added call to pgm->initpgm after locate_programmer
|
|
|
|
* pgm.[hc]: added field initpgm in structure, added function pgm_dup
|
|
|
|
|
2012-01-22 09:24:22 +00:00
|
|
|
2012-01-21 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #21797: AT90PWM316: New part description
|
|
|
|
* avrdude.conf.in: added pwm316 with parent pwm3b but 16KB flash
|
|
|
|
|
2012-01-20 09:39:56 +00:00
|
|
|
2012-01-20 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
* configure.ac: Check for presence of lusb_usb.h as an alternative
|
|
|
|
to usb.h; libusb-win32 switched to this name in version 1.2.5.0.
|
|
|
|
* avrftdi.c: Decide whether to include <usb.h>, or <lusb0_usb.h>.
|
|
|
|
* ser_avrdoper.c: (Dito.)
|
|
|
|
* usbasp.c: (Dito.)
|
|
|
|
* usb_libusb.c: (Dito.)
|
|
|
|
* usbtiny.c: (Dito.)
|
|
|
|
|
2012-01-19 20:06:52 +00:00
|
|
|
2012-01-19 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* avr.c: Unsigned variable was used for return code of paged_write/load
|
|
|
|
functions. So a negative return code led never to a fallback to byte
|
|
|
|
functions.
|
|
|
|
|
2012-01-17 20:56:37 +00:00
|
|
|
2012-01-17 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #34302: Feature request : device configuration with parent classes
|
|
|
|
* config_gram.y: if memory section is overwritten old entry is removed
|
|
|
|
|
|
|
|
(not in original patch)
|
|
|
|
* config_gram.y: if programmer or part is defined twice, a warning is
|
|
|
|
output and the first instance is removed
|
|
|
|
|
|
|
|
General cleanup and free functions, so valgrind does not report any lost
|
|
|
|
blocks at program end.
|
|
|
|
* avrpart.[hc]: added avr_free_(opcode|mem|part) functions
|
|
|
|
* pgm.[hc]: added pgm_free function
|
|
|
|
* update.[hc]: added free_update functions
|
|
|
|
* config.[hc]: added cleanup_config function, use yylex_destroy to reset
|
|
|
|
the lexer after usage. (So it can be reused.)
|
|
|
|
* main.c: add cleanup_main function which is called by atexit() (This
|
|
|
|
frees all lists so that at program exit only really lost memory is
|
|
|
|
reported by valgrind.)
|
|
|
|
* usbasp.c: added libusb_free_device_list() and libusb_exit() calls to
|
|
|
|
avoid lost memory
|
|
|
|
* buspirate.c: moved memory allocation from initpgm to setup and added
|
|
|
|
free in teardown
|
|
|
|
* configure.ac: add definition of HAVE_YYLEX_DESTROY if $LEX is flex.
|
|
|
|
* Makefile.am: added . in front of SUBDIRS to build avrdude before trying
|
|
|
|
to use it for creating the part list for the docs.
|
|
|
|
|
2012-01-17 17:37:23 +00:00
|
|
|
2012-01-17 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
* usbasp.c: USB vid/pid/vendor/product from config file are used, for
|
|
|
|
id "usbasp" nibobee and old usbasp are tried as they were currently
|
|
|
|
implemented within usbasp
|
|
|
|
* avrdude.conf.in: added usb params to "usbasp", added new entry "nibobee"
|
|
|
|
with params which were hardcoded in usbasp.c, and added an entry
|
|
|
|
"usbasb-clone" which only checks vid/pid.
|
|
|
|
|
2012-01-10 18:19:40 +00:00
|
|
|
2012-01-10 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
bug #35261 avrftdi uses wrong interface in avrftdi_paged_(write|load)
|
|
|
|
* avrftdi.c: Fixed interface and implementation of avrftdi_paged_(write|load)
|
|
|
|
patch #7672 adding support for O-Link (FTDI based JTAG) as programmer
|
|
|
|
* avrdude.conf.in: added o-link entry
|
|
|
|
|
2012-01-10 18:07:19 +00:00
|
|
|
2012-01-10 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7699 Read additional config files
|
|
|
|
* main.c: Added reading of additional config files
|
|
|
|
* avrdude.1: updated man page
|
|
|
|
* doc/avrdude.texi: updated documentation
|
|
|
|
|
2012-01-10 07:22:20 +00:00
|
|
|
2012-01-10 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Submitted by Bob Frazier:
|
|
|
|
bug #35208: avrdude 5.11 on freebsd 8.2-STABLE does not reset
|
|
|
|
Arduino Uno properly
|
|
|
|
* arduino.c (arduino_open): Bump the timeout between pulling
|
|
|
|
the DTR and RTS lines low and high.
|
|
|
|
|
2012-01-08 17:09:40 +00:00
|
|
|
2012-01-08 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
Fixed following findings reported by cppcheck
|
|
|
|
* avr910.c:625 (error) Possible null pointer dereference: cmd - otherwise it is redundant to check if cmd is null at line 624
|
|
|
|
* avr910.c:626 (error) Possible null pointer dereference: cmd - otherwise it is redundant to check if cmd is null at line 624
|
|
|
|
* avr910.c:168 (information) The scope of the variable 'devtype_1st' can be reduced
|
|
|
|
* avr910.c:169 (information) The scope of the variable 'dev_supported' can be reduced
|
|
|
|
* avrftdi.c:647 (error) Using sizeof for array given as function argument returns the size of pointer.
|
|
|
|
* stk500v2.c:3347 (error) Memory leak: b
|
|
|
|
* stk500v2.c:3452 (error) Memory leak: b
|
|
|
|
* usbasp.c:554 (error) Using sizeof for array given as function argument returns the size of pointer.
|
|
|
|
* usbasp.c:485 (information) The scope of the variable 'dly' can be reduced
|
|
|
|
|
2012-01-03 22:38:59 +00:00
|
|
|
2012-01-03 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
|
|
|
|
|
|
|
|
Reported by Jason Kotzin:
|
|
|
|
* usbasp.c (usbasp_spi_paged_load, usbasp_spi_paged_write):
|
|
|
|
Fix buffer address calculation.
|
|
|
|
|
2012-01-03 14:01:10 +00:00
|
|
|
2012-01-03 Rene Liebscher <R.Liebscher@gmx.de>
|
|
|
|
|
|
|
|
patch #7629 add support for atmega48p
|
|
|
|
* avrdude.conf.in: Added m48p with parent m48 + different signature
|
|
|
|
|
|
|
|
* avrdude.conf.in: made part parents (m88p = m88 + different signature,
|
|
|
|
m168p = m168 + different signature)
|
|
|
|
|
2012-01-02 15:20:18 +00:00
|
|
|
2012-01-02 Rene Liebscher <R.Liebscher@gmx.de>
|
2011-12-30 23:03:42 +00:00
|
|
|
|
2012-01-02 15:20:18 +00:00
|
|
|
bug #21663 AT90PWM efuse incorrect
|
|
|
|
bug #30438 efuse bits written as 0 on at90pwmxx parts
|
|
|
|
* avrdude.conf.in: (pwm2, pwm2b, pwm3, pwm3b) <efuse.write>: Write
|
|
|
|
eight bits
|
2011-12-29 16:51:44 +00:00
|
|
|
|
2012-01-02 15:20:18 +00:00
|
|
|
* avrdude.conf.in: made part parents (pwm3 = pwm2, pwm3b = pwm2b,
|
|
|
|
pwm2b = pwm2 + different signature)
|
|
|
|
|
|
|
|
* ChangeLog-2011: New file, rotate ChangeLog for new year.
|