diff options
author | Salvador Arroyo <sarroyofdez@yahoo.es> | 2017-02-27 12:25:49 +0100 |
---|---|---|
committer | Freddie Chopin <freddie.chopin@gmail.com> | 2017-05-08 18:00:09 +0100 |
commit | e32058811794388038fcb7da930f3154c0cb7ea2 (patch) | |
tree | e14052f91570053503cf46f4c546d92766f72743 /src/target/mips_ejtag.c | |
parent | 1392c27cf9ff1a7f5f5477d23880f2e5c59c898e (diff) | |
download | riscv-openocd-e32058811794388038fcb7da930f3154c0cb7ea2.zip riscv-openocd-e32058811794388038fcb7da930f3154c0cb7ea2.tar.gz riscv-openocd-e32058811794388038fcb7da930f3154c0cb7ea2.tar.bz2 |
mips32, add option to avoid check in last instruction
This option is needed, for example, when exiting
debug mode in bmips targets. The last instruction
is a NOP, not a DERET. When working in async mode
this check is not done, mips32_pracc_queue_exec() pass
the parameter to mips32_pracc_exec() and never use it.
Change-Id: I4c7ed4feb1588b62e2645b955b501b6671113b36
Signed-off-by: Salvador Arroyo <sarroyofdez@yahoo.es>
Reviewed-on: http://openocd.zylin.com/4021
Tested-by: jenkins
Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
Diffstat (limited to 'src/target/mips_ejtag.c')
-rw-r--r-- | src/target/mips_ejtag.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/target/mips_ejtag.c b/src/target/mips_ejtag.c index 1a8a843..e35758d 100644 --- a/src/target/mips_ejtag.c +++ b/src/target/mips_ejtag.c @@ -210,7 +210,7 @@ int mips_ejtag_config_step(struct mips_ejtag *ejtag_info, int enable_step) pracc_add(&ctx, 0, MIPS32_B(NEG16((ctx.code_count + 1)))); /* jump to start */ pracc_add(&ctx, 0, MIPS32_ORI(8, 8, LOWER16(ejtag_info->reg8))); /* restore lower 16 bits of $8 */ - ctx.retval = mips32_pracc_queue_exec(ejtag_info, &ctx, NULL); + ctx.retval = mips32_pracc_queue_exec(ejtag_info, &ctx, NULL, 1); pracc_queue_free(&ctx); return ctx.retval; } @@ -273,7 +273,7 @@ int mips_ejtag_exit_debug(struct mips_ejtag *ejtag_info) struct pracc_queue_info ctx = {.max_code = 1, .pracc_list = &pracc_list, .code_count = 1, .store_count = 0}; /* execute our dret instruction */ - ctx.retval = mips32_pracc_queue_exec(ejtag_info, &ctx, NULL); + ctx.retval = mips32_pracc_queue_exec(ejtag_info, &ctx, NULL, 0); /* pic32mx workaround, false pending at low core clock */ jtag_add_sleep(1000); |