Commit Graph

4769 Commits

Author SHA1 Message Date
MX682X
8aa795be04 added experemental -xf= option to override flash size on isp 2024-12-16 23:41:44 +01:00
MX682X
e09370f1fa small fix for prodsig retrieval 2024-11-29 23:24:48 +01:00
MX682X
f916ba39f6 experiment for attiny15 plus other stuff 2024-11-29 22:25:41 +01:00
MX682X
ae867081d5 rework prodsig retrival logic 2024-11-26 20:46:45 +01:00
MX682X
7d82e58791 fixing prodsig on isp and jtag and other improvements 2024-11-25 23:45:45 +01:00
MX682X
fbffbf7a1a fixing build for ARM64 (no bswap) 2024-11-23 23:18:56 +01:00
MX682X
3b364545c8 Merge branch 'avrdudes:main' into 8.1.0---isp 2024-11-23 22:58:58 +01:00
MX682X
02dc472932 fixing up docs 2024-11-23 22:58:07 +01:00
MX682X
74a6e8ac56 a little optimization 2024-11-23 22:30:21 +01:00
MX682X
7b077029bc add support for dW, JTAG, ISP, and PDI (untested)
dW has some hiccups on flash writes
JTAG must erase chip before overwriting EEPROM
2024-11-23 22:10:17 +01:00
mcuee
eec1a9b2e4 Update NEWS 2024-11-23 21:08:05 +08:00
mcuee
5c0d478703 Merge pull request #1934 from ndim/enable-option-checking=fatal
CI: Ensure only supported configure options are used (--enable-option-checking=fatal)
2024-11-23 09:09:53 +08:00
Hans Ulrich Niedermann
172474a9e9 ci: Abort autotools builds in case of unsupported options
Abort autotools CI builds in case we give them an unsupported
option. The default is to only warn, but the CI should catch
mistakes.
2024-11-23 01:40:24 +01:00
Hans Ulrich Niedermann
b8594d1df1 ci: Fix macos brew install issue with pkg-config
The macos build's "brew install" command has developed a
build failure without us being involved at all:

    Error: The `brew link` step did not complete successfully
    The formula built, but is not symlinked into /opt/homebrew
    Could not symlink bin/pkg-config
    Target /opt/homebrew/bin/pkg-config
    is a symlink belonging to pkg-config@0.29.2. You can unlink it:
      brew unlink pkg-config@0.29.2

This makes the macos build work again and implements the suggestions
brew prints when installing bison and flex, regarding PATH, LDFLAGS,
and CPPFLAGS.
2024-11-23 01:40:04 +01:00
Hans Ulrich Niedermann
79e091b545 ci: Use multi-line format to invoke configure
Use the multi-line format to invoke configure with a long command line.

This prepares for even longer command lines.
2024-11-22 20:11:29 +01:00
mcuee
0b92721af9 Merge pull request #1927 from ndim/add-extra-version-information
Add extra version information to avrdude output
2024-10-10 20:56:45 +08:00
Hans Ulrich Niedermann
cb53a34ff1 Add extra version information to avrdude output
Some downstream projects build avrdude and want to add their
own version information to the avrdude version to distinguish
their builds from others.

This adds a clean way to do that without needing to patch the
avrdude sources, for both cmake and automake based builds:

    cmake -DEXTRA_VERSION:STRING=-arduino.1-rc1
    ../configure EXTRA_VERSION=-arduino.1-rc1

After building avrdude, the last line of "avrdude -?" will now
look similar to the following, depending on whether you are
building an avrdude git checkout or an avrdude release tarball:

    avrdude version 8.0-20240901-arduino.1-rc1 (30e19f23), https://github.com/avrdudes/avrdude
    avrdude version 8.1-arduino.1-rc1 (30e19f23), https://github.com/avrdudes/avrdude
2024-10-10 13:40:22 +02:00
Stefan Rueger
30e19f2332 Update NEWS 2024-09-01 01:21:45 +01:00
Stefan Rueger
0f0b4c15ce Increment libavrdude version
There is bound to be a library change in git main until v8.1 is published;
ensure we have a new version number in preparation for the next release.
2024-09-01 01:20:34 +01:00
Stefan Rueger
d3c4f8631c Merge pull request #1919 from stefanrueger/m16u4
Update usbpids in avrdude.conf
2024-09-01 01:14:44 +01:00
Stefan Rueger
f1cfb81313 Merge pull request #1918 from stefanrueger/da-s
Add AVR128DAxxS parts
2024-09-01 01:14:05 +01:00
Stefan Rueger
af22f60c8f Remove uspid of ATxmegas without USB interface 2024-09-01 00:58:02 +01:00
Stefan Rueger
13e5af1b3c Add memory pdicfg to AVR128DAnnS 2024-08-31 18:00:15 +01:00
Stefan Rueger
b3949ce685 Correcting usbpid of x64a4u 2024-08-31 17:37:39 +01:00
Stefan Rueger
d54782e9a7 Update usbpids in avrdude.conf 2024-08-31 13:00:07 +01:00
Stefan Rueger
a0a2ec8926 Add AVR128DAxxS parts 2024-08-31 10:44:30 +01:00
Stefan Rueger
4fa07e563f Update NEWS 2024-08-24 22:23:30 +01:00
Stefan Rueger
d8c8cf1379 Update version to 8.0 v8.0 2024-08-24 21:51:00 +01:00
Stefan Rueger
943ee419b6 Update NEWS 2024-08-24 19:14:15 +01:00
Stefan Rueger
821d5b0ad1 Merge pull request #1911 from stefanrueger/jtagmkII
Iron out some problems in jtagmkII
2024-08-24 19:11:25 +01:00
Stefan Rueger
ac5c4b9ccd Merge pull request #1910 from ndim/guard-against-zombie-problems
Add checks for zombie sourcecode problems
2024-08-24 19:10:45 +01:00
Stefan Rueger
706336c40c Merge pull request #1888 from ndim/ci-test-running-built-avrdude
CI: test running the built avrdude executable
2024-08-24 19:10:08 +01:00
Stefan Rueger
ca6e0793f5 Merge pull request #1874 from ndim/parport-build-test
Parport build test
2024-08-24 19:09:51 +01:00
Stefan Rueger
19279e33f8 Fix flash paged r/w for jtagmkII
There were several problems with page_erase():
  - Read cache not invalidated on writes to boot and apptable
  - PDI apptable and boot memories paged access can get addresses wrong
2024-08-24 18:04:18 +01:00
Stefan Rueger
0c463fad92 Fix page erase for jtagmkII
There were several problems with page_erase():
 - Not working on UPDI eeprom/usersig memories: write a page of 0xff instead
 - Read cache not invalidated on page erase
 - PDI apptable and boot memories page erase possibly erases wrong page
2024-08-24 17:56:41 +01:00
Stefan Rueger
93b512de70 Change memory category for classic page erase in jtag3.c 2024-08-24 17:47:00 +01:00
Hans Ulrich Niedermann
c677974137 ci: Where possible, dryrun tests on uninstalled avrdude
This tries running the uninstalled avrdude executable, both
with -? and for test-avrdude.

Tests on installed avrdude are kept where they exist,
but not added for all possible platforms.

Quick table showing

  * -? testing of built avrdude (print the usage)
  * dryrun testing of built avrdude before installation
  * installation of avrdude
  * dryrun testing of installed avrdude

and whether that happens/succeeds/fails:

                              run    test              test
                               -?    built   install   installed
    linux-x86_64-autotools  | yes  | succ  | yes     | succ
    linux-x86_64            | yes  | succ  | yes     | succ
    linux (cross-compile)   | yes# | n/a   | no      | <--
    macos-x86_64            | yes  | succ  | no      | <--
    macos-x86_64-autotools  | yes  | succ  | no      | <--
    msvc                    | yes* | succ  | broken  | <--
    mingw                   | yes  | fail  | no      | <--

 # Only on i386, as the armhf and arm64 executables are not runnable
   on the ubuntu-latest x86_64 worker.

 * Works on x86 and x64. Skipped on arm64 at this time.

   The arm64 executable is not runnable, possibly due to the
   old problem of an exe being built for the wrong architecture
   (which @mcuee mentioned somewhere).

In summary, this should run as much as is possible at this time
without introducing failures.

In the future, after these failures are fixed, more tests can be
added for a more complete coverage.
2024-08-24 18:46:03 +02:00
Stefan Rueger
b407731473 Refrain from using page_erase on -U eeprom:w 2024-08-24 17:43:37 +01:00
Hans Ulrich Niedermann
415b397bc9 ci: Use ${{env.BUILD_TYPE}} instead of hardcoded value 2024-08-24 18:36:57 +02:00
Hans Ulrich Niedermann
06032113cf ci: Run test-avrdude with -v to show avrdude output on errors 2024-08-24 18:36:57 +02:00
Hans Ulrich Niedermann
184b00db48 ci: disable distcheck (until am doc builds have been fixed)
The doc builds are a bit brittle at this time, and therefore
do not work reliably with "make distcheck".

Therefore this comments out "make distcheck" until the am doc
builds have been fixed.
2024-08-24 18:36:57 +02:00
Hans Ulrich Niedermann
6e2152f1b9 ci: Use printf(1) to avoid echo(1) problems
Use printf(1) to avoid possible echo(1) incompatibilities like
special escape sequences and the like.

Also, "\n\n" means two linefeeds, without any implicit linefeeds
being added.

Thought for the future: Perhaps test-avrdude should run isatty()
and, if it is not a TTY, not wait for linefeeds at all in the non-
interactive case?
2024-08-24 18:35:08 +02:00
Hans Ulrich Niedermann
fb74e288da ci: consistently rename macos -autotools build
Use the same suffix string "-autotools" for "macos-x86_64-autotools"
which the linux-x86_64-autotools build already uses.
2024-08-24 16:12:00 +02:00
Hans Ulrich Niedermann
16d7d0bbcb ci: Build parallel port code on supported systems
Build parallel port code on supported systems

Unsupported systems are:

  * Windows operating system
  * MacOS operating system

This means the CI can test

  * native Linux builds (yes, even for arm systems)

Untested at this time are the BSDs.

Removes the dysfunctional Windows (since Windows XP)  parallel port code,
and has the buildsystems fail Windows builds if parallel port builds are
requested (HAVE_PARPORT or --enable-parport).

https://github.com/avrdudes/avrdude/pull/1874#issuecomment-2275762550
2024-08-24 15:38:17 +02:00
Hans Ulrich Niedermann
89478179b4 function prototype consistency fix for ppiwin.c
mingw builds for Windows require a function prototype fix.
2024-08-24 15:37:04 +02:00
Hans Ulrich Niedermann
548c871194 Fix all remaining #include "ac_cfg.h" to use <ac_cfg.h> 2024-08-24 15:03:42 +02:00
Hans Ulrich Niedermann
5176d7b818 Add checks for zombie sourcecode problems
This adds checks for zombie sourcecode problems, i.e. problems
we have tried to eliminate but which might be or have been
resurrected.

The example check is for the problematic

    #include "ac_cfg.h"

with double quotes instead of <> which were identified as a
problem in https://github.com/avrdudes/avrdude/issues/1706
and then fixed.
2024-08-24 15:03:42 +02:00
Stefan Rueger
9e9825c988 Update NEWS/docu 2024-08-24 01:27:36 +01:00
Stefan Rueger
5f32f9d8c9 Merge pull request #1909 from stefanrueger/warnings
Silence compiler warnings
2024-08-24 00:57:12 +01:00
Stefan Rueger
5ab90751d1 Merge pull request #1908 from stefanrueger/documentation
Improve Documentation
2024-08-24 00:56:02 +01:00