Commit Graph

4045 Commits

Author SHA1 Message Date
Stefan Rueger
6de1cd928e Place classic prodsig submemories into flat address model 2024-07-04 20:34:57 +01:00
Stefan Rueger
ff35f53653 Prevent warnings for incomplete stump XMEGA family entries 2024-07-04 20:25:23 +01:00
Stefan Rueger
dbb2fc36e4 Adapt dryrun.c to new XMEGA memories 2024-07-04 20:23:01 +01:00
Stefan Rueger
5f5f081b98 Merge branch 'main' into additional-memories 2024-07-04 18:09:01 +01:00
Stefan Rueger
808457e53e Fix flash size of x128a4 2024-07-04 18:07:34 +01:00
Stefan Rueger
56e6535f96 Document the new fuses memory for XMEGAs 2024-07-04 18:07:34 +01:00
Stefan Rueger
d184b10e54 Fix access to sigrow submemories in jtag3.c 2024-07-04 18:07:33 +01:00
Stefan Rueger
110c7f9614 Add collective fuses memory for XMEGAs 2024-07-04 18:07:33 +01:00
Stefan Rueger
cde5d3e461 Add sernum memory to m324pb, m328pb, t102 and t104 2024-07-04 18:07:33 +01:00
Stefan Rueger
ebe370ab0e Document XMEGA calibration, sernum and tempsense memories 2024-07-04 18:07:32 +01:00
Stefan Rueger
3ea386898e Merge pull request #1828 from stefanrueger/multi-memory-input
Multi-memory file handling
2024-07-04 17:17:47 +01:00
Stefan Rueger
7427a8e371 Remove -U/-T/-t heading when only one requested 2024-07-04 15:43:23 +01:00
Stefan Rueger
4f25cf8be6 Remove processing -U ... heading for backup/restore/verify 2024-07-04 15:33:36 +01:00
Stefan Rueger
2e1b66fb34 Add more documentation for memory lists 2024-07-04 11:24:13 +01:00
Stefan Rueger
2ad860a53a Remove unused code 2024-07-04 00:03:07 +01:00
Stefan Rueger
23e835b8a3 Document multi-memory files and dryrun options 2024-07-02 23:05:17 +01:00
Stefan Rueger
5cf2908a08 Warn when generating multi-memory list with unsuitable format
AVRDUDE will happily generate all sorts of file formats from multiple
memories, but only understands hex, srec and elf files.
2024-07-02 20:17:34 +01:00
Stefan Rueger
3aaa722f72 Inspect memory lists to decide whether initial chip erase is needed 2024-07-02 19:48:48 +01:00
Stefan Rueger
7647aaa4fc Show filename not pathname in -U warnings/errors 2024-07-01 00:55:33 +01:00
Stefan Rueger
dab725a343 Provide str_infilename() and str_outfilename() 2024-07-01 00:52:30 +01:00
Stefan Rueger
f1ff03d562 Change /mem to \mem for subtracting mem from list
/mem has the meaning of ALL\mem in set theory, which could cause confusion.
2024-07-01 00:30:46 +01:00
Stefan Rueger
b65c3c49b7 Fix reccount when writing srec files 2024-07-01 00:26:35 +01:00
Stefan Rueger
8a194719ba Remove unused variables 2024-07-01 00:26:01 +01:00
Stefan Rueger
c584f84a8e Move signature check into multi-memory file read 2024-07-01 00:18:55 +01:00
Stefan Rueger
cfaee38275 Provide avr_sig_compatible() 2024-06-30 23:53:52 +01:00
Stefan Rueger
3722abccd4 Provide str_ccmcunames_signature() 2024-06-30 22:39:53 +01:00
Stefan Rueger
5ac7c96958 Explicitly test for part being UPDI rather than assuming default 2024-06-30 22:37:37 +01:00
Stefan Rueger
30749c9673 Use PM_Classic instead of !(PM_PDI | PM_UPDI) 2024-06-29 09:00:45 +01:00
Stefan Rueger
7d70d5406f Change memory list syntax to mem0,mem1,-mem2,/mem3,...
... where -mem or /mem removes a memory from the list so far
2024-06-29 00:33:44 +01:00
stefanrueger
b2ed09f73d Provide terminal verify <memlist> <file>[:format] 2024-06-27 18:21:04 +00:00
stefanrueger
5e846098c8 Provide terminal restore <memlist> <file>[:format] 2024-06-27 18:19:32 +00:00
stefanrueger
dd2a40f81d Provide terminal backup <memlist> <file>[:format] 2024-06-27 17:21:30 +00:00
stefanrueger
a02995749c Utilise fileio_format_with_errmsg() in parse_op() 2024-06-27 17:20:23 +00:00
stefanrueger
485ad6de91 Provide fileio_format_with_errmsg() 2024-06-27 17:15:01 +00:00
stefanrueger
bc0c1a0499 Fix Windows complaint about missing random()/srandom() 2024-06-26 16:49:10 +00:00
stefanrueger
42081e5606 Initialise memories on -c dryrun -xinit or -xrandom
$ avrdude -c dryrun -xhelp
avrdude -c dryrun extended options:
  -xinit     Initialise memories with human-readable patterns (1, 2, 3)
  -xrandom   Initialise memories with random code/values (1, 3)
  -xseed=<n> Seed random number generator with <n>, default time(NULL)
  -xhelp     Show this help menu and exit
Notes:
  (1) -xinit and -xrandom randomly configure flash wrt boot/data/code length
  (2) Patterns can best be seen with fixed-width font on -U flash:r:-:I
  (3) Choose, eg, -xseed=1 for reproducible flash configuration and output

For example:

$ avrdude -c dryrun -p 16eb28 -xinit -xseed=7 -UALL:r:backup-dry.hex:I

backup-dry.hex will be a human-readable multi-memory .hex file for testing
that has memories initialised with non-trivial contents. Great care has
been taken that the generated flash code is valid and benign, ie, it won't
touch I/O peripherals, SRAM or flash.

Can be restored with

$ avrdude -cdryrun -p 16eb28 -U ALL:w:backup-dry.hex
2024-06-26 16:22:48 +00:00
Stefan Rueger
76353b8218 Provide str_is_in_list() 2024-06-25 14:33:00 +01:00
Stefan Rueger
9a834c37c7 Update avrintel.c 2024-06-25 12:06:49 +01:00
Stefan Rueger
41eacd0eed Fix flash page size for x128a4 2024-06-25 12:04:25 +01:00
Stefan Rueger
ad312b985a Fix boot_section_size for x128a4 2024-06-25 01:04:05 +01:00
Stefan Rueger
f06b3dd5b9 Fix boot_section_size for AVR-Ex parts 2024-06-25 00:08:54 +01:00
Stefan Rueger
d4d6835bdf Fix dryrun's paged write to XMEGA overlapping flash memories 2024-06-24 17:28:22 +01:00
Stefan Rueger
f3fbb2eb1d Default -U multi-memory backups to Intel Hex with comments 2024-06-24 00:24:29 +01:00
Stefan Rueger
1a2ac74a7b Label segments with memory names in .hex:I output files 2024-06-23 20:50:31 +01:00
Stefan Rueger
9bf11fd67a Make sigs argument of str_mcunames_signature() const 2024-06-23 20:38:20 +01:00
Stefan Rueger
eb412304ee Provide avr_locate_uP() 2024-06-22 12:31:59 +01:00
Stefan Rueger
23324622d9 Formalise multi-memory address layout 2024-06-22 00:33:26 +01:00
Stefan Rueger
06b64bf9fb Provide ALL memory (all + sub-memories excluded from all) 2024-06-21 21:40:02 +01:00
Stefan Rueger
2373b0a06c Fix access for XMEGA sernum and tempsense 2024-06-20 00:06:25 +01:00
Stefan Rueger
5d322eb9dc Add calibration, sernum and tempsense sub-memories to XMEGAs 2024-06-19 22:09:25 +01:00