X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fflash%2Fflash.c;h=45cfb40ab77c9cf3ceb98250ba97dbe09071b06d;hb=3eb441bbcc86deb427a50bb0b598609063971b72;hp=d93c4efaa5966f43793ae9b3cbc812a71589d310;hpb=8959de9f679cfd0436d731fd91b88a68b9a75fa6;p=openocd.git diff --git a/src/flash/flash.c b/src/flash/flash.c index d93c4efaa5..45cfb40ab7 100644 --- a/src/flash/flash.c +++ b/src/flash/flash.c @@ -48,6 +48,7 @@ static int handle_flash_protect_command(struct command_context_s *cmd_ctx, char */ extern flash_driver_t lpc2000_flash; extern flash_driver_t cfi_flash; +extern flash_driver_t at91sam3_flash; extern flash_driver_t at91sam7_flash; extern flash_driver_t str7x_flash; extern flash_driver_t str9x_flash; @@ -66,6 +67,7 @@ flash_driver_t *flash_drivers[] = { &lpc2000_flash, &cfi_flash, &at91sam7_flash, + &at91sam3_flash, &str7x_flash, &str9x_flash, &aduc702x_flash, @@ -92,7 +94,7 @@ static int flash_driver_write(struct flash_bank_s *bank, uint8_t *buffer, uint32 retval = bank->driver->write(bank, buffer, offset, count); if (retval != ERROR_OK) { - LOG_ERROR("error writing to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32 " (%d)", + LOG_ERROR("error writing to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32 " (%d)", bank->base, offset, retval); } @@ -197,7 +199,7 @@ int flash_init_drivers(struct command_context_s *cmd_ctx) register_command(cmd_ctx, flash_cmd, "write_image", handle_flash_write_image_command, COMMAND_EXEC, "write_image [erase] [offset] [type]"); register_command(cmd_ctx, flash_cmd, "protect", handle_flash_protect_command, COMMAND_EXEC, - "set protection of sectors at "); + "set protection of sectors at "); } return ERROR_OK; @@ -350,13 +352,13 @@ static int handle_flash_info_command(struct command_context_s *cmd_ctx, char *cm if ((retval = p->driver->auto_probe(p)) != ERROR_OK) return retval; - command_print(cmd_ctx, + command_print(cmd_ctx, "#%" PRIi32 " : %s at 0x%8.8" PRIx32 ", size 0x%8.8" PRIx32 ", buswidth %i, chipwidth %i", i, - p->driver->name, - p->base, - p->size, - p->bus_width, + p->driver->name, + p->base, + p->size, + p->bus_width, p->chip_width); for (j = 0; j < p->num_sectors; j++) { @@ -369,11 +371,11 @@ static int handle_flash_info_command(struct command_context_s *cmd_ctx, char *cm else protect_state = "protection state unknown"; - command_print(cmd_ctx, + command_print(cmd_ctx, "\t#%3i: 0x%8.8" PRIx32 " (0x%" PRIx32 " %" PRIi32 "kB) %s", j, - p->sectors[j].offset, - p->sectors[j].size, + p->sectors[j].offset, + p->sectors[j].size, p->sectors[j].size >> 10, protect_state); } @@ -462,9 +464,9 @@ static int handle_flash_erase_check_command(struct command_context_s *cmd_ctx, c command_print(cmd_ctx, "\t#%3i: 0x%8.8" PRIx32 " (0x%" PRIx32 " %" PRIi32 "kB) %s", - j, - p->sectors[j].offset, - p->sectors[j].size, + j, + p->sectors[j].offset, + p->sectors[j].size, p->sectors[j].size >> 10, erase_state); } @@ -708,10 +710,10 @@ static int handle_flash_write_image_command(struct command_context_s *cmd_ctx, c } if (retval == ERROR_OK) { - command_print(cmd_ctx, + command_print(cmd_ctx, "wrote %" PRIu32 " byte from file %s in %s (%f kb/s)", written, - args[0], + args[0], duration_text, (float)written / 1024.0 / ((float)duration.duration.tv_sec + ((float)duration.duration.tv_usec / 1000000.0))); } @@ -791,9 +793,9 @@ static int handle_flash_fill_command(struct command_context_s *cmd_ctx, char *cm duration_start_measure(&duration); - for (wrote = 0; wrote<(count*wordsize); wrote += cur_size) + for (wrote = 0; wrote < (count*wordsize); wrote += cur_size) { - cur_size = MIN( (count*wordsize - wrote), sizeof(chunk) ); + cur_size = MIN((count*wordsize - wrote), sizeof(chunk)); flash_bank_t *bank; bank = get_flash_bank_by_addr(target, address); if (bank == NULL) @@ -809,11 +811,11 @@ static int handle_flash_fill_command(struct command_context_s *cmd_ctx, char *cm return err; unsigned i; - for (i = 0; i