if ((ERROR_OK == retval) && (duration_measure(&bench) == ERROR_OK))
{
- command_print(CMD_CTX, "wrote %" PRIu32 " byte from file %s "
+ command_print(CMD_CTX, "wrote %" PRIu32 " bytes from file %s "
"in %fs (%0.3f kb/s)", written, CMD_ARGV[0],
duration_elapsed(&bench), duration_kbps(&bench, written));
}
for (wrote = 0; wrote < (count*wordsize); wrote += cur_size)
{
- cur_size = MIN((count*wordsize - wrote), sizeof(chunk));
struct flash_bank *bank;
+
bank = get_flash_bank_by_addr(target, address);
if (bank == NULL)
{
retval = ERROR_FAIL;
goto done;
}
+
+ cur_size = MIN((count * wordsize - wrote), chunksize);
err = flash_driver_write(bank, chunk, address - bank->base + wrote, cur_size);
if (err != ERROR_OK)
{
duration_elapsed(&bench), duration_kbps(&bench, wrote));
}
- done:
+done:
free(readback);
free(chunk);
if ((ERROR_OK == retval) && (duration_measure(&bench) == ERROR_OK))
{
- command_print(CMD_CTX, "wrote %zu byte from file %s to flash bank %u"
+ command_print(CMD_CTX, "wrote %ld bytes from file %s to flash bank %u"
" at offset 0x%8.8" PRIx32 " in %fs (%0.3f kb/s)",
- fileio.size, CMD_ARGV[1], p->bank_number, offset,
+ (long)fileio.size, CMD_ARGV[1], p->bank_number, offset,
duration_elapsed(&bench), duration_kbps(&bench, fileio.size));
}