From 4279b23fcacaf3bb6f7c5e8da9386eaeeafe5736 Mon Sep 17 00:00:00 2001 From: Ian Thompson Date: Wed, 14 Sep 2022 09:59:47 -0700 Subject: [PATCH] target/xtensa: populate PS correctly during fetch Read PS from EPS[debuglevel] during fetch such that it reflects the correct value when read via telnet (not just via gdb_server). Signed-off-by: Ian Thompson Change-Id: I8504f68989bc6d5fe451a8cb69d01c86f4ec0100 Reviewed-on: https://review.openocd.org/c/openocd/+/7195 Tested-by: jenkins Reviewed-by: Erhan Kurubas Reviewed-by: Antonio Borneo --- src/target/xtensa/xtensa.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/target/xtensa/xtensa.c b/src/target/xtensa/xtensa.c index a6e50ccc71..f331a86654 100644 --- a/src/target/xtensa/xtensa.c +++ b/src/target/xtensa/xtensa.c @@ -1100,6 +1100,9 @@ int xtensa_fetch_all_regs(struct target *target) if (reg_num == XT_PC_REG_NUM_VIRTUAL) { /* reg number of PC for debug interrupt depends on NDEBUGLEVEL */ reg_num = (XT_PC_REG_NUM_BASE + xtensa->core_config->debug.irq_level); + } else if (reg_num == xtensa_regs[XT_REG_IDX_PS].reg_num) { + /* reg number of PS for debug interrupt depends on NDEBUGLEVEL */ + reg_num = (XT_PS_REG_NUM_BASE + xtensa->core_config->debug.irq_level); } else if (reg_num == xtensa_regs[XT_REG_IDX_CPENABLE].reg_num) { /* CPENABLE already read/updated; don't re-read */ reg_fetched = false; -- 2.30.2