jtag: fix regression with dummy driver and when starting OpenOCD with target powered down

Do not fail startup if communication with target is
not possible.

OpenOCD supports launching without a target connected
or the target powered down.

The user will typically power up the target and issue
a "reset init" + load his application after OpenOCD
is started then.

Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
__archive__
Øyvind Harboe 2010-09-01 23:36:31 +02:00
parent ae80c3564a
commit 35af12d3e7
1 changed files with 13 additions and 5 deletions

View File

@ -1445,17 +1445,19 @@ int jtag_init_inner(struct command_context *cmd_ctx)
case ERROR_OK:
/* complete success */
break;
case ERROR_JTAG_INIT_SOFT_FAIL:
default:
/* For backward compatibility reasons, try coping with
* configuration errors involving only ID mismatches.
* We might be able to talk to the devices.
*
* Also the device might be powered down during startup.
*
* After OpenOCD starts, we can try to power on the device
* and run a reset.
*/
LOG_ERROR("Trying to use configured scan chain anyway...");
issue_setup = false;
break;
default:
/* some hard error; already issued diagnostics */
return retval;
}
/* Now look at IR values. Problems here will prevent real
@ -1466,7 +1468,13 @@ int jtag_init_inner(struct command_context *cmd_ctx)
*/
retval = jtag_validate_ircapture();
if (retval != ERROR_OK)
return retval;
{
/* The target might be powered down. The user
* can power it up and reset it after firing
* up OpenOCD.
*/
issue_setup = false;
}
if (issue_setup)
jtag_notify_event(JTAG_TAP_EVENT_SETUP);