Commit Graph

93 Commits

Author SHA1 Message Date
Joerg Wunsch 8261a6acd7 Add support for the ATtiny25/45/85. Note that only the ATtiny45
appears to have a complete XML description right now.

Document all the recently added new devices: AT90PWM2/3,
ATmega164/324/644, ATmega329x/649x, ATtiny25/45/85.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@489 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-08-28 19:37:59 +00:00
Joerg Wunsch 975d7b786a Extend the butterfly code to fully support AVR109 boot loaders. Notable
changes to butterfly.c include:

. do not exit for unsupported devices but return -1 from the init function
  instead; that way the -F option can be used to continue anyway

. honor the -b option as arbitrary bootloaders could be implemented with
  any baud rate, not just the fixed 19200 Bd used by the butterfly

. implement functionality to read the fuse and lock bits, and write the
  (boot) lock bits, resp.

. fix the signature byte order

The remaining files document the new functionality.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@486 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-07-28 16:06:35 +00:00
Joerg Wunsch f5882fc781 Implement and document a libusb-based USB transport for the JTAG ICE
mkII.

The serial transport methods have been moved out into a record of
function pointers for that purpose, defaulting to the actual serial
connection that natively applies to the hosting system.  Iff inside
the JTAG ICE mkII handler a port name starting with "usb" has been
detected, the record of function pointers is switched to USB.
Optionally, a serial number might be specified, so only the JTAG ICE
mkII matching the given serial number will be opened.  The match is
done right-to-left, so only the least significant bytes of the serial
number need to be given.

In order to make the change as least intrusive to existing drivers as
possible, the entire naming scheme of the serial_foo() function entry
points has been maintained as access macros that encapsulate these
into the respective indirect function calls via serdev->foo().


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@478 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-06-19 21:38:03 +00:00
Joerg Wunsch e7df01c555 Document that the JTAG ICE mkII code currently cannot write to flash
one byte at a time.  Also mention the bug tracker interface on
savannah.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@471 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-05-19 04:49:46 +00:00
Joerg Wunsch 04831af970 Mega-commit to bring in both, the STK500v2 support from Erik
Walthinsen, as well as JTAG ICE mkII support (by me).

Erik's submission has been cleaned up a little bit, mostly to add his
name and the current year to the copyright of the new file, remove
trailing white space before importing the files, and fix the minor
syntax errors in his avrdude.conf.in additions (missing semicolons).

The JTAG ICE mkII support should be considered alpha to beta quality
at this point.  Few things are still to be done, like defering the
hfuse (OCDEN) tweaks until they are really required.  Also, for
reasons not yet known, the target MCU doesn't start to run after
signing off from the ICE, it needs a power-cycle first (at least on my
STK500).

Note that for the JTAG ICE, I did change a few things in the internal
API.  Notably I made the serial receive timeout configurable by the
backends via an exported variable (done in both the Posix and the
Win32 implementation), and I made the serial_recv() function return a
-1 instead of bailing out with exit(1) upon encountering a receive
timeout (currently only done in the Posix implementation).  Both
measures together allow me to receive a datastreem from the ICE at 115
kbps on a somewhat lossy PCI multi-UART card that occasionally drops a
character.  The JTAG ICE mkII protocol has enough of safety layers to
allow recovering from these events, but the previous code wasn't
prepared for any kind of recovery.  The Win32 change for this still
has to be done, and the traditional drivers need to be converted to
exit(1) upon encountering a timeout (as they're now getting a -1
returned they didn't see before in that case).


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@451 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-05-10 19:17:12 +00:00
Brian S. Dean 20e4d85bd9 Document -u option to disable safe mode.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@448 81a1dc3b-b13d-400b-aceb-764788c761c2
2005-02-10 18:03:32 +00:00
Theodore A. Roth 678d5c8248 * avrdude.1: Remove reference to ppi programmer schematic.
* configure.ac (AC_INIT): Set version to "4.4.0cvs".


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@435 81a1dc3b-b13d-400b-aceb-764788c761c2
2004-07-19 22:09:09 +00:00
Jan-Hinnerk Reichert 2325a7e129 avrdude.1: Fixed obvious copy and paste error (Patch #3199 contributed by Galen Seitz)
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@431 81a1dc3b-b13d-400b-aceb-764788c761c2
2004-07-17 15:41:36 +00:00
Jan-Hinnerk Reichert 80f996b49a stk500.c, term.c, doc/avrdude.texi, avrdude.1: added "sck"-command to the terminal mode. This command allows slowing down of the SCK of STK500-programmers.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@427 81a1dc3b-b13d-400b-aceb-764788c761c2
2004-07-07 08:59:07 +00:00
Jan-Hinnerk Reichert 91d893eb52 avrdude.conf.in: Added support for tiny13 (contributed by Pawel Moll), mega48 and mega88 (contributed by Galen Seitz)
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@418 81a1dc3b-b13d-400b-aceb-764788c761c2
2004-06-22 17:38:54 +00:00
Jan-Hinnerk Reichert fa2dc82565 * avrdude.1, doc/avrdude.texi, doc/TODO: Removed the deprecated options from documentation
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@411 81a1dc3b-b13d-400b-aceb-764788c761c2
2004-02-10 00:20:51 +00:00
Joerg Wunsch 9a00b545e3 Make the -U parser tolerate colons in filenames.
Document the change, including changing one of the texinfo examples
to use a Windows-like filename that contains a space (and thus
requires quoting).

This fixes bug #6764.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@386 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-11-26 22:05:02 +00:00
Brian S. Dean 4041cfe4d2 Perform an auto erase before programming if the flash memory is
anywhere specified to be written by any of the -U requests.

To remain backward compatible with previous versions, disable this
feature if any of the old-style memory specification operations are
specified (-i, -o).

Implement the -D option to explicitly disable the auto erase default.

Deprecate the old-style memory specification options (-f, -i, -I, -m,
and -o) in favor of the new -U option which allows one to operate on
multiple memories on a single command line.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@356 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-08-29 23:17:32 +00:00
Brian S. Dean 87ce6adaf5 Introduce a new option, -U, for performing memory operions. Its
argument is a 4 field string (fields seperated by colons) which
indicate what memory type to operate on, what operation to perform is
(read, write, or verify), the filename to read from, write to, or
verify against, and an optional file format field.  Multple -U options
can be specified to operate on more than one memory at a time with a
single invocation.  For example, to update both the flash and the
eeprom at the same time one can now specify the following:

	avrdude -p -e -U flash:w:main.hex:i -U eeprom:w:eeprom.hex:i


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@341 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-08-21 04:52:36 +00:00
Theodore A. Roth 7364032012 * avrdude.1: Document the -q option.
* doc/avrdude.texi: Document the -q option.
Fix some typos left over from pasting in man output.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@339 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-08-01 20:11:21 +00:00
Joerg Wunsch 4e704ad695 Add support for displaying and changing the various STK500 operational
parameters.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@336 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-07-24 21:26:28 +00:00
Brian S. Dean 95fefd0d6d Document -I.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@319 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-19 23:10:00 +00:00
Brian S. Dean f931f8cc72 Implement and "immediate mode" for file input - this allows one to
specify byte values on the command line instead of via a file.  This
can be good for specifying fuse bytes and eliminates the need to
create single-byte files or using interactive terminal mode for these
single-byte memories.  Requested by several folks on the mailing list.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@317 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-04-19 18:41:35 +00:00
Brian S. Dean 52f274c2e3 Minor man page updates to better reflect reality.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@273 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-03-10 21:51:55 +00:00
Joerg Wunsch 695e5cfcac Atmel has rearranged their web site, so now the AVR docs have been moved
to a more logically sounding URL.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@232 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-24 23:27:31 +00:00
Theodore A. Roth e4b8507952 Fix spacing for m169 entry. (tabs not spaces ;-)
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@201 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-20 04:18:11 +00:00
Brian S. Dean 2c9a34523c Add Motorola S-record support.
Submitted by:		"Alexey V.Levdikov" <tsar@kemford.com>


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@200 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-20 03:53:49 +00:00
Theodore A. Roth 61fe011b20 Add m169 to list of supported targets.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@199 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-19 16:54:25 +00:00
Joerg Wunsch 7795a53427 My colleague contributed a part definition for the AT90S2343.
Submitted by:	Mirko Kaffka <mirko@mkaffka.de>


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@198 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-19 09:01:54 +00:00
Brian S. Dean ee8bf2d5fc Makefile: include a target to automatically generate the dependency
list.

All others


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@177 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-08 04:17:25 +00:00
Brian S. Dean 571abe6351 Update license to GPL, permission by Joerg Wunsch.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@176 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-06 22:11:20 +00:00
Brian S. Dean 17427c0645 Change the name from AVRPROG to AVRDUDE.
This change represents a name change only.  There is currently an
effort to port AVRPROG to other platforms including Linux and Windows.
Since Atmel's programmer binary that's included within their AVR
Studio software is named AVRPROG.EXE on the Windows OS, there is the
chance for confusion if we keep calling this program AVRPROG as well.
Up until now the name hasn't really been a problem since there was no
chance to confuse 'avrprog' on Unix with Atmel's AVRPROG because
Atmel's tools only run on Windows.  But with the Unix 'avrprog'
possibly being ported to Windows, I felt a name change was the best
way to avoid problems.

So - from this point forward, my FreeBSD Unix program formerly known
as AVRPROG will subsequently be known as AVRDUDE (AVR Downloader/UploaDEr).

This change also represents a time when the AVRDUDE sources move from
my own private repository to a public repository.  This will give
other developers a chance to port AVRDUDE to other platforms and
extend its functionality to support additional programming hardware,
etc.

So goodbye AVRPROG, welcome AVRDUDE!


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@170 81a1dc3b-b13d-400b-aceb-764788c761c2
2003-02-06 05:13:32 +00:00
Brian S. Dean 2a36b78f1b If the stk500 is being used, default to using the first serial port.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@167 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-12-07 15:16:24 +00:00
Brian S. Dean 3e44abacfd Mention STK500 support.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@166 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-12-03 03:54:32 +00:00
Brian S. Dean b278d02a94 Add '-V' (no verify) flag requested by Joerg Wunsch. Update the man
page.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@148 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-29 01:59:02 +00:00
Brian S. Dean a05b24f4b1 Update man page and changelog.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@147 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-10-13 04:22:59 +00:00
Brian S. Dean db531a2ccf Move erase-rewrite cycle increment to within the chip erase routine so
that it is tracked no matter where the erase was initiated: command
line mode or interactive mode, without code duplicaiton.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@141 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 02:06:48 +00:00
Brian S. Dean 4d2df35736 Implement a way of tracking how many erase-rewrite cycles a part has
undergone.  This utilizes the last two bytes of EEPROM to maintain a
counter that is incremented each time the part is erased.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@138 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-08-01 01:00:03 +00:00
Brian S. Dean 7e16897a01 Update copyright and add description of "default".
Submitted by: Joerg Wunsch <j@uriah.heep.sax.de>


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@117 81a1dc3b-b13d-400b-aceb-764788c761c2
2002-01-12 01:31:01 +00:00
Brian S. Dean d0bfd4ab05 Bring up to date.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@111 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-12-30 00:04:52 +00:00
Brian S. Dean 17f82c7f62 Add my e-mail address.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@105 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-11-24 01:47:10 +00:00
Brian S. Dean 8350520e26 Update the man page.
Miscellaneous minor cleanups.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@80 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-15 00:00:09 +00:00
Brian S. Dean c4cb11e9c8 Correct default pin assignment.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@73 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-10-01 14:16:41 +00:00
Brian S. Dean 3cdf00c76c Prefix pin config entries in the config file with a "c:". Later, I
might make part descriptions read in this way and we can use a
different letter for those (p).  This will make the parsing easier to
distinguish between the entry types.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@69 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-20 03:19:31 +00:00
Brian S. Dean 9003ed1183 Make the pin definitions configurable based on entries in a config
file.  This makes supporting other programmers much easier.

Rename AVRprog.pdf to avrprog.pdf.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@67 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-09-19 17:04:25 +00:00
Brian S. Dean 995c6154a8 Add a schematic provided by Joerg Wunch and also update the manual
page (also updated by Joerg) to reference the schematic.


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@63 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-04-25 22:35:14 +00:00
Brian S. Dean 2fc4e1742d .Nm macro fix. Submitted by Joerg.
git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@47 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-01-22 14:29:37 +00:00
Brian S. Dean ec595410ce Add initial man page graciously contributed by Joerg Wunsch. Thanks
Joerg!


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@41 81a1dc3b-b13d-400b-aceb-764788c761c2
2001-01-20 04:14:01 +00:00