From 8e198e94712f8e677faffb8e0e3e9e590bae0161 Mon Sep 17 00:00:00 2001 From: Drasko DRASKOVIC Date: Mon, 12 Mar 2012 22:10:24 +0100 Subject: [PATCH] mips: Forced to running state to enable (subsequent) target halt. Change-Id: I9aff8fb3ac703b50194088dd4e68cec8f9bb2ada Signed-off-by: Drasko DRASKOVIC Reviewed-on: http://openocd.zylin.com/513 Tested-by: jenkins Reviewed-by: Spencer Oliver --- src/target/mips_m4k.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/target/mips_m4k.c b/src/target/mips_m4k.c index 623d55e0d8..c64d5cf609 100644 --- a/src/target/mips_m4k.c +++ b/src/target/mips_m4k.c @@ -143,6 +143,17 @@ static int mips_m4k_poll(struct target *target) /* check for processor halted */ if (ejtag_ctrl & EJTAG_CTRL_BRKST) { + if (target->state == TARGET_UNKNOWN) { + LOG_DEBUG("EJTAG_CTRL_BRKST already set during server startup."); + + /* OpenOCD was was probably started on the board with EJTAG_CTRL_BRKST already set + * (maybe put on by HALT-ing the board in the previous session). + * + * Force target to RUNNING state to enable debug entry for this session. + */ + target->state = TARGET_RUNNING; + } + if ((target->state == TARGET_RUNNING) || (target->state == TARGET_RESET)) { mips_ejtag_set_instr(ejtag_info, EJTAG_INST_NORMALBOOT); -- 2.30.2