diff options
author | Tim Newsome <tim@sifive.com> | 2023-10-16 12:30:06 -0700 |
---|---|---|
committer | Tim Newsome <tim@sifive.com> | 2023-10-16 12:30:06 -0700 |
commit | 53fcf14d83481c6713396dfe8e30067c3c82cac1 (patch) | |
tree | 94a4d86ae529a3a574485f00f5bf806f0d716607 /src/flash | |
parent | e1fa78d1b368bfd0c9493897da4052534778c79e (diff) | |
parent | 0384fe5d596f42388f8b84d42959d899f29388ab (diff) | |
download | riscv-openocd-53fcf14d83481c6713396dfe8e30067c3c82cac1.zip riscv-openocd-53fcf14d83481c6713396dfe8e30067c3c82cac1.tar.gz riscv-openocd-53fcf14d83481c6713396dfe8e30067c3c82cac1.tar.bz2 |
Merge commit '0384fe5d596f42388f8b84d42959d899f29388ab' into from_upstream
Conflicts:
.github/workflows/snapshot.yml
src/rtos/FreeRTOS.c
Change-Id: I4c9ff887b69140e0f61cb3f75a2f2c1a12071320
Diffstat (limited to 'src/flash')
-rw-r--r-- | src/flash/nor/tcl.c | 49 |
1 files changed, 19 insertions, 30 deletions
diff --git a/src/flash/nor/tcl.c b/src/flash/nor/tcl.c index 0562906..7723a17 100644 --- a/src/flash/nor/tcl.c +++ b/src/flash/nor/tcl.c @@ -815,6 +815,7 @@ COMMAND_HANDLER(handle_flash_write_bank_command) if (buf_cnt != length) { LOG_ERROR("Short read"); free(buffer); + fileio_close(fileio); return ERROR_FAIL; } @@ -1325,40 +1326,27 @@ COMMAND_HANDLER(handle_flash_banks_command) return ERROR_OK; } -static int jim_flash_list(Jim_Interp *interp, int argc, Jim_Obj * const *argv) +COMMAND_HANDLER(handle_flash_list) { - if (argc != 1) { - Jim_WrongNumArgs(interp, 1, argv, - "no arguments to 'flash list' command"); - return JIM_ERR; - } - - Jim_Obj *list = Jim_NewListObj(interp, NULL, 0); + if (CMD_ARGC != 0) + return ERROR_COMMAND_SYNTAX_ERROR; for (struct flash_bank *p = flash_bank_list(); p; p = p->next) { - Jim_Obj *elem = Jim_NewListObj(interp, NULL, 0); - - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "name", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, p->name, -1)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "driver", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, p->driver->name, -1)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "base", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewIntObj(interp, p->base)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "size", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewIntObj(interp, p->size)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "bus_width", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewIntObj(interp, p->bus_width)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "chip_width", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewIntObj(interp, p->chip_width)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, "target", -1)); - Jim_ListAppendElement(interp, elem, Jim_NewStringObj(interp, target_name(p->target), -1)); - - Jim_ListAppendElement(interp, list, elem); + command_print(CMD, + "{\n" + " name %s\n" + " driver %s\n" + " base " TARGET_ADDR_FMT "\n" + " size 0x%" PRIx32 "\n" + " bus_width %u\n" + " chip_width %u\n" + " target %s\n" + "}", + p->name, p->driver->name, p->base, p->size, p->bus_width, p->chip_width, + target_name(p->target)); } - Jim_SetResult(interp, list); - - return JIM_OK; + return ERROR_OK; } COMMAND_HANDLER(handle_flash_init_command) @@ -1405,8 +1393,9 @@ static const struct command_registration flash_config_command_handlers[] = { { .name = "list", .mode = COMMAND_ANY, - .jim_handler = jim_flash_list, + .handler = handle_flash_list, .help = "Returns a list of details about the flash banks.", + .usage = "", }, COMMAND_REGISTRATION_DONE }; |