diff options
author | Tim Newsome <tim@sifive.com> | 2020-06-25 15:34:48 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-25 15:34:48 -0700 |
commit | 0b1b9e2034c4f8a298d5b6fa537a4d3d819bdf30 (patch) | |
tree | 9b27f508fcfb2d4ea0b1b51e86111d791ed7e015 | |
parent | 4579dd93586ab361f40da6cbd9e3e0681efc866b (diff) | |
download | riscv-openocd-0b1b9e2034c4f8a298d5b6fa537a4d3d819bdf30.zip riscv-openocd-0b1b9e2034c4f8a298d5b6fa537a4d3d819bdf30.tar.gz riscv-openocd-0b1b9e2034c4f8a298d5b6fa537a4d3d819bdf30.tar.bz2 |
Accept dmstatus.version==3 (0.14) (#489)
Fixes #485.
Change-Id: I60b3d68827ca726558bc28035c0b74c5cf0d9754
-rw-r--r-- | src/target/riscv/riscv-013.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/target/riscv/riscv-013.c b/src/target/riscv/riscv-013.c index bbe77e9..9522e5e 100644 --- a/src/target/riscv/riscv-013.c +++ b/src/target/riscv/riscv-013.c @@ -686,8 +686,9 @@ int dmstatus_read_timeout(struct target *target, uint32_t *dmstatus, DMI_DMSTATUS, 0, timeout_sec, false, true); if (result != ERROR_OK) return result; - if (get_field(*dmstatus, DMI_DMSTATUS_VERSION) != 2) { - LOG_ERROR("OpenOCD only supports Debug Module version 2 (0.13), not " + int dmstatus_version = get_field(*dmstatus, DMI_DMSTATUS_VERSION); + if (dmstatus_version != 2 && dmstatus_version != 3) { + LOG_ERROR("OpenOCD only supports Debug Module version 2 (0.13) and 3 (0.14), not " "%d (dmstatus=0x%x). This error might be caused by a JTAG " "signal issue. Try reducing the JTAG clock speed.", get_field(*dmstatus, DMI_DMSTATUS_VERSION), *dmstatus); @@ -1613,7 +1614,8 @@ static int examine(struct target *target) if (dmstatus_read(target, &dmstatus, false) != ERROR_OK) return ERROR_FAIL; LOG_DEBUG("dmstatus: 0x%08x", dmstatus); - if (get_field(dmstatus, DMI_DMSTATUS_VERSION) != 2) { + int dmstatus_version = get_field(dmstatus, DMI_DMSTATUS_VERSION); + if (dmstatus_version != 2 && dmstatus_version != 3) { /* Error was already printed out in dmstatus_read(). */ return ERROR_FAIL; } |