X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fflash%2Fnor%2Fcore.c;h=4410d5c6a20df9dd0036953cb0bb0ab3457e0d71;hb=7e4fb975597854b6889938facdf43d8e52505566;hp=b2bbeb7dfa2700a51abea047f39a4b54ae0bfdd9;hpb=f1c0133321c8fcadadd10bba5537c0a634eb183b;p=openocd.git diff --git a/src/flash/nor/core.c b/src/flash/nor/core.c index b2bbeb7dfa..4410d5c6a2 100644 --- a/src/flash/nor/core.c +++ b/src/flash/nor/core.c @@ -18,7 +18,7 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * ***************************************************************************/ #ifdef HAVE_CONFIG_H @@ -232,6 +232,9 @@ int get_flash_bank_by_addr(struct target *target, /* cycle through bank list */ for (c = flash_banks; c; c = c->next) { + if (c->target != target) + continue; + int retval; retval = c->driver->auto_probe(c); @@ -240,7 +243,7 @@ int get_flash_bank_by_addr(struct target *target, return retval; } /* check whether address belongs to this flash bank */ - if ((addr >= c->base) && (addr <= c->base + (c->size - 1)) && target == c->target) { + if ((addr >= c->base) && (addr <= c->base + (c->size - 1))) { *result_bank = c; return ERROR_OK; } @@ -253,7 +256,7 @@ int get_flash_bank_by_addr(struct target *target, return ERROR_OK; } -int default_flash_mem_blank_check(struct flash_bank *bank) +static int default_flash_mem_blank_check(struct flash_bank *bank) { struct target *target = bank->target; const int buffer_size = 1024; @@ -595,7 +598,7 @@ int flash_write_unlock(struct target *target, struct image *image, if (retval != ERROR_OK) goto done; if (c == NULL) { - LOG_WARNING("no flash bank found for address %x", run_address); + LOG_WARNING("no flash bank found for address %" PRIx32, run_address); section++; /* and skip it */ section_offset = 0; continue; @@ -710,7 +713,7 @@ int flash_write_unlock(struct target *target, struct image *image, /* see if we need to pad the section */ while (padding[section]--) - (buffer + buffer_size)[size_read++] = 0xff; + (buffer + buffer_size)[size_read++] = c->default_padded_value; buffer_size += size_read; section_offset += size_read;