summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2010-01-05 13:03:27 -0800
committerDavid Brownell <dbrownell@users.sourceforge.net>2010-01-05 13:03:27 -0800
commitfccb812f829e55940e26466c4cda8c25765d4f6c (patch)
tree614ef3113d3916f47fd98b7fda0f9027725991ca /src
parentadf2a9a267422a2914a50b4a4a35a0e19b25d1c3 (diff)
downloadopenocd_libswd-fccb812f829e55940e26466c4cda8c25765d4f6c.tar.gz
openocd_libswd-fccb812f829e55940e26466c4cda8c25765d4f6c.tar.bz2
openocd_libswd-fccb812f829e55940e26466c4cda8c25765d4f6c.tar.xz
openocd_libswd-fccb812f829e55940e26466c4cda8c25765d4f6c.zip
ARM: add #defines for JTAG ack codes
JTAG has only two possible JTAG ack codes for APACC and DPACC register reads/writes. Define them, and remove empty "else" clause in the code which now uses those codes. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'src')
-rw-r--r--src/target/arm_adi_v5.c11
-rw-r--r--src/target/arm_adi_v5.h4
2 files changed, 9 insertions, 6 deletions
diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c
index 9f260642..96accf3e 100644
--- a/src/target/arm_adi_v5.c
+++ b/src/target/arm_adi_v5.c
@@ -249,12 +249,14 @@ int swjdp_transaction_endcheck(struct swjdp_common *swjdp)
swjdp->ack = swjdp->ack & 0x7;
- if (swjdp->ack != 2)
+ /* common code path avoids calling timeval_ms() */
+ if (swjdp->ack != JTAG_ACK_OK_FAULT)
{
long long then = timeval_ms();
- while (swjdp->ack != 2)
+
+ while (swjdp->ack != JTAG_ACK_OK_FAULT)
{
- if (swjdp->ack == 1)
+ if (swjdp->ack == JTAG_ACK_WAIT)
{
if ((timeval_ms()-then) > 1000)
{
@@ -280,9 +282,6 @@ int swjdp_transaction_endcheck(struct swjdp_common *swjdp)
return retval;
swjdp->ack = swjdp->ack & 0x7;
}
- } else
- {
- /* common code path avoids fn to timeval_ms() */
}
/* Check for STICKYERR and STICKYORUN */
diff --git a/src/target/arm_adi_v5.h b/src/target/arm_adi_v5.h
index 4e1b1aa6..675a1736 100644
--- a/src/target/arm_adi_v5.h
+++ b/src/target/arm_adi_v5.h
@@ -38,6 +38,10 @@
#define JTAG_DP_APACC 0xB
#define JTAG_DP_IDCODE 0xE
+/* three-bit ACK values for DPACC and APACC reads */
+#define JTAG_ACK_OK_FAULT 0x2
+#define JTAG_ACK_WAIT 0x1
+
#define DPAP_WRITE 0
#define DPAP_READ 1