Submitted by Juergen Weigert:

bug #22720: avrdude-5.5 ignores buff settings in avrdude.conf
(Note that the actual bug the subject is about has been fixed
long ago.)
* update.c (do_op): fix a diagnostic message
* pgm.h: add exit_datahigh field
* par.c: set and act upon the exit_datahigh field
* avrdude.1: document the new -E options
* doc/avrdude.texi: (Ditto.)



git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@985 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
Joerg Wunsch
2011-08-26 12:35:08 +00:00
parent fef650b787
commit 6b09628d0a
7 changed files with 58 additions and 2 deletions

22
par.c
View File

@@ -303,6 +303,21 @@ static void par_close(PROGRAMMER * pgm)
/* Leave it alone. */
break;
}
switch (pgm->exit_datahigh) {
case EXIT_DATAHIGH_ENABLED:
ppi_setall(&pgm->fd, PPIDATA, 0xff);
break;
case EXIT_DATAHIGH_DISABLED:
ppi_setall(&pgm->fd, PPIDATA, 0x00);
break;
case EXIT_DATAHIGH_UNSPEC:
/* Leave it alone. */
break;
}
switch (pgm->exit_vcc) {
case EXIT_VCC_ENABLED:
par_setmany(pgm, pgm->pinno[PPI_AVR_VCC], 1);
@@ -387,6 +402,12 @@ static int par_parseexitspecs(PROGRAMMER * pgm, char *s)
else if (strcmp(cp, "novcc") == 0) {
pgm->exit_vcc = EXIT_VCC_DISABLED;
}
else if (strcmp(cp, "d_high") == 0) {
pgm->exit_datahigh = EXIT_DATAHIGH_ENABLED;
}
else if (strcmp(cp, "d_low") == 0) {
pgm->exit_datahigh = EXIT_DATAHIGH_DISABLED;
}
else {
return -1;
}
@@ -402,6 +423,7 @@ void par_initpgm(PROGRAMMER * pgm)
pgm->exit_vcc = EXIT_VCC_UNSPEC;
pgm->exit_reset = EXIT_RESET_UNSPEC;
pgm->exit_datahigh = EXIT_DATAHIGH_UNSPEC;
pgm->rdy_led = bitbang_rdy_led;
pgm->err_led = bitbang_err_led;