Stefan Rueger
607f0c48be
Merge pull request #1188 from stefanrueger/not-all-is-nor-memory
...
Pad pages with input file contents before avr_write()
2022-11-25 17:40:11 +00:00
Stefan Rueger
289ca4f34c
Add optiboot_lgt8f328p.hex bootloader hashes to urclock.c
2022-11-25 17:26:17 +00:00
Stefan Rueger
7269370bf6
Change notices about libreadline presence in urclock.c
2022-11-25 13:58:11 +00:00
Stefan Rueger
e6f7e158cd
Change periphery to peripheral; document deprecated miso/mosi are now sdi/sdo
2022-11-24 13:18:06 +00:00
Stefan Rueger
2b3534ea8a
Remove tabs and reformat
2022-11-24 12:36:49 +00:00
Stefan Rueger
8e79b7dc52
Fix error detection for reading a page to pad unset bytes
2022-11-24 12:16:43 +00:00
Stefan Rueger
68c6ffd7fc
Silence compiler warnings, change comments, remove typos
2022-11-24 12:14:54 +00:00
Stefan Rueger
c3413ff0f4
Fix shell exit value when chip erase is delayed to next flash write
2022-11-23 19:53:55 +00:00
Jan Egil Ruud
f9a2bd0327
Got added support for reading and writing fuses, and chiperase.
2022-11-23 14:25:14 +01:00
Stefan Rueger
19cd7d8c69
Remove non-stk500v1 bootloaders from urclock hash table
2022-11-22 22:38:43 +00:00
Stefan Rueger
b925b5113d
Silence compiler warnings
2022-11-22 21:49:26 +00:00
Stefan Rueger
25ca91371d
Pad pages with input file contents before avr_write()
2022-11-22 21:32:42 +00:00
Stefan Rueger
33dd231e4c
Silence some compiler warnings
2022-11-22 21:17:39 +00:00
Stefan Rueger
8c73609c0e
Fix parameters for JTAGICE mkII and devices with bootloaders
2022-11-22 21:02:25 +00:00
Stefan Rueger
796e97ee3a
Update avrdude.conf.in wrt n_boot_sections, boot_section_size, eecr, spmcr
2022-11-22 20:49:12 +00:00
Stefan Rueger
9599bf2243
Add n_boot_sections and boot_section_size to part definitions
2022-11-22 20:44:12 +00:00
Stefan Rueger
7d5ab433ca
Replace gratuitous references to slave and master with technical terms
2022-11-22 17:11:33 +00:00
Stefan Rueger
adc333ea54
Deprecate mosi/miso in favour of sdo/sdi
...
See https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/
2022-11-22 17:04:05 +00:00
Jan Egil Ruud
5dc2545716
Cleaned and improved TPI send and receive.
2022-11-22 14:05:01 +01:00
Jan Egil Ruud
3afdd55089
Get rid of TPI magic numbers.
2022-11-22 13:23:57 +01:00
Jan Egil Ruud
32a6ca39e4
Cleaned up whitespace in jtag3.c so it at least is consistent within the file.
2022-11-22 13:05:14 +01:00
Stefan Rueger
883d9494c8
Silence compiler warnings for urclock.c
2022-11-22 01:39:27 +00:00
Stefan Rueger
ef824d4d89
Merge pull request #1184 from mcuee/cmake_print_readline
...
Print HAVE_LIBREADLINE status
2022-11-22 01:18:56 +00:00
Stefan Rueger
9c30ccc6ea
Merge pull request #1175 from stefanrueger/terminal
...
Make terminal write's automatic number width less surprising
2022-11-22 01:18:30 +00:00
Stefan Rueger
3400527c7d
Merge pull request #1174 from stefanrueger/default_programmer
...
Ensure default_programmer from config files is used
2022-11-22 01:17:55 +00:00
Cristiano De Alti
c3acdccbe5
Fix JTAGICE mkII by removing the initialize call after CMD_CHIP_ERASE_ISP ( #1172 )
...
- The extra call to initialize() sends CMD_ENTER_PROGMODE_ISP causing a flash
verification mismatch
2022-11-22 01:17:19 +00:00
Stefan Rueger
02e02be6f9
Merge pull request #1171 from stefanrueger/urclock
...
Provide Urclock programmer
2022-11-22 01:13:57 +00:00
Stefan Rueger
2063671a02
Merge pull request #1147 from mcuee/Xplained_Pro_PDI
...
Add xplainedpro_pdi programmer
2022-11-22 01:13:23 +00:00
Stefan Rueger
f9aea24fba
Reduce drain timeout value for Windows in urclock.c
2022-11-22 00:49:34 +00:00
Stefan Rueger
2e398916a7
Hash known bootloaders for urclock; they don't need -xbootsize=....
2022-11-22 00:47:26 +00:00
Jörg Wunsch
3892c5a459
Merge pull request #1181 from dl8dtl/add_em_evr_for_openbsd
...
Add fallback for EM_AVR
2022-11-21 23:31:14 +01:00
Jan Egil Ruud
10ccf0f515
Initial commit for jtag3 TPI support. Can read signature on ATtiny104 XPlained mini, but nothing else yet.
2022-11-21 21:18:13 +01:00
Joerg Wunsch
f90e36f231
Add a workaround for issue #1173
...
The readline compat layer for libedit which otherwise provides native
readline functionality in NetBSD and MacOS appears to have a bug that
causes subsequent prompts to be delayed until another line is being
processed.
Re-installing the callback over and over again works around that, and
does not seem to harm with GNU libreadline.
2022-11-20 22:52:41 +01:00
Stefan Rueger
7f4474f049
Delete previous metadata when writing new file to flash in urclock
2022-11-20 13:02:51 +00:00
Stefan Rueger
c0e4dd494e
Use file basename in -c urclock metadata under WIN32
2022-11-20 01:48:39 +00:00
mcuee
df4dccabfc
Update configure.ac to print libreadline status
2022-11-20 09:46:07 +08:00
Stefan Rueger
53de22cb83
Update avrintel.c for LGT8F(8|16|32)8P parts
2022-11-20 01:12:14 +00:00
Stefan Rueger
f276d325ec
Handle verification errors in read only memory areas gracefully
2022-11-20 00:27:49 +00:00
Stefan Rueger
ee25a62df6
Emulate chip erase in terminal when pgm->chip_erase() soft fails
2022-11-19 23:09:18 +00:00
Stefan Rueger
d65a9a3cee
Adapt -c urclock to new reset vector protection in urboot v7.7
2022-11-19 19:39:39 +00:00
Joerg Wunsch
77ad26ddf4
Replace the hint to AUTHORS by an URL
...
Suggested by: Hans
2022-11-18 21:24:10 +01:00
Joerg Wunsch
efad24e3de
Rewrite authors/copyrights
2022-11-18 10:31:45 +01:00
Joerg Wunsch
9df522a219
Add <sys/select.h> where appropriate
...
Under Posix systems, this header is documented to be required
when using select().
2022-11-17 14:14:22 +01:00
Joerg Wunsch
01be288b18
Add fallback for EM_AVR
...
OpenBSD still lacks this definition, so provide our own for
them.
2022-11-16 21:21:51 +01:00
Stefan Rueger
a3eeedd176
Silence some compiler warnings
2022-11-16 02:32:32 +00:00
Stefan Rueger
2abb666bd2
Prepare urclock for autobaud synchronisation
2022-11-16 02:08:13 +00:00
Stefan Rueger
d901e0a768
Update urbootPutVersion() to reflect urboot v7.7 changes
2022-11-16 00:42:36 +00:00
Stefan Rueger
82b9491cbd
Harden urclock against bootloader bricking
...
- Detect write restrictions with new pgm->readonly(..., addr)
- Check in byte-wise cached write whether mem/addr allows write
- Emulated chip erase tells user CE is delayed until first -U
- After bootloader CE urclock_chip_erase will init reset vector
- Low level paged write @ 0 unconditionally protects reset vector
- Low level paged read @ 0 checks and repairs reset vector
2022-11-16 00:08:46 +00:00
Stefan Rueger
afc2f7cf0c
Hint at option -xdelay=... for urclock programmer not responding messages
2022-11-12 13:47:48 +00:00
Stefan Rueger
ff9c8bbe46
Silence min()/max() compiler warnings, fix urclock.c typo etc
2022-11-12 13:32:53 +00:00
Stefan Rueger
e2b69dec75
Remove MacOS compiler warnings for urclock.c
2022-11-12 01:12:31 +00:00
Stefan Rueger
b178deef5f
Handle n_page_erase in urclock for parts t441, t841 and t1634
2022-11-11 01:33:42 +00:00
Stefan Rueger
6e3a99be87
Add write statistics for patched flash input files at notice2 level
2022-11-11 01:27:55 +00:00
Stefan Rueger
22bd977365
Indent erasing chip message in main
2022-11-10 23:18:43 +00:00
Stefan Rueger
c67bfe39a3
Show input file staistics before patching in update.c
2022-11-10 23:00:18 +00:00
Stefan Rueger
321bddbf7b
Rename urclock's option forcetrim to restore
2022-11-10 22:35:40 +00:00
Stefan Rueger
2434c3f7f6
Make terminal write's automatic number width less surprising
2022-11-10 19:38:21 +00:00
Stefan Rueger
4c4952d4f6
Ensure default_programmer from config files is used
2022-11-10 18:20:13 +00:00
Stefan Rueger
afa408e2c6
Make urclock.c iron out a bug in some bootloaders
2022-11-09 21:00:16 +00:00
Stefan Rueger
d5d0b940cc
Harden vector bootloaders more against reset overwrites
2022-11-09 19:28:29 +00:00
Stefan Rueger
84a3e2cc2b
Fix avr.c comment
2022-11-09 19:27:34 +00:00
Stefan Rueger
c7ba53bca0
Harden urclock against terminal time outs and vector overwrites
2022-11-09 16:16:59 +00:00
Stefan Rueger
ea65918dca
Omit verify after write failure in term.c
2022-11-09 15:43:57 +00:00
Stefan Rueger
20b86fb739
Warn in uclock when bootloader cannot read/write memories
2022-11-08 20:16:05 +00:00
Stefan Rueger
6a6d333849
Update urclock documentation
2022-11-08 15:18:30 +00:00
Stefan Rueger
cf3c81f714
Update urclock's -x parameters
2022-11-07 18:01:23 +00:00
Stefan Rueger
715db4c690
Make -A default for urclock programmer
2022-11-07 02:43:34 +00:00
Stefan Rueger
21d93ec8cb
Update urclock programmer
2022-11-07 01:26:47 +00:00
Stefan Rueger
e6c26d8db4
Provide urclock programmer
2022-11-06 01:29:07 +00:00
Stefan Rueger
d211c4e5f5
Merge pull request #1164 from MCUdude/hvupdi-type2-fix
...
Fix Type 2 HV UPDI
2022-11-01 18:17:52 +00:00
Stefan Rueger
02fe08aed2
Open programmer before allocating part
...
So any programmer that knows exactly which part it is connected to
can set the -p part option should the user not have done so.
Also no longer exits main without closing open programmer.
2022-11-01 18:12:00 +00:00
MCUdude
577ee72db7
Fix Type 2 HV UPDI
...
Used on AVR-DD and AVR-Ex targets
2022-10-31 11:06:14 +01:00
Stefan Rueger
50046da923
Merge pull request #1151 from dbuchwald/serialupdi_page_erase
...
Implementation of SerialUPDI page erase operation
2022-10-29 11:02:17 +01:00
Stefan Rueger
d87eb14dc9
Make -p variable partdesc global
2022-10-29 10:55:58 +01:00
Stefan Rueger
87df3216cb
Make fileio() and do_op() arguments const where possible
2022-10-29 10:48:47 +01:00
Stefan Rueger
a1018999c4
Correct plural for message writing %d bytes in term.c
2022-10-26 08:42:03 +01:00
Stefan Rueger
418cf08e84
Change avrdude.conf.in comment on location of per-user config file
2022-10-25 18:13:28 +01:00
mcuee
f2a413d2dc
Merge branch 'avrdudes:main' into Xplained_Pro_PDI
2022-10-24 07:57:55 +08:00
Stefan Rueger
3769332afd
Merge pull request #1142 from MCUdude/stk600-pdi
...
STK600 supports programming using PDI
2022-10-23 23:10:10 +01:00
Stefan Rueger
ae5b460859
Merge pull request #1141 from stefanrueger/paged
...
Always use paged access for programmers that serve bootloaders
2022-10-23 22:33:31 +01:00
Stefan Rueger
baaad71aa5
Support optiboot, optiboot_dx and optiboot_x bootloaders for -c arduino ( #1140 )
...
* If bootloaders are served, send word addresses for classic parts and
byte addresses for newer parts, eg, UPDI and PDI
* Load ext addr for stk500v1 bootloaders after grazing 64k boundaries
* Fix bootloader stk500v1 EEPROM r/w for classic parts with page size 1
2022-10-23 22:32:29 +01:00
Stefan Rueger
16922842be
Improve -B bitclock documentation
2022-10-23 22:26:07 +01:00
Stefan Rueger
2c7083f001
Merge pull request #1139 from steelman/isp-clock-error-message
...
Mention -B in the error message and document -F better
2022-10-23 21:59:21 +01:00
Stefan Rueger
4f6bab6303
Merge pull request #1138 from MCUdude/pic-detect-mode-cherry
...
Detect PICkit4 and SNAP in PIC mode
2022-10-23 21:57:26 +01:00
Stefan Rueger
5b008a04cf
Revamp terminal output: progress bar, callback and stdout/stderr ( #1132 )
...
* Print parms output to stdout
* Flush terminal writes and other minor changes
* Prepare terminal for periodic calls to programmer to reset bootloader WDT
* Only show progress reports for memories > 32 bytes or on -vv
* Freeze progress bar on serious error
* Allow cached r/w byte routines to be used in pgm->read_byte and pgm->write_byte
2022-10-23 21:56:45 +01:00
steelman
34fa2faba5
Look for ~/.config/avrdude/avrduce.rc configuration file ( #1131 )
...
* Look for ~/.config/avrdude/config configuration file
Traditionally per-user configuration files have been placed
in user's home directory with their names beginnig with a dot
to hide them from some tools like ls(1). However, the number
of programs following this convention have grown over time
to the point where the number of hidden files becomes inconvenient to
some users. For this reason the XDG Base Directory Specification[1]
specifies an alternate place to store configuration files under
~/.config directory.
This patch enables avrdude to look for ~/.config/avrdude/config
configuration file, if ~/.avrduderc doesn't exist.
[1] https://specifications.freedesktop.org/basedir-spec/basedir-spec-0.8.html
* Safely concatenate directories and configurations files and minor changes in docs
* Make stats variable available for WIN32 again in main.c
* Utilise full usr_config[] array space
* Check for xdg-style avrdude.rc file first before fallback ~/.avrduderc
Co-authored-by: Stefan Rueger <stefan.rueger@urclocks.com>
2022-10-23 21:52:54 +01:00
Dawid Buchwald
fa1c081a94
Implemented page erase operation for SerialUPDI
2022-10-23 15:06:06 +02:00
mcuee
4a5efa7635
Add xplainedpro_pdi programmer
...
This will fix https://github.com/avrdudes/avrdude/issues/1143 .
Xplained Pro should be able to support PDI mode as per the documentation.
Reference: take note that the following document does not cover UPDI support.
https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42096-Microcontrollers-Embedded-Debugger_User-Guide.pdf
Reference discussion:
* https://github.com/avrdudes/avrdude/pull/1139#issuecomment-1286760773
* https://github.com/avrdudes/avrdude/discussions/1019#discussioncomment-3569440
2022-10-23 14:24:57 +08:00
MCUdude
992e9666a3
STK600 supports programming using PDI
2022-10-22 12:51:03 +02:00
Łukasz Stelmach
c890ff90eb
Mention -B in the error message
...
One of possible problems of failed initialization is too hight frequency
of ISP clock. Mention using -B option as a possible solution.
Closes #1133
2022-10-21 02:33:34 +02:00
Stefan Rueger
b9396bcd02
Always use paged access for programmers that serve bootloaders
2022-10-21 00:56:43 +01:00
Łukasz Stelmach
9977f1ed12
Document meaning of -F during initialization
2022-10-20 19:52:35 +02:00
MCUdude
72da5c73db
Fix formatting and replace tabs with spaces
2022-10-20 12:39:11 +02:00
MCUdude
867d83c215
Print error message if no HID device is connected when using hidapi
2022-10-20 12:27:59 +02:00
MCUdude
14446950df
Check for PICkit4 or SNAP in PIC mode
2022-10-20 12:19:10 +02:00
MCUdude
b083416e3b
Let Avrdude use the valid SNAP USB PID first
2022-10-20 12:19:10 +02:00
MCUdude
13817459e1
Add missing USB VID/PIDs
2022-10-20 12:19:10 +02:00
MCUdude
c999083b8f
Change message type from error to warning and add additional USB info
2022-10-20 12:18:42 +02:00
Stefan Rueger
b864d7e73a
Update NEWS and resolve minor residual messaging issues
2022-10-17 16:39:45 +01:00
Stefan Rueger
e172877724
Review and overhaul AVRDUDE's messaging system ( #1126 )
...
* Change avrdude_message(MSG_XYZ, ...) to msg_xyz(...)
* Define and use pmsg_xyz(...) instead of msg_xyz("%s: ...", progname, ...)
* Review and change avrdude_message() levels
- Introduce new levels warning, error and ext_error
- Distribute info level to info, warning, error, ext_error
- Assign levels (more) consistently
- Unify grammar, punctuation and style of messages
* Use imsg_xyz() to print indented messages
* Show function name in errors and warnings on -v
* Reduce effective verbosity level by number of -q above one
2022-10-17 15:44:55 +01:00