2021-11-27 Joerg Wunsch * linuxspi.c: Use -B rather than -b to specify the clock rate 2021-11-27 Joerg Wunsch Improve defaults and documentation of linuxspi * avrdude.conf.in: use @HAVE_LINUXGPIO_BEGIN/END@ and @HAVE_LINUXSPI_BEGIN/END@ brackets around respective config snippets; values were already set in configure.ac. * linuxspi.c (linuxspi_open): Provide a reasonable (for the Raspberry Pi) default for the -P option * avrdude.1: Extend linuxspi documentation * doc/avrdude.texi: (Dito.) 2021-11-27 Joerg Wunsch Submitted by Alex Sverdlin: patch #10031: linuxspi: Support GPIO uAPI v2 * linuxspi.c (linuxspi_reset_mcu, linuxspi_open): Since Linux v5.10 GPIO ABI Version 1 is optional and depends on CONFIG_GPIO_CDEV_V1. 2021-11-27 Joerg Wunsch Submitted by Alex Sverdlin: patch #10030: linuxspi: Support inverted GPIO pin * linuxspi.c (linuxspi_open): Clear the inversion mask on request and set default state to avoid short glitches on the GPIO line. 2021-11-27 Joerg Wunsch Submitted by Alex Sverdlin: patch #10029: linuxspi: Report GPIO_GET_LINEHANDLE_IOCTL errors * linuxspi.c (linuxspi_open): Report ioctl error 2021-11-27 Joerg Wunsch Submitted by Alex Sverdlin: patch #10028: linuxspi: close() only when necessary * linuxspi.c: unify descriptor closing 2021-11-27 Joerg Wunsch Submitted by Alex Sverdlin: patch #10027: linuxspi: Add reset pulse, according to AVR programming algorithm * linuxspi.c (linuxspi_open, linuxspi_program_enable): movw out reset code into linuxspi_reset_mcu() 2021-11-25 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9328: ft245r.c: add TPI support (patches 5-7) * ft245r.c (ft245r_set_bitclock): add workaround for FT245 hardware bugs in bitclock setting 2021-11-25 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9328: ft245r.c: add TPI support (patches 5-7) * ft245r.c: Remove the reader thread (also removes patch #9079) 2021-11-24 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9327: ft245r.c: add TPI support (patches 1-4) * ft245r.c (set_pin, ft245r_open): use ft245r_send_and_discard() so ft245r_in can go away 2021-11-24 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9327: ft245r.c: add TPI support (patches 1-4) * ft245r.c (ft245r_recv): Optimize TPI programming speed by reducing number of USB reads. 2021-11-24 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9327: ft245r.c: add TPI support (patches 1-4) * ft245r.c (ft245r_open): add call to ftdi_set_latency_timer() to improve timing 2021-11-24 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9327: ft245r.c: add TPI support (patches 1-4) * ft245r.c: add TPI support * avrdude.conf.in (tc2030): New programmer 2021-11-24 Joerg Wunsch * ft245r.c (ft245r_open): allow for picking a default device if none has been provided by -P 2021-11-24 Joerg Wunsch * jtag3.c (jtag3_edbg_recv_frame): Better handling for fragment_info == 0x00 (no response available) 2021-11-23 Joerg Wunsch * jtag3.c: Use matches() instead of strncmp() 2021-11-23 Joerg Wunsch patch #9757: Fix ATtiny817 Xplained Mini programmer * jtag3.c (jtag3_getsync, jtag3_close): correctly extract programmer name from list of names 2021-11-22 Joerg Wunsch Submitted by David Sainty: patch #8719: Support Over-the-Air bootloading with XBeeBoot * xbee.c: New programmer * xbee.h: (Dito.) * pgm_type.c: Add xbee.h * avrdude.conf.in (xbee): New programmer * Makefile.am (libavrdude_a_SOURCES): add xbee.c, xbee.h * avrdude.1: document the new programmer * doc/avrdude.texi: (Dito.) 2021-11-14 Joerg Wunsch Submitted by Ivan Frederiks: patch #9079: Fix ftdi_syncbb teardown (supersedes #9893) patch #9122: Fixed MISO sampling in ftdi_syncbb patch #9123: ftdi_syncbb: use FT245R_CYCLES in ft245r_set_bitclock() * ft245r.c: Various fixes for FT245-bitbang programmers 2021-11-14 Joerg Wunsch Submitted by David Mosberger-Tang: patch #9320: fix TPI RESET in bitbang.c * bitbang.c (bitbang_initialize): wait for 128 ms after deasserting /RESET (per datasheet), and keep /RESET low during MOSI/MISO link check 2021-11-12 Joerg Wunsch Submitted by Jon Thacker: patch #9253: Fix for giving terminal_mode commands more than 20 arguments * term.c (tokenize): fix realloc usage, pointer returned not necessarily the same as pointer passed 2021-11-12 Joerg Wunsch Submitted by Martino Facchin: patch #9110: Let reserved fuse bits to be read as *don't care* * avr.c (compare_memory_masked): New function * libavrdude.h: declare compare_memory_masked(); also, insist on C99 so is required now * main.c: Use compare_memory_masked() in safemode comparisons 2021-11-11 Joerg Wunsch Submitted by Joseph Coffland: patch #8957: Allow reading prodsig memory from stk500v2 on xmega devices * stk500v2.c (stk600_xprog_read_byte, stk600_xprog_paged_load): treat "prodsig" memory space as equivalent to "calibration" 2021-11-07 Joerg Wunsch Submitted by Martin Thierer: patch #10017: uspasp / tpi: Automatically clear configuration byte (fuse) before writing it * usbasp.c (usbasp_tpi_paged_write): clear fuse region before writing it 2021-11-07 Joerg Wunsch Submitted by Michael Petersen: patch #9697: Add iseavrprog support * avrdude.conf.in (iseavrprog): New programmer 2021-11-07 Joerg Wunsch bug #50630: Erase Cycle Counter options ( -y -Y n ) should be removed from usage Message * main.c (usage): remove -y / -Y descriptions 2021-11-07 Joerg Wunsch * avrdude.conf.in (ATmega8A): new device (alias for ATmega8) 2021-11-07 Joerg Wunsch bug #50517: Reading fails if "immediate mode" for output file format is selected - fileio: invalid operation=1 * update.c (do_op): refuse to write to "immediate format" argument 2021-11-07 Joerg Wunsch Submitted by Martin Thierer: bug #60863: avrftdi programming error probably caused by multiple, consecutive empty pages * avrftdi.c (avrftdi_flash_write): Skip empty pages 2021-11-07 Joerg Wunsch Submitted by Matwey V. Kornilov: bug #58495: Add atmega324pb support to avrdude.conf.in * avrdude.conf.in (ATmega324PB): new entry 2021-11-07 Joerg Wunsch bug #55734: USBtiny programming of ATmega328p broken by Patch #9278 * usbtiny.c (usbtiny_initialize): undo change from patch #9728 2021-11-07 Joerg Wunsch bug #55009: no efuses for m164a/pa * avrdude.conf.in (ATmega164P): derive from ATmega324P 2021-11-07 Joerg Wunsch Submitted by evan Venn: bug #59227: Add new part. How does one get a part added to the CONF file? * avrdude.conf.in (LGT8FX88P, LGT8FX168P, LGT8FX328P): new parts 2021-11-06 Joerg Wunsch Submitted by Britton Kerin: bug #57453: [PATCH] fix reference to nonexistant -m option by changing to -U * avrdude.1: replace -m option by -U 2021-11-06 Joerg Wunsch Submitted by Andrew D'Addesio: bug #58078: [PATCH] buspirate: remove compound literals (fixes GCC>=9) * buspirate.c (buspirate_start_mode_bin): avoid propagating local scope compound literals 2021-11-06 Joerg Wunsch Submitted by Jan Egil Ruud: patch #10000: Add support for extended UPDI device context * avrdude.conf.in (pickit4_updi, snap_updi, pkobn_updi): new programmers * avrdude.conf.in (ATmega808, ATmega809, ATmega1608, ATmega1609) (AVR DA, AVR DB): new devices * jtag3.c: Add support for extended UPDI device context * jtag3_private.h: (Dito.) * tools/atdf-to-avrdude.xslt: Bug fixes * usbdevs.h: Bump USBDEV_MAX_XFER_3 to 912 * doc/avrdude.texi: Document changes * avrdude.1: (Dito) 2021-06-27 Joerg Wunsch bug #60753: Patch #1436 breaks multiple programmer/device combinations on MacOS BigSur * avr.c: compare page_size > 1 instead of != 0 * stk500v2.c: (Ditto.) 2021-06-27 Joerg Wunsch Submitted by gerardoallende: bug #59525: Bogus error message because Copy/Paste typo in stk500.c * stk500.c (stk500_getparm): Fix bogus ID in error message