summaryrefslogtreecommitdiff
path: root/src/flash
diff options
context:
space:
mode:
authorntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-02-12 18:57:37 +0000
committerntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-02-12 18:57:37 +0000
commitedc0db163aafc78b68ad23878225703742425df5 (patch)
tree5842d33fb946fc8cb7e161ad51a4c5ae75f804ee /src/flash
parent1242505997be2a8b67658a7fd7ee31fefb5cb846 (diff)
downloadopenocd+libswd-edc0db163aafc78b68ad23878225703742425df5.tar.gz
openocd+libswd-edc0db163aafc78b68ad23878225703742425df5.tar.bz2
openocd+libswd-edc0db163aafc78b68ad23878225703742425df5.tar.xz
openocd+libswd-edc0db163aafc78b68ad23878225703742425df5.zip
- add autoprobe support to flash info command
- auto_erase can now be called from script/config file git-svn-id: svn://svn.berlios.de/openocd/trunk@292 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/flash')
-rw-r--r--src/flash/flash.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/flash/flash.c b/src/flash/flash.c
index 9d82e09a..cae099b5 100644
--- a/src/flash/flash.c
+++ b/src/flash/flash.c
@@ -88,7 +88,8 @@ int flash_register_commands(struct command_context_s *cmd_ctx)
flash_cmd = register_command(cmd_ctx, NULL, "flash", NULL, COMMAND_ANY, NULL);
register_command(cmd_ctx, flash_cmd, "bank", handle_flash_bank_command, COMMAND_CONFIG, NULL);
-
+ register_command(cmd_ctx, flash_cmd, "auto_erase", handle_flash_auto_erase_command, COMMAND_ANY,
+ "auto erase flash sectors <on|off>");
return ERROR_OK;
}
@@ -120,8 +121,6 @@ int flash_init_drivers(struct command_context_s *cmd_ctx)
"write_image <file> [offset] [type]");
register_command(cmd_ctx, flash_cmd, "protect", handle_flash_protect_command, COMMAND_EXEC,
"set protection of sectors at <bank> <first> <last> <on|off>");
- register_command(cmd_ctx, flash_cmd, "auto_erase", handle_flash_auto_erase_command, COMMAND_EXEC,
- "auto erase flash sectors <on|off>");
}
return ERROR_OK;
@@ -279,6 +278,9 @@ int handle_flash_info_command(struct command_context_s *cmd_ctx, char *cmd, char
{
char buf[1024];
+ /* attempt auto probe */
+ p->driver->auto_probe(p);
+
command_print(cmd_ctx, "#%i: %s at 0x%8.8x, size 0x%8.8x, buswidth %i, chipwidth %i",
i, p->driver->name, p->base, p->size, p->bus_width, p->chip_width);
for (j = 0; j < p->num_sectors; j++)