bug #44717: avrdude creates empty flash dump
When about to write an empty flash dump file, warn about this to avoid surprises. Document the truncation of trailing 0xFF bytes for flash memory areas. git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1355 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
parent
1d6192e487
commit
2ef34a70c3
1
NEWS
1
NEWS
|
@ -61,6 +61,7 @@ Current:
|
||||||
- bug #42908: no external reset at JTAGICE3
|
- bug #42908: no external reset at JTAGICE3
|
||||||
- patch #8437: [PATCH] Serial-over-ethernet for Win32
|
- patch #8437: [PATCH] Serial-over-ethernet for Win32
|
||||||
- patch #8380: adds 500k 1M 2M baud to ser_posix.c
|
- patch #8380: adds 500k 1M 2M baud to ser_posix.c
|
||||||
|
- bug #44717: avrdude creates empty flash dump
|
||||||
|
|
||||||
* Internals:
|
* Internals:
|
||||||
- Removing exit calls from config parser
|
- Removing exit calls from config parser
|
||||||
|
|
|
@ -670,6 +670,12 @@ field is no longer optional since the filename part following the colon
|
||||||
would otherwise be misinterpreted as
|
would otherwise be misinterpreted as
|
||||||
.Ar format .
|
.Ar format .
|
||||||
.Pp
|
.Pp
|
||||||
|
When reading any kind of flash memory area (including the various sub-areas
|
||||||
|
in Xmega devices), the resulting output file will be truncated to not contain
|
||||||
|
trailing 0xFF bytes which indicate unprogrammed (erased) memory.
|
||||||
|
Thus, if the entire memory is unprogrammed, this will result in an output
|
||||||
|
file that has no contents at all.
|
||||||
|
.Pp
|
||||||
As an abbreviation, the form
|
As an abbreviation, the form
|
||||||
.Fl U Ar filename
|
.Fl U Ar filename
|
||||||
is equivalent to specifying
|
is equivalent to specifying
|
||||||
|
|
|
@ -717,6 +717,12 @@ Note that if @var{filename} contains a colon, the @var{format} field is
|
||||||
no longer optional since the filename part following the colon would
|
no longer optional since the filename part following the colon would
|
||||||
otherwise be misinterpreted as @var{format}.
|
otherwise be misinterpreted as @var{format}.
|
||||||
|
|
||||||
|
When reading any kind of flash memory area (including the various sub-areas
|
||||||
|
in Xmega devices), the resulting output file will be truncated to not contain
|
||||||
|
trailing 0xFF bytes which indicate unprogrammed (erased) memory.
|
||||||
|
Thus, if the entire memory is unprogrammed, this will result in an output
|
||||||
|
file that has no contents at all.
|
||||||
|
|
||||||
As an abbreviation, the form @code{-U} @var{filename}
|
As an abbreviation, the form @code{-U} @var{filename}
|
||||||
is equivalent to specifying
|
is equivalent to specifying
|
||||||
@code{-U} @emph{flash:w:}@var{filename}@emph{:a}.
|
@code{-U} @emph{flash:w:}@var{filename}@emph{:a}.
|
||||||
|
|
3
update.c
3
update.c
|
@ -243,6 +243,9 @@ int do_op(PROGRAMMER * pgm, struct avrpart * p, UPDATE * upd, enum updateflags f
|
||||||
size = rc;
|
size = rc;
|
||||||
|
|
||||||
if (quell_progress < 2) {
|
if (quell_progress < 2) {
|
||||||
|
if (rc == 0)
|
||||||
|
avrdude_message(MSG_INFO, "%s: Flash is empty, resulting file has no contents.\n",
|
||||||
|
progname);
|
||||||
avrdude_message(MSG_INFO, "%s: writing output file \"%s\"\n",
|
avrdude_message(MSG_INFO, "%s: writing output file \"%s\"\n",
|
||||||
progname,
|
progname,
|
||||||
strcmp(upd->filename, "-")==0 ? "<stdout>" : upd->filename);
|
strcmp(upd->filename, "-")==0 ? "<stdout>" : upd->filename);
|
||||||
|
|
Loading…
Reference in New Issue