aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPalmer Dabbelt <palmer@dabbelt.com>2017-06-20 17:17:54 -0700
committerPalmer Dabbelt <palmer@dabbelt.com>2017-06-21 12:25:19 -0700
commit689d0fcaf6764b6a8efbbfed51e048a94c03f3bf (patch)
treee9273bcb91cbb85a035b19cf93f5d06f0d6442b6
parent4bdb0422242559e2e00a4368d51c193e7f2f0bd1 (diff)
downloadriscv-openocd-689d0fcaf6764b6a8efbbfed51e048a94c03f3bf.zip
riscv-openocd-689d0fcaf6764b6a8efbbfed51e048a94c03f3bf.tar.gz
riscv-openocd-689d0fcaf6764b6a8efbbfed51e048a94c03f3bf.tar.bz2
No longer hard-code the non-RTOS hart to 0
I was just being lazy here.
-rw-r--r--src/target/riscv/riscv.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/target/riscv/riscv.c b/src/target/riscv/riscv.c
index 7859383..377ab78 100644
--- a/src/target/riscv/riscv.c
+++ b/src/target/riscv/riscv.c
@@ -448,11 +448,12 @@ static int riscv_get_gdb_reg_list(struct target *target,
{
RISCV_INFO(r);
LOG_DEBUG("reg_class=%d", reg_class);
- LOG_DEBUG("riscv_get_gdb_reg_list: rtos_hartid=%d current_hartid=%d", r->rtos_hartid, r->current_hartid);
- if (r->rtos_hartid != -1)
+ LOG_DEBUG("rtos_hartid=%d current_hartid=%d", r->rtos_hartid, r->current_hartid);
+
+ if (r->rtos_hartid != -1 && riscv_rtos_enabled(target))
riscv_set_current_hartid(target, r->rtos_hartid);
else
- riscv_set_current_hartid(target, 0);
+ riscv_set_current_hartid(target, target->coreid);
switch (reg_class) {
case REG_CLASS_GENERAL: