diff options
author | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-10-06 08:10:57 +0000 |
---|---|---|
committer | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-10-06 08:10:57 +0000 |
commit | 39b57471bfd92ef0d9a3aceb69f40c1335f5b62f (patch) | |
tree | 4d7b675f1ec817d3d5e6b2596b5c4a9a053e2de9 /src/jtag/tcl.c | |
parent | a2886fe3c66e7cdb05148234054e89730662103d (diff) |
Introduced jtag_init and "jtag arp_init" to allow target scripts more control over how OpenOCD starts up and initializes the target.
git-svn-id: svn://svn.berlios.de/openocd/trunk@2805 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/jtag/tcl.c')
-rw-r--r-- | src/jtag/tcl.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/jtag/tcl.c b/src/jtag/tcl.c index 212be355..9101d31e 100644 --- a/src/jtag/tcl.c +++ b/src/jtag/tcl.c @@ -410,6 +410,7 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv) enum { JTAG_CMD_INTERFACE, + JTAG_CMD_INIT, JTAG_CMD_INIT_RESET, JTAG_CMD_NEWTAP, JTAG_CMD_TAPENABLE, @@ -422,6 +423,7 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv) const Jim_Nvp jtag_cmds[] = { { .name = "interface" , .value = JTAG_CMD_INTERFACE }, + { .name = "arp_init" , .value = JTAG_CMD_INIT }, { .name = "arp_init-reset", .value = JTAG_CMD_INIT_RESET }, { .name = "newtap" , .value = JTAG_CMD_NEWTAP }, { .name = "tapisenabled" , .value = JTAG_CMD_TAPISENABLED }, @@ -455,6 +457,17 @@ static int jim_jtag_command(Jim_Interp *interp, int argc, Jim_Obj *const *argv) } Jim_SetResultString(goi.interp, jtag_interface->name, -1); return JIM_OK; + case JTAG_CMD_INIT: + if (goi.argc != 0) { + Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)"); + return JIM_ERR; + } + e = jtag_init_inner(context); + if (e != ERROR_OK) { + Jim_SetResult_sprintf(goi.interp, "error: %d", e); + return JIM_ERR; + } + return JIM_OK; case JTAG_CMD_INIT_RESET: if (goi.argc != 0) { Jim_WrongNumArgs(goi.interp, 1, goi.argv-1, "(no params)"); |