mirror of
https://github.com/mariusgreuel/avrdude.git
synced 2025-09-28 15:05:27 +00:00
Optimize reading and writing for the STK500 programmer if the part
supports paged reads and writes. This greatly decreases the program/verify time from about 4.5 minutes down to about 10 seconds in a 12K program size test case. Print out the hardware and firmware version for the STK500 if verbose is enabled. git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@161 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
17
avr.c
17
avr.c
@@ -374,6 +374,15 @@ int avr_read(PROGRAMMER * pgm, AVRPART * p, char * memtype, int size,
|
||||
size = mem->size;
|
||||
}
|
||||
|
||||
if (mem->paged && pgm->paged_load != NULL) {
|
||||
/*
|
||||
* the programmer directly supports writing this memory, perhaps
|
||||
* more efficiently than we can from here
|
||||
*/
|
||||
return pgm->paged_load(pgm, p, mem, size);
|
||||
}
|
||||
|
||||
|
||||
printed = 0;
|
||||
|
||||
for (i=0; i<size; i++) {
|
||||
@@ -665,6 +674,14 @@ int avr_write(PROGRAMMER * pgm, AVRPART * p, char * memtype, int size,
|
||||
|
||||
pgm->err_led(pgm, OFF);
|
||||
|
||||
if (m->paged && pgm->paged_write != NULL) {
|
||||
/*
|
||||
* the programmer directly supports writing this memory, perhaps
|
||||
* more efficiently than we can from here
|
||||
*/
|
||||
return pgm->paged_write(pgm, p, m, size);
|
||||
}
|
||||
|
||||
printed = 0;
|
||||
werror = 0;
|
||||
|
||||
|
Reference in New Issue
Block a user