avrdude -p*/s -c*/s outputs how avrdude understands the programmers
and parts defined in avrdude.conf.in that syntax (the canonical
form). This commit ensures that avrdude.conf.in is in canonical
form, typically removing assignments that are redundant owing to
inheritance.
Also changes a couple of comments and one programmer description
string to be more expressive.
Pin definitions in config_gram.y fail to clear existing pin
definitions when setting them for the second time, eg, through
inheritance, For example,
programmer parent "ft2232h"
id = "tigard";
reset = 5; # BD5 (GPIOL1)
;
would add pin 5 to the existing pin 3 for reset from the partent
programmer rather than overwriting the reset pin.
This commit clears any pre-existing pin definition first before
assigning the new pin number or pin list (for vcc or buff).
In order to output memories of a part always in the same order the
developer options use an odered list of all known memories. Owing
to the partial match feature of dev_locate_mem_noalias() they
would therefore print an existing lockbits memory twice, once for
the memory lock and once for the memory lockbits.
Fixes bug #1228 that gpio 0 could not be used by the linuxgpio system.
* Add sanity checks
* Loop over defined pins only
Co-authored-by: Stefan Rueger <stefan.rueger@urclocks.com>
"q" used to be a unique abbrevation for "quit" before the introduction
of the "quell" command, and it was an easy way to exit terminal mode.
By adding it as an explicit command (must be before all longer
commands starting with "q"), this functionality is regained.
For devices connected through a real serial device rather than
USB, there is no transport-layer serial number available.
stk500v2.c (and jtag3.c) tried to always call this function.
Closes#1254
* Silence compiler warnings
* Fix a fall-through error in switch
* Slightly reformat programmer info printout
Now the target voltage is printed out along with the HW version, FW version and serial number, and they all allign nicely. When in ISP mode, the "SCK period" value is printed _after_ the target voltage readout, and _before_ the additional clocks the programmer holds, such as JTAG, PDI and UPDI clocks.
Co-authored-by: Stefan Rueger <stefan.rueger@urclocks.com>