Browse Source

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>
tags/v0.4.0-rc2
David Brownell 14 years ago
parent
commit
fccb812f82
2 changed files with 9 additions and 6 deletions
  1. +5
    -6
      src/target/arm_adi_v5.c
  2. +4
    -0
      src/target/arm_adi_v5.h

+ 5
- 6
src/target/arm_adi_v5.c View File

@@ -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 */


+ 4
- 0
src/target/arm_adi_v5.h View File

@@ -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



Loading…
Cancel
Save