workaround and comment for problems identified by Michael Schwingen.
git-svn-id: svn://svn.berlios.de/openocd/trunk@979 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
parent
a0eace708d
commit
fa9bbd3828
|
@ -177,7 +177,19 @@ int swjdp_transaction_endcheck(swjdp_common_t *swjdp)
|
||||||
|
|
||||||
keep_alive();
|
keep_alive();
|
||||||
|
|
||||||
|
/* Danger!!!! BROKEN!!!! */
|
||||||
scan_inout_check_u32(swjdp, SWJDP_IR_DPACC, DP_CTRL_STAT, DPAP_READ, 0, &ctrlstat);
|
scan_inout_check_u32(swjdp, SWJDP_IR_DPACC, DP_CTRL_STAT, DPAP_READ, 0, &ctrlstat);
|
||||||
|
/* Danger!!!! BROKEN!!!! Why will jtag_execute_queue() fail here????
|
||||||
|
R956 introduced the check on return value here and now Michael Schwingen reports
|
||||||
|
that this code no longer works....
|
||||||
|
|
||||||
|
https://lists.berlios.de/pipermail/openocd-development/2008-September/003107.html
|
||||||
|
*/
|
||||||
|
if ((retval=jtag_execute_queue())!=ERROR_OK)
|
||||||
|
{
|
||||||
|
LOG_ERROR("BUG: Why does this fail the first time????");
|
||||||
|
}
|
||||||
|
/* Why??? second time it works??? */
|
||||||
scan_inout_check_u32(swjdp, SWJDP_IR_DPACC, DP_CTRL_STAT, DPAP_READ, 0, &ctrlstat);
|
scan_inout_check_u32(swjdp, SWJDP_IR_DPACC, DP_CTRL_STAT, DPAP_READ, 0, &ctrlstat);
|
||||||
if ((retval=jtag_execute_queue())!=ERROR_OK)
|
if ((retval=jtag_execute_queue())!=ERROR_OK)
|
||||||
return retval;
|
return retval;
|
||||||
|
|
Loading…
Reference in New Issue