Commit Graph

1939 Commits

Author SHA1 Message Date
Stefan Rueger 79921e52dc Provide file format I: Intel HEX with comments that ignores checksum errors
The new file type I is essentially Intel HEX that, on download, inserts
comments next to data records with the resolved effective address and an
ASCII dump of that same record. On upload the `I` format is permissive
with respect to check sum errors, eg, after manipulated an Intel HEX file
for debugging.
2022-07-16 23:40:36 +01:00
Stefan Rueger c81f52ff10 Update NEWS 2022-07-12 15:52:37 +01:00
Stefan Rueger 09a95a3717
Merge pull request #936 from stefanrueger/issue918
Fix Issue #918: Enable avrdude to send full input file incl trailing 0xff
2022-07-12 15:34:17 +01:00
Stefan Rueger 0edb77bdf8
Merge branch 'main' into issue918 2022-07-12 15:05:45 +01:00
Stefan Rueger 04f790ad85
Merge pull request #1018 from stefanrueger/issue995
Fix Issue #995 ft245r paged read for ATmega2560 et al
2022-07-12 14:55:44 +01:00
Stefan Rueger e867486f3f
Merge pull request #1023 from stefanrueger/issue1004
Fix PICKit2 ATmega2560 flash paged flash read
2022-07-12 14:51:56 +01:00
Stefan Rueger ff8f519a34 Fix PICKit2 ATmega2560 flash paged flash read
The paged read in pickit2.c has two errors:
  - It drops load extended address commands unless a paged read happens at a
    64k byte boundary; this is invalid when reading files with holes
  - It wrongly assumed that flash memory is byte addressed

The fix is to carry out a load extended address command, if needed, at the
beginning of each paged flash read with the correct word address. Although the
pickit2_paged_load() has independent parameters page_size, addr and n_bytes,
AVRDUDE only ever calls paged read/write functions with page_size and n_bytes
both set to mem->page_size and addr aligned with a page boundary. Therefore, it
is sufficient to set the load extended address at the beginning of each page
read.
2022-07-10 23:41:44 +01:00
Stefan Rueger 64ee4858fd Update 2nd debug message in avr.c with correct function name 2022-07-05 01:00:45 +01:00
Stefan Rueger d3b22fa3c6 Update debug message in avr.c with correct function name 2022-07-05 00:57:40 +01:00
Stefan Rueger 9742c7b97a Add #474 and #976 to NEWS 2022-07-05 00:55:58 +01:00
Stefan Rueger 00ea21597e
Merge pull request #1001 from MCUdude/add-missing-bits-and-pieces
Add missing delays in avrdude.conf
2022-07-05 00:05:32 +01:00
Stefan Rueger 9ea02c4431
Merge pull request #998 from stefanrueger/issue474
Fix Issue #474 FT232H support for ATmega2560 et al (load extended address)
2022-07-05 00:00:54 +01:00
Stefan Rueger 2b6ee8f4d1 Adapt whitespace to existing style in avrftdi.c 2022-07-04 23:54:02 +01:00
Stefan Rueger 7aad03cbcd Fix paged read for ATmega2560 et al for ft245r.c 2022-07-04 23:11:32 +01:00
Stefan Rueger a721e485cb Refactor paged read/write routines in ft245r.c 2022-07-04 23:04:36 +01:00
Stefan Rueger bb049a085e Merge branch 'issue474' of github.com:stefanrueger/avrdude into issue474 2022-07-04 12:31:11 +01:00
Stefan Rueger 237cb63211 Steamline avrftdi support for ATmega2560 et al 2022-07-04 12:30:37 +01:00
Stefan Rueger 2827c2695e Update NEWS 2022-07-04 12:30:37 +01:00
Joerg Wunsch bdab12d8fb PR 996 and 1013 done 2022-07-04 12:30:37 +01:00
MCUdude d2bb964fc7 Attempt to fix EEPROM write issue #1009 2022-07-04 12:30:37 +01:00
Joerg Wunsch f22b81c00e Fix a number of logic errors in the previous commits
RSP3_FAIL_CRC_FAILURE is 0x43 rather than 0x47.

jtag3_errcode() must only be applied to a reason code, not
to any general status code.
2022-07-04 12:30:37 +01:00
Joerg Wunsch 8953967fc3 Replace internal knowledge in jtag3.c by a public API
In certain situations (CRC failure, device locked), that JTAG3
read functions need to return an indication to the caller that
it is OK to proceed, and allow erasing the device anyway.

Historically, the JTAG3 code passed the respective protocol
errors directly (and unexplained) up to the caller, leaving
the decision to the caller how to handle the situation.

Replace that by a more common return value API. New code should
prefer this API instead of any hardcoded return values.
2022-07-04 12:30:37 +01:00
Stefan Rueger ef785a617a Treat x bits in .conf SPI commands as 0 2022-07-04 12:30:37 +01:00
Joerg Wunsch ad2be990b7 PR 993 done 2022-07-04 12:30:37 +01:00
prchal 134509cc6f adding support for all Linux baud rates v.2
If optiboot can work at higher bauds, why not avrdude.
Versoin 2 of #985.
Linux uses the old-style bitmapped version of the Bxxxx macros.
2022-07-04 12:30:37 +01:00
Joerg Wunsch 8bd39157c1 Closing PR 979 2022-07-04 12:30:37 +01:00
MCUdude 963a1e54af Fix JTAG transaction close issue
Fixes issue #366
2022-07-04 12:30:37 +01:00
Joerg Wunsch 37026cad52 PR #1000 is done now 2022-07-04 12:30:37 +01:00
MCUdude b167e88422 Reduce programmer description string length
to less than 80 characters. #941 related
2022-07-04 12:30:37 +01:00
Stefan Rueger 3893a21164 Fix avrftdi support for ATmega2560 et al (load extended address) 2022-07-04 12:30:25 +01:00
Stefan Rueger d95c1a91f7 Steamline avrftdi support for ATmega2560 et al 2022-07-04 12:25:50 +01:00
Stefan Rueger c4add116d6
Merge branch 'avrdudes:main' into issue474 2022-07-04 10:07:05 +01:00
Stefan Rueger 66c69a7584
Merge pull request #943 from stefanrueger/issue942
Fix Issue #942: Treat x bits in .conf SPI commands as 0
2022-06-28 22:50:53 +01:00
Stefan Rueger 43c6b04226 Update NEWS 2022-06-28 22:46:06 +01:00
Stefan Rueger a21f3d20af
Merge branch 'avrdudes:main' into issue942 2022-06-28 22:38:47 +01:00
Joerg Wunsch a6ea797c1c PR 996 and 1013 done 2022-06-28 22:53:24 +02:00
Jörg Wunsch 8cd6f357b1
Merge pull request #1013 from MCUdude/jtag3-eeprom-fix
JTAG3 UPDI EEPROM fix
2022-06-28 22:36:19 +02:00
Jörg Wunsch 7ec51a5185
Merge pull request #996 from dl8dtl/jtag3_retcode
Replace internal knowledge in jtag3.c by a public API

Supersedes #982
2022-06-28 22:21:50 +02:00
Stefan Rueger 09c168a186
Merge branch 'avrdudes:main' into issue942 2022-06-28 20:56:49 +01:00
Stefan Rueger cef3abac14
Merge branch 'avrdudes:main' into issue474 2022-06-26 23:54:43 +01:00
Joerg Wunsch 362e6993ac PR 993 done 2022-06-26 23:00:32 +02:00
Jörg Wunsch 6d1c83e182
Merge pull request #993 from prchal/patch-1
adding support for all Linux baud rates
2022-06-26 22:59:49 +02:00
Joerg Wunsch 1b997968a5 Closing PR 979 2022-06-26 22:58:25 +02:00
Jörg Wunsch 55dddc57cc
Merge pull request #979 from MCUdude/dragon-jtag-fix
Dragon JTAG fix: restart firmware after programming
2022-06-26 22:53:32 +02:00
Stefan Rueger 54d590b9c1
Merge branch 'avrdudes:main' into issue474 2022-06-26 15:12:17 +01:00
MCUdude 89b0aa72e0 Attempt to fix EEPROM write issue #1009 2022-06-25 11:39:16 +02:00
Joerg Wunsch ae0e3e2f8e Fix a number of logic errors in the previous commits
RSP3_FAIL_CRC_FAILURE is 0x43 rather than 0x47.

jtag3_errcode() must only be applied to a reason code, not
to any general status code.
2022-06-22 23:33:53 +02:00
Joerg Wunsch 1aa59aaa98 PR #1000 is done now 2022-06-19 19:56:56 +02:00
Jörg Wunsch 6b5ca522d7
Merge pull request #1000 from MCUdude/reduce-str-length
Reduce programmer desc string length in avrdude.conf to < 80 characters
2022-06-19 19:56:02 +02:00
MCUdude 692c13ed98 Add missing chip erase delay for ATmega48/88/168/328PB 2022-06-19 19:40:31 +02:00