Skip to content

Commit

Permalink
Preliminary fix for avrdudes#1655
Browse files Browse the repository at this point in the history
  • Loading branch information
dbuchwald committed Feb 3, 2024
1 parent 571a806 commit 00b8c83
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions src/serialupdi.c
Original file line number Diff line number Diff line change
Expand Up @@ -542,9 +542,16 @@ static int serialupdi_write_userrow(const PROGRAMMER *pgm, const AVRPART *p, con
return -1;
}

if (updi_write_data(pgm, m->offset+addr, m->buf + addr, n_bytes) < 0) {
pmsg_error("writing USER ROW failed\n");
return -1;
if (n_bytes <= UPDI_MAX_REPEAT_SIZE) {
if (updi_write_data(pgm, m->offset+addr, m->buf + addr, n_bytes) < 0) {
pmsg_error("writing USER ROW failed\n");
return -1;
}
} else {
if (updi_write_data_words(pgm, m->offset+addr, m->buf + addr, n_bytes) < 0) {
pmsg_error("writing USER ROW failed\n");
return -1;
}
}

if (updi_write_cs(pgm, UPDI_ASI_SYS_CTRLA, (1 << UPDI_ASI_SYS_CTRLA_UROW_FINAL) |
Expand Down

0 comments on commit 00b8c83

Please sign in to comment.